[LLVMbugs] [Bug 6203] New: [mips] cannot copy register from FGR32 to AFGR64 class
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Mon Feb 1 17:45:02 PST 2010
http://llvm.org/bugs/show_bug.cgi?id=6203
Summary: [mips] cannot copy register from FGR32 to AFGR64 class
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: Linux
Status: ASSIGNED
Keywords: compile-fail
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: bruno.cardoso at gmail.com
ReportedBy: zhou_shuchang at sina.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=4163)
--> (http://llvm.org/bugs/attachment.cgi?id=4163)
cannot copy register from FGR32 to AFGR64 class
#include <stdio.h>
int main()
{
register unsigned char rC0, rC1;
rC0 = 0;
rC1 = 255;
rC0 += (float) rC1;
if(rC0 == 255)
printf("passed\n");
else
printf("failed\n");
return 0;
}
we have assertion failure
clang: /home/zsc/tmpd/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp:291: void
llvm::InstrEmitter::AddRegisterOperand(llvm::MachineInstr*, llvm::SDValue,
unsigned int, const llvm::TargetInstrDesc*, llvm::DenseMap<llvm::SDValue,
unsigned int, llvm::DenseMapInfo<llvm::SDValue>, llvm::DenseMapInfo<unsigned
int> >&): Assertion `Emitted && "Unable to issue a copy instruction!\n"'
failed.
0. Program arguments: /usr/local/bin/clang -cc1 -triple
mipsel-unknown-linux-gnu -S -disable-free -main-file-name 16.c -pic-level 2
-mdisable-fp-elim -v -g -resource-dir /usr/local/lib/clang/1.1 -fmessage-length
87 -fgnu-runtime -fdiagnostics-show-option -fcolor-diagnostics -o 16.s -x c
16.c
By GDB, bool MipsInstrInfo::copyRegToReg returns false
(gdb) p SrcRC->Name
$8 = 0x9575a01 "FGR32"
(gdb) p DestRC->Name
$9 = 0x95759ee "AFGR64"
(gdb) f
#0 llvm::MipsInstrInfo::copyRegToReg (this=0x9cf7548, MBB=..., I=...,
DestReg=1039, SrcReg=1036, DestRC=0x9c5aec0, SrcRC=0x9c5afe0) at
/home/zsc/tmpd/llvm/lib/Target/Mips/MipsInstrInfo.cpp:169
--
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