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

            Bug ID: 21319
           Summary: clang 3.4 and above integrated assembler does not
                    respect the .arch directive in .s files for arm
           Product: clang
           Version: 3.4
          Hardware: All
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Frontend
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
    Classification: Unclassified

Created attachment 13226
  --> http://llvm.org/bugs/attachment.cgi?id=13226&action=edit
gcc_arm.s extracted from golang.org/src/runtime/cgo/gcc_arm.S

The integrated assembler does not appear to honour the .arch directive in .s
files.

For the sample code attached, on a platform where clang has been compiled for
the default arch of armv4t (debian sid in this case). The .s file specifies
.arch armv5t but this does not appear to be honoured. 

$ clang -c gcc_arm.s 
gcc_arm.s:25:2: error: instruction requires: armv5t
        blx r5 // setg(g) 
        ^
gcc_arm.s:26:2: error: instruction requires: armv5t
        blx r4 // fn() 
        ^
Interesting the contents of .arch are being validated.

$ clang -c gcc_arm.s 
gcc_arm.s:10:1: error: Unknown arch name
.arch armv42

^ setting .arch to something silly

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to