1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/test/Verifier
Sanjoy Das 3b791814db Introduce @llvm.experimental.deoptimize
Summary:
This intrinsic, together with deoptimization operand bundles, allow
frontends to express transfer of control and frame-local state from
one (typically more specialized, hence faster) version of a function
into another (typically more generic, hence slower) version.

In languages with a fully integrated managed runtime this intrinsic can
be used to implement "uncommon trap" like functionality.  In unmanaged
languages like C and C++, this intrinsic can be used to represent the
slow paths of specialized functions.

Note: this change does not address how `@llvm.experimental_deoptimize`
is lowered.  That will be done in a later change.

Reviewers: chandlerc, rnk, atrick, reames

Subscribers: llvm-commits, kmod, mjacob, maksfb, mcrosier, JosephTremoulet

Differential Revision: http://reviews.llvm.org/D17732

llvm-svn: 263281
2016-03-11 19:08:34 +00:00
..
2002-04-13-RetTypes.ll
2002-11-05-GetelementptrPointers.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2004-05-21-SwitchConstantMismatch.ll
2006-07-11-StoreStruct.ll
2006-10-15-AddrLabel.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
2006-12-12-IntrinsicDefine.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
2007-12-21-InvokeParamAttrs.ll
2008-01-11-VarargAttrs.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
2008-03-01-AllocaSized.ll AsmParser: Reject alloca with function type 2015-02-16 08:38:03 +00:00
2008-08-22-MemCpyAlignment.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
2008-11-15-RetVoid.ll
2009-05-29-InvokeResult1.ll
2009-05-29-InvokeResult2.ll
2009-05-29-InvokeResult3.ll
2010-08-07-PointerIntrinsic.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
alias.ll Disallow aliases to available_externally. 2015-11-26 19:22:59 +00:00
align-md.ll Add verification for align, dereferenceable, dereferenceable_or_null load metadata 2015-10-09 17:41:29 +00:00
AmbiguousPhi.ll
atomics.ll Polish atomic pointers 2015-12-17 22:09:19 +00:00
bitcast-address-space-nested-global-cycle.ll
bitcast-address-space-nested-global.ll
bitcast-address-space-through-constant-inttoptr-inside-gep-instruction.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
bitcast-address-space-through-constant-inttoptr.ll
bitcast-address-space-through-gep-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
bitcast-address-space-through-gep.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
bitcast-address-space-through-inttoptr.ll
bitcast-address-spaces.ll
bitcast-alias-address-space.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
bitcast-vector-pointer-as.ll
byval-1.ll
byval-4.ll
comdat2.ll
comdat3.ll Verifier: Unused comdats might not have a corresponding GV 2015-02-20 19:58:48 +00:00
comdat-decl1.ll Verifier: Forbid comdats on linker declarations. 2015-07-05 20:52:40 +00:00
comdat-decl2.ll Verifier: Forbid comdats on linker declarations. 2015-07-05 20:52:40 +00:00
comdat.ll
cttz-undef-arg.ll
dbg-null-retained-type.ll Verifier: Don't crash on null entries in debug info retained types list 2015-08-22 22:36:40 +00:00
dbg-typerefs.ll DI: Disallow uniquable DICompileUnits 2015-08-03 17:26:41 +00:00
dbg.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
deoptimize-intrinsic.ll Introduce @llvm.experimental.deoptimize 2016-03-11 19:08:34 +00:00
dereferenceable-md.ll Add verification for align, dereferenceable, dereferenceable_or_null load metadata 2015-10-09 17:41:29 +00:00
dominates.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
fpmath.ll
frameescape.ll Rename llvm.frameescape and llvm.framerecover to localescape and localrecover 2015-07-07 22:25:32 +00:00
func-dbg.ll [Verifier] Fix !dbg validation if Scope is the Subprogram 2015-12-06 23:05:38 +00:00
function-metadata-bad.ll Add function entry count metadata. 2015-05-13 15:13:45 +00:00
function-metadata-good.ll Add function entry count metadata. 2015-05-13 15:13:45 +00:00
gc_relocate_addrspace.ll [gc.statepoint] Change gc.statepoint intrinsic's return type to token type instead of i32 type 2015-12-26 07:54:32 +00:00
gc_relocate_operand.ll [gc.statepoint] Change gc.statepoint intrinsic's return type to token type instead of i32 type 2015-12-26 07:54:32 +00:00
gc_relocate_return.ll [Statepoints] Initial support for relocating vectors of pointers 2016-01-07 03:32:11 +00:00
gcread-ptrptr.ll
gcroot-alloca.ll
gcroot-meta.ll
gcroot-ptrptr.ll
gcwrite-ptrptr.ll
global-ctors.ll
ident-meta1.ll
ident-meta2.ll
ident-meta3.ll
ident-meta4.ll
inalloca1.ll
inalloca2.ll
inalloca3.ll
inalloca-vararg.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
invalid-eh.ll [Verifier] Don't abort on invalid cleanuprets 2016-03-01 18:59:50 +00:00
invalid-statepoint2.ll [gc.statepoint] Change gc.statepoint intrinsic's return type to token type instead of i32 type 2015-12-26 07:54:32 +00:00
invalid-statepoint.ll [gc.statepoint] Change gc.statepoint intrinsic's return type to token type instead of i32 type 2015-12-26 07:54:32 +00:00
invoke.ll [Verifier] Minor fix to error message; NFC 2016-02-29 22:04:25 +00:00
jumptable.ll
llvm.compiler_used-invalid-type.ll
llvm.dbg.declare-address.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
llvm.dbg.declare-expression.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
llvm.dbg.declare-variable.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
llvm.dbg.intrinsic-dbg-attachment.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
llvm.dbg.value-expression.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
llvm.dbg.value-value.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
llvm.dbg.value-variable.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
llvm.used-invalid-init2.ll
llvm.used-invalid-init.ll
llvm.used-invalid-type2.ll
llvm.used-invalid-type.ll
llvm.used-ptr-type.ll
mdcompositetype-templateparams-tuple.ll IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
mdcompositetype-templateparams.ll IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
memcpy.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
metadata-function-dbg.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
module-flags-1.ll
module-flags-2.ll Verifier: Check for null operands in !llvm.module.flags 2015-02-11 09:13:06 +00:00
module-flags-3.ll Verifier: Diagnose module flags which have null ID operands 2015-02-16 08:14:22 +00:00
musttail-invalid.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
musttail-valid.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
operand-bundles.ll Add a "gc-transition" operand bundle 2016-01-20 19:50:25 +00:00
PhiGrouping.ll
range-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
range-2.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
README.txt
recursive-struct-param.ll Fix an infinite recursion in the verifier caused by calling isSized on a recursive type. 2015-03-13 06:41:26 +00:00
recursive-type-1.ll
recursive-type-2.ll
recursive-type-3.ll
SelfReferential.ll
sret.ll
statepoint.ll [gc.statepoint] Change gc.statepoint intrinsic's return type to token type instead of i32 type 2015-12-26 07:54:32 +00:00
token1.ll [IR] Add token types 2015-08-14 05:09:07 +00:00
token2.ll [IR] Add token types 2015-08-14 05:09:07 +00:00
token3.ll [IR] Add token types 2015-08-14 05:09:07 +00:00
token4.ll [IR] Add token types 2015-08-14 05:09:07 +00:00
token5.ll [IR] Add token types 2015-08-14 05:09:07 +00:00
token6.ll [IR] Add token types 2015-08-14 05:09:07 +00:00
token7.ll [IR] Add token types 2015-08-14 05:09:07 +00:00
varargs-intrinsic.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00

This directory contains testcases that the verifier is supposed to detect as
malformed LLVM code.  Testcases for situations that the verifier incorrectly
identifies as malformed should go in the test/Assembler directory.