llvm-mirror/tools
Nirav Dave 05e219cb7a [MC] Change AsmParser to leverage Assembler during evaluation
Teach AsmParser to check with Assembler for when evaluating constant
expressions.  This improves the handing of preprocessor expressions
that must be resolved at parse time. This idiom can be found as
assembling-time assertion checks in source-level assemblers. Note that
this relies on the MCStreamer to keep sufficient tabs on Section /
Fragment information which the MCAsmStreamer does not. As a result the
textual output may fail where the equivalent object generation would
pass. This can most easily be resolved by folding the MCAsmStreamer
and MCObjectStreamer together which is planned for in a separate
patch.

Currently, this feature is only enabled for assembly input, keeping IR
compilation consistent between assembly and object generation.

Reviewers: echristo, rnk, probinson, espindola, peter.smith

Reviewed By: peter.smith

Subscribers: eraman, peter.smith, arichardson, jyknight, hiraditya, llvm-commits

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

llvm-svn: 331218
2018-04-30 19:22:40 +00:00
..
bugpoint IWYU for llvm-config.h in llvm, additions. 2018-04-30 14:59:11 +00:00
bugpoint-passes
dsymutil Remove LLVM_INSTALL_CCTOOLS_SYMLINKS 2018-04-24 15:41:02 +00:00
gold [LTO] Add stats-file option to LTO/Config.h. 2018-04-20 10:18:36 +00:00
llc Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
lli IWYU for llvm-config.h in llvm, additions. 2018-04-30 14:59:11 +00:00
llvm-ar Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-as Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-as-fuzzer
llvm-bcanalyzer [bcanalyzer] Recognize more stream types 2018-04-21 23:52:04 +00:00
llvm-c-test [LLVM-C] Eliminate an unused variable in a test. 2018-04-29 02:01:34 +00:00
llvm-cat
llvm-cfi-verify
llvm-config [tools] Change std::sort to llvm::sort in response to r327219 2018-04-01 21:24:53 +00:00
llvm-cov IWYU llvm-config.h for LLVM_VERSION_STRING 2018-04-25 18:34:00 +00:00
llvm-cvtres Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-cxxdump Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-cxxfilt Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-demangle-fuzzer
llvm-diff Let llvm-diff correctly deal with Undef/ConstantAggregateZero/ConstantVector/IndirectBr 2018-04-12 21:28:04 +00:00
llvm-dis [tools] Use WithColor for printing errors. 2018-04-21 21:11:59 +00:00
llvm-dwarfdump Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-dwp Rename *CommandFlags.def to *CommandFlags.inc 2018-04-11 18:49:37 +00:00
llvm-exegesis [llvm-exegesis] Early out if the scheduler models have no extra info. 2018-04-18 14:46:54 +00:00
llvm-extract Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-go
llvm-isel-fuzzer Rename *CommandFlags.def to *CommandFlags.inc 2018-04-11 18:49:37 +00:00
llvm-jitlistener Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-link [llvm-link] Use WithColor for printing errors 2018-04-18 14:41:47 +00:00
llvm-lto Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-lto2 [LTO] Add stats-file option to LTO/Config.h. 2018-04-20 10:18:36 +00:00
llvm-mc [MC] Change AsmParser to leverage Assembler during evaluation 2018-04-30 19:22:40 +00:00
llvm-mc-assemble-fuzzer Rename *CommandFlags.def to *CommandFlags.inc 2018-04-11 18:49:37 +00:00
llvm-mc-disassemble-fuzzer
llvm-mca [llvm-mca] Correctly handle zero-latency stores that consume pipeline resources. 2018-04-30 15:55:04 +00:00
llvm-modextract
llvm-mt Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-nm Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-objcopy [llvm-objcopy] Add --weaken-symbol (-W) option 2018-04-27 19:16:27 +00:00
llvm-objdump [WebAssembly] objdump: Don't assume all relocations have symbols 2018-04-26 17:05:04 +00:00
llvm-opt-fuzzer Link to AggressiveInstCombine in a few places. Unbreaks build for me. 2018-04-24 08:40:37 +00:00
llvm-opt-report [tools] Use WithColor for printing errors. 2018-04-21 21:11:59 +00:00
llvm-pdbutil llvm-pdbutil: Fix an off-by-one error. 2018-04-17 21:44:17 +00:00
llvm-profdata [llvm-profdata] Use WithColor for printing errors 2018-04-18 14:42:33 +00:00
llvm-rc Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-readobj AMDGPU: Add Vega12 and Vega20 2018-04-30 19:08:16 +00:00
llvm-rtdyld Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-shlib Rename llvm library from libLLVM-X.Y to libLLVM-X 2018-03-29 09:44:09 +00:00
llvm-size Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-special-case-list-fuzzer
llvm-split
llvm-stress
llvm-strings Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-symbolizer Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
llvm-xray Don't list a source file twice. 2018-04-25 17:24:41 +00:00
lto s/LLVM_ON_WIN32/_WIN32/, llvm 2018-04-29 00:45:03 +00:00
msbuild
obj2yaml [WebAssembly] Write DWARF data into wasm object file 2018-04-26 19:27:28 +00:00
opt IWYU for llvm-config.h in llvm, additions. 2018-04-30 14:59:11 +00:00
opt-viewer [opt-viewer] Kill parser processes before moving onto rendering 2018-02-26 21:15:51 +00:00
sancov Rename sancov.cc to sancov.cpp 2018-04-25 18:06:23 +00:00
sanstats
verify-uselistorder Define InitLLVM to do common initialization all at once. 2018-04-13 18:26:06 +00:00
xcode-toolchain
yaml2obj [WebAssembly] Write DWARF data into wasm object file 2018-04-26 19:27:28 +00:00
CMakeLists.txt
LLVMBuild.txt Re-land r329156 "Add llvm-exegesis tool." 2018-04-04 11:37:06 +00:00