This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/41260] [4.5 Regression] major regressions on x86_64-apple-darwin10 caused by r147995
- From: "howarth at nitro dot med dot uc dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 5 Sep 2009 15:58:30 -0000
- Subject: [Bug middle-end/41260] [4.5 Regression] major regressions on x86_64-apple-darwin10 caused by r147995
- References: <bug-41260-11113@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #14 from howarth at nitro dot med dot uc dot edu 2009-09-05 15:58 -------
Looking at the assembly output from the testcase...
FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O0 execution test
the diff between that generated in r147989 and r1478013 is...
---
/sw/src/fink.build/gcc45-4.4.999-20090529/darwin_objdir/gcc/testsuite/g++/eh-vararg-2.s.r147989
2009-09-05 11:53:50.000000000 -0400
+++
/sw/src/fink.build/gcc45-4.4.999-20090531/darwin_objdir/gcc/testsuite/g++/eh-vararg-2.s.r148013
2009-09-05 11:48:40.000000000 -0400
@@ -26,19 +26,20 @@
movq 24(%rsp), %rax
movl (%rax), %eax
leave
+LCFI4:
ret
LFE0:
.globl __Z5checkPvi
__Z5checkPvi:
LFB1:
pushq %rbp
-LCFI4:
- movq %rsp, %rbp
LCFI5:
- andq $-32, %rsp
+ movq %rsp, %rbp
LCFI6:
- subq $32, %rsp
+ andq $-32, %rsp
LCFI7:
+ subq $32, %rsp
+LCFI8:
movq %rdi, 24(%rsp)
movl %esi, 20(%rsp)
movl 20(%rsp), %eax
@@ -51,6 +52,7 @@
call _abort
L3:
leave
+LCFI9:
ret
LFE1:
.globl _global
@@ -66,13 +68,13 @@
__Z3barPci:
LFB2:
pushq %rbp
-LCFI8:
+LCFI10:
movq %rsp, %rbp
-LCFI9:
+LCFI11:
andq $-32, %rsp
-LCFI10:
+LCFI12:
subq $32, %rsp
-LCFI11:
+LCFI13:
movq %rdi, 24(%rsp)
movl %esi, 20(%rsp)
movl 20(%rsp), %eax
@@ -82,6 +84,7 @@
movq %rax, %rdi
call _strncpy
leave
+LCFI14:
ret
LFE2:
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
@@ -91,11 +94,12 @@
__ZN4BaseC2Ev:
LFB5:
pushq %rbp
-LCFI12:
+LCFI15:
movq %rsp, %rbp
-LCFI13:
+LCFI16:
movq %rdi, -8(%rbp)
leave
+LCFI17:
ret
LFE5:
.align 1
@@ -104,13 +108,13 @@
__ZN1AC1Ev:
LFB8:
pushq %rbp
-LCFI14:
+LCFI18:
movq %rsp, %rbp
-LCFI15:
+LCFI19:
andq $-32, %rsp
-LCFI16:
+LCFI20:
subq $32, %rsp
-LCFI17:
+LCFI21:
movq %rdi, 24(%rsp)
movq 24(%rsp), %rax
movq %rax, %rdi
@@ -120,6 +124,7 @@
movq 24(%rsp), %rax
movq %rdx, (%rax)
leave
+LCFI22:
ret
LFE8:
.text
@@ -127,21 +132,21 @@
__Z4testP13__va_list_tag:
LFB9:
leaq 8(%rsp), %r10
-LCFI18:
+LCFI23:
andq $-64, %rsp
-LCFI19:
+LCFI24:
pushq -8(%r10)
-LCFI20:
+LCFI25:
pushq %rbp
-LCFI21:
+LCFI26:
movq %rsp, %rbp
-LCFI22:
+LCFI27:
pushq %r10
-LCFI23:
+LCFI28:
pushq %rbx
-LCFI24:
+LCFI29:
subq $160, %rsp
-LCFI25:
+LCFI30:
movq %rdi, -152(%rbp)
movq -152(%rbp), %rax
movl (%rax), %eax
@@ -306,13 +311,13 @@
__Z3fooPKcz:
LFB13:
pushq %rbp
-LCFI26:
+LCFI31:
movq %rsp, %rbp
-LCFI27:
+LCFI32:
andq $-32, %rsp
-LCFI28:
+LCFI33:
subq $256, %rsp
-LCFI29:
+LCFI34:
movq %rsi, 72(%rsp)
movq %rdx, 80(%rsp)
movq %rcx, 88(%rsp)
@@ -348,6 +353,7 @@
movq %rax, %rdi
call __Z4testP13__va_list_tag
leave
+LCFI35:
ret
LFE13:
.const
@@ -358,13 +364,13 @@
_main:
LFB14:
pushq %rbp
-LCFI30:
+LCFI36:
movq %rsp, %rbp
-LCFI31:
+LCFI37:
andq $-32, %rsp
-LCFI32:
+LCFI38:
subq $32, %rsp
-LCFI33:
+LCFI39:
movsd LC1(%rip), %xmm0
movl $5, %esi
leaq LC2(%rip), %rdi
@@ -388,6 +394,7 @@
L27:
movl $0, %eax
leave
+LCFI40:
ret
LFE14:
.section __DATA,__gcc_except_tab
@@ -523,155 +530,190 @@
.long L$set$14
.byte 0xd
.byte 0x6
+ .byte 0x4
+ .set L$set$15,LCFI4-LCFI1
+ .long L$set$15
+ .byte 0xc6
+ .byte 0xc
+ .byte 0x7
+ .byte 0x8
.align 3
LEFDE1:
.globl __Z5checkPvi.eh
__Z5checkPvi.eh:
LSFDE3:
- .set L$set$15,LEFDE3-LASFDE3
- .long L$set$15
+ .set L$set$16,LEFDE3-LASFDE3
+ .long L$set$16
LASFDE3:
.long LASFDE3-EH_frame1
.quad LFB1-.
- .set L$set$16,LFE1-LFB1
- .quad L$set$16
+ .set L$set$17,LFE1-LFB1
+ .quad L$set$17
.byte 0x8
.quad 0x0
.byte 0x4
- .set L$set$17,LCFI4-LFB1
- .long L$set$17
+ .set L$set$18,LCFI5-LFB1
+ .long L$set$18
.byte 0xe
.byte 0x10
.byte 0x11
.byte 0x6
.byte 0x2
.byte 0x4
- .set L$set$18,LCFI5-LCFI4
- .long L$set$18
+ .set L$set$19,LCFI6-LCFI5
+ .long L$set$19
.byte 0xd
.byte 0x6
+ .byte 0x4
+ .set L$set$20,LCFI9-LCFI6
+ .long L$set$20
+ .byte 0xc6
+ .byte 0xc
+ .byte 0x7
+ .byte 0x8
.align 3
LEFDE3:
.globl __Z3barPci.eh
__Z3barPci.eh:
LSFDE5:
- .set L$set$19,LEFDE5-LASFDE5
- .long L$set$19
+ .set L$set$21,LEFDE5-LASFDE5
+ .long L$set$21
LASFDE5:
.long LASFDE5-EH_frame1
.quad LFB2-.
- .set L$set$20,LFE2-LFB2
- .quad L$set$20
+ .set L$set$22,LFE2-LFB2
+ .quad L$set$22
.byte 0x8
.quad 0x0
.byte 0x4
- .set L$set$21,LCFI8-LFB2
- .long L$set$21
+ .set L$set$23,LCFI10-LFB2
+ .long L$set$23
.byte 0xe
.byte 0x10
.byte 0x11
.byte 0x6
.byte 0x2
.byte 0x4
- .set L$set$22,LCFI9-LCFI8
- .long L$set$22
+ .set L$set$24,LCFI11-LCFI10
+ .long L$set$24
.byte 0xd
.byte 0x6
+ .byte 0x4
+ .set L$set$25,LCFI14-LCFI11
+ .long L$set$25
+ .byte 0xc6
+ .byte 0xc
+ .byte 0x7
+ .byte 0x8
.align 3
LEFDE5:
.globl __ZN4BaseC2Ev.eh
.weak_definition __ZN4BaseC2Ev.eh
__ZN4BaseC2Ev.eh:
LSFDE7:
- .set L$set$23,LEFDE7-LASFDE7
- .long L$set$23
+ .set L$set$26,LEFDE7-LASFDE7
+ .long L$set$26
LASFDE7:
.long LASFDE7-EH_frame1
.quad LFB5-.
- .set L$set$24,LFE5-LFB5
- .quad L$set$24
+ .set L$set$27,LFE5-LFB5
+ .quad L$set$27
.byte 0x8
.quad 0x0
.byte 0x4
- .set L$set$25,LCFI12-LFB5
- .long L$set$25
+ .set L$set$28,LCFI15-LFB5
+ .long L$set$28
.byte 0xe
.byte 0x10
.byte 0x11
.byte 0x6
.byte 0x2
.byte 0x4
- .set L$set$26,LCFI13-LCFI12
- .long L$set$26
+ .set L$set$29,LCFI16-LCFI15
+ .long L$set$29
.byte 0xd
.byte 0x6
+ .byte 0x4
+ .set L$set$30,LCFI17-LCFI16
+ .long L$set$30
+ .byte 0xc6
+ .byte 0xc
+ .byte 0x7
+ .byte 0x8
.align 3
LEFDE7:
.globl __ZN1AC1Ev.eh
.weak_definition __ZN1AC1Ev.eh
__ZN1AC1Ev.eh:
LSFDE9:
- .set L$set$27,LEFDE9-LASFDE9
- .long L$set$27
+ .set L$set$31,LEFDE9-LASFDE9
+ .long L$set$31
LASFDE9:
.long LASFDE9-EH_frame1
.quad LFB8-.
- .set L$set$28,LFE8-LFB8
- .quad L$set$28
+ .set L$set$32,LFE8-LFB8
+ .quad L$set$32
.byte 0x8
.quad 0x0
.byte 0x4
- .set L$set$29,LCFI14-LFB8
- .long L$set$29
+ .set L$set$33,LCFI18-LFB8
+ .long L$set$33
.byte 0xe
.byte 0x10
.byte 0x11
.byte 0x6
.byte 0x2
.byte 0x4
- .set L$set$30,LCFI15-LCFI14
- .long L$set$30
+ .set L$set$34,LCFI19-LCFI18
+ .long L$set$34
.byte 0xd
.byte 0x6
+ .byte 0x4
+ .set L$set$35,LCFI22-LCFI19
+ .long L$set$35
+ .byte 0xc6
+ .byte 0xc
+ .byte 0x7
+ .byte 0x8
.align 3
LEFDE9:
.globl __Z4testP13__va_list_tag.eh
__Z4testP13__va_list_tag.eh:
LSFDE11:
- .set L$set$31,LEFDE11-LASFDE11
- .long L$set$31
+ .set L$set$36,LEFDE11-LASFDE11
+ .long L$set$36
LASFDE11:
.long LASFDE11-EH_frame1
.quad LFB9-.
- .set L$set$32,LFE9-LFB9
- .quad L$set$32
+ .set L$set$37,LFE9-LFB9
+ .quad L$set$37
.byte 0x8
.quad LLSDA9-.
.byte 0x4
- .set L$set$33,LCFI18-LFB9
- .long L$set$33
+ .set L$set$38,LCFI23-LFB9
+ .long L$set$38
.byte 0xc
.byte 0xa
.byte 0x0
.byte 0x4
- .set L$set$34,LCFI21-LCFI18
- .long L$set$34
+ .set L$set$39,LCFI26-LCFI23
+ .long L$set$39
.byte 0x10
.byte 0x6
.byte 0x2
.byte 0x76
.byte 0x0
.byte 0x4
- .set L$set$35,LCFI23-LCFI21
- .long L$set$35
+ .set L$set$40,LCFI28-LCFI26
+ .long L$set$40
.byte 0xf
.byte 0x3
.byte 0x76
.byte 0x78
.byte 0x6
.byte 0x4
- .set L$set$36,LCFI25-LCFI23
- .long L$set$36
+ .set L$set$41,LCFI30-LCFI28
+ .long L$set$41
.byte 0x10
.byte 0x3
.byte 0x2
@@ -682,55 +724,69 @@
.globl __Z3fooPKcz.eh
__Z3fooPKcz.eh:
LSFDE13:
- .set L$set$37,LEFDE13-LASFDE13
- .long L$set$37
+ .set L$set$42,LEFDE13-LASFDE13
+ .long L$set$42
LASFDE13:
.long LASFDE13-EH_frame1
.quad LFB13-.
- .set L$set$38,LFE13-LFB13
- .quad L$set$38
+ .set L$set$43,LFE13-LFB13
+ .quad L$set$43
.byte 0x8
.quad 0x0
.byte 0x4
- .set L$set$39,LCFI26-LFB13
- .long L$set$39
+ .set L$set$44,LCFI31-LFB13
+ .long L$set$44
.byte 0xe
.byte 0x10
.byte 0x11
.byte 0x6
.byte 0x2
.byte 0x4
- .set L$set$40,LCFI27-LCFI26
- .long L$set$40
+ .set L$set$45,LCFI32-LCFI31
+ .long L$set$45
.byte 0xd
.byte 0x6
+ .byte 0x4
+ .set L$set$46,LCFI35-LCFI32
+ .long L$set$46
+ .byte 0xc6
+ .byte 0xc
+ .byte 0x7
+ .byte 0x8
.align 3
LEFDE13:
.globl _main.eh
_main.eh:
LSFDE15:
- .set L$set$41,LEFDE15-LASFDE15
- .long L$set$41
+ .set L$set$47,LEFDE15-LASFDE15
+ .long L$set$47
LASFDE15:
.long LASFDE15-EH_frame1
.quad LFB14-.
- .set L$set$42,LFE14-LFB14
- .quad L$set$42
+ .set L$set$48,LFE14-LFB14
+ .quad L$set$48
.byte 0x8
.quad LLSDA14-.
.byte 0x4
- .set L$set$43,LCFI30-LFB14
- .long L$set$43
+ .set L$set$49,LCFI36-LFB14
+ .long L$set$49
.byte 0xe
.byte 0x10
.byte 0x11
.byte 0x6
.byte 0x2
.byte 0x4
- .set L$set$44,LCFI31-LCFI30
- .long L$set$44
+ .set L$set$50,LCFI37-LCFI36
+ .long L$set$50
.byte 0xd
.byte 0x6
+ .byte 0x4
+ .set L$set$51,LCFI40-LCFI37
+ .long L$set$51
+ .byte 0xc6
+ .byte 0xc
+ .byte 0x7
+ .byte 0x8
.align 3
LEFDE15:
.constructor
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41260