1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/test/Transforms/MergeFunc
Craig Topper ea7e6b3857 Implementation of asm-goto support in LLVM
This patch accompanies the RFC posted here:
http://lists.llvm.org/pipermail/llvm-dev/2018-October/127239.html

This patch adds a new CallBr IR instruction to support asm-goto
inline assembly like gcc as used by the linux kernel. This
instruction is both a call instruction and a terminator
instruction with multiple successors. Only inline assembly
usage is supported today.

This also adds a new INLINEASM_BR opcode to SelectionDAG and
MachineIR to represent an INLINEASM block that is also
considered a terminator instruction.

There will likely be more bug fixes and optimizations to follow
this, but we felt it had reached a point where we would like to
switch to an incremental development model.

Patch by Craig Topper, Alexander Ivchenko, Mikhail Dvoretckii

Differential Revision: https://reviews.llvm.org/D53765

llvm-svn: 353563
2019-02-08 20:48:56 +00:00
..
2011-02-08-RemoveEqual.ll
2013-01-10-MergeFuncAssert.ll
address-spaces.ll
alias.ll [MergeFuncs] Generate alias instead of thunk if possible 2018-11-21 19:37:19 +00:00
alloca.ll
apply_function_attributes.ll
call-and-invoke-with-ranges.ll Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
constant-entire-value.ll
crash2.ll
crash.ll
external-before-local.ll
fold-weak.ll
functions.ll
gep-base-type.ll
inline-asm.ll Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
inttoptr-address-space.ll
inttoptr.ll
linkonce_odr.ll [MergeFunc] Erase unused duplicate functions if they are discardable 2019-01-11 17:56:35 +00:00
merge-block-address-other-function.ll
merge-block-address.ll
merge-const-ptr-and-int.ll
merge-different-vector-types.ll
merge-ptr-and-int.ll
merge-small-unnamed-addr.ll
merge-unnamed-addr-bitcast.ll
merge-unnamed-addr.ll
merge-weak-crash.ll
mergefunc-preserve-debug-info.ll
mergefunc-struct-return.ll
no-merge-block-address-different-labels.ll
no-merge-block-address-other-function.ll
no-merge-ptr-different-sizes.ll
no-merge-ptr-int-different-values.ll
nonzero-address-spaces.ll [IPO][AVR] Create new Functions in the default address space specified in the data layout 2018-12-18 09:52:52 +00:00
phi-check-blocks.ll
phi-speculation1.ll
phi-speculation2.ll
ptr-int-transitivity-1.ll
ptr-int-transitivity-2.ll
ptr-int-transitivity-3.ll
ranges-multiple.ll
ranges.ll
self-referential-global.ll
tailcall.ll [FunctionComparator] Consider tail call kinds 2019-01-17 00:29:14 +00:00
too-small.ll
undef-different-types.ll
unnamed-addr-reprocessing.ll
va_arg.ll [MergeFunc] Allow merging identical vararg functions using aliases 2019-01-19 02:46:22 +00:00
vector-GEP-crash.ll
vector.ll
vectors-and-arrays.ll
weak-small.ll