public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Sandra Loosemore <sandra@codesourcery.com>
To: Mark Mitchell <mark@codesourcery.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>,
	David Ung <davidu@mips.com>,   Nigel Stephens <nigel@mips.com>,
	 Ian Lance Taylor <iant@google.com>,
	 richard@codesourcery.com
Subject: Re: PATCH: back end initialization reorganization
Date: Mon, 27 Aug 2007 13:41:00 -0000	[thread overview]
Message-ID: <46D2D40A.4090307@codesourcery.com> (raw)
In-Reply-To: <46CF23C6.6010900@codesourcery.com>

[-- Attachment #1: Type: text/plain, Size: 1302 bytes --]

Mark Mitchell wrote:
> Richard Sandiford wrote:
> 
>>>>> I guess I think it would be OK to put this patch in without getting
>>>>> everything else working, just so that it's not a moving target, but
>>>>> that's arguable, and I have an obvious bias.  So, what I'm hoping is
>>>>> that Ian will say that the patch is OK, and indicate whether he thinks
>>>>> we should put it in now, or wait until you have (a) the cfun stuff, and
>>>>> (b) the MIPS bits all ready to go as well.
> 
>>> Assuming that there are no objections within 72 hours, I think you
>>> should go ahead and check in the bits that you have working thus far.
>> Not sure I follow.  I thought Sandra was reworking the patch to
>> include "the cfun stuff" first.  What is this an approval for?
> 
> The reorganization and refactorization of the initialization code itself
> so that the last thing the initialization sequence does is call a
> backend_init function (sp?).  That last function is the think we intend
> to call multiple times -- but, until the cfun stuff is worked out, that
> won't actually happen, of course.

I've now committed the patch with the reorganization of the 
initialization code.  I'll post the remaining two bits of patch for 
review as soon as I have a chance to produce the ChangeLogs for them.

-Sandra




[-- Attachment #2: 28a-target-init.log --]
[-- Type: text/x-log, Size: 2717 bytes --]

2007-08-27  Sandra Loosemore  <sandra@codesourcery.com>
	    David Ung  <davidu@mips.com>
            Nigel Stephens <nigel@mips.com>

	gcc/
	Separate target-specific initialization from general
	back-end initialization.

	* toplev.c (init_alignments): New, split out from...
	(process_options): ...here.
	(backend_init_target):  New, split out from...
	(backend_init): ...here.
	(lang_dependent_init_target):  New, split out from...
	(lang_dependent_init): ...here.
	(target_reinit): New.
	* toplev.h (target_reinit): Declare.
	* expr.c (init_expr_target): Renamed from init_expr_once, since it
	now can be called more than once.  Update comments.
	* expr.h (init_expr_target): Likewise.
	* alias.c (init_alias_target): Renamed from init_alias_once, since it
	now can be called more than once.  Explicitly zero
	static_reg_base_value.
	* emit-rtl.c (init_emit_regs): New, split out from...
	(init_emit_once): Here.
	* regclass.c (initial_fixed_regs, initial_call_used_regs): Make
	non-const, so that changes from command-line arguments can overwrite
	values provided by the static initializers.
	(initial_call_really_used_regs): New, used similarly to the above.
	(initial_reg_names): Likewise.
	(last_mode_for_init_move_cost): Promoted function-local static to
	file-scope static to make it accessible outside init_move_cost.
	(init_reg_sets): Do not initialize fixed_regs and call_used_regs yet.
	Do not initialize inv_reg_alloc_order yet, either.  Do initialize
	reg_names since it is needed for parsing command-line options.
	(init_move_cost): Use last_mode_for_init_move_cost instead of
	function-local static.
	(init_reg_sets_1): Initialize fixed_regs, call_used_regs, and
	call_really_used_regs now.  Reinitialize reg_names.  Also
	initialize inv_reg_alloc_order.  Zero reg_class_subunion and
	reg_class_superunion.  Clear losing_caller_save_reg_set.
	Preserve global registers if called more than once.  Reset
	move cost, may_move_in_cost, may_move_out_cost, and
	last_mode_for_init_move_cost.
	(init_reg_modes_target): Renamed from init_reg_modes_once, since it
	can now be invoked more than once.  Update comments.
	(init_regs): Update comments.
	(fix_register): Update initial_fixed_regs, initial_call_used_regs,
	and initial_call_really_used_regs, instead of the non-initial 
        variables.  This allows us to save the command-line register settings
	after target reinitialization.
	(init_reg_autoinc): Zero forbidden_inc_dec_classes.
	* rtl.h (init_emit_regs): Declare.
	(init_reg_modes_target, init_alias_target): Renamed as described
	above.
	* reload1.c (init_reload): Update comments.
	* optabs.c (init_optabs): Likewise.
	* cfgloopanal.c (init_set_costs): Explicitly zero target_avail_regs.
	


  reply	other threads:[~2007-08-27 13:40 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-10 22:46 Sandra Loosemore
2007-08-18  0:39 ` Mark Mitchell
2007-08-18  1:05   ` Sandra Loosemore
2007-08-24  1:53     ` Mark Mitchell
2007-08-24 18:13       ` Richard Sandiford
2007-08-24 18:35         ` Sandra Loosemore
2007-08-24 18:35         ` Mark Mitchell
2007-08-27 13:41           ` Sandra Loosemore [this message]
2007-08-27 15:43             ` Broken tree with " Hans-Peter Nilsson
2007-08-27 15:58               ` Sandra Loosemore
2007-08-27 16:07                 ` Hans-Peter Nilsson
2007-08-27 17:46                   ` Sandra Loosemore
2007-08-27 18:15                     ` Hans-Peter Nilsson
2007-08-27 18:25                       ` Sandra Loosemore
2007-08-27 19:18                         ` Hans-Peter Nilsson
2007-08-27 19:52                           ` Sandra Loosemore
2007-08-27 20:38                             ` Andrew Pinski
2007-08-27 21:39                         ` Dave Korn
2007-08-27 23:06             ` Andrew Pinski
2007-08-27 23:40               ` Sandra Loosemore
2007-08-28  0:00                 ` Andrew Pinski
2007-08-28  0:58                   ` PATCH: back end initialization reorganization (now PR 33211) Sandra Loosemore

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46D2D40A.4090307@codesourcery.com \
    --to=sandra@codesourcery.com \
    --cc=davidu@mips.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=iant@google.com \
    --cc=mark@codesourcery.com \
    --cc=nigel@mips.com \
    --cc=richard@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).