[LLVMdev] LLVM2.2 x64 JIT trouble on VStudio build

Evan Cheng evan.cheng at apple.com
Tue Feb 19 10:41:33 PST 2008


I think a Win64 version of X86CompilationCallback{2} is still needed.  
Also, it's not clear to me how to force a non-Windows CC. It may  
require some FE extension to support it?

Evan

On Feb 18, 2008, at 5:43 PM, Anton Korobeynikov wrote:

>
> Hello, Chuck
>
>> Would my life be made fantastically simpler if I were using a  
>> different
>> calling convention for my callback functions on x64 running on  
>> Windows?
> Yes, surely. You can still use 'normal' x86-64 CC if you don't want to
> call any external functions from code being JITed. Also note a Win64
> fixme in the X86CompilationCallback2 function, this can be your  
> case. I
> think the code there should be carefully inspected to be compatible  
> with
> windows64.
>
> Anyway, win64 version of compilation callback function should be  
> added,
> otherwise you'll quickly result to messed stack, invalid incoming  
> args,
> etc (this can be exactly your case now, btw).
>
> Also, I think that you should carefully inspect, what to save there,
> because you will 'mix' two CCs: JITer itself will be compiled with  
> win64
> CC and function JITed with normal x86-64 CC and they shouldn't trash  
> the
> states of each other during crossing of 'CC border'.
>
> --
> WBR, Anton Korobeynikov




More information about the llvm-dev mailing list