I checked the OpenRISC architecture spec. v.1.1 and it looks like OpenRISC ISA 
doesn’t include such instructions. So they have to be implemented somewhere in 
LLVM by appropriate routines.
Personally, I’m working on FPU32 port now but I use GCC/NewLIB tool chain for 
SoftFloat (as testing tool), Whetstone (as FPU benchmark) and Coremark (as 
integer pipeline benchmark).
I made some (really not significant)  modifications to port these tools under 
GCC/NewLIB, but I haven’t shared the source yet. If you are interested in 
source code of the tools I’m ready to e-mail them to you (the several KB in 
zip).
BR
Andrey

From: Ziqiang Patrick Huang 
Sent: Friday, January 09, 2015 5:44 PM
To: [email protected] ; [email protected] 
Subject: [OpenRISC] Instruction selection failed when compiling SPEC 2006

Hi, 

I'm trying to use llvm-or1k to compile SPEC 2006, I'm getting the following 
errors when compiling some of the benchmarks:


LLVM ERROR: Cannot select: 0x5a96d80: f32 = fabs 0x5a95498 [ORD=48] [ID=122] 
LLVM ERROR: Cannot select: 0x39443f0: f32 = bitcast 0x38ffca8 [ORD=43] [ID=488]
LLVM ERROR: Cannot select: 0x5f13298: f32 = fneg 0x5f2e6d0 [ORD=2] [ID=8]


It seems like the ISA does not support a bunch of floating point instructions 
... Is anyone working on this ?

Also what benchmarks have been successfully compiled so far using llvm-or1k ?

Thanks,
Ziqiang


--------------------------------------------------------------------------------
_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc
_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc

Reply via email to