| #
ad72f685 |
| 02-Jan-2019 |
Wouter van Oortmerssen <[email protected]> |
[WebAssembly] made assembler parse block_type
Summary: This was previously ignored and an incorrect value generated.
Also fixed Disassembler's handling of block_type.
Reviewers: dschuff, aheejin
[WebAssembly] made assembler parse block_type
Summary: This was previously ignored and an incorrect value generated.
Also fixed Disassembler's handling of block_type.
Reviewers: dschuff, aheejin
Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D56092
llvm-svn: 350270
show more ...
|
|
Revision tags: llvmorg-7.0.1, llvmorg-7.0.1-rc3 |
|
| #
fc3163b6 |
| 15-Nov-2018 |
Thomas Lively <[email protected]> |
[WebAssembly] Fix return type of nextByte
Summary: The old return type did not allow for correct error reporting and was causing a compiler warning.
Reviewers: aheejin
Subscribers: dschuff, sbc100
[WebAssembly] Fix return type of nextByte
Summary: The old return type did not allow for correct error reporting and was causing a compiler warning.
Reviewers: aheejin
Subscribers: dschuff, sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D54586
llvm-svn: 346979
show more ...
|
| #
49550663 |
| 09-Nov-2018 |
Fangrui Song <[email protected]> |
[WebAssembly] Hotfix of WebAssemblyInstructionTableSize after rL346465
llvm-svn: 346535
|
| #
2faf0794 |
| 09-Nov-2018 |
Thomas Lively <[email protected]> |
[WebAssembly] Read prefixed opcodes as ULEB128s
Summary: Depends on D54126.
Reviewers: aheejin, dschuff, aardappel
Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revisi
[WebAssembly] Read prefixed opcodes as ULEB128s
Summary: Depends on D54126.
Reviewers: aheejin, dschuff, aardappel
Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D54138
llvm-svn: 346465
show more ...
|
|
Revision tags: llvmorg-7.0.1-rc2, llvmorg-7.0.1-rc1, llvmorg-7.0.0 |
|
| #
27c769d2 |
| 10-Sep-2018 |
Benjamin Kramer <[email protected]> |
[Target] Untangle disassemblers
Disassemblers cannot depend on main target headers. The same is true for MCTargetDesc, but there's a lot more cleanup needed for that.
llvm-svn: 341822
|
|
Revision tags: llvmorg-7.0.0-rc3 |
|
| #
a733d08d |
| 30-Aug-2018 |
Wouter van Oortmerssen <[email protected]> |
[WebAssembly] Made disassembler only use stack instructions.
Summary: Now uses the StackBased bit from the tablegen defs to identify stack instructions (and ignore register based or non-wasm instruc
[WebAssembly] Made disassembler only use stack instructions.
Summary: Now uses the StackBased bit from the tablegen defs to identify stack instructions (and ignore register based or non-wasm instructions).
Also changed how we store operands, since we now have up to 16 of them per instruction. To not cause static data bloat, these are compressed into a tiny table.
+ a few other cleanups.
Tested: - MCTest - llvm-lit -v `find test -name WebAssembly`
Reviewers: dschuff, jgravelle-google, sunfish, tlively
Subscribers: sbc100, aheejin, llvm-commits
Differential Revision: https://reviews.llvm.org/D51320
llvm-svn: 341081
show more ...
|
|
Revision tags: llvmorg-7.0.0-rc2 |
|
| #
22442924 |
| 21-Aug-2018 |
Thomas Lively <[email protected]> |
[WebAssembly] v128.const
Summary: This CL implements v128.const for each vector type. New operand types are added to ensure the vector contents can be serialized without LEB encoding. Tests are adde
[WebAssembly] v128.const
Summary: This CL implements v128.const for each vector type. New operand types are added to ensure the vector contents can be serialized without LEB encoding. Tests are added for instruction selection, encoding, assembly and disassembly.
Reviewers: aheejin, dschuff, aardappel
Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D50873
llvm-svn: 340336
show more ...
|
|
Revision tags: llvmorg-7.0.0-rc1, llvmorg-6.0.1, llvmorg-6.0.1-rc3, llvmorg-6.0.1-rc2 |
|
| #
16c16827 |
| 10-May-2018 |
Sam Clegg <[email protected]> |
[WebAssembly] Initial Disassembler.
This implements a new table-gen emitter to create tables for a wasm disassembler, and a dissassembler to use them.
Comes with 2 tests, that tests a few instructi
[WebAssembly] Initial Disassembler.
This implements a new table-gen emitter to create tables for a wasm disassembler, and a dissassembler to use them.
Comes with 2 tests, that tests a few instructions manually. Is also able to disassemble large .wasm files with objdump reasonably.
Not working so well, to be addressed in followups: - objdump appears to be passing an incorrect starting point. - since the disassembler works an instruction at a time, and it is disassembling stack instruction, it has no idea of pseudo register assignments. These registers are required for the instruction printing code that follows. For now, all such registers appear in the output as $0.
Patch by Wouter van Oortmerssen
Differential Revision: https://reviews.llvm.org/D45848
llvm-svn: 332052
show more ...
|
| #
5f8f34e4 |
| 01-May-2018 |
Adrian Prantl <[email protected]> |
Remove \brief commands from doxygen comments.
We've been running doxygen with the autobrief option for a couple of years now. This makes the \brief markers into our comments redundant. Since they ar
Remove \brief commands from doxygen comments.
We've been running doxygen with the autobrief option for a couple of years now. This makes the \brief markers into our comments redundant. Since they are a visual distraction and we don't want to encourage more \brief markers in new code either, this patch removes them all.
Patch produced by
for i in $(git grep -l '\\brief'); do perl -pi -e 's/\\brief //g' $i & done
Differential Revision: https://reviews.llvm.org/D46290
llvm-svn: 331272
show more ...
|
|
Revision tags: llvmorg-6.0.1-rc1, llvmorg-5.0.2, llvmorg-5.0.2-rc2, llvmorg-5.0.2-rc1, llvmorg-6.0.0, llvmorg-6.0.0-rc3, llvmorg-6.0.0-rc2, llvmorg-6.0.0-rc1, llvmorg-5.0.1, llvmorg-5.0.1-rc3, llvmorg-5.0.1-rc2, llvmorg-5.0.1-rc1, llvmorg-5.0.0, llvmorg-5.0.0-rc5, llvmorg-5.0.0-rc4, llvmorg-5.0.0-rc3, llvmorg-5.0.0-rc2, llvmorg-5.0.0-rc1, llvmorg-4.0.1, llvmorg-4.0.1-rc3 |
|
| #
6bda14b3 |
| 06-Jun-2017 |
Chandler Carruth <[email protected]> |
Sort the remaining #include lines in include/... and lib/....
I did this a long time ago with a janky python script, but now clang-format has built-in support for this. I fed clang-format every line
Sort the remaining #include lines in include/... and lib/....
I did this a long time ago with a janky python script, but now clang-format has built-in support for this. I fed clang-format every line with a #include and let it re-sort things according to the precise LLVM rules for include ordering baked into clang-format these days.
I've reverted a number of files where the results of sorting includes isn't healthy. Either places where we have legacy code relying on particular include ordering (where possible, I'll fix these separately) or where we have particular formatting around #include lines that I didn't want to disturb in this patch.
This patch is *entirely* mechanical. If you get merge conflicts or anything, just ignore the changes in this patch and run clang-format over your #include lines in the files.
Sorry for any noise here, but it is important to keep these things stable. I was seeing an increasing number of patches with irrelevant re-ordering of #include lines because clang-format was used. This patch at least isolates that churn, makes it easy to skip when resolving conflicts, and gets us to a clean baseline (again).
llvm-svn: 304787
show more ...
|
|
Revision tags: llvmorg-4.0.1-rc2, llvmorg-4.0.1-rc1, llvmorg-4.0.0, llvmorg-4.0.0-rc4, llvmorg-4.0.0-rc3 |
|
| #
dfe6ce7a |
| 11-Feb-2017 |
Dan Gohman <[email protected]> |
[WebAssembly] Remove old experimental disassemler code.
Remove support for disassembling an old experimental wasm binary format, which is no longer in use anywhere.
llvm-svn: 294809
|
|
Revision tags: llvmorg-4.0.0-rc2 |
|
| #
b89f2d3d |
| 02-Feb-2017 |
Dan Gohman <[email protected]> |
[WebAssembly] Add instruction definitions for drop and get/set_global.
llvm-svn: 293922
|
|
Revision tags: llvmorg-4.0.0-rc1, llvmorg-3.9.1, llvmorg-3.9.1-rc3, llvmorg-3.9.1-rc2, llvmorg-3.9.1-rc1 |
|
| #
4fc4e42d |
| 24-Oct-2016 |
Dan Gohman <[email protected]> |
[WebAssembly] Add an option to make get_local/set_local explicit.
This patch adds a pass, controlled by an option and off by default for now, for making implicit get_local/set_local explicit. This s
[WebAssembly] Add an option to make get_local/set_local explicit.
This patch adds a pass, controlled by an option and off by default for now, for making implicit get_local/set_local explicit. This simplifies emitting wasm with MC.
Differential Revision: https://reviews.llvm.org/D25836
llvm-svn: 285009
show more ...
|
| #
f42454b9 |
| 09-Oct-2016 |
Mehdi Amini <[email protected]> |
Move the global variables representing each Target behind accessor function
This avoids "static initialization order fiasco"
Differential Revision: https://reviews.llvm.org/D25412
llvm-svn: 283702
|
| #
4b8e8bec |
| 03-Oct-2016 |
Dan Gohman <[email protected]> |
[WebAssembly] Rename OPERAND_FP32IMM to OPERAND_F32IMM.
WebAssembly documentation consistently says "f32" rather than "fp32" to describe 32-bit floating-point.
llvm-svn: 283146
|
|
Revision tags: llvmorg-3.9.0, llvmorg-3.9.0-rc3, llvmorg-3.9.0-rc2, llvmorg-3.9.0-rc1, llvmorg-3.8.1, llvmorg-3.8.1-rc1, llvmorg-3.8.0, llvmorg-3.8.0-rc3 |
|
| #
aa742911 |
| 16-Feb-2016 |
Dan Gohman <[email protected]> |
[WebAssembly] Implement support for custom NaN bit patterns.
llvm-svn: 260968
|
|
Revision tags: llvmorg-3.8.0-rc2 |
|
| #
c50b8907 |
| 26-Jan-2016 |
Benjamin Kramer <[email protected]> |
Update wasm target for r258819.
llvm-svn: 258827
|
| #
bb372243 |
| 26-Jan-2016 |
Dan Gohman <[email protected]> |
[WebAssembly] Implement unaligned loads and stores.
Differential Revision: http://reviews.llvm.org/D16534
llvm-svn: 258779
|
|
Revision tags: llvmorg-3.8.0-rc1 |
|
| #
1a427287 |
| 12-Jan-2016 |
Dan Gohman <[email protected]> |
[WebAssembly] Implement a prototype instruction encoder and disassembler.
This is using an extremely simple temporary made-up binary format, not the official binary format (which isn't defined yet).
[WebAssembly] Implement a prototype instruction encoder and disassembler.
This is using an extremely simple temporary made-up binary format, not the official binary format (which isn't defined yet).
llvm-svn: 257440
show more ...
|