Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | [WebAssembly] Remove an unneeded static_cast. | Dan Gohman | 2015-12-08 | 1 | -2/+1 | |
| | | | | llvm-svn: 254998 | |||||
* | [WebAssembly] Fix an emacs syntax highlighting comment. | Dan Gohman | 2015-12-08 | 1 | -1/+1 | |
| | | | | llvm-svn: 254997 | |||||
* | [WebAssembly] Convert a file-level comment to doxygen style. | Dan Gohman | 2015-12-08 | 1 | -4/+5 | |
| | | | | llvm-svn: 254996 | |||||
* | [WebAssembly] Assert MRI.isSSA() in passes that depend on SSA form. | Dan Gohman | 2015-12-08 | 2 | -0/+4 | |
| | | | | llvm-svn: 254995 | |||||
* | [WebAssembly] Trim some unneeded #includes. | Dan Gohman | 2015-12-08 | 3 | -4/+0 | |
| | | | | llvm-svn: 254994 | |||||
* | [WebAssembly] Remove the override of haveFastSqrt. | Dan Gohman | 2015-12-08 | 2 | -6/+0 | |
| | | | | | | | The default implementation in BasicTTI already checks TLI and does the right thing. llvm-svn: 254993 | |||||
* | [WebAssembly] Factor out a TypeToString function, since we need it in ↵ | Dan Gohman | 2015-12-06 | 3 | -31/+24 | |
| | | | | | | multiple places. llvm-svn: 254884 | |||||
* | [WebAssembly] Make tableswitch's 'default' operand explicit. NFC. | Dan Gohman | 2015-12-06 | 1 | -6/+6 | |
| | | | | llvm-svn: 254883 | |||||
* | [WebAssembly] Enable folding of offsets into global variable addresses. | Dan Gohman | 2015-12-06 | 2 | -8/+11 | |
| | | | | llvm-svn: 254882 | |||||
* | [WebAssembly] Add some more ideas to README.txt. | Dan Gohman | 2015-12-06 | 1 | -0/+43 | |
| | | | | llvm-svn: 254880 | |||||
* | [WebAssembly] Don't perform the returned-argument optimization on constants. | Dan Gohman | 2015-12-05 | 1 | -0/+3 | |
| | | | | llvm-svn: 254866 | |||||
* | [WebAssembly] Replace the fake JUMP_TABLE instruction with a def : Pat. NFC. | Dan Gohman | 2015-12-05 | 1 | -5/+2 | |
| | | | | llvm-svn: 254864 | |||||
* | [WebAssembly] Implement direct calls to external symbols. | Dan Gohman | 2015-12-05 | 2 | -7/+32 | |
| | | | | llvm-svn: 254863 | |||||
* | [WebAssembly] Support inline asm constraints of type i16 and similar. | Dan Gohman | 2015-12-05 | 1 | -4/+7 | |
| | | | | llvm-svn: 254861 | |||||
* | [WebAssembly] Update a stale comment. NFC. | Dan Gohman | 2015-12-05 | 1 | -2/+2 | |
| | | | | llvm-svn: 254859 | |||||
* | WebAssembly: improve readme, add placeholder for tests. | JF Bastien | 2015-12-05 | 2 | -0/+11 | |
| | | | | llvm-svn: 254857 | |||||
* | [WebAssembly] Move useAA() out of line to make it more convenient to ↵ | Dan Gohman | 2015-12-05 | 2 | -1/+2 | |
| | | | | | | experiment with. llvm-svn: 254856 | |||||
* | [WebAssembly] Call TargetPassConfig base class functions in overriding ↵ | Dan Gohman | 2015-12-05 | 1 | -1/+11 | |
| | | | | | | functions. llvm-svn: 254855 | |||||
* | [WebAssembly] Expand frem as a floating point library function. | Dan Gohman | 2015-12-05 | 1 | -1/+2 | |
| | | | | llvm-svn: 254854 | |||||
* | [WebAssembly] Implement ReverseBranchCondition, and re-enable ↵ | Dan Gohman | 2015-12-05 | 7 | -17/+178 | |
| | | | | | | | | | | | | | MachineBlockPlacement This patch introduces a codegen-only instruction currently named br_unless, which makes it convenient to implement ReverseBranchCondition and re-enable the MachineBlockPlacement pass. Then in a late pass, it lowers br_unless back into br_if. Differential Revision: http://reviews.llvm.org/D14995 llvm-svn: 254826 | |||||
* | [WebAssembly] Fix scheduling dependencies in register-stackified code | Dan Gohman | 2015-12-05 | 1 | -9/+42 | |
| | | | | | | | | | | | Add physical register defs to instructions used from stackified instructions to prevent them from being scheduled into the middle of a stack sequence. This is a conservative measure which may be loosened in the future. Differential Revision: http://reviews.llvm.org/D15252 llvm-svn: 254811 | |||||
* | [WebAssembly] Support constant offsets on loads and stores | Derek Schuff | 2015-12-05 | 2 | -75/+86 | |
| | | | | | | | | | This is just prototype for load/store for i32 types. I'll add them to the rest of the types if we like this direction. Differential Revision: http://reviews.llvm.org/D15197 llvm-svn: 254807 | |||||
* | [WebAssembly] Initial varargs support. | Dan Gohman | 2015-12-04 | 7 | -18/+108 | |
| | | | | | | | | | Full varargs support will depend on prologue/epilogue support, but this patch gets us started with most of the basic infrastructure. Differential Revision: http://reviews.llvm.org/D15231 llvm-svn: 254799 | |||||
* | [WebAssembly] Add several more calling conventions to the supported list. | Dan Gohman | 2015-12-04 | 1 | -2/+7 | |
| | | | | llvm-svn: 254741 | |||||
* | [WebAssembly] Give names to the callseq begin and end instructions. | Dan Gohman | 2015-12-04 | 1 | -4/+4 | |
| | | | | llvm-svn: 254730 | |||||
* | [WebAssembly] clang-format CallingConvSupported. NFC. | Dan Gohman | 2015-12-04 | 1 | -4/+2 | |
| | | | | llvm-svn: 254729 | |||||
* | [WebAssembly] Factor out the list of supported calling conventions. | Dan Gohman | 2015-12-04 | 1 | -4/+13 | |
| | | | | llvm-svn: 254728 | |||||
* | [WebAssembly] Check for more unsupported ABI flags. | Dan Gohman | 2015-12-04 | 1 | -1/+26 | |
| | | | | llvm-svn: 254727 | |||||
* | [WebAssembly] Use SelectionDAG::getUNDEF. NFC. | Dan Gohman | 2015-12-04 | 1 | -1/+1 | |
| | | | | llvm-svn: 254726 | |||||
* | [WebAssembly] Fix dominance check for PHIs in the StoreResult pass | Dan Gohman | 2015-12-03 | 2 | -16/+26 | |
| | | | | | | | | | | | | | | When a block has no terminator instructions, getFirstTerminator() returns end(), which can't be used in dominance checks. Check dominance for phi operands separately. Also, remove some bits from WebAssemblyRegStackify.cpp that were causing trouble on the same testcase; they were left behind from an earlier experiment. Differential Revision: http://reviews.llvm.org/D15210 llvm-svn: 254662 | |||||
* | [WebAssembly] Add a test for wasm-store-results pass | Derek Schuff | 2015-12-03 | 1 | -1/+5 | |
| | | | | | | Differential Revision: http://reviews.llvm.org/D15167 llvm-svn: 254570 | |||||
* | [WebAssembly] Assert that byval and nest are not used for return types. | Dan Gohman | 2015-12-02 | 1 | -4/+2 | |
| | | | | llvm-svn: 254567 | |||||
* | [WebAssembly] Fix comments to say "LIFO" instead of "FIFO" when describing a ↵ | Dan Gohman | 2015-12-02 | 4 | -4/+4 | |
| | | | | | | stack. llvm-svn: 254523 | |||||
* | [WebAssembly] Fix a few minor compiler warnings. NFC. | Dan Gohman | 2015-11-30 | 1 | -7/+7 | |
| | | | | llvm-svn: 254311 | |||||
* | [WebAssembly] Delete an obsolete TODO comment. | Dan Gohman | 2015-11-29 | 1 | -1/+0 | |
| | | | | llvm-svn: 254272 | |||||
* | [WebAssembly] Set several MCInstrDesc flags. | Dan Gohman | 2015-11-29 | 4 | -0/+20 | |
| | | | | llvm-svn: 254271 | |||||
* | [WebAssembly] Delete unused functions. NFC. | Dan Gohman | 2015-11-29 | 1 | -6/+0 | |
| | | | | llvm-svn: 254268 | |||||
* | [WebAssembly] Minor clang-format and selected clang-tidy cleanups. NFC. | Dan Gohman | 2015-11-29 | 13 | -64/+68 | |
| | | | | llvm-svn: 254267 | |||||
* | [WebAssembly] Fix inline asm support for i64 operands. | Dan Gohman | 2015-11-25 | 1 | -1/+5 | |
| | | | | llvm-svn: 254106 | |||||
* | [WebAssembly] Fold setne and seteq comparisons into selects. | Dan Gohman | 2015-11-25 | 2 | -0/+28 | |
| | | | | llvm-svn: 254104 | |||||
* | [WebAssembly] Add some comments. NFC. | Dan Gohman | 2015-11-25 | 1 | -0/+5 | |
| | | | | llvm-svn: 254096 | |||||
* | [WebAssembly] Fix WebAssembly register numbering for registers added late. | Dan Gohman | 2015-11-25 | 2 | -0/+9 | |
| | | | | | | | | | If virtual registers are created late, mappings to WebAssembly registers need to be added explicitly. This patch adds a function to do so and teaches WebAssemblyPeephole to use it. This fixes an out-of-bounds access on the WARegs vector. llvm-svn: 254094 | |||||
* | [WebAssembly] Use a physical register to describe ARGUMENT liveness. | Dan Gohman | 2015-11-25 | 10 | -38/+66 | |
| | | | | | | | | | | Instead of trying to move ARGUMENT instructions back up to the top after they've been scheduled or sunk down, use a fake physical register to create a liveness constraint that prevents ARGUMENT instructions from moving down in the first place. This is still not entirely ideal, however it is more robust than letting them move and moving them back. llvm-svn: 254084 | |||||
* | [WebAssembly] Clean up several FIXME comments. | Dan Gohman | 2015-11-25 | 6 | -10/+12 | |
| | | | | llvm-svn: 254079 | |||||
* | [WebAssembly] Support for register stackifying with load and store instructions. | Dan Gohman | 2015-11-25 | 9 | -29/+314 | |
| | | | | llvm-svn: 254076 | |||||
* | [WebAssembly] Codegen support for ISD::ExternalSymbol | Dan Gohman | 2015-11-25 | 4 | -2/+26 | |
| | | | | llvm-svn: 254075 | |||||
* | [WebAssembly] Add 'final' to some classes. NFC. | Dan Gohman | 2015-11-25 | 2 | -2/+2 | |
| | | | | llvm-svn: 254073 | |||||
* | [WebAssembly] Whitespace consistency. NFC. | Dan Gohman | 2015-11-25 | 2 | -2/+0 | |
| | | | | llvm-svn: 254071 | |||||
* | [WebAssembly] Don't print the types of memory_size and grow_memory | Dan Gohman | 2015-11-23 | 1 | -4/+4 | |
| | | | | | | This matches the current spec, for now. llvm-svn: 253931 | |||||
* | [WebAssembly] Don't special-case call operand order. | Dan Gohman | 2015-11-23 | 1 | -2/+2 | |
| | | | | | | | | With the '=' suffix now indicating which operands are output operands, it's no longer as important to distinguish between a call's inputs and its outputs using operand ordering, so we can go back to printing them in the normal order. llvm-svn: 253925 |