diff options
| author | Chris Lattner <sabre@nondot.org> | 2009-07-23 05:32:17 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2009-07-23 05:32:17 +0000 |
| commit | 7d55541e564e800abb14746ec2b1d39c87f6a450 (patch) | |
| tree | f2f9c064aeaf07ba23401e39e79dce9f19a4d6d9 /llvm/test/FrontendAda | |
| parent | 7c02cf609d65e9fad58844373d524ff779aa2ded (diff) | |
| download | bcm5719-llvm-7d55541e564e800abb14746ec2b1d39c87f6a450.tar.gz bcm5719-llvm-7d55541e564e800abb14746ec2b1d39c87f6a450.zip | |
Make some existing optimizations that would only trigger on scalars
also apply to vectors. This allows us to compile this:
#include <emmintrin.h>
__m128i a(__m128 a, __m128 b) { return a==a & b==b; }
__m128i b(__m128 a, __m128 b) { return a!=a | b!=b; }
to:
_a:
cmpordps %xmm1, %xmm0
ret
_b:
cmpunordps %xmm1, %xmm0
ret
with clang instead of to a ton of horrible code.
llvm-svn: 76863
Diffstat (limited to 'llvm/test/FrontendAda')
0 files changed, 0 insertions, 0 deletions

