diff options
author | Chris Lattner <sabre@nondot.org> | 2006-04-19 05:55:06 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2006-04-19 05:55:06 +0000 |
commit | bf9b3716eda91629d1597e290034d9ce050d0b13 (patch) | |
tree | 98f6ed6f64e6c083cff4d3a2312de1d75479051e /lib/Target/PowerPC/README_ALTIVEC.txt | |
parent | ff5cdc2ccde7088c86e8c7a6cb60c3acd6f35642 (diff) | |
download | external_llvm-bf9b3716eda91629d1597e290034d9ce050d0b13.zip external_llvm-bf9b3716eda91629d1597e290034d9ce050d0b13.tar.gz external_llvm-bf9b3716eda91629d1597e290034d9ce050d0b13.tar.bz2 |
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27828 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/README_ALTIVEC.txt')
-rw-r--r-- | lib/Target/PowerPC/README_ALTIVEC.txt | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/README_ALTIVEC.txt b/lib/Target/PowerPC/README_ALTIVEC.txt index 886723d..b667ecb 100644 --- a/lib/Target/PowerPC/README_ALTIVEC.txt +++ b/lib/Target/PowerPC/README_ALTIVEC.txt @@ -108,3 +108,33 @@ vcmpeqfp. result is used by a branch. This can be improved. //===----------------------------------------------------------------------===// +The code generated for this is truly aweful: + +vector float test(float a, float b) { + return (vector float){ 0.0, a, 0.0, 0.0}; +} + +LCPI1_0: ; float + .space 4 + .text + .globl _test + .align 4 +_test: + mfspr r2, 256 + oris r3, r2, 4096 + mtspr 256, r3 + lis r3, ha16(LCPI1_0) + addi r4, r1, -32 + stfs f1, -16(r1) + addi r5, r1, -16 + lfs f0, lo16(LCPI1_0)(r3) + stfs f0, -32(r1) + lvx v2, 0, r4 + lvx v3, 0, r5 + vmrghw v3, v3, v2 + vspltw v2, v2, 0 + vmrghw v2, v2, v3 + mtspr 256, r2 + blr + +//===----------------------------------------------------------------------===// |