[opaque pointer type] Add textual IR support for explicit type parameter to the call...
authorDavid Blaikie <dblaikie@gmail.com>
Thu, 16 Apr 2015 23:24:18 +0000 (23:24 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Thu, 16 Apr 2015 23:24:18 +0000 (23:24 +0000)
commit32b845d223393d9f5e7317b9e754a52b79543de2
tree263ea3298fd0cb4aca310c254832561d29023ada
parent4906c5787661f305dd2d1a552b36fe0baa086bb9
[opaque pointer type] Add textual IR support for explicit type parameter to the call instruction

See r230786 and r230794 for similar changes to gep and load
respectively.

Call is a bit different because it often doesn't have a single explicit
type - usually the type is deduced from the arguments, and just the
return type is explicit. In those cases there's no need to change the
IR.

When that's not the case, the IR usually contains the pointer type of
the first operand - but since typed pointers are going away, that
representation is insufficient so I'm just stripping the "pointerness"
of the explicit type away.

This does make the IR a bit weird - it /sort of/ reads like the type of
the first operand: "call void () %x(" but %x is actually of type "void
()*" and will eventually be just of type "ptr". But this seems not too
bad and I don't think it would benefit from repeating the type
("void (), void () * %x(" and then eventually "void (), ptr %x(") as has
been done with gep and load.

This also has a side benefit: since the explicit type is no longer a
pointer, there's no ambiguity between an explicit type and a function
that returns a function pointer. Previously this case needed an explicit
type (eg: a function returning a void() function was written as
"call void () () * @x(" rather than "call void () * @x(" because of the
ambiguity between a function returning a pointer to a void() function
and a function returning void).

No ambiguity means even function pointer return types can just be
written alone, without writing the whole function's type.

This leaves /only/ the varargs case where the explicit type is required.

Given the special type syntax in call instructions, the regex-fu used
for migration was a bit more involved in its own unique way (as every
one of these is) so here it is. Use it in conjunction with the apply.sh
script and associated find/xargs commands I've provided in rr230786 to
migrate your out of tree tests. Do let me know if any of this doesn't
cover your cases & we can iterate on a more general script/regexes to
help others with out of tree tests.

About 9 test cases couldn't be automatically migrated - half of those
were functions returning function pointers, where I just had to manually
delete the function argument types now that we didn't need an explicit
function type there. The other half were typedefs of function types used
in calls - just had to manually drop the * from those.

import fileinput
import sys
import re

pat = re.compile(r'((?:=|:|^|\s)call\s(?:[^@]*?))(\s*$|\s*(?:(?:\[\[[a-zA-Z0-9_]+\]\]|[@%](?:(")?[\\\?@a-zA-Z0-9_.]*?(?(3)"|)|{{.*}}))(?:\(|$)|undef|inttoptr|bitcast|null|asm).*$)')
addrspace_end = re.compile(r"addrspace\(\d+\)\s*\*$")
func_end = re.compile("(?:void.*|\)\s*)\*$")

def conv(match, line):
  if not match or re.search(addrspace_end, match.group(1)) or not re.search(func_end, match.group(1)):
    return line
  return line[:match.start()] + match.group(1)[:match.group(1).rfind('*')].rstrip() + match.group(2) + line[match.end():]

for line in sys.stdin:
  sys.stdout.write(conv(re.search(pat, line), line))

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@235145 91177308-0d34-0410-b5e6-96231b3b80d8
560 files changed:
include/llvm/IR/Instructions.h
lib/AsmParser/LLParser.cpp
lib/IR/AsmWriter.cpp
test/Analysis/BasicAA/2006-03-03-BadArraySubscript.ll
test/Analysis/BasicAA/2008-04-15-Byval.ll
test/Analysis/BasicAA/byval.ll
test/Analysis/BlockFrequencyInfo/loops_with_profile_info.ll
test/Analysis/CallGraph/2008-09-09-DirectCall.ll
test/Analysis/GlobalsModRef/volatile-instrs.ll
test/Analysis/LazyCallGraph/basic.ll
test/Analysis/ScalarEvolution/2008-11-18-LessThanOrEqual.ll
test/Analysis/ScalarEvolution/2012-03-26-LoadConstant.ll
test/Analysis/ScalarEvolution/max-trip-count.ll
test/Analysis/ScalarEvolution/zext-signed-addrec.ll
test/Analysis/ValueTracking/memory-dereferenceable.ll
test/Assembler/2002-07-25-ReturnPtrFunction.ll
test/Assembler/2003-05-15-AssemblerProblem.ll
test/Assembler/2008-01-11-VarargAttrs.ll
test/Assembler/musttail-invalid-1.ll
test/Assembler/musttail-invalid-2.ll
test/Assembler/musttail.ll
test/Bitcode/miscInstructions.3.2.ll
test/CodeGen/AArch64/argument-blocks.ll
test/CodeGen/AArch64/arm64-2012-06-06-FPToUI.ll
test/CodeGen/AArch64/arm64-aapcs.ll
test/CodeGen/AArch64/arm64-abi-varargs.ll
test/CodeGen/AArch64/arm64-anyregcc-crash.ll
test/CodeGen/AArch64/arm64-anyregcc.ll
test/CodeGen/AArch64/arm64-fcopysign.ll
test/CodeGen/AArch64/arm64-join-reserved.ll
test/CodeGen/AArch64/arm64-patchpoint-scratch-regs.ll
test/CodeGen/AArch64/arm64-patchpoint-webkit_jscc.ll
test/CodeGen/AArch64/arm64-patchpoint.ll
test/CodeGen/AArch64/arm64-stackmap-nops.ll
test/CodeGen/AArch64/arm64-stackmap.ll
test/CodeGen/AArch64/br-to-eh-lpad.ll
test/CodeGen/AArch64/dag-combine-invaraints.ll
test/CodeGen/AArch64/stackmap-liveness.ll
test/CodeGen/ARM/2007-03-21-JoinIntervalsCrash.ll
test/CodeGen/ARM/2007-04-03-PEIBug.ll
test/CodeGen/ARM/2007-04-03-UndefinedSymbol.ll
test/CodeGen/ARM/2007-05-03-BadPostIndexedLd.ll
test/CodeGen/ARM/2007-05-07-tailmerge-1.ll
test/CodeGen/ARM/2007-05-09-tailmerge-2.ll
test/CodeGen/ARM/2007-05-22-tailmerge-3.ll
test/CodeGen/ARM/2008-03-07-RegScavengerAssert.ll
test/CodeGen/ARM/2008-04-10-ScavengerAssert.ll
test/CodeGen/ARM/2009-02-16-SpillerBug.ll
test/CodeGen/ARM/2009-04-08-FREM.ll
test/CodeGen/ARM/2009-05-07-RegAllocLocal.ll
test/CodeGen/ARM/2009-05-11-CodePlacementCrash.ll
test/CodeGen/ARM/2009-06-02-ISelCrash.ll
test/CodeGen/ARM/2009-06-30-RegScavengerAssert.ll
test/CodeGen/ARM/2009-06-30-RegScavengerAssert2.ll
test/CodeGen/ARM/2009-10-27-double-align.ll
test/CodeGen/ARM/2010-05-18-LocalAllocCrash.ll
test/CodeGen/ARM/2010-06-21-LdStMultipleBug.ll
test/CodeGen/ARM/2010-07-26-GlobalMerge.ll
test/CodeGen/ARM/2011-04-15-AndVFlagPeepholeBug.ll
test/CodeGen/ARM/2011-04-15-RegisterCmpPeephole.ll
test/CodeGen/ARM/2011-10-26-ExpandUnalignedLoadCrash.ll
test/CodeGen/ARM/2012-10-04-AAPCS-byval-align8.ll
test/CodeGen/ARM/2012-10-04-FixedFrame-vs-byval.ll
test/CodeGen/ARM/2013-04-21-AAPCS-VA-C.1.cp.ll
test/CodeGen/ARM/aliases.ll
test/CodeGen/ARM/arguments.ll
test/CodeGen/ARM/arm-asm.ll
test/CodeGen/ARM/bx_fold.ll
test/CodeGen/ARM/cache-intrinsic.ll
test/CodeGen/ARM/compare-call.ll
test/CodeGen/ARM/debug-info-branch-folding.ll
test/CodeGen/ARM/debug-info-d16-reg.ll
test/CodeGen/ARM/debug-info-qreg.ll
test/CodeGen/ARM/debug-info-s16-reg.ll
test/CodeGen/ARM/fast-isel-vararg.ll
test/CodeGen/ARM/fcopysign.ll
test/CodeGen/ARM/ghc-tcreturn-lowered.ll
test/CodeGen/ARM/ifcvt6.ll
test/CodeGen/ARM/indirectbr-2.ll
test/CodeGen/ARM/neon-spfp.ll
test/CodeGen/ARM/optselect-regclass.ll
test/CodeGen/ARM/shifter_operand.ll
test/CodeGen/ARM/stack-protector-bmovpcb_call.ll
test/CodeGen/ARM/stm.ll
test/CodeGen/ARM/uint64tof64.ll
test/CodeGen/ARM/vargs.ll
test/CodeGen/ARM/vector-spilling.ll
test/CodeGen/ARM/vfp.ll
test/CodeGen/ARM/weak2.ll
test/CodeGen/BPF/ex1.ll
test/CodeGen/BPF/sanity.ll
test/CodeGen/CPP/2009-05-01-Long-Double.ll
test/CodeGen/Generic/2003-07-06-BadIntCmp.ll
test/CodeGen/Generic/2003-07-07-BadLongConst.ll
test/CodeGen/Generic/2003-07-08-BadCastToBool.ll
test/CodeGen/Generic/2003-07-29-BadConstSbyte.ll
test/CodeGen/Generic/2005-12-01-Crash.ll
test/CodeGen/Generic/2006-05-06-GEP-Cast-Sink-Crash.ll
test/CodeGen/Generic/2008-02-04-Ctlz.ll
test/CodeGen/Generic/2008-02-25-NegateZero.ll
test/CodeGen/Generic/ConstantExprLowering.ll
test/CodeGen/Generic/PBQP.ll
test/CodeGen/Generic/add-with-overflow-128.ll
test/CodeGen/Generic/add-with-overflow-24.ll
test/CodeGen/Generic/add-with-overflow.ll
test/CodeGen/Generic/badarg6.ll
test/CodeGen/Generic/builtin-expect.ll
test/CodeGen/Generic/cast-fp.ll
test/CodeGen/Generic/constindices.ll
test/CodeGen/Generic/hello.ll
test/CodeGen/Generic/negintconst.ll
test/CodeGen/Generic/overloaded-intrinsic-name.ll
test/CodeGen/Generic/print-add.ll
test/CodeGen/Generic/print-arith-fp.ll
test/CodeGen/Generic/print-arith-int.ll
test/CodeGen/Generic/print-int.ll
test/CodeGen/Generic/print-mul-exp.ll
test/CodeGen/Generic/print-mul.ll
test/CodeGen/Generic/print-shift.ll
test/CodeGen/Hexagon/i16_VarArg.ll
test/CodeGen/Hexagon/i1_VarArg.ll
test/CodeGen/Hexagon/i8_VarArg.ll
test/CodeGen/Mips/alloca.ll
test/CodeGen/Mips/analyzebranch.ll
test/CodeGen/Mips/and1.ll
test/CodeGen/Mips/atomicops.ll
test/CodeGen/Mips/cache-intrinsic.ll
test/CodeGen/Mips/cconv/arguments-varargs-small-structs-byte.ll
test/CodeGen/Mips/cconv/arguments-varargs-small-structs-combinations.ll
test/CodeGen/Mips/cconv/arguments-varargs-small-structs-multiple-args.ll
test/CodeGen/Mips/cfi_offset.ll
test/CodeGen/Mips/eh-return32.ll
test/CodeGen/Mips/eh-return64.ll
test/CodeGen/Mips/fpbr.ll
test/CodeGen/Mips/gprestore.ll
test/CodeGen/Mips/helloworld.ll
test/CodeGen/Mips/hf16call32.ll
test/CodeGen/Mips/hfptrcall.ll
test/CodeGen/Mips/i32k.ll
test/CodeGen/Mips/internalfunc.ll
test/CodeGen/Mips/lb1.ll
test/CodeGen/Mips/lbu1.ll
test/CodeGen/Mips/lh1.ll
test/CodeGen/Mips/lhu1.ll
test/CodeGen/Mips/mbrsize4a.ll
test/CodeGen/Mips/micromips-addiu.ll
test/CodeGen/Mips/micromips-andi.ll
test/CodeGen/Mips/mips16_32_8.ll
test/CodeGen/Mips/mips16ex.ll
test/CodeGen/Mips/neg1.ll
test/CodeGen/Mips/not1.ll
test/CodeGen/Mips/or1.ll
test/CodeGen/Mips/return-vector.ll
test/CodeGen/Mips/sb1.ll
test/CodeGen/Mips/selnek.ll
test/CodeGen/Mips/sh1.ll
test/CodeGen/Mips/sll1.ll
test/CodeGen/Mips/sll2.ll
test/CodeGen/Mips/sra1.ll
test/CodeGen/Mips/sra2.ll
test/CodeGen/Mips/srl1.ll
test/CodeGen/Mips/srl2.ll
test/CodeGen/Mips/stchar.ll
test/CodeGen/Mips/stldst.ll
test/CodeGen/Mips/sub1.ll
test/CodeGen/Mips/sub2.ll
test/CodeGen/Mips/tailcall.ll
test/CodeGen/Mips/xor1.ll
test/CodeGen/NVPTX/symbol-naming.ll
test/CodeGen/PowerPC/2006-10-13-Miscompile.ll
test/CodeGen/PowerPC/2006-10-17-brcc-miscompile.ll
test/CodeGen/PowerPC/2007-02-23-lr-saved-twice.ll
test/CodeGen/PowerPC/2007-05-22-tailmerge-3.ll
test/CodeGen/PowerPC/2007-09-07-LoadStoreIdxForms.ll
test/CodeGen/PowerPC/2007-09-08-unaligned.ll
test/CodeGen/PowerPC/2007-10-21-LocalRegAllocAssert.ll
test/CodeGen/PowerPC/2007-10-21-LocalRegAllocAssert2.ll
test/CodeGen/PowerPC/2008-04-23-CoalescerCrash.ll
test/CodeGen/PowerPC/2008-07-24-PPC64-CCBug.ll
test/CodeGen/PowerPC/2008-09-12-CoalescerBug.ll
test/CodeGen/PowerPC/2010-03-09-indirect-call.ll
test/CodeGen/PowerPC/2011-12-05-NoSpillDupCR.ll
test/CodeGen/PowerPC/2011-12-06-SpillAndRestoreCR.ll
test/CodeGen/PowerPC/and-branch.ll
test/CodeGen/PowerPC/branch-opt.ll
test/CodeGen/PowerPC/cr1eq-no-extra-moves.ll
test/CodeGen/PowerPC/cr1eq.ll
test/CodeGen/PowerPC/cr_spilling.ll
test/CodeGen/PowerPC/ctrloop-sums.ll
test/CodeGen/PowerPC/ppc32-i1-vaarg.ll
test/CodeGen/PowerPC/ppc32-pic-large.ll
test/CodeGen/PowerPC/ppc32-pic.ll
test/CodeGen/PowerPC/ppc64-anyregcc-crash.ll
test/CodeGen/PowerPC/ppc64-anyregcc.ll
test/CodeGen/PowerPC/ppc64-patchpoint.ll
test/CodeGen/PowerPC/ppc64-stackmap-nops.ll
test/CodeGen/PowerPC/ppc64-stackmap.ll
test/CodeGen/PowerPC/ppcf128-3.ll
test/CodeGen/PowerPC/remat-imm.ll
test/CodeGen/PowerPC/resolvefi-basereg.ll
test/CodeGen/PowerPC/s000-alias-misched.ll
test/CodeGen/PowerPC/stack-protector.ll
test/CodeGen/PowerPC/trampoline.ll
test/CodeGen/PowerPC/varargs-struct-float.ll
test/CodeGen/PowerPC/vsx-spill-norwstore.ll
test/CodeGen/SPARC/2008-10-10-InlineAsmRegOperand.ll
test/CodeGen/SPARC/2011-01-11-Call.ll
test/CodeGen/SPARC/2011-01-19-DelaySlot.ll
test/CodeGen/SPARC/64abi.ll
test/CodeGen/SPARC/setjmp.ll
test/CodeGen/SPARC/varargs.ll
test/CodeGen/Thumb/2007-01-31-RegInfoAssert.ll
test/CodeGen/Thumb/2007-05-05-InvalidPushPop.ll
test/CodeGen/Thumb/2011-05-11-DAGLegalizer.ll
test/CodeGen/Thumb/2011-06-16-NoGPRs.ll
test/CodeGen/Thumb/asmprinter-bug.ll
test/CodeGen/Thumb/vargs.ll
test/CodeGen/Thumb2/2009-07-21-ISelBug.ll
test/CodeGen/Thumb2/2009-08-04-CoalescerAssert.ll
test/CodeGen/Thumb2/2009-08-04-CoalescerBug.ll
test/CodeGen/Thumb2/2009-08-04-ScavengerAssert.ll
test/CodeGen/Thumb2/2009-08-21-PostRAKill4.ll
test/CodeGen/Thumb2/2009-12-01-LoopIVUsers.ll
test/CodeGen/Thumb2/2010-06-14-NEONCoalescer.ll
test/CodeGen/Thumb2/2010-08-10-VarSizedAllocaBug.ll
test/CodeGen/Thumb2/large-call.ll
test/CodeGen/Thumb2/thumb2-ifcvt2.ll
test/CodeGen/Thumb2/thumb2-tbb.ll
test/CodeGen/WinEH/cppeh-alloca-sink.ll
test/CodeGen/WinEH/cppeh-catch-all.ll
test/CodeGen/WinEH/cppeh-catch-scalar.ll
test/CodeGen/WinEH/cppeh-catch-unwind.ll
test/CodeGen/WinEH/cppeh-frame-vars.ll
test/CodeGen/WinEH/cppeh-inalloca.ll
test/CodeGen/WinEH/cppeh-min-unwind.ll
test/CodeGen/WinEH/cppeh-multi-catch.ll
test/CodeGen/WinEH/cppeh-nested-1.ll
test/CodeGen/WinEH/cppeh-nested-2.ll
test/CodeGen/WinEH/cppeh-nested-3.ll
test/CodeGen/WinEH/cppeh-nonalloca-frame-values.ll
test/CodeGen/WinEH/cppeh-prepared-catch-reordered.ll
test/CodeGen/WinEH/cppeh-prepared-catch.ll
test/CodeGen/WinEH/cppeh-prepared-cleanups.ll
test/CodeGen/WinEH/seh-catch-all.ll
test/CodeGen/WinEH/seh-inlined-finally.ll
test/CodeGen/WinEH/seh-outlined-finally.ll
test/CodeGen/WinEH/seh-simple.ll
test/CodeGen/X86/2006-10-13-CycleInDAG.ll
test/CodeGen/X86/2006-10-19-SwitchUnnecessaryBranching.ll
test/CodeGen/X86/2006-11-12-CSRetCC.ll
test/CodeGen/X86/2006-12-19-IntelSyntax.ll
test/CodeGen/X86/2007-02-16-BranchFold.ll
test/CodeGen/X86/2007-02-19-LiveIntervalAssert.ll
test/CodeGen/X86/2007-05-05-VecCastExpand.ll
test/CodeGen/X86/2007-05-14-LiveIntervalAssert.ll
test/CodeGen/X86/2007-07-10-StackerAssert.ll
test/CodeGen/X86/2007-10-15-CoalescerCrash.ll
test/CodeGen/X86/2007-11-04-LiveIntervalCrash.ll
test/CodeGen/X86/2008-02-18-TailMergingBug.ll
test/CodeGen/X86/2008-04-09-BranchFolding.ll
test/CodeGen/X86/2008-04-15-LiveVariableBug.ll
test/CodeGen/X86/2008-05-12-tailmerge-5.ll
test/CodeGen/X86/2008-07-16-CoalescerCrash.ll
test/CodeGen/X86/2008-08-06-CmpStride.ll
test/CodeGen/X86/2008-08-31-EH_RETURN64.ll
test/CodeGen/X86/2008-09-09-LinearScanBug.ll
test/CodeGen/X86/2008-09-11-CoalescerBug.ll
test/CodeGen/X86/2008-09-11-CoalescerBug2.ll
test/CodeGen/X86/2008-10-11-CallCrash.ll
test/CodeGen/X86/2008-10-13-CoalescerBug.ll
test/CodeGen/X86/2008-11-06-testb.ll
test/CodeGen/X86/2008-11-29-ULT-Sign.ll
test/CodeGen/X86/2008-12-01-SpillerAssert.ll
test/CodeGen/X86/2008-12-19-EarlyClobberBug.ll
test/CodeGen/X86/2009-02-26-MachineLICMBug.ll
test/CodeGen/X86/2009-03-25-TestBug.ll
test/CodeGen/X86/2009-04-13-2AddrAssert.ll
test/CodeGen/X86/2009-04-14-IllegalRegs.ll
test/CodeGen/X86/2009-05-19-SingleElementExtractElement.ll
test/CodeGen/X86/2009-08-23-SubRegReuseUndo.ll
test/CodeGen/X86/2010-02-23-RematImplicitSubreg.ll
test/CodeGen/X86/2010-05-28-Crash.ll
test/CodeGen/X86/2010-06-15-FastAllocEarlyCLobber.ll
test/CodeGen/X86/2010-08-04-MaskedSignedCompare.ll
test/CodeGen/X86/2011-01-24-DbgValue-Before-Use.ll
test/CodeGen/X86/2011-02-23-UnfoldBug.ll
test/CodeGen/X86/2011-03-02-DAGCombiner.ll
test/CodeGen/X86/2011-09-14-valcoalesce.ll
test/CodeGen/X86/2011-10-12-MachineCSE.ll
test/CodeGen/X86/2012-09-28-CGPBug.ll
test/CodeGen/X86/2012-11-30-misched-dbg.ll
test/CodeGen/X86/2014-08-29-CompactUnwind.ll
test/CodeGen/X86/aliases.ll
test/CodeGen/X86/anyregcc-crash.ll
test/CodeGen/X86/anyregcc.ll
test/CodeGen/X86/avoid-loop-align.ll
test/CodeGen/X86/avx-varargs-x86_64.ll
test/CodeGen/X86/bool-zext.ll
test/CodeGen/X86/brcond.ll
test/CodeGen/X86/byval-align.ll
test/CodeGen/X86/byval6.ll
test/CodeGen/X86/cache-intrinsic.ll
test/CodeGen/X86/cmov.ll
test/CodeGen/X86/cmp.ll
test/CodeGen/X86/coalescer-remat.ll
test/CodeGen/X86/crash.ll
test/CodeGen/X86/dagcombine-and-setcc.ll
test/CodeGen/X86/discontiguous-loops.ll
test/CodeGen/X86/dllimport-x86_64.ll
test/CodeGen/X86/dllimport.ll
test/CodeGen/X86/early-ifcvt.ll
test/CodeGen/X86/extern_weak.ll
test/CodeGen/X86/fast-isel-x86-64.ll
test/CodeGen/X86/fltused.ll
test/CodeGen/X86/fltused_function_pointer.ll
test/CodeGen/X86/fp-stack-O0.ll
test/CodeGen/X86/fp-stack-ret-store.ll
test/CodeGen/X86/frameescape.ll
test/CodeGen/X86/h-registers-3.ll
test/CodeGen/X86/hoist-common.ll
test/CodeGen/X86/invalid-shift-immediate.ll
test/CodeGen/X86/jump_sign.ll
test/CodeGen/X86/licm-nested.ll
test/CodeGen/X86/licm-symbol.ll
test/CodeGen/X86/lsr-normalization.ll
test/CodeGen/X86/machine-cse.ll
test/CodeGen/X86/memcmp.ll
test/CodeGen/X86/misched-code-difference-with-debug.ll
test/CodeGen/X86/mmx-arg-passing-x86-64.ll
test/CodeGen/X86/movtopush.ll
test/CodeGen/X86/musttail-fastcall.ll
test/CodeGen/X86/musttail-varargs.ll
test/CodeGen/X86/or-branch.ll
test/CodeGen/X86/patchpoint-webkit_jscc.ll
test/CodeGen/X86/patchpoint.ll
test/CodeGen/X86/phys-reg-local-regalloc.ll
test/CodeGen/X86/pic.ll
test/CodeGen/X86/pr1489.ll
test/CodeGen/X86/pr18023.ll
test/CodeGen/X86/pr2326.ll
test/CodeGen/X86/pr2656.ll
test/CodeGen/X86/pr2982.ll
test/CodeGen/X86/pr3244.ll
test/CodeGen/X86/pr3250.ll
test/CodeGen/X86/pr3457.ll
test/CodeGen/X86/rd-mod-wr-eflags.ll
test/CodeGen/X86/scalarize-bitcast.ll
test/CodeGen/X86/seh-safe-div.ll
test/CodeGen/X86/sibcall.ll
test/CodeGen/X86/smul-with-overflow.ll
test/CodeGen/X86/sse-varargs.ll
test/CodeGen/X86/stack-protector.ll
test/CodeGen/X86/stackmap-fast-isel.ll
test/CodeGen/X86/stackmap-large-constants.ll
test/CodeGen/X86/stackmap-liveness.ll
test/CodeGen/X86/stackmap-nops.ll
test/CodeGen/X86/stackmap-shadow-optimization.ll
test/CodeGen/X86/stackmap.ll
test/CodeGen/X86/statepoint-allocas.ll
test/CodeGen/X86/statepoint-call-lowering.ll
test/CodeGen/X86/statepoint-forward.ll
test/CodeGen/X86/statepoint-stack-usage.ll
test/CodeGen/X86/statepoint-stackmap-format.ll
test/CodeGen/X86/sub-with-overflow.ll
test/CodeGen/X86/switch-crit-edge-constant.ll
test/CodeGen/X86/switch-or.ll
test/CodeGen/X86/tail-call-win64.ll
test/CodeGen/X86/tailcall-64.ll
test/CodeGen/X86/tailcall-fastisel.ll
test/CodeGen/X86/twoaddr-coalesce.ll
test/CodeGen/X86/umul-with-carry.ll
test/CodeGen/X86/utf16-cfstrings.ll
test/CodeGen/X86/vararg-callee-cleanup.ll
test/CodeGen/X86/vararg_tailcall.ll
test/CodeGen/X86/variadic-node-pic.ll
test/CodeGen/X86/x86-64-asm.ll
test/CodeGen/X86/x86-64-varargs.ll
test/CodeGen/X86/xmulo.ll
test/CodeGen/X86/xor-icmp.ll
test/CodeGen/XCore/llvm-intrinsics.ll
test/DebugInfo/2009-11-10-CurrentFn.ll
test/DebugInfo/Mips/fn-call-line.ll
test/DebugInfo/Sparc/gnu-window-save.ll
test/DebugInfo/SystemZ/variable-loc.ll
test/DebugInfo/X86/block-capture.ll
test/DebugInfo/X86/dbg-value-const-byref.ll
test/DebugInfo/X86/dbg-value-range.ll
test/DebugInfo/X86/formal_parameter.ll
test/DebugInfo/X86/rvalue-ref.ll
test/DebugInfo/X86/subregisters.ll
test/DebugInfo/multiline.ll
test/ExecutionEngine/MCJIT/2002-12-16-ArgTest.ll
test/ExecutionEngine/MCJIT/2008-06-05-APInt-OverAShr.ll
test/ExecutionEngine/MCJIT/fpbitcast.ll
test/ExecutionEngine/MCJIT/hello2.ll
test/ExecutionEngine/OrcMCJIT/2002-12-16-ArgTest.ll
test/ExecutionEngine/OrcMCJIT/2008-06-05-APInt-OverAShr.ll
test/ExecutionEngine/OrcMCJIT/fpbitcast.ll
test/ExecutionEngine/OrcMCJIT/hello2.ll
test/ExecutionEngine/fma3-jit.ll
test/ExecutionEngine/frem.ll
test/ExecutionEngine/test-interp-vec-loadstore.ll
test/Feature/aliases.ll
test/Feature/attributes.ll
test/Feature/paramattrs.ll
test/Feature/testvarargs.ll
test/Instrumentation/DataFlowSanitizer/abilist.ll
test/Instrumentation/MemorySanitizer/instrumentation-with-call-threshold.ll
test/Instrumentation/MemorySanitizer/msan_basic.ll
test/Integer/2007-01-19-TruncSext.ll
test/LTO/X86/keep-used-puts-during-instcombine.ll
test/LTO/X86/no-undefined-puts-when-implemented.ll
test/Linker/Inputs/basiclink.b.ll
test/MC/ARM/elf-reloc-02.ll
test/MC/ARM/elf-reloc-03.ll
test/MC/X86/stackmap-nops.ll
test/Other/lint.ll
test/Transforms/ArgumentPromotion/variadic.ll
test/Transforms/CodeGenPrepare/statepoint-relocate.ll
test/Transforms/ConstantHoisting/X86/stackmap.ll
test/Transforms/DeadArgElim/2007-10-18-VarargsReturn.ll
test/Transforms/DeadArgElim/2007-12-20-ParamAttrs.ll
test/Transforms/DeadArgElim/2008-01-16-VarargsParamAttrs.ll
test/Transforms/DeadArgElim/2013-05-17-VarargsAndBlockAddress.ll
test/Transforms/DeadArgElim/dbginfo.ll
test/Transforms/DeadArgElim/dead_vaargs.ll
test/Transforms/DeadArgElim/variadic_safety.ll
test/Transforms/FunctionAttrs/nocapture.ll
test/Transforms/FunctionAttrs/readattrs.ll
test/Transforms/GCOVProfiling/return-block.ll
test/Transforms/GVN/2007-07-31-NoDomInherit.ll
test/Transforms/GVN/2008-02-12-UndefLoad.ll
test/Transforms/GVN/2009-02-17-LoadPRECrash.ll
test/Transforms/GVN/invariant-load.ll
test/Transforms/GVN/pre-basic-add.ll
test/Transforms/GVN/pre-compare.ll
test/Transforms/GVN/rle-must-alias.ll
test/Transforms/GlobalDCE/2003-07-01-SelfReference.ll
test/Transforms/GlobalOpt/2007-11-09-GEP-GEP-Crash.ll
test/Transforms/GlobalOpt/2009-02-15-ResolveAlias.ll
test/Transforms/GlobalOpt/constantexpr-dangle.ll
test/Transforms/IndVarSimplify/2012-07-17-lftr-undef.ll
test/Transforms/IndVarSimplify/eliminate-max.ll
test/Transforms/IndVarSimplify/sink-alloca.ll
test/Transforms/IndVarSimplify/udiv.ll
test/Transforms/Inline/devirtualize-2.ll
test/Transforms/Inline/frameescape.ll
test/Transforms/Inline/inline-musttail-varargs.ll
test/Transforms/Inline/inline_ssp.ll
test/Transforms/InstCombine/2003-08-12-AllocaNonNull.ll
test/Transforms/InstCombine/2003-11-03-VarargsCallBug.ll
test/Transforms/InstCombine/2007-02-01-LoadSinkAlloca.ll
test/Transforms/InstCombine/2007-02-07-PointerCast.ll
test/Transforms/InstCombine/2007-11-25-CompatibleAttributes.ll
test/Transforms/InstCombine/2008-01-14-VarArgTrampoline.ll
test/Transforms/InstCombine/2008-04-22-ByValBitcast.ll
test/Transforms/InstCombine/2008-05-08-LiveStoreDelete.ll
test/Transforms/InstCombine/2008-05-08-StrLenSink.ll
test/Transforms/InstCombine/2008-06-08-ICmpPHI.ll
test/Transforms/InstCombine/2009-01-08-AlignAlloca.ll
test/Transforms/InstCombine/2009-01-19-fmod-constant-float-specials.ll
test/Transforms/InstCombine/2010-05-30-memcpy-Struct.ll
test/Transforms/InstCombine/2012-02-13-FCmp.ll
test/Transforms/InstCombine/alloca.ll
test/Transforms/InstCombine/call.ll
test/Transforms/InstCombine/call2.ll
test/Transforms/InstCombine/cast.ll
test/Transforms/InstCombine/debug-line.ll
test/Transforms/InstCombine/err-rep-cold.ll
test/Transforms/InstCombine/fprintf-1.ll
test/Transforms/InstCombine/gc.relocate.ll
test/Transforms/InstCombine/getelementptr.ll
test/Transforms/InstCombine/osx-names.ll
test/Transforms/InstCombine/pr2996.ll
test/Transforms/InstCombine/pr8547.ll
test/Transforms/InstCombine/printf-1.ll
test/Transforms/InstCombine/printf-2.ll
test/Transforms/InstCombine/simplify-libcalls.ll
test/Transforms/InstCombine/sprintf-1.ll
test/Transforms/InstCombine/sqrt.ll
test/Transforms/InstCombine/srem1.ll
test/Transforms/InstCombine/statepoint.ll
test/Transforms/InstCombine/urem-simplify-bug.ll
test/Transforms/InstSimplify/undef.ll
test/Transforms/JumpThreading/2010-08-26-and.ll
test/Transforms/JumpThreading/assume.ll
test/Transforms/JumpThreading/indirectbr.ll
test/Transforms/JumpThreading/thread-loads.ll
test/Transforms/LICM/2011-04-09-RAUW-AST.ll
test/Transforms/LoopInterchange/interchange.ll
test/Transforms/LoopRotate/PhiRename-1.ll
test/Transforms/LoopStrengthReduce/2008-08-13-CmpStride.ll
test/Transforms/LoopStrengthReduce/2008-09-09-Overflow.ll
test/Transforms/LoopStrengthReduce/2009-01-13-nonconstant-stride-outside-loop.ll
test/Transforms/LoopStrengthReduce/2012-07-18-LimitReassociate.ll
test/Transforms/LoopStrengthReduce/X86/2008-08-14-ShadowIV.ll
test/Transforms/LoopStrengthReduce/X86/pr17473.ll
test/Transforms/LoopStrengthReduce/different-type-ivs.ll
test/Transforms/LoopStrengthReduce/pr18165.ll
test/Transforms/LoopUnswitch/2008-06-02-DomInfo.ll
test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll
test/Transforms/LowerExpectIntrinsic/basic.ll
test/Transforms/MemCpyOpt/form-memset.ll
test/Transforms/ObjCARC/basic.ll
test/Transforms/ObjCARC/contract.ll
test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
test/Transforms/ObjCARC/intrinsic-use-isolated.ll
test/Transforms/ObjCARC/intrinsic-use.ll
test/Transforms/PhaseOrdering/PR6627.ll
test/Transforms/PlaceSafepoints/basic.ll
test/Transforms/Reassociate/looptest.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-1.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-10.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-11.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-2.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-3.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-4.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-5.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-6.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-7.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-8.ll
test/Transforms/RewriteStatepointsForGC/base-pointers-9.ll
test/Transforms/RewriteStatepointsForGC/base-pointers.ll
test/Transforms/RewriteStatepointsForGC/basics.ll
test/Transforms/RewriteStatepointsForGC/live-vector.ll
test/Transforms/RewriteStatepointsForGC/liveness-basics.ll
test/Transforms/RewriteStatepointsForGC/preprocess.ll
test/Transforms/RewriteStatepointsForGC/relocate_invoke_result.ll
test/Transforms/RewriteStatepointsForGC/relocation.ll
test/Transforms/SCCP/2009-05-27-VectorOperandZero.ll
test/Transforms/SCCP/retvalue-undef.ll
test/Transforms/SLPVectorizer/X86/barriercall.ll
test/Transforms/SLPVectorizer/X86/compare-reduce.ll
test/Transforms/SLPVectorizer/X86/cross_block_slp.ll
test/Transforms/SLPVectorizer/X86/in-tree-user.ll
test/Transforms/SLPVectorizer/X86/multi_block.ll
test/Transforms/SLPVectorizer/X86/pr16628.ll
test/Transforms/SampleProfile/branch.ll
test/Transforms/SampleProfile/calls.ll
test/Transforms/SampleProfile/fnptr.ll
test/Transforms/SampleProfile/propagate.ll
test/Transforms/ScalarRepl/inline-vector.ll
test/Transforms/ScalarRepl/only-memcpy-uses.ll
test/Transforms/ScalarRepl/phi-cycle.ll
test/Transforms/SimplifyCFG/2007-12-21-Crash.ll
test/Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll
test/Transforms/SimplifyCFG/2008-12-16-DCECond.ll
test/Transforms/SimplifyCFG/common-dest-folding.ll
test/Transforms/SimplifyCFG/hoist-dbgvalue.ll
test/Transforms/SimplifyCFG/volatile-phioper.ll
test/Transforms/TailDup/2008-06-11-AvoidDupLoopHeader.ll
test/Verifier/2008-01-11-VarargAttrs.ll
test/Verifier/frameescape.ll
test/Verifier/inalloca-vararg.ll
test/Verifier/invalid-statepoint.ll
test/Verifier/invalid-statepoint2.ll
test/Verifier/musttail-invalid.ll
test/Verifier/musttail-valid.ll
test/Verifier/statepoint.ll
test/Verifier/varargs-intrinsic.ll