1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/tools
Andrea Di Biagio 694545a47e [llvm-mca] [llvm-mca] Improved error handling and error reporting from class InstrBuilder.
A new class named InstructionError has been added to Support.h in order to
improve the error reporting from class InstrBuilder.
The llvm-mca driver is responsible for handling InstructionError objects, and
printing them out to stderr.

The goal of this patch is to remove all the remaining error handling logic from
the library code.
In particular, this allows us to:
 - Simplify the logic in InstrBuilder by removing a needless dependency from
MCInstrPrinter.
 - Centralize all the error halding logic in a new function named 'runPipeline'
(see llvm-mca.cpp).

This is also a first step towards generalizing class InstrBuilder, so that in
future, we will be able to reuse its logic to also "lower" MachineInstr to
mca::Instruction objects.

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

llvm-svn: 345129
2018-10-24 10:56:47 +00:00
..
bugpoint [TI removal] Make getTerminator() return a generic Instruction. 2018-10-15 10:42:50 +00:00
bugpoint-passes Remove redundant includes from tools. 2017-12-13 21:31:10 +00:00
dsymutil [dsymutil] Improve error reporting when we cannot create output file. 2018-10-23 00:32:22 +00:00
gold [gold] -thinlto-object-suffix-replace: don't append new suffix if path does not end with old suffix 2018-08-22 02:11:36 +00:00
llc [llc] Fix sanitizer failure. 2018-06-23 19:04:10 +00:00
lli [ORC] Re-apply r345077 with fixes to remove ambiguity in lookup calls. 2018-10-23 23:01:39 +00:00
llvm-ar [llvm-ar] Use POSIX-specified timestamps for 'tv'. 2018-10-05 23:25:39 +00:00
llvm-as [ThinLTO] Parse module summary index from assembly 2018-06-26 13:56:49 +00:00
llvm-as-fuzzer make add_llvm_fuzzer calls slightly more consisten with other cmake 2018-05-11 17:58:52 +00:00
llvm-bcanalyzer Fix some missing opcodes in bcanalyzer 2018-09-24 12:47:17 +00:00
llvm-c-test Emit template type and value parameter DIEs for template variables. 2018-10-03 18:44:53 +00:00
llvm-cat Pass a reference to a module to the bitcode writer. 2018-02-14 19:11:32 +00:00
llvm-cfi-verify Revert r342148 (and follow-on fix attempts r342154, r342180, r342182, r342193) 2018-09-15 19:04:27 +00:00
llvm-config llvm::sort(C.begin(), C.end(), ...) -> llvm::sort(C, ...) 2018-09-27 02:13:45 +00:00
llvm-cov [Support] Listing a directory containing dangling symlinks is not an error. 2018-10-01 12:17:05 +00:00
llvm-cvtres [opt] Change the parameter of OptTable::PrintHelp from Name to Usage and don't append "[options] <inputs>" 2018-10-10 00:15:31 +00:00
llvm-cxxdump Fixing a typo; NFC. 2018-07-23 18:09:43 +00:00
llvm-cxxfilt Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-cxxmap Add flag to llvm-profdata to allow symbols in profile data to be remapped, and 2018-09-13 20:22:02 +00:00
llvm-demangle-fuzzer make add_llvm_fuzzer calls slightly more consisten with other cmake 2018-05-11 17:58:52 +00:00
llvm-diff [TI removal] Make getTerminator() return a generic Instruction. 2018-10-15 10:42:50 +00:00
llvm-dis [ThinLTO] Print module summary index to assembly 2018-05-26 02:34:13 +00:00
llvm-dwarfdump [dwarfdump] Make incompatibility between -diff and -verbose explicit. 2018-10-23 21:51:44 +00:00
llvm-dwp Reland rL341509: "[llvm-dwp] Use buffer_stream if output file is not seekable (e.g. "-")" 2018-09-06 20:26:54 +00:00
llvm-exegesis [llvm-exegesis] Fix name lookup ambiguity in MSVC after 344922 2018-10-22 17:52:31 +00:00
llvm-extract Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-go [bindings/go] Add coroutine passes 2018-08-19 23:40:05 +00:00
llvm-isel-fuzzer CodeGen: Add a dwo output file argument to addPassesToEmitFile and hook it up to dwo output. 2018-05-21 20:16:41 +00:00
llvm-jitlistener Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-link Restore "[ThinLTO] Ensure we always select the same function copy to import" 2018-07-16 15:30:27 +00:00
llvm-lto [ThinLTO]Expose cache entry expiration time option in llvm-lto and fix a test 2018-10-03 13:00:20 +00:00
llvm-lto2 [LTO] Call InitLLVM from llvm-lto2 2018-10-16 17:37:45 +00:00
llvm-mc [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
llvm-mc-assemble-fuzzer [llvm-mc-assemble-fuzzer] Update API - Pass MCObjectWriter instead of a stream 2018-08-17 04:38:41 +00:00
llvm-mc-disassemble-fuzzer make add_llvm_fuzzer calls slightly more consisten with other cmake 2018-05-11 17:58:52 +00:00
llvm-mca [llvm-mca] [llvm-mca] Improved error handling and error reporting from class InstrBuilder. 2018-10-24 10:56:47 +00:00
llvm-modextract Pass a reference to a module to the bitcode writer. 2018-02-14 19:11:32 +00:00
llvm-mt [opt] Change the parameter of OptTable::PrintHelp from Name to Usage and don't append "[options] <inputs>" 2018-10-10 00:15:31 +00:00
llvm-nm [llvm-nm] Fix crash when running with --print-armap on corrupt archives. 2018-10-11 17:55:11 +00:00
llvm-objcopy [llvm-objcopy] Fix use-after-move clang-tidy warning 2018-10-23 20:54:51 +00:00
llvm-objdump [llvm-objdump] Fix --file-headers (-f) option 2018-10-19 22:16:49 +00:00
llvm-opt-fuzzer [NewPM] teach -passes= to emit meaningful error messages 2018-10-17 10:36:23 +00:00
llvm-opt-report Reland: [OptRemarks] Add library for parsing optimization remarks 2018-10-10 18:43:42 +00:00
llvm-pdbutil [llvm-pdbutil] Pretty print PDBSymbolUsingNamespace symbols 2018-10-11 21:37:18 +00:00
llvm-profdata Add flag to llvm-profdata to allow symbols in profile data to be remapped, and 2018-09-13 20:22:02 +00:00
llvm-rc [opt] Change the parameter of OptTable::PrintHelp from Name to Usage and don't append "[options] <inputs>" 2018-10-10 00:15:31 +00:00
llvm-readobj [AMDGPU] Defined gfx909 Raven Ridge 2 2018-10-24 08:14:07 +00:00
llvm-rtdyld [RuntimeDyld][COFF] Skip non-loaded sections when calculating ImageBase. 2018-10-23 01:36:33 +00:00
llvm-shlib Support of hurd in llvm-shlib 2018-10-18 20:07:44 +00:00
llvm-size [llvm-size] Berkeley formatting: use tabs instead of spaces as field delimeters. 2018-09-21 23:48:12 +00:00
llvm-special-case-list-fuzzer make add_llvm_fuzzer calls slightly more consisten with other cmake 2018-05-11 17:58:52 +00:00
llvm-split Pass a reference to a module to the bitcode writer. 2018-02-14 19:11:32 +00:00
llvm-stress [Support] Rename tool_output_file to ToolOutputFile, NFC 2017-09-23 01:03:17 +00:00
llvm-strings Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-symbolizer [llvm-symbolizer] Simplify 2018-05-26 02:29:14 +00:00
llvm-undname [llvm-undname Add an option to dump back references. 2018-08-01 18:33:04 +00:00
llvm-xray llvm::sort(C.begin(), C.end(), ...) -> llvm::sort(C, ...) 2018-09-27 02:13:45 +00:00
llvm-yaml-numeric-parser-fuzzer Use LLVM_BUILTIN_TRAP not __builtin_trap to appease windows builds. NFCI. 2018-08-20 09:49:20 +00:00
lto [libLTO] Expose LLVMCreateDisasmCPUFeatures from libLTO 2018-09-26 16:47:35 +00:00
msbuild Update Visual Studio Integration version number. 2018-08-29 16:57:37 +00:00
obj2yaml [WebAssembly] Refactor WasmSignature and use it for MCSymbolWasm 2018-10-03 22:22:48 +00:00
opt [NewPM] teach -passes= to emit meaningful error messages 2018-10-17 10:36:23 +00:00
opt-viewer [opt-viewer] Kill parser processes before moving onto rendering 2018-02-26 21:15:51 +00:00
sancov [sancov] Generalize the code to get the previous instruction to multiple architectures 2018-10-10 00:57:24 +00:00
sanstats Fix broken links to the Itanium CXX ABI 2017-09-12 00:19:11 +00:00
verify-uselistorder Rename DEBUG macro to LLVM_DEBUG. 2018-05-14 12:53:11 +00:00
xcode-toolchain [CMake] Use LLVM_ENABLE_IDE instead of CMAKE_CONFIGURATION_TYPES 2018-10-15 21:20:02 +00:00
yaml2obj llvm::sort(C.begin(), C.end(), ...) -> llvm::sort(C, ...) 2018-09-27 02:13:45 +00:00
CMakeLists.txt [RFC] Build LLVM-C.dll on MSVC that exports only the C API 2018-08-07 15:54:50 +00:00
LLVMBuild.txt Add a Microsoft Demangler. 2018-07-20 17:27:48 +00:00