blob: 3f295126fb31293f7c60e4f37b98078f63533b86 [file] [log] [blame]
Evan Cheng3578dd62007-03-20 22:22:38 +00001Common register allocation / spilling problem:
2
3 mul lr, r4, lr
4 str lr, [sp, #+52]
5 ldr lr, [r1, #+32]
6 sxth r3, r3
7 ldr r4, [sp, #+52]
8 mla r4, r3, lr, r4
9
10can be:
11
12 mul lr, r4, lr
13 mov r4, lr
14 str lr, [sp, #+52]
15 ldr lr, [r1, #+32]
16 sxth r3, r3
17 mla r4, r3, lr, r4
18
19and then "merge" mul and mov:
20
21 mul r4, r4, lr
22 str lr, [sp, #+52]
23 ldr lr, [r1, #+32]
24 sxth r3, r3
25 mla r4, r3, lr, r4
26
27It also increase the likelyhood the store may become dead.