search for: stgrun

Displaying 6 results from an estimated 6 matches for "stgrun".

2012 Jun 29
1
[LLVMdev] Request for merge: GHC/ARM calling convention.
...ell with EABI libs as Haskell code is using them too. For registerised GHC build there are two important functions provided in GHC's RTS written in C (or gcc inline asm compiled by gcc still using platform ABI) which performs important task of bridging C world ABI and GHC own ABI. It's StgRun and StgReturn. StgRun calls Haskell (STG) function from the C world and StgReturn return from the Haskell world into C world again safely. They are defined in rts/StgCRun.c and the comment from the top of the file might be more useful here than my writing about it: * STG-to-C glue. * * T...
2012 Jun 29
0
[LLVMdev] Request for merge: GHC/ARM calling convention.
On 29 June 2012 17:46, Karel Gardas <karel.gardas at centrum.cz> wrote: > Yes and no. Shortly: original GHC/ARM/LLVM port was done by Stephen on > ARMv5/Qemu IIRC. I've later added whole VFP support and ARMv7 support. The > code in GHC is properly #ifdefed, so if there is no VFP available on pre > ARMv6, then it's not used. ie. GHC STG floating points regs are then >
2012 Jun 29
2
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Renato, On 06/25/12 12:13 AM, Renato Golin wrote: > Hi Karel, > > I understand this patch has already been merged (to 3.0), so don't > take my question as stopping the merge to head, I'm just making sure I > got it right... The rest looks correct. > > + CCIfType<[v2f64], CCAssignToReg<[Q4, Q5]>>, > + CCIfType<[f64], CCAssignToReg<[D8, D9,
2017 Dec 01
2
Some strange i64 behavior with arm 32bit. (Raspberry Pi)
Hi Tim, thanks for the swift response! @debug is defined in the same module, which makes this all the more confusing. The target information from the working example are: target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" target triple = "armv6kz--linux-gnueabihf" from the ghc produced module: target datalayout =
2015 Sep 07
2
POssible bug in the Arm code generator
...ons > and the SIGILL happens after susccessfuly running a bunch of other arm > instructions. From GDB: > > Program received signal SIGILL, Illegal instruction. > 0x03ff9dbc in stg_ap_v_fast () > (gdb) bt > #0 0x03ff9dbc in stg_ap_v_fast () > #1 0x03fc6ce6 in StgRun (f=0x3ff9db4 <stg_ap_v_fast>, basereg=0x49d2090 <MainCapability+16>) at > rts/StgCRun.c:81 > #2 0x03fca52a in schedule (initialCapability=0x49d2080 <MainCapability>, task=0x49e62c0) at > rts/Schedule.c:524 > #3 0x03fcc5e6 in scheduleWaitThread (ts...
2015 Sep 06
2
POssible bug in the Arm code generator
Hi all, I do a little work on the Glasgow Haskell Compiler (GHC) which uses LLVM for the backend when compiling for Arm and some other targets. The reason I am posting to this list is that a GHC compiled program (using the LLVM backend) is getting an illegal instruction exception on the this instruction: ldr r0, [r0] According to the Arm archtecture manual: