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

            Bug ID: 26630
           Summary: [Hexagon] J2_jump instruction with a global address
                    fails with: Assertion `isMBB() && "Wrong
                    MachineOperand accessor"'
           Product: tools
           Version: 3.8
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: llc
          Assignee: unassignedb...@nondot.org
          Reporter: r...@sics.se
                CC: llvm-bugs@lists.llvm.org
    Classification: Unclassified

Created attachment 15909
  --> https://llvm.org/bugs/attachment.cgi?id=15909&action=edit
ZIP file with a test case to reproduce the failure and a tentative patch

llc fails when facing J2_jump instructions that do not refer to a basic block
but to a global address, such as:

J2_jump <ga:@putAC>

This yields to a failed assertion of the type `isMBB() && "Wrong MachineOperand
accessor"' triggered from HexagonInstrInfo.cpp and HexagonNewValueJump.cpp.

The failure can be reproduced by running llc on the attached LLVM IR function:

$ llc bugpoint-reduced-simplified.ll -march=hexagon -mcpu=hexagonv4

I also attach a small patch that fixes the issue (although it might not do it
in the best way).

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to