mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 11:02:59 +02:00
Validation fixes
llvm-svn: 42230
This commit is contained in:
parent
901656a25c
commit
9525059d66
@ -107,19 +107,17 @@ support for it. Generally you must do the following steps:</p>
|
|||||||
<dt>Add support to the C backend in <tt>lib/Target/CBackend/</tt></dt>
|
<dt>Add support to the C backend in <tt>lib/Target/CBackend/</tt></dt>
|
||||||
|
|
||||||
<dd>Depending on the intrinsic, there are a few ways to implement this. For
|
<dd>Depending on the intrinsic, there are a few ways to implement this. For
|
||||||
most intrinsics, it makes sense to add code to lower your intrinsic in
|
most intrinsics, it makes sense to add code to lower your intrinsic in
|
||||||
<tt>LowerIntrinsicCall</tt> in <tt>lib/CodeGen/IntrinsicLowering.cpp</tt>.
|
<tt>LowerIntrinsicCall</tt> in <tt>lib/CodeGen/IntrinsicLowering.cpp</tt>.
|
||||||
Second, if it makes sense to lower the intrinsic to an expanded sequence of C
|
Second, if it makes sense to lower the intrinsic to an expanded sequence of
|
||||||
code in all cases, just emit the expansion in <tt>visitCallInst</tt> in
|
C code in all cases, just emit the expansion in <tt>visitCallInst</tt> in
|
||||||
<tt>Writer.cpp</tt>. If the intrinsic has some way to express it with GCC
|
<tt>Writer.cpp</tt>. If the intrinsic has some way to express it with GCC
|
||||||
(or any other compiler) extensions, it can be conditionally supported based on
|
(or any other compiler) extensions, it can be conditionally supported based
|
||||||
the compiler compiling the CBE output (see <tt>llvm.prefetch</tt> for an
|
on the compiler compiling the CBE output (see <tt>llvm.prefetch</tt> for an
|
||||||
example).
|
example). Third, if the intrinsic really has no way to be lowered, just
|
||||||
Third, if the intrinsic really has no way to be lowered, just have the code
|
have the code generator emit code that prints an error message and calls
|
||||||
generator emit code that prints an error message and calls abort if executed.
|
abort if executed.</dd>
|
||||||
</dd>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
<dt>Add support to the .td file for the target(s) of your choice in
|
<dt>Add support to the .td file for the target(s) of your choice in
|
||||||
<tt>lib/Target/*/*.td</tt>.</dt>
|
<tt>lib/Target/*/*.td</tt>.</dt>
|
||||||
|
|
||||||
@ -127,6 +125,7 @@ generator emit code that prints an error message and calls abort if executed.
|
|||||||
the intrinsic, though it may obviously require adding the instructions you
|
the intrinsic, though it may obviously require adding the instructions you
|
||||||
want to generate as well. There are lots of examples in the PowerPC and X86
|
want to generate as well. There are lots of examples in the PowerPC and X86
|
||||||
backend to follow.</dd>
|
backend to follow.</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user