| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
stack.
llvm-svn: 254523
|
|
|
|
| |
llvm-svn: 254267
|
|
|
|
| |
llvm-svn: 254076
|
|
|
|
| |
llvm-svn: 253638
|
|
|
|
| |
llvm-svn: 253634
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also takes the push/pop syntax another step forward, introducing stack
slot numbers to make it easier to see how expressions are connected. For
example, the value pushed in $push7 is popped in $pop7.
And, this begins an experiment with making get_local and set_local implicit
when an operation directly uses or defines a register. This greatly reduces
clutter. If this experiment succeeds, it may make sense to do this for
const instructions as well.
And, this introduces more special code for ARGUMENTS; hopefully this code
will soon be obviated by proper support for live-in virtual registers.
llvm-svn: 253465
|
|
These passes are not yet enabled by default.
llvm-svn: 253217
|