aboutsummaryrefslogtreecommitdiff
path: root/tools/llvmc/CompilerDriver.cpp
diff options
context:
space:
mode:
authorArnold Schwaighofer <arnold.schwaighofer@gmail.com>2008-02-26 09:19:59 +0000
committerArnold Schwaighofer <arnold.schwaighofer@gmail.com>2008-02-26 09:19:59 +0000
commit865c68188a72604a15c8b9b08df89d4775c7c764 (patch)
tree051bcd1b28cf48eef7df821720accb18e328ddba /tools/llvmc/CompilerDriver.cpp
parentc886c460e4fc305a1b79d1e7782584c7aa7aa91f (diff)
Change the lowering of arguments for tail call optimized
calls. Before arguments that could overwrite each other were explicitly lowered to a stack slot, not giving the register allocator a chance to optimize. Now a sequence of copyto/copyfrom virtual registers ensures that arguments are loaded in (virtual) registers before they are lowered to the stack slot (and might overwrite each other). Also parameter stack slots are marked mutable for (potentially) tail calling functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47593 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvmc/CompilerDriver.cpp')
0 files changed, 0 insertions, 0 deletions