Chris Lattner | 1913c11 | 2003-08-04 02:11:05 +0000 | [diff] [blame] | 1 | ; The old instruction selector used to load all arguments to a call up in |
| 2 | ; registers, then start pushing them all onto the stack. This is bad news as |
| 3 | ; it makes a ton of annoying overlapping live ranges. This code should not |
| 4 | ; cause spills! |
| 5 | ; |
Reid Spencer | 4cda190 | 2007-04-16 15:15:52 +0000 | [diff] [blame] | 6 | ; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -stats |& not grep spilled |
Chris Lattner | 1913c11 | 2003-08-04 02:11:05 +0000 | [diff] [blame] | 7 | |
| 8 | target endian = little |
| 9 | target pointersize = 32 |
| 10 | |
| 11 | int %test(int, int, int, int, int, int, int, int, int, int) { ret int 0 } |
| 12 | int %main() { |
| 13 | %X = call int %test(int 1, int 2, int 3, int 4, int 5, int 6, int 7, int 8, int 9, int 10) |
| 14 | ret int %X |
| 15 | } |