aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Commands/CommandObjectFrame.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-08-09 23:41:44 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-08-09 23:41:44 +0000
commit6a14dc01ff01a60d0d997b765b4dd20166e81340 (patch)
tree7c98690aadce40bb1d6528ba2513588517a4018b /lldb/source/Commands/CommandObjectFrame.cpp
parent92b942b1b533f0c26232b055e129cea21ae5e563 (diff)
downloadllvm-6a14dc01ff01a60d0d997b765b4dd20166e81340.zip
llvm-6a14dc01ff01a60d0d997b765b4dd20166e81340.tar.gz
llvm-6a14dc01ff01a60d0d997b765b4dd20166e81340.tar.bz2
Promote VMOVS to VMOVD when possible.
On Cortex-A8, we use the NEON v2f32 instructions for f32 arithmetic. For better latency, we also send D-register copies down the NEON pipeline by translating them to vorr instructions. This patch promotes even S-register copies to D-register copies when possible so they can also go down the NEON pipeline. Example: vldr.32 s0, LCPI0_0 loop: vorr d1, d0, d0 loop2: ... vadd.f32 d1, d1, d16 The vorr instruction looked like this after regalloc: %S2<def> = COPY %S0, %D1<imp-def> Copies involving odd S-registers, and copies that don't define the full D-register are left alone. llvm-svn: 137182
Diffstat (limited to 'lldb/source/Commands/CommandObjectFrame.cpp')
0 files changed, 0 insertions, 0 deletions