1. 26 Jan, 2005 7 commits
    • rsandifo's avatar
      * config/mips/iris6.h (ENDFILE_SPEC): Don't link in irix-csr.o if · fe7266fa
      rsandifo authored
      	either -ffast-math or -funsafe-math-optimizations is in use.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94289 138bc75d-0d04-0410-961f-82ee72b054a4
      fe7266fa
    • marekm's avatar
      PR target/19293 · 5667001b
      marekm authored
      	PR target/19329
      	* config/avr/avr.c (notice_update_cc): Only set condition code for
      	ashrqi3 if shift count > 0.
      	(out_shift_with_cnt): Handle shift count <= 0 as a no-op.
      	(ashlqi3_out, ashlhi3_out, ashlsi3_out, ashrqi3_out, ashrhi3_out,
      	ashrsi3_out, lshrqi3_out, lshrhi3_out, lshrsi3_out): Handle shift
      	count <= 0 as a no-op, and shift count >= width by copying zero
      	or sign bit to all bits of the result.
      	* config/avr/avr.md (all shifts): Add alternatives for zero shift
      	count, with attribute "length" set to 0 and "cc" set to "none".
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94288 138bc75d-0d04-0410-961f-82ee72b054a4
      5667001b
    • aldyh's avatar
      * config/frv/frv.md: Add fr400_integer automaton. Don't · 6e9fe9d4
      aldyh authored
              allow TYPE_MUL, TYPE_MACC, or TYPE_CUT to issue in parallel
              to TYPE_MACC.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94272 138bc75d-0d04-0410-961f-82ee72b054a4
      6e9fe9d4
    • hp's avatar
      * config/cris/cris.h (LIB_SPEC) <sim*>: Use -lsyslinux, not · 6bb21d38
      hp authored
      	-lsyssim.  Wrap -lc -lsyssim in --start-group --end-group instead
      	of doubling.
      	(STARTFILE_SPEC): Add crti.o, before crtbegin.o.
       	<sim*>: Always use crt1.o, regardless of N in simN.
      	<!sim>: Drop support for -pg and -p variants; always use crt0.o.
      	(ENDFILE_SPEC): Add crtn.o, after crtend.o.
      	(CRT_CALL_STATIC_FUNCTION): Remove.
      	* config/cris/aout.h (STARTFILE_SPEC): <!melinux && sim*>: Always
      	use crt1.o, regardless of N in simN.
      	<!sim>: Drop support for -pg and -p variants; always use crt0.o.
      	(LIB_SPEC): Do not define; default to the one in config/cris/cris.h.
      	(CRIS_CPP_SUBTARGET_SPEC) <melinux && !nostdinc>: Remove special
      	case isystem setting.
      	(MAX_OFILE_ALIGNMENT): Correct to 32, not 16.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94251 138bc75d-0d04-0410-961f-82ee72b054a4
      6bb21d38
    • hp's avatar
      * config/cris/cris.h (CPP_SPEC): Adjust the various mtune= · e863288b
      hp authored
      	handlers to match indentation; nested under the mtune=* handler.
      	Similar for mcpu= and march=.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94245 138bc75d-0d04-0410-961f-82ee72b054a4
      e863288b
    • drow's avatar
      * config/mips/linux.h (LIB_SPEC): Remove -rpath-link. · abed903a
      drow authored
      	* config/mips/linux64.h (LIB_SPEC): Likewise.
      	* config/mn10300/linux.h (LIB_SPEC): Likewise.
      	* config/sh/linux.h (LIB_SPEC): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94244 138bc75d-0d04-0410-961f-82ee72b054a4
      abed903a
    • aldyh's avatar
      * config/frv/frv.c (frv_legitimize_tls_address): New. · 54c37fd6
      aldyh authored
      	(TARGET_HAVE_TLS): Define.
      	(FRV_SYMBOL_REF_TLS_P): Define.
      	(frv_override_options): Handle new register classes.
      	(frv_legitimate_address_p): Reject tls addresses.
      	(frv_legitimize_address): Handle TLS addresses.
      	(gen_inlined_tls_plt): New.
      	(gen_tlsmoff): New.
      	(frv_legitimize_tls_address): New.
      	(unspec_got_name): Add TLS entries.
      	(got12_operand): Add R_FRV_TLSMOFF12 case.
      	(frv_emit_move): Fixup TLS addresses.
      	(frv_emit_movsi): Legitimize TLS addresses.
      
      	* config/frv/frv.h (MASK_BIG_TLS): New.
      	(TARGET_BIG_TLS): New.
      	(HAVE_AS_TLS): Define.
      	(TARGET_SWITCHES): Add -mTLS and -mtls options.
      	(enum reg_class): Add GR8_REGS, GR9_REGS, GR89_REGS.
      	(REG_CLASS_NAMES): Same.
      	(REG_CLASS_CONTENTS): Same.
      	(CONSTRAINT_LEN): New.
      	(REG_CLASS_FROM_CONSTRAINT): New.
      	(PREDICATE_CODES): Add symbolic_operand.
      
      	* config/frv/frv.md (define_constants): Add UNSPEC_GETTLSOFF,
      	UNSPEC_TLS_LOAD_GOTTLSOFF12, UNSPEC_TLS_INDIRECT_CALL,
      	UNSPEC_TLS_TLSDESC_LDD, UNSPEC_TLS_TLSDESC_LDD_AUX,
      	UNSPEC_TLS_TLSOFF_LD, UNSPEC_TLS_LDDI, UNSPEC_TLSOFF_HILO,
      	R_FRV_GOTTLSOFF_HI, R_FRV_GOTTLSOFF_LO, R_FRV_TLSMOFFHI,
      	R_FRV_TLSMOFFLO, R_FRV_TLSMOFF12, R_FRV_TLSDESCHI,
      	R_FRV_TLSDESCLO, R_FRV_GOTTLSDESCHI, R_FRV_GOTTLSDESCLO, GR8_REG,
      	GR9_REG, GR14_REG, LRREG.
      	(type): Add load_or_call attribute.
      	("load_or_call"): New reservation.
      	("call_gettlsoff"): New.
      	("tls_indirect_call"): New.
      	("tls_load_gottlsoff12"): New.
      	("tlsoff_hilo"): New.
      	("tls_tlsdesc_ldd"): New.
      	("tls_tlsoff_ld"): New.
      	("tls_lddi"): New.
      
      	* config/frv/frv-protos.h (symbolic_operand): Protoize.
      
              * config/frv/frv.h (ASM_OUTPUT_DWARF_DTPREL): Define.
              * config/frv/frv-protos.h (frv_output_dwarf_dtprel): Declare.
              * config/frv/frv.c (TLS_BIAS): Define.
              (frv_output_dwarf_dtprel): New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94237 138bc75d-0d04-0410-961f-82ee72b054a4
      54c37fd6
  2. 25 Jan, 2005 1 commit
    • rth's avatar
      PR target/19556 · d15825bc
      rth authored
              PR target/19584
              * config/i386/i386.c (x86_inter_unit_moves): Zero.
              (ix86_preferred_reload_class): Rewrite fp-constant section, with
              80387 enabled, to return a proper subclass.  Return the subset that
              overlaps with GENERAL_REGS for PLUS.
              * config/i386/i386.md (movsi_1, movdi_2): Set type to "mmx" for pxor.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94223 138bc75d-0d04-0410-961f-82ee72b054a4
      d15825bc
  3. 24 Jan, 2005 6 commits
    • rsandifo's avatar
      * config/mips/irix-csr.c: New file. · 87918c37
      rsandifo authored
      	* config/mips/t-iris6 (irix-csr.o): New rule to build it.
      	(EXTRA_MULTILIB_PARTS): Add irix-csr.o.
      	* config/mips/iris6.h (ENDFILE_SPEC): Include it in n32 and n64
      	executables.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94186 138bc75d-0d04-0410-961f-82ee72b054a4
      87918c37
    • ebotcazou's avatar
      PR bootstrap/19364 · 0b84cbdd
      ebotcazou authored
      	* config.gcc (sparc-*-elf*): Remove sol2.h, sparc/sol2.h and
      	sparc/elf.h, add sparc/sp-elf.h.
      	(sparc-*-rtems*): Likewise.
      	(sparclite-*-elf*): Remove sol2.h, sparc/sol2.h, sparc/elf.h and
      	tm-dwarf2.h, add sparc/sp-elf.h.
      	(sparc86x-*-elf): Likewise.
      	(sparc64-*-elf*): Remove sol2.h, sparc/sol2.h and tm-dwarf2.h.
      	* config/sparc/liteelf.h (TARGET_SUB_OS_CPP_BUILTINS): Rename into
      	TARGET_OS_CPP_BUILTINS.
      	* config/sparc/sp86x-elf (TARGET_SUB_OS_CPP_BUILTINS): Likewise.
      	* config/sparc/rtemself.h (TARGET_SUB_OS_CPP_BUILTINS): Likewise.
      	Undefine it.
      	* config/sparc/openbsd64.h (NO_IMPLICIT_EXTERN_C): Undefine.
      	* config/sparc/sp64-elf.h (NO_IMPLICIT_EXTERN_C): New macro.
      	(SWITCH_TAKES_ARG): Likewise.
      	(LOCAL_LABEL_PREFIX): Likewise.
      	(ASM_GENERATE_INTERNAL_LABEL): Likewise.
      	(TARGET_N_FORMAT_TYPES): Delete.
      	(TARGET_FORMAT_TYPES): Likewise.
      	(ASM_DECLARE_FUNCTION_SIZE): Likewise.
      	* config/sparc/elf.h: Delete.
      	* config/sparc/sp-elf.h: New file.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94185 138bc75d-0d04-0410-961f-82ee72b054a4
      0b84cbdd
    • jakub's avatar
      PR target/17751 · 5acca564
      jakub authored
      	* config/rs6000/rs6000.c (rs6000_file_start): Create toc section
      	for AIX ABI or ELF -fPIC.
      	(rs6000_emit_load_toc_table): Don't create toc_section here.
      	(rs6000_xcoff_file_start): Nor here.
      
      	* gcc.dg/ppc64-toc.c: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94166 138bc75d-0d04-0410-961f-82ee72b054a4
      5acca564
    • amylaar's avatar
      * sh.c (ra.h): Don't #include. · 3cebdd3a
      amylaar authored
      	(hard_regs_intersect_p): New function, resurrected from ra.c.
      N.B this is Copyright 2002/2003
      
      	* sh.c: Fix 1996 Copyright.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94163 138bc75d-0d04-0410-961f-82ee72b054a4
      3cebdd3a
    • kazu's avatar
      * c-opts.c, expmed.c, gengtype.c, tree-complex.c, · 9a96a320
      kazu authored
      	config/arm/iwmmxt.md, config/avr/avr.c, config/s390/s390.h:
      	Update copyright.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94154 138bc75d-0d04-0410-961f-82ee72b054a4
      9a96a320
    • uros's avatar
      * config/i386/i386.md (*extendsfdf2_sse): Use "nonimmediate_operand" · 89d22fcb
      uros authored
      	operand constraint for operand 0.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94144 138bc75d-0d04-0410-961f-82ee72b054a4
      89d22fcb
  4. 23 Jan, 2005 2 commits
    • kazu's avatar
      * alias.c, c-common.h, c-incpath.c, c-incpath.h, expr.c, · 0975351b
      kazu authored
      	fold-const.c, gimplify.c, params.h, tree-data-ref.c,
      	tree-if-conv.c, tree-nested.c, tree-outof-ssa.c,
      	tree-ssa-dom.c, tree-vectorizer.c, tree.def, config/darwin.c,
      	config/freebsd-spec.h, config/arm/arm.h,
      	config/h8300/h8300.md, config/i386/i386.md,
      	config/i386/predicates.md, config/i386/sse.md,
      	config/ia64/ia64.c, config/ip2k/ip2k.c, config/s390/s390.c,
      	config/vax/vax.md: Fix comment typos.  Follow spelling
      	conventions.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94112 138bc75d-0d04-0410-961f-82ee72b054a4
      0975351b
    • sayle's avatar
      · 60d76236
      sayle authored
      	PR middle-end/19378
      	* config/avr/avr.c (avr_hard_regno_mode_ok): Rewrite.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94102 138bc75d-0d04-0410-961f-82ee72b054a4
      60d76236
  5. 22 Jan, 2005 12 commits
  6. 21 Jan, 2005 1 commit
    • ebotcazou's avatar
      * config.gcc (sparc-*-netbsdelf*): Include dbxelf.h · 8c393d8d
      ebotcazou authored
      	(sparc64-*-openbsd*): Likewise.
      	(sparclite-*-elf*): Include tm-dwarf2.h.
      	(sparc86x-*-elf*): Likewise.
      	(sparc64-*-elf*): Likewise.
      	* config/sparc/linux64.h (DWARF2_DEBUGGING_INFO): Delete.
      	(DBX_DEBUGGING_INFO): Likewise.
      	* config/sparc/liteelf.h (DWARF2_DEBUGGING_INFO): Likewise.
      	(PREFERRED_DEBUGGING_TYPE): Likewise.
      	* config/sparc/netbsd-elf.h (PREFERRED_DEBUGGING_TYPE): Likewise.
      	* config/sparc/sp64-elf.h (DBX_DEBUGGING_INFO): Likewise.
      	(PREFERRED_DEBUGGING_TYPE): Likewise.
      	* config/sparc/sp86x-elf.h (DWARF2_DEBUGGING_INFO 1): Likewise.
      	(PREFERRED_DEBUGGING_TYPE): Likewise.
      	* config/sparc/sparc.h (DBX_DEBUGGING_INFO): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94011 138bc75d-0d04-0410-961f-82ee72b054a4
      8c393d8d
  7. 20 Jan, 2005 10 commits
    • pbrook's avatar
      * config/arm/arm.md (insv): Use gen_int_mode. · 4292ca6b
      pbrook authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93986 138bc75d-0d04-0410-961f-82ee72b054a4
      4292ca6b
    • ebotcazou's avatar
      * config/sparc/freebsd.h (ASM_OUTPUT_INTERNAL_LABELREF): Delete. · a01ff5a3
      ebotcazou authored
      	* config/sparc/linux.h (ASM_OUTPUT_INTERNAL_LABELREF): Likewise.
      	* config/sparc/linux64.h (ASM_OUTPUT_INTERNAL_LABELREF): Likewise.
      	* config/sparc/netbsd-elf.h (ASM_OUTPUT_INTERNAL_LABELREF): Likewise.
      	* config/sparc/sol2.h (ASM_OUTPUT_INTERNAL_LABELREF): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93984 138bc75d-0d04-0410-961f-82ee72b054a4
      a01ff5a3
    • rth's avatar
      PR target/19418 · af87506b
      rth authored
              * config/i386/emmintrin.h (_mm_castpd_ps, _mm_castpd_si128): New.
              (_mm_castps_pd, _mm_castps_si128): New.
              (_mm_castsi128_ps, _mm_castsi128_pd): New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93974 138bc75d-0d04-0410-961f-82ee72b054a4
      af87506b
    • rth's avatar
      PR target/19530 · 8631d44f
      rth authored
              * config/i386/mmintrin.h (_mm_cvtsi32_si64): Use
              __builtin_ia32_vec_init_v2si.
              (_mm_cvtsi64_si32): Use __builtin_ia32_vec_ext_v2si.
              * config/i386/i386.c (IX86_BUILTIN_VEC_EXT_V2SI): New.
              (ix86_init_mmx_sse_builtins): Create it.
              (ix86_expand_builtin): Expand it.
              (ix86_expand_vector_set): Handle V2SFmode and V2SImode.
              * config/i386/mmx.md (vec_extractv2sf_0, vec_extractv2sf_1): New.
              (vec_extractv2si_0, vec_extractv2si_1): New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93972 138bc75d-0d04-0410-961f-82ee72b054a4
      8631d44f
    • rth's avatar
      * config/i386/i386.c (ix86_expand_push): New. · ced2b596
      rth authored
              * config/i386/mmx.md (push<MMXMODE>1): New.
              * config/i386/sse.md (push<SSEMODE>1): New.
              * config/i386/i386-protos.h: Update.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93970 138bc75d-0d04-0410-961f-82ee72b054a4
      ced2b596
    • rth's avatar
      PR target/19350 · 21d689c9
      rth authored
              * config/i386/i386.c (ix86_expand_vector_move_misalign): Convert
              to V4SFmode in SSE1 fallback load path.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93957 138bc75d-0d04-0410-961f-82ee72b054a4
      21d689c9
    • rth's avatar
      * config/i386/i386.c (ix86_expand_vector_init_one_var): Fix typo · 47c34cb2
      rth authored
              in QImode expansion to ix86_expand_vector_set.
              (ix86_expand_vector_init_general): Fix typo in V8HImode recursive call.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93952 138bc75d-0d04-0410-961f-82ee72b054a4
      47c34cb2
    • rth's avatar
      PR target/19511 · 279495ad
      rth authored
              * config/i386/i386.c (ix86_preferred_reload_class): Return a proper
              subclass of the input class.
              (ix86_secondary_memory_needed): Always true for cross-MMX classes.
              Always true for cross-SSE1 classes.  Rationalize conditionals.
              * config/i386/i386.h (SSE_CLASS_P, MMX_CLASS_P): Use straight equality.
              * config/i386/i386.md (movsi_1): Add MMX/SSE zeros.  Fix alternatives
              for SSE1.  Don't check TARGET_INTER_UNIT_MOVES.
              (movdi_2): Add MMX/SSE zeros.
              (movdi_1_rex64): Likewise.  Don't check TARGET_INTER_UNIT_MOVES.
              (movsf_1): Don't check TARGET_INTER_UNIT_MOVES.
              (zero_extendsidi2_32, zero_extendsidi2_rex64): Likewise.
              (movsi_1_nointernunit, movdi_1_rex64_nointerunit): Remove.
              (movsf_1_nointerunit, zero_extendsidi2_32_1): Remove.
              (zero_extendsidi2_rex64_1): Remove.
              (MOV0 peephole): Check GENERAL_REG_P.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93948 138bc75d-0d04-0410-961f-82ee72b054a4
      279495ad
    • rth's avatar
      PR target/19427 · 892e7f8c
      rth authored
              * config/i386/i386.c (ix86_expand_vector_set): Fix third and fourth
              shufps elements.
              (ix86_expand_vector_extract): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93946 138bc75d-0d04-0410-961f-82ee72b054a4
      892e7f8c
    • rth's avatar
      PR target/19518 · 91bc47b0
      rth authored
              * 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.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93943 138bc75d-0d04-0410-961f-82ee72b054a4
      91bc47b0
  8. 19 Jan, 2005 1 commit