[llvm-bugs] [Bug 51217] New: [DAG][AMDGPU] Canonicalization of mulh constants to rhs causes verifier errors

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Jul 26 07:12:03 PDT 2021


https://bugs.llvm.org/show_bug.cgi?id=51217

            Bug ID: 51217
           Summary: [DAG][AMDGPU] Canonicalization of mulh constants to
                    rhs causes verifier errors
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: AMDGPU
          Assignee: unassignedbugs at nondot.org
          Reporter: llvm-dev at redking.me.uk
                CC: craig.topper at gmail.com, jay.foad at antixlabs.com,
                    jay.foad at gmail.com, llvm-bugs at lists.llvm.org,
                    Matthew.Arsenault at amd.com,
                    stanislav.mekhanoshin at amd.com

Created attachment 25070
  --> https://bugs.llvm.org/attachment.cgi?id=25070&action=edit
Canonicalise MULHS/U constants to the RHS

As detailed on D106471, attempting to canonicalize mulh constants to rhs
causes:

*** Bad machine code: VOP* instruction violates constant bus restriction ***
- function:    v_test_sdiv_k_num_i64
- basic block: %bb.0  (0x238f3f455f0)
- instruction: %160:vgpr_32 = V_ADDC_U32_e32 %70:sreg_32, %161:vgpr_32,
implicit-def dead $vcc, implicit $vcc, implicit $exec


Failed Tests (4):
  LLVM :: CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
  LLVM :: CodeGen/AMDGPU/sdiv64.ll
  LLVM :: CodeGen/AMDGPU/srem64.ll
  LLVM :: CodeGen/AMDGPU/udiv64.ll

I only saw it on sdiv64.ll and srem64.ll (I'm not sure but this might require
EXPENSIVE_CHECKS to be enabled).

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210726/4c458758/attachment.html>


More information about the llvm-bugs mailing list