[PATCH] D53765: [RFC prototype] Implementation of asm-goto support in LLVM
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 25 14:45:19 PST 2019
craig.topper updated this revision to Diff 183623.
craig.topper added a comment.
-Add a new isAsmGotoTarget flag to MachineBasicBlock. Use it to preserve predecessors/successors in a few places similar to isEHPad. Probably more work to do here, but I think it at least fixes https://github.com/ClangBuiltLinux/linux/issues/319
-Remove SelectionDAGBuilder support for doing anything with CallBr other than inline assembly. The code can't be tested today so there's really no point in having it. Assuming inline assembly only made setting the flag above a little simpler.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D53765/new/
https://reviews.llvm.org/D53765
Files:
docs/LangRef.rst
include/llvm-c/Core.h
include/llvm/Analysis/SparsePropagation.h
include/llvm/Bitcode/LLVMBitCodes.h
include/llvm/CodeGen/GlobalISel/IRTranslator.h
include/llvm/CodeGen/MachineBasicBlock.h
include/llvm/IR/CallSite.h
include/llvm/IR/IRBuilder.h
include/llvm/IR/InstVisitor.h
include/llvm/IR/InstrTypes.h
include/llvm/IR/Instruction.def
include/llvm/IR/Instructions.h
lib/Analysis/ValueTracking.cpp
lib/AsmParser/LLLexer.cpp
lib/AsmParser/LLParser.cpp
lib/AsmParser/LLParser.h
lib/AsmParser/LLToken.h
lib/Bitcode/Reader/BitcodeReader.cpp
lib/Bitcode/Writer/BitcodeWriter.cpp
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
lib/CodeGen/BranchFolding.cpp
lib/CodeGen/CodeGenPrepare.cpp
lib/CodeGen/GlobalISel/IRTranslator.cpp
lib/CodeGen/IndirectBrExpandPass.cpp
lib/CodeGen/MachineBasicBlock.cpp
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
lib/CodeGen/SelectionDAG/TargetLowering.cpp
lib/CodeGen/TargetLoweringBase.cpp
lib/IR/AsmWriter.cpp
lib/IR/Instruction.cpp
lib/IR/Instructions.cpp
lib/IR/Value.cpp
lib/IR/Verifier.cpp
lib/Target/X86/X86AsmPrinter.cpp
lib/Target/X86/X86InstrInfo.cpp
lib/Transforms/InstCombine/InstCombineCalls.cpp
lib/Transforms/InstCombine/InstCombineInternal.h
lib/Transforms/InstCombine/InstructionCombining.cpp
lib/Transforms/Scalar/JumpThreading.cpp
lib/Transforms/Scalar/SCCP.cpp
lib/Transforms/Utils/BasicBlockUtils.cpp
lib/Transforms/Utils/InlineFunction.cpp
lib/Transforms/Utils/Local.cpp
lib/Transforms/Utils/LoopSimplify.cpp
lib/Transforms/Utils/LoopUtils.cpp
lib/Transforms/Utils/SimplifyCFG.cpp
test/Bitcode/callbr.ll
test/Bitcode/callbr.ll.bc
test/CodeGen/X86/callbr-asm-destinations.ll
test/CodeGen/X86/callbr-asm-errors.ll
test/CodeGen/X86/callbr-asm-outputs.ll
test/CodeGen/X86/callbr-asm.ll
test/Transforms/MergeFunc/call-and-invoke-with-ranges.ll
test/Transforms/MergeFunc/inline-asm.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D53765.183623.patch
Type: text/x-patch
Size: 108069 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190125/1848662c/attachment-0001.bin>
More information about the llvm-commits
mailing list