bit of a mess being sorted out
[openpower-isa.git] / openpower / isa / svfpload.mdwn
1 <!-- X Instructions here described in PowerISA Version 3.0 B Book 1 -->
2
3 <!-- Section 4.6.1 Floating-point storage access instructions. P 140 - 143 -->
4
5 # Load Floating-Point Single
6
7 SVD-Form
8
9 * lfssh FRT,SVD(RA),RC
10
11 Pseudo-code:
12
13 b <- (RA|0)
14 n <- (RC)[58:63]
15 EA <- b + SHL64(srcstep * EXTS(SVD), n)
16 FRT <- DOUBLE(MEM(EA, 4))
17
18 Special Registers Altered:
19
20 None
21
22 # Load Floating-Point Single with Update
23
24 SVD-Form
25
26 * lfsush FRT,SVD(RA),RC
27
28 Pseudo-code:
29
30 n <- (RC)[58:63]
31 EA <- (RA) + SHL64(srcstep * EXTS(SVD), n)
32 FRT <- DOUBLE(MEM(EA, 4))
33 RA <- EA
34
35 Special Registers Altered:
36
37 None
38
39 # Load Floating-Point Double
40
41 SVD-Form
42
43 * lfdsh FRT,SVD(RA),RC
44
45 Pseudo-code:
46
47 b <- (RA|0)
48 n <- (RC)[58:63]
49 EA <- b + SHL64(srcstep * EXTS(SVD), n)
50 FRT <- MEM(EA, 8)
51
52 Special Registers Altered:
53
54 None
55
56 # Load Floating-Point Double with Update
57
58 SVD-Form
59
60 * lfdush FRT,SVD(RA),RC
61
62 Pseudo-code:
63
64 n <- (RC)[58:63]
65 EA <- (RA) + SHL64(srcstep * EXTS(SVD), n)
66 FRT <- MEM(EA, 8)
67 RA <- EA
68
69 Special Registers Altered:
70
71 None
72