[committed] 4 backports from trunk to 4.6 branch

Mikael Pettersson mikpe@it.uu.se
Sun Dec 11 13:55:00 GMT 2011


Jakub Jelinek writes:
 > Hi!
 > 
 > Bootstrapped/regtested on x86_64-linux and i686-linux, committed to 4.6
 > branch:
...
 > 2011-12-08  Jakub Jelinek  <jakub@redhat.com>
 > 
 > 	Backport from mainline
 > 	2011-12-05  Jakub Jelinek  <jakub@redhat.com>
 > 		    Eric Botcazou  <ebotcazou@adacore.com>
 > 
 > 	PR middle-end/51323
 > 	PR middle-end/50074
 > 	* calls.c (internal_arg_pointer_exp_state): New variable.
 > 	(internal_arg_pointer_based_exp_1,
 > 	internal_arg_pointer_exp_scan): New functions.
 > 	(internal_arg_pointer_based_exp): New function.
 > 	(mem_overlaps_already_clobbered_arg_p): Use it.
 > 	(expand_call): Free internal_arg_pointer_exp_state.cache vector
 > 	and clear internal_arg_pointer_exp_state.scan_start.
 > 
 > 	2011-11-26  Joern Rennecke  <joern.rennecke@embecosm.com>
 > 
 > 	PR middle-end/50074
 > 	* calls.c (mem_overlaps_already_clobbered_arg_p):
 > 	Return false if no outgoing arguments have been stored so far.
 > 
 > 	2011-12-05  Jakub Jelinek  <jakub@redhat.com>
 > 		    Eric Botcazou  <ebotcazou@adacore.com>
 > 
 > 	PR middle-end/51323
 > 	PR middle-end/50074
 > 	* gcc.c-torture/execute/pr51323.c: New test.

This patch, r182112 on 4.6 branch, caused a test suite regression on arm-linux-gnueabi:

+FAIL: gcc.c-torture/execute/20050713-1.c compilation,  -O2  (internal compiler error)
+UNRESOLVED: gcc.c-torture/execute/20050713-1.c execution,  -O2
+FAIL: gcc.c-torture/execute/20050713-1.c compilation,  -Os  (internal compiler error)
+UNRESOLVED: gcc.c-torture/execute/20050713-1.c execution,  -Os

because the compiler now ICEs:

20050713-1.c: In function 'bar3':
20050713-1.c:38:3: internal compiler error: in calculate_allocation, at vec.c:183

The same ICE also happens with today's trunk.

/Mikael



More information about the Gcc-patches mailing list