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: building sh-elf / sh-linux (Was: Re: [PATCH/RFA] PR target/13250)


> 
> I'm not really happy with having the scheduler follow through jumps to
> find call / call-value-copy pairs.  I have now implemented
> the approach of deleting fixup_fallthru_exit_predecessor and making
> mid-function epilogues valid.
> There was also a real.c bug that got in the way.  I'm appending the patch
> set that I am currently testing; I'll submit the two new patches
> individually when they are tested.
> 
> 2004-06-04  J"orn Rennecke <joern.rennecke@superh.com>
> 
> 	* basic-block.h (could_fall_through): Declare.
> 	* cfganal.c (can_fallthru): Suceed if the target is EXIT_BLOCK_PTR.
> 	Fail if the source already has a fallthrough edge to the exit
> 	block pointer.
> 	(could_fall_through): New function.
> 	(make_edges): Check if we already have a fallthrough edge to the
> 	exit block pointer.
> 	cfglayout.c (fixup_fallthru_exit_predecessor): Delete.
> 	(cfg_layout_finalize): Don't call it.
> 	(fixup_reorder_chain): A fall through to the exit block does not
> 	require the block to come last.  Add sanity checks.
> 	* cfgrtl.c (rtl_split_edge): Add special handling of fall through
> 	edges to the exit block.
> 
> 2004-06-03  J"orn Rennecke <joern.rennecke@superh.com>
> 
> 	* real.c (do_add): Initialize r->signalling and r->canonical.
> 
> 2004-05-14  J"orn Rennecke <joern.rennecke@superh.com>
> 
> 	* sched-int.h (in_post_call_group_p): Change type to enum.
> 	* sched-deps.c (sched_analyze_insn):
> 	(sched_analyze): When in_post_call_group_p is post_call_initial,
> 	don't add a dependency, but still set SCHED_GROUP_P and CANT_MOVE,
> 	and also reset in_post_call_group_p to post_call.
> 	(sched_analyze): When the previous basic block ended in a CALL_INSN,
I've chosen a i686-pc-linux-gnu host for a bootstrap test.
For the unmodified control, I got a failure during stage1 building
crtbegin.o - cc1 throws a floating point exception. The patched
compiler has moved on to stage2 in the meantime.

Likewise, sh-elf (using sources from the 26th May as baseline) has suceeded
building and the sh1 big endian results are:

                === gcc Summary for sh-hms-sim ===

# of expected passes            25703
# of unexpected failures        29
# of unexpected successes       1
# of expected failures          68
# of unresolved testcases       5
# of untested testcases         28
# of unsupported tests          368

Considering that the controls don't build at all, I suppose I can say the
regression test passed.


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