[LLVMbugs] [Bug 12165] New: %FPSCR used undefined with cpu=cortex-a8%FPSCR<imp-use, kill> FPSCR used undefined with -mcpu=cortex-a8
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri Mar 2 13:37:12 PST 2012
http://llvm.org/bugs/show_bug.cgi?id=12165
Bug #: 12165
Summary: %FPSCR used undefined with
cpu=cortex-a8%FPSCR<imp-use,kill> FPSCR used undefined
with -mcpu=cortex-a8
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Backend: ARM
AssignedTo: unassignedbugs at nondot.org
ReportedBy: dschuff at google.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 8134
--> http://llvm.org/bugs/attachment.cgi?id=8134
reproducer code
When building some really basic FP code on arm,
the following error is generated. it only happens with -mcpu=cortex-a8
../install/bin/llc -march=arm -filetype=obj -mcpu=cortex-a8
bugpoint-reduced-simplified.bc -o strtod.o
# In Register Scavenger
# Machine code for function _strtod_r:
BB#0: derived from LLVM BB %entry
Successors according to CFG: BB#1
BB#1: derived from LLVM BB %dig_done
Predecessors according to CFG: BB#0
CMPri %R0<undef>, 0, pred:14, pred:%noreg, %CPSR<imp-def>
Bcc <BB#5>, pred:1, pred:%CPSR<kill>
B <BB#2>
Successors according to CFG: BB#2 BB#5
BB#2: derived from LLVM BB %if.end253
Predecessors according to CFG: BB#1
CMPri %R0<undef>, 0, pred:14, pred:%noreg, %CPSR<imp-def>
Bcc <BB#4>, pred:1, pred:%CPSR<kill>
B <BB#3>
Successors according to CFG: BB#3 BB#4
BB#3: derived from LLVM BB %land.lhs.true275
Predecessors according to CFG: BB#2
%R0<def> = VMRS pred:14, pred:%noreg, %FPSCR<imp-use,kill>
%R0<def> = ADDri %R0<kill>, 4194304, pred:14, pred:%noreg, opt:%noreg
%R0<def> = UBFX %R0<kill>, 22, 1, pred:14, pred:%noreg
CMPri %R0<kill>, 1, pred:14, pred:%noreg, %CPSR<imp-def>
Bcc <BB#5>, pred:0, pred:%CPSR<kill>
B <BB#4>
Successors according to CFG: BB#5 BB#4
BB#4: derived from LLVM BB %if.end314
Predecessors according to CFG: BB#2 BB#3
BB#5: derived from LLVM BB %ret
Predecessors according to CFG: BB#1 BB#3
Successors according to CFG: BB#6
BB#6: derived from LLVM BB %if.end880
Predecessors according to CFG: BB#5
BX_RET pred:14, pred:%noreg
# End machine code for function _strtod_r.
*** Bad machine code: Using an undefined physical register ***
- function: _strtod_r
- basic block: land.lhs.true275 0x2a08b48 (BB#3)
- instruction: %R0<def> = VMRS pred:14, pred:%noreg, %FPSCR<imp-use,kill>
- operand 3: %FPSCR<imp-use,kill>
LLVM ERROR: Found 1 machine code errors.
--
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