llvm-project/llvm/test
Dan Gohman 1d68e80f26 [WebAssembly] Make CFG stackification independent of basic-block labels.
This patch changes the way labels are referenced. Instead of referencing the
basic-block label name (eg. .LBB0_0), instructions now just have an immediate
which indicates the depth in the control-flow stack to find a label to jump to.
This makes them much closer to what we expect to have in the binary encoding,
and avoids the problem of basic-block label names not being explicit in the
binary encoding.

Also, it terminates blocks and loops with end_block and end_loop instructions,
rather than basic-block label names, for similar reasons.

This will also fix problems where two constructs appear to have the same label,
because we no longer explicitly use labels, so consumers that need labels will
presumably create their own labels, and presumably they won't reuse labels
when they do.

This patch does make the code a little more awkward to read; as a partial
mitigation, this patch also introduces comments showing where the labels are,
and comments on each branch showing where it's branching to.

llvm-svn: 257505
2016-01-12 19:14:46 +00:00
..
Analysis [Vectorization] Actually return from error case in isStridedPtr 2016-01-08 01:55:13 +00:00
Assembler [ConstantFold] Fix bitcast to gep constant folding transform. 2015-12-14 19:30:32 +00:00
Bindings Deprecate a few C APIs. 2015-12-18 23:46:42 +00:00
Bitcode [WinEH] Verify unwind edges against EH pad tree 2016-01-10 04:28:38 +00:00
BugPoint [bugpoint] Add a named metadata (+their operands) reducer 2015-11-06 00:12:50 +00:00
CodeGen [WebAssembly] Make CFG stackification independent of basic-block labels. 2016-01-12 19:14:46 +00:00
DebugInfo Temporarily revert r257105 "[Verifier] Check that debug values have proper size" 2016-01-07 22:39:11 +00:00
Examples
ExecutionEngine [Orc] XFAIL a few remote-jit test cases that I missed in r257391. 2016-01-11 23:57:39 +00:00
Feature [WinEH] Verify unwind edges against EH pad tree 2016-01-10 04:28:38 +00:00
FileCheck
Instrumentation [sanitizer] [msan] Fix origin store of array types 2016-01-11 19:55:27 +00:00
Integer
JitListener Fix several accidental DOS line endings in source files 2016-01-03 17:22:03 +00:00
LTO Add InaccessibleMemOnly and inaccessibleMemOrArgMemOnly attributes 2015-12-16 16:16:19 +00:00
LibDriver
Linker [Linker] Also treat a DIImportedEntity scope DISubprogram as needed. 2016-01-07 03:14:59 +00:00
MC [ARM] Fix several state persistence bugs 2016-01-12 13:38:15 +00:00
Object Handle archives with paths in the names. 2015-12-18 16:07:17 +00:00
Other Recommit r256952 "Filtering IR printing for print-after-all/print-before-all" 2016-01-06 22:55:03 +00:00
SymbolRewriter
TableGen Add new vector types for 512-, 1024- and 2048-bit vectors 2015-11-24 13:07:35 +00:00
Transforms [LibCallSimplifier] use instruction-level fast-math-flags to transform pow(x, 0.5) calls 2016-01-12 19:06:35 +00:00
Unit
Verifier [WinEH] Fix catchpad pred verification 2016-01-10 04:32:03 +00:00
YAMLParser
tools Fix test on windows. 2016-01-12 14:58:40 +00:00
.clang-format
CMakeLists.txt [llvm-dwp] Add missing dependency from llvm tests on the llvm-dwp tool 2015-12-01 00:57:05 +00:00
Makefile check-llvm: Tweak the feature "timestamps" for autoconf. 2015-12-21 08:46:12 +00:00
Makefile.tests
TestRunner.sh
lit.cfg [llvm-symbolizer] -print-source-context-lines option to print source code around the line. 2016-01-09 00:14:35 +00:00
lit.site.cfg.in Make WinCOFFObjectWriter.cpp's timestamp writing not use ENABLE_TIMESTAMPS 2016-01-06 19:05:19 +00:00