<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Mar 19, 2010, at 11:08 AM, 琬菁楊 wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><br><div class="gmail_quote">Hello Tristan and all,<br><br>I have already know that if I want to do this feature(c -> EFI Byte code) for GCC<br>I should further modify the GCC front end(parser) to solve the problem (the size <br>
of pointer is determined at run time).<br>
<br>I have read a powerpoint about LLVM (<a href="http://llvm.org/pubs/2008-10-04-ACAT-LLVM-Intro.pdf" target="_blank">http://llvm.org/pubs/2008-10-04-ACAT-LLVM-Intro.pdf</a>)<br>It is the LLVM-GCC design graph (<a href="http://www.im.ntu.edu.tw/%7Eb95030/llvm_gcc.png" target="_blank">http://www.im.ntu.edu.tw/~b95030/llvm_gcc.png</a>).<br>

According to the above discussion , LLVM IR doesn't care about the size of pointers.<br>I am wondering how could LLVM support dynamic pointer size model without modifying <br>GCC front end??<br></div></blockquote></div><br><div>What do you mean by "variable sized pointers"?  What does:</div><div><br></div><div>struct  S {void *X; };</div><div><br></div><div>return for sizeof(struct S); ?</div><div><br></div><div>-Chris</div></body></html>