Skip to content

ARM JIT should support ARMCompilationCallback in thumb2 #6437

Description

@nlewycky
Bugzilla Link 6065
Resolution DUPLICATE
Resolved on Feb 02, 2011 03:17
Version trunk
OS Linux
CC @asl

Extended Description

This inline-asm in ARMJITInfo.cpp's ARMCompilationCallback:

// Return to the (newly modified) stub to invoke the real function.
// The above twiddling of the saved return addresses allows us to
// deallocate everything, including the LR the stub saved, all in one
// pop instruction.
"ldmia  sp!, {r0, r1, r2, r3, lr, pc}\n"

does not assemble as thumb2:

llvm[3]: Compiling ARMJITInfo.cpp for Release-Asserts build
/tmp/ccWGkQ6d.s: Assembler messages:
/tmp/ccWGkQ6d.s:28: Error: LR and PC should not both be in register list -- `ldmia sp!,{r0,r1,r2,r3,lr,pc}'
make[3]: *** [/home/nlewycky/llvm/lib/Target/ARM/Release-Asserts/ARMJITInfo.o] Error 1

with '-Os -mthumb' flags to gcc instead of -O2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions