greened added inline comments.

================
Comment at: llvm/utils/update_cc_test_checks.py:274-277
       prefixes = p[0]
       for prefix in prefixes:
         func_dict.update({prefix: dict()})
+        func_order.update({prefix: []})
----------------
arichardson wrote:
> This should avoid a few update() calls. Not that performance really matters 
> here.
> This should avoid a few update() calls. Not that performance really matters 
> here.

Wouldn't it iterate over the prefix list twice?  In any event, I was trying to 
follow existing style and wanted to rewrite as little existing code as possible.


================
Comment at: llvm/utils/update_cc_test_checks.py:331
+            # are ordered by prefix instead of by function as in "normal"
+            # mode.
+            if '-emit-llvm' in clang_args:
----------------
arichardson wrote:
> jdoerfert wrote:
> > This is all unfortunate but at least for OpenMP not easily changeable. 
> > Let's go with this.
> How difficult would it be to only use this behaviour if the normal one fails? 
> 
> If we encounter a function that's not in the source code we just append the 
> check lines for the generate function where we last added checks. And if we 
> then see a function where the order doesn't match the source order fall back 
> to just emitting all checks at the end of the file?
> How difficult would it be to only use this behaviour if the normal one fails? 
> 
> If we encounter a function that's not in the source code we just append the 
> check lines for the generate function where we last added checks. And if we 
> then see a function where the order doesn't match the source order fall back 
> to just emitting all checks at the end of the file?

The problem is that this loop is driven by lines as they appear in the source 
file and uses a dictionary to look up the tool output for that function.  
Because of this checks will *always* be placed in the source before each 
function and there is no way to tell if the checks you're adding are from 
out-of-order tool output.  Changing this would be a complete rewrite of the 
algorithm, which I wanted to avoid for this enhancement.  Of course we can 
always rewrite it later but I think that is best done as a separate change.

The other two tools use a similar algorithm.  In fact it *may* be possible to 
further refactor this code to share the check output driver.  But again, that 
involves changing existing code and is best left to a separate change I think.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D83004/new/

https://reviews.llvm.org/D83004

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to