This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] Unconditionally clean up CFG before emitting prologue


> Isn't the gimple cfg-cleanup we run post optimization (right before
> expansion) not enough?  Or the cfg-cleanup we perform right after expansion
> now? At least if the branches are really caused by the gimplification
> process I would expect things to be cleaned up at this point, no?

At least the patch has a non-null (albeit minor) effect, which pertains mainly 
to jump threading (typical diff attached, Ada code at -O0 on x86-64).

-- 
Eric Botcazou
@@ -648,7 +648,6 @@
 	jmp	.L70
 .L206:
 	nop
-.L71:
 	leaq	-768(%rbp), %rax
 	addq	$448, %rax
 	movq	%rax, %rdi
@@ -1107,7 +1106,6 @@
 .LEHE34:
 	cmpl	$1, %ebx
 	jne	.L197
-.L93:
 	movq	16(%rbp), %rax
 	movzbl	186(%rax), %eax
 	testb	%al, %al
@@ -1398,7 +1396,6 @@
 	call	prime__worlds_secondary_greeks__compute_secondary_greeks__B68b___finalizer.3706
 	cmpl	$1, %ebx
 	jne	.L198
-.L112:
 	cmpb	$0, -3925(%rbp)
 	je	.L113
 	movq	16(%rbp), %rax
@@ -1672,14 +1669,14 @@
 .L204:
 	movq	-4000(%rbp), %rax
 	movq	-4008(%rbp), %rdx
-	jmp	.L151
+	jmp	.L156
 .L186:
 	movq	%rax, %rcx
 	movq	%rdx, %rax
 	cmpq	$6, %rax
 	je	.L154
 	movq	%rcx, %rax
-	jmp	.L151
+	jmp	.L156
 .L154:
 	movq	%rcx, -96(%rbp)
 	movq	-96(%rbp), %rax
@@ -1712,7 +1709,6 @@
 	je	.L67
 	jmp	.L204
 .L185:
-.L151:
 	jmp	.L156
 .L191:
 	movq	%rax, -4024(%rbp)
@@ -1773,9 +1769,8 @@
 .L197:
 	movq	-4016(%rbp), %rax
 	movq	-4032(%rbp), %rdx
-	jmp	.L166
+	jmp	.L156
 .L192:
-.L166:
 	jmp	.L156
 .L193:
 	movq	%rax, -4048(%rbp)
@@ -1838,9 +1833,8 @@
 	jmp	.L70
 .L117:
 	movq	%r15, %rax
-	jmp	.L173
+	jmp	.L174
 .L196:
-.L173:
 	jmp	.L174
 .L175:
 .L174:
@@ -2510,7 +2504,6 @@
 	jmp	.L253
 .L286:
 	nop
-.L254:
 	movq	24(%rbp), %rax
 	movzbl	101(%rax), %eax
 	testb	%al, %al
@@ -2578,12 +2571,12 @@
 .L285:
 	movq	%r14, %rax
 	movq	%r15, %rdx
-	jmp	.L264
+	jmp	.L269
 .L278:
 	movq	%rdx, %rcx
 	cmpq	$2, %rcx
 	je	.L267
-	jmp	.L264
+	jmp	.L269
 .L267:
 	movq	%rax, -56(%rbp)
 	movq	-56(%rbp), %rax
@@ -2617,7 +2610,6 @@
 	je	.L250
 	jmp	.L285
 .L277:
-.L264:
 	jmp	.L269
 .L283:
 	movq	%rax, %rbx

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]