[Bug target/16563] The compiler doesnt the necessary push/restore of r18/r19
eweddington at cso dot atmel dot com
gcc-bugzilla@gcc.gnu.org
Wed Feb 14 16:48:00 GMT 2007
------- Comment #6 from eweddington at cso dot atmel dot com 2007-02-14 16:48 -------
Same results with GCC 4.1.1:
00000000 <testfunc>:
0: af 92 push r10
2: bf 92 push r11
4: cf 92 push r12
6: df 92 push r13
8: ef 92 push r14
a: ff 92 push r15
c: 0f 93 push r16
e: 1f 93 push r17
10: f6 2e mov r15, r22
12: e4 2e mov r14, r20
14: a0 2e mov r10, r16
16: b1 2e mov r11, r17
18: c2 2e mov r12, r18
1a: d3 2e mov r13, r19
1c: 00 d0 rcall .+0 ; 0x1e <testfunc+0x1e>
1e: 8a e0 ldi r24, 0x0A ; 10
20: 00 d0 rcall .+0 ; 0x22 <testfunc+0x22>
22: 8f 2d mov r24, r15
24: 00 d0 rcall .+0 ; 0x26 <testfunc+0x26>
26: 8b e0 ldi r24, 0x0B ; 11
28: 90 e0 ldi r25, 0x00 ; 0
2a: 00 d0 rcall .+0 ; 0x2c <testfunc+0x2c>
2c: 8e 2d mov r24, r14
2e: 00 d0 rcall .+0 ; 0x30 <testfunc+0x30>
30: 86 e0 ldi r24, 0x06 ; 6
32: 00 d0 rcall .+0 ; 0x34 <testfunc+0x34>
34: 9d 2d mov r25, r13
36: 8c 2d mov r24, r12
38: 7b 2d mov r23, r11
3a: 6a 2d mov r22, r10
3c: 00 d0 rcall .+0 ; 0x3e <testfunc+0x3e>
3e: 1f 91 pop r17
40: 0f 91 pop r16
42: ff 90 pop r15
44: ef 90 pop r14
46: df 90 pop r13
48: cf 90 pop r12
4a: bf 90 pop r11
4c: af 90 pop r10
4e: 08 95 ret
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16563
More information about the Gcc-bugs
mailing list