ganeshgit wrote:

> @ganeshgit last week i found machine code error in code. For all ACE (in fact 
> helpful for all machine code changes) can you also include 
> `-DLLVM_ENABLE_EXPENSIVE_CHECKS=ON` in your configuration.
> 
> ```
> # | # After Instruction Selection
> # | # Machine code for function test_bsrmovh_set: IsSSA, TracksLiveness
> # | Function Live Ins: $zmm0 in %0
> # | 
> # | bb.0 (%ir-block.0):
> # |   liveins: $zmm0
> # |   %0:vr512 = COPY $zmm0
> # |   BSRMOVHrr_set %0:vr512, implicit-def dead $bsr0, implicit $bsr0
> # |   RET 0
> # | 
> # | # End machine code for function test_bsrmovh_set.
> # | 
> # | *** Bad machine code: Using an undefined physical register ***
> # | - function:    test_bsrmovh_set
> # | - basic block: %bb.0  (0x613d39cc0168)
> # | - instruction: BSRMOVHrr_set %0:vr512, implicit-def dead $bsr0, implicit 
> $bsr0
> # | - operand 2:   implicit $bsr0
> # | LLVM ERROR: Found 1 machine code errors
> ```

BSR handled as register class largely contributed to this failure. Now it is 
not a register class. I have added -DDLLVM_ENABLE_EXPENSIVE_CHECKS in my 
config. Thanks for the pointer.

https://github.com/llvm/llvm-project/pull/208408
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to