[LLVMbugs] [Bug 18202] New: No support for delayed constants in ARM integrated assembler

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Dec 10 14:04:25 PST 2013


http://llvm.org/bugs/show_bug.cgi?id=18202

            Bug ID: 18202
           Summary: No support for delayed constants in ARM integrated
                    assembler
           Product: tools
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: llc
          Assignee: unassignedbugs at nondot.org
          Reporter: dpeixott at codeaurora.org
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

I have some assembly code that uses .equ to set a symbol to a computed
constant. It works in GCC but not LLVM.  I am not sure about the correct
terminology, but here is an example:

  .syntax unified
  .equ size, end - start 
  add r0, r0, #size

  start:
  .space 0x10
  end:

GCC will compile this to `add r0, r0, #16`. Compiling with llvm-mc gives:

  set.s:4:13: error: invalid operand for instruction
  add r0, r0, #size
              ^
It works for llvm-mc if the #size is set to a constant (e.g. .set size, 0x10).

-- 
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/20131210/3c2cf71d/attachment.html>


More information about the llvm-bugs mailing list