[LLVMbugs] [Bug 2785] New: Incorrect C code produced by llc
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Wed Sep 10 11:51:22 PDT 2008
http://llvm.org/bugs/show_bug.cgi?id=2785
Summary: Incorrect C code produced by llc
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: akasim at swri.org
CC: llvmbugs at cs.uiuc.edu
Arif Kasim <akasim at swri.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|Incorrect C code produce by |Incorrect C code produced by
|llc |llc
When I convert llvm bytecode to c using the following command:
llc -march=c file.bc file.c
I'm getting some c statements which are not compilable (and/or does not make
sense). Here is one such statement:
__asm__ volatile ("btl %1,%2 ; setcb %b0"
:"=q"(llvm_cbe_asmtmp)
:"r"(llvm_cbe_tmp5)"m"(*(llvm_cbe_tmp5))"cc");;
note that llvm_cbe_asmtmp is unsigned char and llvm_cbe_tmp5 is unsigned int.
Shouldn't the code more be along the lines of :
__asm__ volatile ("btl %1,%2 ; setcb %b0"
:"=q"(llvm_cbe_asmtmp)
:"r"(llvm_cbe_tmp5), "m"((llvm_cbe_tmp5))
:"cc");
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list