-
Notifications
You must be signed in to change notification settings - Fork 15.3k
Closed
Labels
bugzillaIssues migrated from bugzillaIssues migrated from bugzillawontfixIssue is real, but we can't or won't fix it. Not invalidIssue is real, but we can't or won't fix it. Not invalid
Description
| Bugzilla Link | 11291 |
| Resolution | WONTFIX |
| Resolved on | Nov 03, 2011 01:56 |
| Version | 2.9 |
| OS | MacOS X |
| Attachments | testcase |
| Reporter | LLVM Bugzilla Contributor |
| CC | @lattner |
Extended Description
I've attached a small test case that produces assembly code that the assemblers on OSX can't handle. OSX doesn't handle the length suffixes on the popcnt instruction (e.g. {w,l,q}).
Here is a related GCC bug for this issue:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34497#c14
I believe they fixed it by not adding the suffix on OSX, which works fine. Indeed changing instruction definition in lib/Target/X86/X86InstrSSE.td to drop the suffix, works fine.
The integrated assembler of llc works fine but GHC which uses LLVM can't use the integrated assembler at this stage as we do some assembly post processing.
== To Reproduce ==
- llc testcase.ll -o testcase.s
- gcc -m32 -c testcase.s -o b.o
(or as -arch i386 testcase.s)
== Expected Output ==
Shiny object file
== Actual Output ==
testcase.s:7:suffix or operands invalid for `popcnt'
Metadata
Metadata
Assignees
Labels
bugzillaIssues migrated from bugzillaIssues migrated from bugzillawontfixIssue is real, but we can't or won't fix it. Not invalidIssue is real, but we can't or won't fix it. Not invalid