aboutsummaryrefslogtreecommitdiffstats
path: root/runtime/Makefile
diff options
context:
space:
mode:
authorArnold Schwaighofer <aschwaighofer@apple.com>2013-03-15 18:31:01 +0000
committerArnold Schwaighofer <aschwaighofer@apple.com>2013-03-15 18:31:01 +0000
commit5193e4ebe216dd5a07ab9cc58d40de5aafaa990c (patch)
treeaf0fd56a4789a5e950a4ffaf8f62ff0d0ea5ff3e /runtime/Makefile
parentbcbf3fddef46f1f6e2f2408064c4b75e4b6c90f5 (diff)
downloadexternal_llvm-5193e4ebe216dd5a07ab9cc58d40de5aafaa990c.zip
external_llvm-5193e4ebe216dd5a07ab9cc58d40de5aafaa990c.tar.gz
external_llvm-5193e4ebe216dd5a07ab9cc58d40de5aafaa990c.tar.bz2
ARM cost model: Fix costs for some vector selects
I was too pessimistic in r177105. Vector selects that fit into a legal register type lower just fine. I was mislead by the code fragment that I was using. The stores/loads that I saw in those cases came from lowering the conditional off an address. Changing the code fragment to: %T0_3 = type <8 x i18> %T1_3 = type <8 x i1> define void @func_blend3(%T0_3* %loadaddr, %T0_3* %loadaddr2, %T1_3* %blend, %T0_3* %storeaddr) { %v0 = load %T0_3* %loadaddr %v1 = load %T0_3* %loadaddr2 ==> FROM: ;%c = load %T1_3* %blend ==> TO: %c = icmp slt %T0_3 %v0, %v1 ==> USE: %r = select %T1_3 %c, %T0_3 %v0, %T0_3 %v1 store %T0_3 %r, %T0_3* %storeaddr ret void } revealed this mistake. radar://13403975 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177170 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'runtime/Makefile')
0 files changed, 0 insertions, 0 deletions