Bug 45150 - [4.6 Regression] bootstrap debug-compare fail
Summary: [4.6 Regression] bootstrap debug-compare fail
Status: RESOLVED DUPLICATE of bug 45162
Alias: None
Product: gcc
Classification: Unclassified
Component: middle-end (show other bugs)
Version: 4.6.0
: P3 blocker
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-07-31 13:20 UTC by Iain Sandoe
Modified: 2010-08-04 15:16 UTC (History)
5 users (show)

See Also:
Host:
Target: i686-apple-darwin9
Build:
Known to work:
Known to fail:
Last reconfirmed: 2010-08-04 15:00:59


Attachments
.i and .s files from cfgexpand for stage2 & 3 (614.48 KB, application/octet-stream)
2010-07-31 13:21 UTC, Iain Sandoe
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Iain Sandoe 2010-07-31 13:20:15 UTC
i686-apple-darwin9 bootstrap is broken since r162678 (with an ICE reported for other targets as well).
Since this was fixed (at r162697), it has unmasked another fail which is still present at 162778.

unfortunately, the other bootstrap bug prevents narrowing this down more... however;

This is a compare-debug fail of cfgexpand.o.
Looking at the .s files (to be attached) there seem to be instruction ordering differences.

this bug is _not_ present in powerpc-apple-darwin9 or x86_64-apple-darwin10.
Comment 1 Iain Sandoe 2010-07-31 13:21:54 UTC
Created attachment 21364 [details]
.i and .s files from cfgexpand for stage2 & 3
Comment 2 Iain Sandoe 2010-07-31 13:26:27 UTC
cc-ing Bernd having reviewed the svn logs between r162678 and 162697.
Comment 3 Iain Sandoe 2010-07-31 18:47:58 UTC
this is a bit tedious to work through ... but for example in 

_expand_one_stack_var_at:

we have for stage2 :
*************
	cmovae	%edx, %eax	# tmp143,, max_align
	cmpl	$0, 52(%esp)	#, %sfp
	jbe	L252	#,
L245:
	movl	%eax, 48(%esp)	# max_align, %sfp
L227:
	movzwl	%cx, %eax	# D.53575, tmp154
	sall	$6, %eax	#, tmp154
	addl	L_tree_contains_struct$non_lazy_ptr-L00000000044$pb(%ebx), %eax	#, tmp155

***********
and for stage 3:

	cmovae	%edx, %eax	# tmp143,, max_align
LM516:
	cmpl	$0, 52(%esp)	#, %sfp
	jbe	L252	#,
L245:
LM517:
	movl	%eax, 48(%esp)	# max_align, %sfp
	movl	$0, 52(%esp)	#, %sfp
L227:
LVL348:
LBB2461:
LM518:
	movzwl	%cx, %eax	# D.53575, tmp154
	sall	$6, %eax	#, tmp154
	addl	L_tree_contains_struct$non_lazy_ptr-L00000000044$pb(%ebx), %eax	#, tmp155
Comment 4 John David Anglin 2010-08-04 15:00:59 UTC
I back-ported r162697 to r162678 and see comparison fail at r162678.
Comment 5 Bernd Schmidt 2010-08-04 15:16:07 UTC

*** This bug has been marked as a duplicate of 45162 ***