[LLVMbugs] [Bug 12757] New: Assertion failed: (MRI->getVRegDef(reg) && "Register use before def!"), function HandleVirtRegUse, file /usr/src/lib/clang/libllvmcodegen/../../../contrib/llvm/lib/CodeGen/LiveVariables.cpp, line 131.
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Mon May 7 13:32:04 PDT 2012
http://llvm.org/bugs/show_bug.cgi?id=12757
Bug #: 12757
Summary: Assertion failed: (MRI->getVRegDef(reg) && "Register
use before def!"), function HandleVirtRegUse, file
/usr/src/lib/clang/libllvmcodegen/../../../contrib/llv
m/lib/CodeGen/LiveVariables.cpp, line 131.
Product: libraries
Version: trunk
Platform: PC
OS/Version: FreeBSD
Status: NEW
Severity: enhancement
Priority: P
Component: Backend: PowerPC
AssignedTo: unassignedbugs at nondot.org
ReportedBy: rdivacky at freebsd.org
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
int
__flt_rounds()
{
unsigned long fpscr;
__asm__ volatile("mffs %0" : "=f"(fpscr));
return fpscr;
}
[rdivacky at anacreon ~/delta-2006.08.03]$ clang flt_rounds.c
flt_rounds.c:6:19: error: couldn't allocate output register for constraint 'f'
__asm__ volatile("mffs %0" : "=f"(fpscr));
^
flt_rounds.c:6:19: error: invalid operand in inline asm: 'mffs $0'
2 errors generated.
[rdivacky at anacreon ~/delta-2006.08.03]$ clang -O2 flt_rounds.c
flt_rounds.c:6:19: error: couldn't allocate output register for constraint 'f'
__asm__ volatile("mffs %0" : "=f"(fpscr));
^
Assertion failed: (MRI->getVRegDef(reg) && "Register use before def!"),
function HandleVirtRegUse, file
/usr/src/lib/clang/libllvmcodegen/../../../contrib/llvm/lib/CodeGen/LiveVariables.cpp,
line 131.
Stack dump:
0. Program arguments: /usr/bin/clang -cc1 -triple
powerpc64-unknown-freebsd10.0 -S -disable-free -main-file-name flt_rounds.c
-mrelocation-model static -mdisable-fp-elim -mconstructor-aliases
-momit-leaf-frame-pointer -resource-dir /usr/bin/../lib/clang/3.1
-fmodule-cache-path /var/tmp/clang-module-cache -O2 -fno-dwarf-directory-asm
-fdebug-compilation-dir /home/rdivacky/delta-2006.08.03 -ferror-limit 19
-fmessage-length 152 -mstackrealign -fno-signed-char -fgnu-runtime
-fobjc-runtime-has-arc -fobjc-runtime-has-weak -fdiagnostics-show-option
-fcolor-diagnostics -o /tmp/flt_rounds-0bhd1X.s -x c flt_rounds.c
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module 'flt_rounds.c'.
4. Running pass 'Live Variable Analysis' on function '@__flt_rounds'
clang: error: unable to execute command: Abort trap: 6 (core dumped)
clang: error: clang frontend command failed due to signal (use -v to see
invocation)
clang: note: diagnostic msg: Please submit a bug report to
http://llvm.org/bugs/ and include command line arguments and all diagnostic
information.
clang: note: diagnostic msg: Preprocessed source(s) and associated run
script(s) are located at:
clang: note: diagnostic msg: /tmp/flt_rounds-QjXYWg.i
clang: note: diagnostic msg: /tmp/flt_rounds-QjXYWg.sh
gcc is ok with this
--
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