------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-01-20 03:59 ------- Subject: Bug 19518
CVSROOT: /cvs/gcc Module name: gcc Changes by: [EMAIL PROTECTED] 2005-01-20 03:59:01 Modified files: gcc : ChangeLog gcc/config/alpha: alpha-protos.h alpha.c alpha.h alpha.md predicates.md Added files: gcc/testsuite/gcc.target/alpha: alpha.exp pr19518.c Log message: PR target/19518 * config/alpha/alpha.c (alpha_rtx_costs): Handle HIGH. (alpha_preferred_reload_class): Handle CONST_VECTOR. (alpha_emit_set_const_1): Add no_output parameter; don't emit rtl if true. (alpha_emit_set_const): Likewise. Make static. (alpha_emit_set_long_const): Make static. (alpha_extract_integer): Split out from alpha_expand_mov. (alpha_split_const_mov): Likewise. (alpha_expand_mov): Use them. Handle CONST_VECTOR. (alpha_legitimate_constant_p): New. * config/alpha/alpha-protos.h: Update. * config/alpha/alpha.h (REGISTER_MOVE_COST): Correct fp<->gp cost. (LEGITIMATE_CONSTANT_P): Re-implement with a function. * config/alpha/alpha.md (movsi): Add n alternative. (movsi_nt_vms, movdi_er_nofix, movdi_er_fix, movdi_fix): Likewise. (mov<VEC>_fix, mov<VEC>_nofix): Add i alternative. (splitters for all of the above): Use alpha_split_const_mov. * config/alpha/predicates.md (non_add_const_operand): New. (non_zero_const_operand): New. (input_operand): Use alpha_legitimate_constant_p after reload. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7192&r2=2.7193 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/alpha-protos.h.diff?cvsroot=gcc&r1=1.59&r2=1.60 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/alpha.c.diff?cvsroot=gcc&r1=1.407&r2=1.408 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/alpha.h.diff?cvsroot=gcc&r1=1.236&r2=1.237 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/alpha.md.diff?cvsroot=gcc&r1=1.231&r2=1.232 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/predicates.md.diff?cvsroot=gcc&r1=1.2&r2=1.3 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.target/alpha/alpha.exp.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.target/alpha/pr19518.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19518