implement FLDD
[oota-llvm.git] / lib / Target / ARM / README.txt
1 //===---------------------------------------------------------------------===//
2 // Random ideas for the ARM backend.
3 //===---------------------------------------------------------------------===//
4
5 Consider implementing a select with two conditional moves:
6
7 cmp x, y
8 moveq dst, a
9 movne dst, b
10
11 ----------------------------------------------------------
12
13
14 %tmp1 = shl int %b, ubyte %c
15 %tmp4 = add int %a, %tmp1
16
17 compiles to
18
19 add r0, r0, r1, lsl r2
20
21 but
22
23 %tmp1 = shl int %b, ubyte %c
24 %tmp4 = add int %tmp1, %a
25
26 compiles to
27 mov r1, r1, lsl r2
28 add r0, r1, r0
29
30 ----------------------------------------------------------
31
32 add an offset to FLDS/FLDD addressing mode
33
34 ----------------------------------------------------------