[LLVMdev] Idea for Google Summer Code : C Compiler for EFI Byte Code implement in LLVM
琬菁楊
ching1119.cs96 at g2.nctu.edu.tw
Sat Apr 3 11:48:27 PDT 2010
Hello Chris, Rusell
> What about declaring that pointers are always 64 bits, for all
> > purposes other than final code generation of actual pointer
> > instructions? Would that solve the problem?
>
> Yep. That would be a fine approach, and probably conformant to the spec.
>
I have some question about your disscussion.
the main difference is as follows:
>1. void*
> In EFI C, the void* is 4-byte for 32-bit processor and 8-byte for
64-bit processor.
> And it can appears in any where like ANSI C.
> So the main problem is that struct layout like
> struct S{
> void* X;
> };
> is not static.
> 2. no floating support in EFI C
> 3. no C++ support in EFI C
> 4. no assembly support in EFI C, all assembly must convert to C
In my opinion, the main compiling process is C --a--> LLVM IR --b--> EBC
byte code
So as you say, solve the difference 2,3,4 in process a and assumed void * be
64-bit in process a
Then solve the difference 1 in process b??
thanks
ching
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100404/11831732/attachment.html>
More information about the llvm-dev
mailing list