OSDN Git Service

* target.h (struct gcc_target): Add register_move_cost field.
authoraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 27 Jun 2010 11:40:42 +0000 (11:40 +0000)
committeraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 27 Jun 2010 11:40:42 +0000 (11:40 +0000)
commite6078fbbeb7c0b6152faed2a1c070fdb3fb016b9
tree851a7e8964d45a63937f1e17d192d74a42b4e143
parent2253ffcaf24f7d2b7b5b0858ee29a648a49358d0
* target.h (struct gcc_target): Add register_move_cost field.
* target-def.h (TARGET_REGISTER_MOVE_COST): New.
(TARGET_INITIALIZER): Use TARGET_REGISTER_MOVE_COST.
* targhooks.c (default_register_move_cost): New function.
* targhooks.h (default_register_move_cost): Declare function.
* defaults.h (REGISTER_MOVE_COST): Delete.
* ira-int.h (ira_register_move_cost): Update comment.
* ira.c: (ira_register_move_cost): Update comment.
* reload.h (register_move_cost): Declare.
* reginfo.c (register_move_cost): New function.
(move_cost): Update comment.
(init_move_cost, memory_move_secondary_cost): Replace
REGISTER_MOVE_COST with register_move_cost.
* postreload.c (reload_cse_simplify_set): (Ditto.).
* reload.c (find_valid_class, find_reloads): (Ditto.).
* reload1.c (choose_reload_regs): (Ditto.).
* doc/tm.texi (TARGET_REGISTER_MOVE_COST): New.
(REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Update documentation.
* doc/md.texi (can_create_pseudo_p): Update documentation.

* config/i386/i386.h (MEMORY_MOVE_COST): Remove macro.
* config/i386/i386-protos.h (int ix86_memory_move_cost): Remove.
* config/i386/i386.h (ix86_memory_move_cost): Make static.
(TARGET_MEMORY_MOVE_COST): Define.

* config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
* config/ia64/ia64-protos.h (int ia64_memory_move_cost): Remove.
* config/ia64/ia64.h (ia64_memory_move_cost): Make static.
(TARGET_MEMORY_MOVE_COST): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161470 138bc75d-0d04-0410-961f-82ee72b054a4
21 files changed:
gcc/ChangeLog
gcc/config/i386/i386-protos.h
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/ia64/ia64-protos.h
gcc/config/ia64/ia64.c
gcc/config/ia64/ia64.h
gcc/defaults.h
gcc/doc/md.texi
gcc/doc/tm.texi
gcc/ira-int.h
gcc/ira.c
gcc/postreload.c
gcc/reginfo.c
gcc/reload.c
gcc/reload.h
gcc/reload1.c
gcc/target-def.h
gcc/target.h
gcc/targhooks.c
gcc/targhooks.h