]>
Commit | Line | Data |
---|---|---|
65ca668f CB |
1 | /* |
2 | * Copyright 2015, Cyril Bur, IBM Corp. | |
3 | * | |
4 | * This program is free software; you can redistribute it and/or | |
5 | * modify it under the terms of the GNU General Public License | |
6 | * as published by the Free Software Foundation; either version | |
7 | * 2 of the License, or (at your option) any later version. | |
8 | */ | |
9 | ||
10 | #include "basic_asm.h" | |
11 | ||
12 | /* | |
13 | * Careful this will 'clobber' vsx (by design), VSX are always | |
14 | * volatile though so unlike vmx this isn't so much of an issue | |
15 | * Still should avoid calling from C | |
16 | */ | |
17 | FUNC_START(load_vsx) | |
18 | li r5,0 | |
605df8d6 | 19 | lxvd2x vs20,r5,r3 |
65ca668f | 20 | addi r5,r5,16 |
605df8d6 | 21 | lxvd2x vs21,r5,r3 |
65ca668f | 22 | addi r5,r5,16 |
605df8d6 | 23 | lxvd2x vs22,r5,r3 |
65ca668f | 24 | addi r5,r5,16 |
605df8d6 | 25 | lxvd2x vs23,r5,r3 |
65ca668f | 26 | addi r5,r5,16 |
605df8d6 | 27 | lxvd2x vs24,r5,r3 |
65ca668f | 28 | addi r5,r5,16 |
605df8d6 | 29 | lxvd2x vs25,r5,r3 |
65ca668f | 30 | addi r5,r5,16 |
605df8d6 | 31 | lxvd2x vs26,r5,r3 |
65ca668f | 32 | addi r5,r5,16 |
605df8d6 | 33 | lxvd2x vs27,r5,r3 |
65ca668f | 34 | addi r5,r5,16 |
605df8d6 | 35 | lxvd2x vs28,r5,r3 |
65ca668f | 36 | addi r5,r5,16 |
605df8d6 | 37 | lxvd2x vs29,r5,r3 |
65ca668f | 38 | addi r5,r5,16 |
605df8d6 | 39 | lxvd2x vs30,r5,r3 |
65ca668f | 40 | addi r5,r5,16 |
605df8d6 | 41 | lxvd2x vs31,r5,r3 |
65ca668f CB |
42 | blr |
43 | FUNC_END(load_vsx) | |
44 | ||
45 | FUNC_START(store_vsx) | |
46 | li r5,0 | |
605df8d6 | 47 | stxvd2x vs20,r5,r3 |
65ca668f | 48 | addi r5,r5,16 |
605df8d6 | 49 | stxvd2x vs21,r5,r3 |
65ca668f | 50 | addi r5,r5,16 |
605df8d6 | 51 | stxvd2x vs22,r5,r3 |
65ca668f | 52 | addi r5,r5,16 |
605df8d6 | 53 | stxvd2x vs23,r5,r3 |
65ca668f | 54 | addi r5,r5,16 |
605df8d6 | 55 | stxvd2x vs24,r5,r3 |
65ca668f | 56 | addi r5,r5,16 |
605df8d6 | 57 | stxvd2x vs25,r5,r3 |
65ca668f | 58 | addi r5,r5,16 |
605df8d6 | 59 | stxvd2x vs26,r5,r3 |
65ca668f | 60 | addi r5,r5,16 |
605df8d6 | 61 | stxvd2x vs27,r5,r3 |
65ca668f | 62 | addi r5,r5,16 |
605df8d6 | 63 | stxvd2x vs28,r5,r3 |
65ca668f | 64 | addi r5,r5,16 |
605df8d6 | 65 | stxvd2x vs29,r5,r3 |
65ca668f | 66 | addi r5,r5,16 |
605df8d6 | 67 | stxvd2x vs30,r5,r3 |
65ca668f | 68 | addi r5,r5,16 |
605df8d6 | 69 | stxvd2x vs31,r5,r3 |
65ca668f CB |
70 | blr |
71 | FUNC_END(store_vsx) |