Re: [llvm-commits] [PATCH] JIT support for ARM

2007-08-27 Thread Evan Cheng
On Aug 17, 2007, at 5:28 PM, Raul Fernandes Herbster wrote: 2007/8/17, Evan Cheng <[EMAIL PROTECTED]>: Very good progress. Thanks! Comments inline. Evan ... Please use abort() instead so it does what's expected in non-debug build. OK ... i s -> is :-) OK Also, why the name "ARMCom

Re: [llvm-commits] [PATCH] JIT support for ARM

2007-08-20 Thread Raul Fernandes Herbster
Evan, thanks a lot for your comments. I fixed the code (as discussed previously). Cheers. -- Raul Fernandes Herbster Embedded and Pervasive Computing Laboratory - embedded.dee.ufcg.edu.br Electrical Engineering Department - DEE - www.dee.ufcg.edu.br Electrical Engineering and Informatics Center

Re: [llvm-commits] [PATCH] JIT support for ARM

2007-08-17 Thread Raul Fernandes Herbster
2007/8/17, Evan Cheng <[EMAIL PROTECTED]>: > > Very good progress. Thanks! > > Comments inline. > > Evan > > ... > > Please use abort() instead so it does what's expected in non-debug build. > OK ... > > i s -> is :-) > OK Also, why the name "ARMCompilationCallbackC"? Is it language specific? >

Re: [llvm-commits] [PATCH] JIT support for ARM

2007-08-17 Thread Raul Fernandes Herbster
Yes, Chris. I'd have to create a big switch table. 2007/8/17, Chris Lattner <[EMAIL PROTECTED]>: > > > On Aug 17, 2007, at 12:02 PM, Evan Cheng wrote: > > > void *ARMJITInfo::emitFunctionStub(void *Fn, MachineCodeEmitter > > &MCE) { > > - unsigned addr = (intptr_t)Fn-MCE.getCurrentPCValue()-4; >

Re: [llvm-commits] [PATCH] JIT support for ARM

2007-08-17 Thread Chris Lattner
On Aug 17, 2007, at 12:02 PM, Evan Cheng wrote: > void *ARMJITInfo::emitFunctionStub(void *Fn, MachineCodeEmitter > &MCE) { > - unsigned addr = (intptr_t)Fn-MCE.getCurrentPCValue()-4; > + unsigned addr = (intptr_t)Fn; >// If this is just a call to an external function, emit a branch >

[llvm-commits] [PATCH] JIT support for ARM

2007-08-16 Thread Raul Fernandes Herbster
Multiply instructions are being generated. ARM/JIT runs an application with no calls to local functions, but library functions calls are supported. I hope fix such problem soon. Please, send me any feedback. Thanks in advance, Raul. -- Raul Fernandes Herbster Embedded and Pervasive Computing Lab

Re: [llvm-commits] Patch: JIT support for ARM

2007-08-06 Thread Evan Cheng
Thanks. I bet a lot of code in getBinaryCodeForInstr() can be factored into data. But I think this is a good step in the right direction. I'll commit it for you. Evan On Aug 2, 2007, at 2:32 PM, Raul Fernandes Herbster wrote: Evan, thanks a lot for your comments. I've fixed the problems

Re: [llvm-commits] Patch: JIT support for ARM

2007-08-01 Thread Chris Lattner
On Jul 30, 2007, at 12:15 PM, Evan Cheng wrote: > +static const unsigned InstBits[] = { > + 0, > + 0, > + 0, > + 0, > + 0, > + 0XE2B0, > + 0XE0B0, > + 0XE0B0, > + 0XE290, > > This is impossible to maintain. Please move opcode bits into .td > files. That is, please add it

Re: [llvm-commits] Patch: JIT support for ARM

2007-07-30 Thread Evan Cheng
Very nice! +def NoneFormat : Format<0>; def Pseudo: Format<1>; +def Multiply: Format<2>; def Branch: Format<3>; Some naming suggestions. NoneFormat -> Pseudo, Multiply -> MultiplyFrm (or MulFrm). +class AIlist pattern> + : Iasm,"",pattern>; Please watch out for "80 col vio

Re: [llvm-commits] Patch: JIT support for ARM

2007-06-28 Thread Evan Cheng
Hi Raul, Good first step! Thanks. +bool ARMTargetMachine::addCodeEmitter(FunctionPassManager &PM, bool Fast, + MachineCodeEmitter &MCE) { + // FIXME: Move this to TargetJITInfo! + setRelocationModel(Reloc::Static); + + setCodeModel(CodeModel::Large); +

[llvm-commits] Patch: JIT support for ARM

2007-06-27 Thread Raul Fernandes Herbster
This is an initial implementation of ARM JIT support. So far, it hasn't generated code machine yet. Next patch must provide such feature. The tar.gzfile must be unpacked under lib/Target/ARM directory. Please, send me any feedback. Best regards, Raul. -- Raul Fernandes Herbster Embedded and Perv