Minor edits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9399 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-10-23 03:55:23 +00:00
parent c3afd9bf4b
commit e38c628939

View File

@ -71,7 +71,7 @@ good GCC hacker.</p>
% gmake all; gmake install % gmake all; gmake install
</pre> </pre>
<p><b>Common Problem 1:</b> You may get error messages regarding the fact <p><b>Common Problem:</b> You may get error messages regarding the fact
that LLVM does not support inline assembly. Here are two common that LLVM does not support inline assembly. Here are two common
fixes:</p> fixes:</p>
@ -88,19 +88,26 @@ good GCC hacker.</p>
and apply a patch so that it does not use inline assembly.</p></li> and apply a patch so that it does not use inline assembly.</p></li>
</ul> </ul>
<p><b>Common Problem 2:</b> <b>FIXME:</b> Chris should add a section about <p><b>Porting to a new architecture:</b> If you are porting the new front-end
common problems porting to a new architecture, including changes you to a new architecture, or compiling in a different configuration that we have
might have to make to the <tt>gcc/gcc/config/<i>name-of-cpu</i></tt> previously, there are probably several changes you will have to make to the GCC
directory. For example (expand these):</p> target to get it to work correctly. These include:<p>
<ul> <ul>
<li>Munge linker flags so they are compatible with <tt>gccld</tt>.</li> <li>Often targets include special or assembler linker flags which
<li>Change the target so it doesn't have long double; just use double <tt>gccas</tt>/<tt>gccld</tt> does not understand. In general, these can
instead.</li> just be removed.</li>
<li>No inline assembly for position independent code.</li> <li>LLVM currently does not support any floating point values other than
<li>We handle init and fini differently.</li> 32-bit and 64-bit IEEE floating point. The primary effect of this is
<li>Do not include inline assembly map things for SPARC, or profile that you may have to map "long double" onto "double".</li>
things.</li> <li>The profiling hooks in GCC do not apply at all to the LLVM front-end.
These may need to be disabled.</li>
<li>No inline assembly for position independent code. At the LLVM level,
everything is position independent.</li>
<li>We handle <tt>.init</tt> and <tt>.fini</tt> differently.</li>
<li>Did we mention that we don't support inline assembly? You'll probably
have to add some fixinclude hacks to disable it in the system
headers.</li>
</ul> </ul>
</li> </li>
@ -129,8 +136,8 @@ libgcc.a library, which you can find by running
<li><p>Test the newly-installed C frontend by one or more of the <li><p>Test the newly-installed C frontend by one or more of the
following means:</p> following means:</p>
<ul> <ul>
<li> compiling and running a "hello, world" program in C or C++.</li> <li> compiling and running a "hello, LLVM" program in C and C++.</li>
<li> running the tests under test/Programs using <code>gmake -C <li> running the tests under <tt>test/Programs</tt> using <code>gmake -C
test/Programs</code></li> test/Programs</code></li>
</ul> </ul>
</p> </p>