aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2004-02-04alpha.c, [...]: Revert the replacements of "FALLTHRU" with "Fall through" ↵Kazu Hirata16-39/+50
done in the previous... * config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c, config/i386/i386.c, config/i386/i386.h, config/i386/i386.md, config/ia64/ia64.c, config/ia64/unwind-ia64.c, config/m32r/m32r.c, config/ns32k/ns32k.c, config/pa/pa.c, config/pdp11/pdp11.c, config/rs6000/rs6000.c, config/sparc/sparc.c, config/vax/vax.c: Revert the replacements of "FALLTHRU" with "Fall through" done in the previous patch. From-SVN: r77269
2004-02-04darwin.c, [...]: Fix comment formatting.Kazu Hirata38-91/+110
* config/darwin.c, config/darwin.h, config/freebsd-spec.h, config/arm/arm.c, config/arm/arm.md, config/cris/cris-protos.h, config/fr30/fr30.c, config/fr30/fr30.h, config/h8300/h8300.c, config/i386/i386.h, config/i860/i860.c, config/i860/i860.h, config/ia64/ia64-c.c, config/ia64/ia64.c, config/ia64/ia64.h, config/ip2k/ip2k.h, config/ip2k/ip2k.md, config/ip2k/libgcc.S, config/m32r/linux.h, config/m32r/m32r.c, config/m32r/m32r.h, config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.md, config/ns32k/netbsd.h, config/ns32k/ns32k.c, config/ns32k/ns32k.h, config/pdp11/pdp11.h, config/rs6000/darwin-ldouble.c, config/s390/s390.h, config/s390/s390.md, config/sparc/netbsd-elf.h, config/sparc/openbsd.h, config/sparc/sparc.c, config/xtensa/lib2funcs.S: Fix comment formatting. From-SVN: r77268
2004-02-04alpha.c, [...]: Fix comment typos.Kazu Hirata32-79/+96
* config/alpha/alpha.c, config/arc/arc.c, config/arm/arm-cores.def, config/arm/arm.c, config/arm/arm.h, config/arm/arm1026ejs.md, config/arm/arm1136jfs.md, config/arm/arm926ejs.md, config/arm/vfp.md, config/avr/avr.c, config/c4x/c4x.c, config/cris/cris.c, config/frv/frv.md, config/i386/i386.c, config/i386/i386.h, config/i386/i386.md, config/ia64/ia64.c, config/ia64/unwind-ia64.c, config/iq2000/iq2000.c, config/m32r/m32r.c, config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h, config/ns32k/ns32k.c, config/pa/pa.c, config/pdp11/pdp11.c, config/rs6000/darwin-ldouble.c, config/rs6000/rs6000.c, config/rs6000/rs6000.h, config/sparc/sparc.c, config/vax/vax.c: Fix comment typos. Follow spelling conventions. From-SVN: r77267
2004-02-04alloc-pool.h, [...]: Update copyright.Kazu Hirata32-29/+53
gcc/ * alloc-pool.h, c-convert.c, c-lang.c, c-tree.h, caller-save.c, df.h, genconfig.c, global.c, lcm.c, ra-rewrite.c, ra.c, regclass.c, regs.h, resource.c, sched-rgn.c, config/arm/aof.h, config/arm/cirrus.md, config/arm/fpa.md, config/arm/iwmmxt.md, config/arm/netbsd-elf.h, config/arm/netbsd.h, config/m68hc11/m68hc11.md, config/mips/iris5.h, config/mn10300/mn10300.md, config/rs6000/altivec.md, config/sparc/netbsd-elf.h: Update copyright. cp/ * error.c, search.c: Update copyright. java/ * typeck.c: Update copyright. From-SVN: r77265
2004-02-04sparc.c (function_arg_pass_by_reference): Return 1 for all modes whose size ↵Eric Botcazou2-6/+9
is greater than 8 bytes if ARCH32. * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1 for all modes whose size is greater than 8 bytes if ARCH32. (sparc_va_arg): Handle all modes whose size is greater than 8 bytes by reference if ARCH32. From-SVN: r77262
2004-02-04re PR c++/13969 (static const value rejected as template parameter)Mark Mitchell6-53/+102
PR c++/13969 * g++.dg/template/static6.C: New test. PR c++/13969 * cp-tree.h (fold_non_dependent_expr): New function. * parser.c (cp_parser_fold_non_dependent_expr): Remove. (cp_parser_template_argument): Use fold_non_dependent_expr. (cp_parser_direct_declarator): Likewise. * pt.c (fold_non_dependent_expr): New function. (convert_nontype_argument): Use it. (tsubst_qualified_id): Simplify. (tsubst_copy_and_build): Likewise. From-SVN: r77260
2004-02-04* cgraphunit.c (cgraph_postorder): Fix typo in comment.Aldy Hernandez2-1/+5
From-SVN: r77257
2004-02-04s390.md ("*la_64" + peepholes, [...]): Move to before adddi3 insn patterns.Ulrich Weigand2-130/+135
* config/s390/s390.md ("*la_64" + peepholes, "reload_indi"): Move to before adddi3 insn patterns. ("*la_31" + peepholes, "*la_31_and", "*la_31_and_cc", "force_la_31", "reload_insi"): Move to before addsi3 insn patterns. From-SVN: r77253
2004-02-04* gcc.dg/arm-mmx-1.c: Don't look for ldmfd if -mthumb.Ian Lance Taylor2-1/+5
From-SVN: r77249
2004-02-04encode-2.m, [...]: Fix tests for systems where `char' is unsigned by default.Kaveh R. Ghazi4-4/+9
* objc.dg/encode-2.m, objc.dg/encode-3.m, objc.dg/encode-4.m: Fix tests for systems where `char' is unsigned by default. From-SVN: r77247
2004-02-04calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P parameter.Mark Mitchell9-22/+45
* calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P parameter. Use it instead of current_function_is_thunk. * function.h (struct function): Update documentation for is_thunk. * tree.h (CALL_FROM_THUNK_P): New macro. * config/alpha/alpha.c (alpha_sa_mask): Do not check no_new_pseudos when testing current_function_is_thunk. * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse. * decl.c (cxx_push_function_context): Do not set current_function_is_thunk. * method.c (use_thunk): Set CALL_FROM_THUNK on the call to the actual function. From-SVN: r77244
2004-02-04Forgot the PR number.Giovanni Bajo1-0/+1
From-SVN: r77239
2004-02-04Forgot the PR number for my last entry.Giovanni Bajo1-0/+1
From-SVN: r77238
2004-02-04* g++.dg/template/partial3.C: New test.Giovanni Bajo2-0/+18
From-SVN: r77237
2004-02-04pt.c (more_specialized_class): Increase processing_template_decl while ↵Giovanni Bajo2-0/+11
partial ordering. * pt.c (more_specialized_class): Increase processing_template_decl while partial ordering. From-SVN: r77236
2004-02-04[multiple changes]Arnaud Charlet23-499/+685
2004-02-04 Robert Dewar <dewar@gnat.com> * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb, ali.ads, gprcmd.adb: Minor reformatting * bindgen.adb: Output restrictions string for new style restrictions handling * impunit.adb: Add s-rident.ads (System.Rident) and s-restri (System.Restrictions) * lib-writ.adb: Fix bug in writing restrictions string (last few entries wrong) * s-restri.ads, s-restri.adb: Change name Restrictions to Run_Time_Restrictions to avoid conflict with package name. Add circuit to read and acquire run time restrictions. 2004-02-04 Jose Ruiz <ruiz@act-europe.fr> * restrict.ads, restrict.adb: Use the new restriction No_Task_Attributes_Package instead of the old No_Task_Attributes. * sem_prag.adb: No_Task_Attributes is a synonym of No_Task_Attributes_Package. * snames.ads, snames.adb: New entry for proper handling of No_Task_Attributes. * s-rident.ads: Adding restriction No_Task_Attributes_Package (AI-00249) that supersedes the GNAT specific restriction No_Task_Attributes. 2004-02-04 Ed Schonberg <schonberg@gnat.com> * sem_prag.adb: (Analyze_Pragma, case Warnings): In an inlined body, as in an instance body, an identifier may be wrapped in an unchecked conversion. 2004-02-04 Vincent Celier <celier@gnat.com> * lib-writ.ads: Comment update for the W lines * bld.adb: (Expression): An empty string list is static * fname-uf.adb: Minor comment update * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail * gnatbind.adb: Initialize Cumulative_Restrictions with the restrictions on the target. From-SVN: r77233
2004-02-04tm.texi: Replace SETUP_INCOMING_VARARGS with TARGET_SETUP_INCOMING_VARARGS.Kazu Hirata2-2/+7
* doc/tm.texi: Replace SETUP_INCOMING_VARARGS with TARGET_SETUP_INCOMING_VARARGS. From-SVN: r77226
2004-02-04emit-rtl.c (gen_rtx): Remove.Kazu Hirata5-125/+18
* emit-rtl.c (gen_rtx): Remove. * genattrtab.c: Don't mention gen_rtx in a comment. * rtl.h: Remove the prototype for gen_rtx. * doc/md.texi: Replace gen_rtx with gen_rtx_REG. From-SVN: r77224
2004-02-04* config/arc/arc.h, config/fr30/fr30.hKazu Hirata4-58/+10
(SETUP_INCOMING_VARARGS): Remove the target-independent comments. * doc/tm.texi: Don't mention deprecated target macros. From-SVN: r77221
2004-02-04fr30.h (FUNCTION_VALUE): Remove the target-independent comment.Kazu Hirata2-18/+5
* config/fr30/fr30.h (FUNCTION_VALUE): Remove the target-independent comment. From-SVN: r77220
2004-02-04interface.texi, [...]: Don't mention deprecated target macros.Kazu Hirata4-6/+11
* doc/interface.texi, doc/tm.texi, doc/trouble.texi: Don't mention deprecated target macros. From-SVN: r77217
2004-02-04config.gcc: Remove obsolete ports and configurations.Kazu Hirata64-35830/+45
gcc/ * config.gcc: Remove obsolete ports and configurations. * config/linux-aout.h, config/netware.h, config/t-linux-gnulibc1, config/d30v/abi, config/d30v/d30v-protos.h, config/d30v/d30v.c, config/d30v/d30v.h, config/d30v/d30v.md, config/d30v/libgcc1.asm, config/d30v/t-d30v, config/dsp16xx/dsp16xx-modes.def, config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c, config/dsp16xx/dsp16xx.h, config/dsp16xx/dsp16xx.md, config/i370/README, config/i370/i370-c.c, config/i370/i370-protos.h, config/i370/i370.c, config/i370/i370.h, config/i370/i370.md, config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h, config/i370/t-i370, config/i386/freebsd-aout.h, config/i386/linux-aout.h, config/i386/moss.h, config/i386/netware.h, config/i386/svr3.ifile, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/svr3z.ifile, config/i386/t-udk, config/i386/udk.h, config/i386/vsta.h, config/i960/i960-c.c, config/i960/i960-coff.h, config/i960/i960-modes.def, config/i960/i960-protos.h, config/i960/i960.c, config/i960/i960.h, config/i960/i960.md, config/i960/rtems.h, config/i960/t-960bare, config/m68k/hp310.h, config/m68k/hp320.h, config/m68k/hp320base.h, config/m68k/m68kv4.h, config/m68k/netbsd.h, config/m68k/sgs.h, config/m68k/t-hp320: Remove. * doc/extend.texi, doc/install.texi, doc/invoke.texi, doc/md.texi: Remove mentions of obsolete ports. testsuite/ * gcc.dg/20020312-2.c, gcc.dg/builtin-inf-1.c, gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c, gcc.dg/cpp/assert4.c: Remove mentions of obsolete ports. From-SVN: r77216
2004-02-04Daily bump.GCC Administrator1-1/+1
From-SVN: r77206
2004-02-03alias.c (find_base_term, get_addr): Do not dereference NULL pointer when all ↵Jan Hubicka2-11/+20
VALUE's locations has been invalidated. * alias.c (find_base_term, get_addr): Do not dereference NULL pointer when all VALUE's locations has been invalidated. (rtx_equal_for_memref_p): Simplify checking of VALUEs. From-SVN: r77201
2004-02-03Commit for Wolfgang Bangerth:Wolfgang Bangerth2-8/+12
* doc/invoke.texi (x86 options): Fix spelling/wording From-SVN: r77200
2004-02-0320001228-1.c: Fix for new error message.Paolo Bonzini2-1/+6
2004-02-04 Paolo Bonzini <bonzini@gnu.org> * gcc.dg/noncompile/20001228-1.c: Fix for new error message. From-SVN: r77199
2004-02-03iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to put the original string ↵Richard Sandiford5-7/+21
in a comment. * config/mips/iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to put the original string in a comment. * config/mips/mips-protos.h (mips_output_ascii): Add prefix argument. * config/mips/mips.c (mips_output_ascii): Likewise. * config/mips/mips.h (ASM_OUTPUT_ASCII): Adjust accordingly. From-SVN: r77195
2004-02-03system.h (GIV_SORT_CRITERION): Poison.Kazu Hirata4-30/+8
* system.h (GIV_SORT_CRITERION): Poison. * config/avr/avr.h (GIV_SORT_CRITERION): Remove. * config/ip2k/ip2k.h (GIV_SORT_CRITERION): Likewise. From-SVN: r77194
2004-02-03re PR target/9348 ([HP-UX] error in int to unsigned long multiplication)Roger Sayle4-13/+47
PR target/9348 * expr.c (expand_expr_real) <MULT_EXPR>: When performing widening multiplies with a multiplication of the wrong signedness, its the signedness of the multiplication that we've performed that needs to be passed to expand_mult_highpart_adjust. Avoid emitting a nop-move if expand_mult_highpart_adjust places the result in target. * gcc.c-torture/execute/multdi-1.c: New test case. From-SVN: r77192
2004-02-03* varasm.c (const_desc_rtx_sym_eq): Compare symbol strings.Richard Henderson2-1/+5
From-SVN: r77191
2004-02-03re PR c++/13925 (Bug while befriending specializations)Mark Mitchell4-2/+31
PR c++/13925 * decl.c (start_function): Do not call pushdecl for any instantiation or specialization of a primary template. PR c++/13925 * g++.dg/template/lookup5.C: New test. From-SVN: r77187
2004-02-03re PR c++/13950 ([DR176] lookup of dependent base name)Mark Mitchell5-5/+48
PR c++/13950 * parser.c (cp_parser_class_name): Robustify. PR c++/13970 * parser.c (cp_parser_cache_group): Do not consume the EOF token. PR c++/13950 * g++.dg/template/lookup4.C: New test. PR c++/13970 * g++.dg/parse/error14.C: New test. From-SVN: r77186
2004-02-03* config.gcc (sh[234]l): Use little endian fragments.J"orn Rennecke2-1/+5
From-SVN: r77185
2004-02-03re PR c++/14002 (Friend declaration with template-id causes confusion of ↵Mark Mitchell5-1/+36
function arguments) PR c++/14002 * semantics.c (finish_id_expression): Do not return an IDENTIFIER_NODE when lookup finds a PARM_DECL. PR c++/14002 * g++.dg/parse/template13.C: New test. From-SVN: r77183
2004-02-03pdp11-modes.def: Add RESET_FLOAT_FORMAT calls.Paul Koning5-26/+153
* config/pdp11/pdp11-modes.def: Add RESET_FLOAT_FORMAT calls. * config/pdp11/pdp11-protos.h (legitimate_const_double_p): Add. * config/pdp11/pdp11.c (encode_pdp11_f, decode_pdp11_f, encode_pdp11_d, decode_pdp11_d): New functions to handle PDP11 floating point format. (pdp11_f_format, pdp11_d_format): New real_format descriptors for the above functions. (output_move_quad): Output float values in correct target format. (legitimate_const_double_p): New function. * config/pdp11/pdp11.h: Fix typos. (FLOAT_WORDS_BIG_ENDIAN): Add definition. (TARGET_FLOAT_FORMAT): Ditto. (pdp11_f_format, pdp11_d_format): Add external declarations. (MAX_REGS_PER_ADDRESS): Corrected. (LEGITIMATE_CONSTANT_P): Use legitimate_const_double_p(). (PRINT_OPERAND): Output float literals in target format. From-SVN: r77180
2004-02-03re PR c++/13975 (ICE on misplaced visibility specifier.)Mark Mitchell11-5/+91
PR c++/13975 * tree.h (enum tree_index): Add TI_PUBLIC, TI_PROTECTED, and TI_PRIVATE. (access_public_node): Redefine. (access_protected_node): Likewise. (access_private_node): Likewise. * tree.c (build_common_tree_nodes): Create access_public_node, access_protected_node, and access_private_node. PR c++/13978 * pt.c (build_non_dependent_expr): Do not build NON_DEPENDENT_EXPRs for FUNCTION_DECLs or TEMPLATE_DECLs. PR c++/13968 * semantics.c (finish_id_expression): Do not return an IDENTIFIER_NODE when lookup finds a VAR_DECL. PR c++/13975 * parser.c (cp_parser_simple_declaration): When skipping to the end of the statement swallow the terminating semicolon. PR c++/13978 * g++.dg/template/koenig4.C: New test. PR c++/13968 * g++.dg/template/crash17.C: New test. PR c++/13975 * g++.dg/parse/error13.C: New test. * g++.old-deja/g++.robertl/eb125.C: Tweak error messages. From-SVN: r77176
2004-02-03ia64.h (MASK_INLINE_INT_DIV_LAT): Change value.Steve Ellcey2-6/+15
* config/ia64/ia64.h (MASK_INLINE_INT_DIV_LAT): Change value. (MASK_INLINE_INT_DIV_THR): Ditto. (MASK_INLINE_SQRT_LAT): Ditto. (MASK_INLINE_SQRT_THR): Ditto. (MASK_DWARF2_ASM): Ditto. (MASK_EARLY_STOP_BITS): Ditto. From-SVN: r77175
2004-02-03backport: re PR target/12476 (ARM/THUMB thunk calls broken)Paul Brook26-1139/+4737
Merge from csl-arm-branch. 2004-01-30 Paul Brook <paul@codesourcery.com> * aof.h (REGISTER_NAMES): Add vfp reg names (ADDITIONAL_REGISTER_NAMES): Ditto. * aout.h (REGISTER_NAMES): Ditto. (ADDITIONAL_REGISTER_NAMES): Ditto. * arm-protos.h: Update/Add Prototypes. * arm.c (init_fp_table): Rename from init_fpa_table. Update users. Only allow 0.0 for VFP. (fp_consts_inited): Rename from fpa_consts_inited. Update users. (values_fp): Rename from values_fpa. Update Users. (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa. Update users. Only check valid constants for this hardware. (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users. Only allow consts for FPA. (arm_float_add_operand): Rename from fpa_add_operand. Update users. Only allow consts for FPA. (use_return_insn): Check for saved VFP regs. (arm_legitimate_address_p): Handle VFP DFmode addressing. (arm_legitimize_address): Ditto. (arm_general_register_operand): New function. (vfp_mem_operand): New function. (vfp_compare_operand): New function. (vfp_secondary_reload_class): New function. (arm_float_compare_operand): New function. (vfp_print_multi): New function. (vfp_output_fstmx): New function. (vfp_emit_fstm): New function. (arm_output_epilogue): Output VPF reg restore code. (arm_expand_prologue): Output VFP reg save code. (arm_print_operand): Add 'P'. (arm_hard_regno_mode_ok): Return modes for VFP regs. (arm_regno_class): Return classes for VFP regs. (arm_compute_initial_elimination_offset): Include space for VFP regs. (arm_get_frame_size): Ditto. * arm.h (FIXED_REGISTERS): Add VFP regs. (CALL_USED_REGISTERS): Ditto. (CONDITIONAL_REGISTER_USAGE): Enable VFP regs. (FIRST_VFP_REGNUM): Define. (LAST_VFP_REGNUM): Define. (IS_VFP_REGNUM): Define. (FIRST_PSEUDO_REGISTER): Include VFP regs. (HARD_REGNO_NREGS): Handle VFP regs. (REG_ALLOC_ORDER): Add VFP regs. (enum reg_class): Add VFP_REGS. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs. (REG_CLASS_FROM_LETTER): Add 'w'. (EXTRA_CONSTRAINT_ARM): Add 'U'. (EXTRA_MEMORY_CONSTRAINT): Define. (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs. (SECONDARY_INPUT_RELOAD_CLASS): Ditto. (REGISTER_MOVE_COST): Ditto. (PREDICATE_CODES): Add arm_general_register_operand, arm_float_compare_operand and vfp_compare_operand. * arm.md (various): Rename as above. (divsf3): Enable when TARGET_VFP. (divdf3): Ditto. (movdfcc): Ditto. (sqrtsf2): Ditto. (sqrtdf2): Ditto. (arm_movdi): Disable when TARGET_VFP. (arm_movsi_insn): Ditto. (movsi): Only split with general regs. (cmpsf): Use arm_float_compare_operand. (push_fp_multi): Restrict to TARGET_FPA. (vfp.md): Include. * vfp.md: New file. * fpa.md (various): Rename as above. * doc/md.texi: Document ARM w and U constraints. 2004-01-15 Paul Brook <paul@codesourcery.com> * config.gcc: Add with_fpu. Allow with-float=softfp. * config/arm/arm.c (arm_override_options): Rename *-s to *s. Break out of loop when we find a float-abi. Fix typo. * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu". Set -mfloat-abi=. * doc/install.texi: Document --with-fpu. 2003-01-14 Paul Brook <paul@codesourcery.com> * config.gcc (with_arch): Add armv6. * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s. * config/arm/arm.c (arm_overrride_options): Ditto. 2004-01-08 Richard Earnshaw <rearnsha@arm.com> * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT. (FL_ARCH6): Renamed from FL_ARCH6J. (arm_arch3m): Renamed from arm_fast_multiply. (arm_arch6): Renamed from arm_arch6j. * arm.h: Update all uses of above. * arm-cores.def: Likewise. * arm.md: Likewise. * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j, not arm6j. Add entry for arch armv6. 2004-01-07 Richard Earnshaw <rearnsha@arm.com> * arm.c (arm_emit_extendsi): Delete. * arm-protos.h (arm_emit_extendsi): Delete. * arm.md (zero_extendhisi2): Also handle zero-extension of non-subregs. (zero_extendqisi2, extendhisi2, extendqisi2): Likewise. (thumb_zero_extendhisi2): Only match if not v6. (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2) (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi) (thumb_extendqisi2): Likewise. (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns. (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns. (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns. (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns. (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete. (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete. (arm_zero_extendhisi2addsi): Remove subreg. Add attributes. (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise. (arm_extendqisi2addsi): Likewise. 2003-12-31 Mark Mitchell <mark@codesourcery.com> Revert this change: * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. 2003-12-30 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept CONSTANT_P_RTX. 2003-30-12 Paul Brook <paul@codesourcery.com> * longlong.h: protect arm inlines with !defined (__thumb__) 2003-30-12 Paul Brook <paul@codesourcery.com> * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__. 2003-12-30 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Fix typo in previous change. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Add pretend args size to the virtual incoming args pointer for downward stacks. 2003-12-29 Paul Brook <paul@codesourcery.com> * config/arm/arm-cores.def: Add cost function. * config/arm/arm.c (arm_*_rtx_costs): New functions. (arm_rtx_costs): Remove (struct processors): Add rtx_costs field. (all_cores, all_architectures): Ditto. (arm_override_options): Set targetm.rtx_costs. (thumb_rtx_costs): New function. (arm_rtx_costs_1): Remove cases handled elsewhere. * config/arm/arm.h (processor_type): Add COSTS parameter. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm.md (generic_sched): arm926 has its own scheduler. (arm926ejs.md): Include it. * config/arm/arm926ejs.md: New pipeline description. 2003-12-24 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_arch6j): New variable. (arm_override_options): Set it. (arm_emit_extendsi): New function. * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype. * config/arm/arm.h (arm_arch6j): Declare. * config/arm/arm.md: Add sign/zero extend insns. 2003-12-23 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (all_architectures): Add armv6. * doc/invoke.texi: Document it. 2003-12-19 Paul Brook <paul@codesourcery.com> * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify insn patterns to match. * config/arm/arm-generic.md: Ditto. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/amm/iwmmxt.md: Ditto. * config/arm/arm1026ejs.md: Ditto. * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses for 11_loadb. 2003-12-18 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare. * config/arm/arm.c (arm_adjust_cost): Check shift cost for TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG. (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Correctly deal with conditional execution, parallels and single shift operations. (arm_no_early_alu_shift_value_dep): Define. * arm.md (attr type): Replace 'normal' with 'alu', 'alu_shift' and 'alu_shift_reg'. (attr core_cycles): Adjust. (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3, *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0, *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp, *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0, *arith_shiftsi_compare0_scratch, *sub_shiftsi, *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch, *if_shift_move, *if_move_shift, *if_shift_shift): Set type attribute appropriately. * config/arm/arm1026ejs.md (alu_op): Adjust. (alu_shift_op, alu_shift_reg_op): New. * config/arm/arm1136.md: Add better bypasses for early registers. Remove load[234] and store[234] bypasses. (11_alu_op): Adjust. (11_alu_shift_op, 11_alu_shift_reg_op): New. 2003-12-15 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare. * config/arm/arm.c (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define. * config/arm/arm1026ejs.md: Add load-store bypass. * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles. Add bypasses between instructions. 2003-12-10 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_fpu_model): New variable. (arm_fload_abi): New variable. (target_fpe_name): Rename from target_fp_name. (target_fpu_name): New variable. (arm_is_cirrus): Remove. (fpu_desc): New struct. (all_fpus): Define. (pf_model_for_fpu): Define. (all_loat_abis): Define. (arm_override_options): Set fp arch flags based on -mfpu= and -float-abi=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (*): Use new TARGET_* flags. * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove. (TARGET_HARD_FLOAT): No longer implies TARGET_FPA. (TARGET_SOFT_FLOAT): Ditto. (TARGET_SOFT_FLOAT_ABI): New. (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies TARGET_HARD_FLOAT. (TARGET_VFP): No longer implies TARGET_HARD_FLOAT. (TARGET_OPTIONS): Add -mfpu=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (arm_pf_model): Define. (arm_float_abi_type): Define. (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE * config/arm/arm.md: Use new TARGET_* flags. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=. * config/arm/semi.h (ASM_SPEC): Ditto. * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp. (FPUTYPE_DEFAULT): Set to VFP. * doc/invoke.texi: Document -mfpu= and -mfloat-abi=. 2003-11-22 Phil Edwards <phil@codesourcery.com> PR target/12476 * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use 'bx' instead of 'b' to avoid branch range restrictions. Output the thunk immediately before the thunked-to function. * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit .thumb_func if a thunk is being generated. Emit .code 16 along with .thumb_func if a thunk is not being generated. 2003-11-15 Nicolas Pitre <nico@cam.org> * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3, arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns. * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3. (lshrdi3_iwmmxt): Renamed from lshrdi3. * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly. 2003-11-12 Steve Woodford <scw@wasabisystems.com> Ian Lance Taylor <ian@wasabisystems.com> * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__). 2003-11-05 Phil Edwards <phil@codesourcery.com> * config/arm/arm.md (insn): Add new V6 instruction names. (generic_sched): New attr. * config/arm/arm-generic.md: Use generic_sched here. * config/arm/arm1026ejs.md: Do not model fetch/issue/decode stages of pipeline. Adjust latency counts accordingly. * config/arm/arm1136jfs.md: New file. 2003-10-28 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (processor_type): New enumeration type. (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S, ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores. (CPP_CPU_ARCH_SPEC): Likewise. * config/arm/arm.c (arm_tune): New variable. (all_cores): Use cores.def. (all_architectures): Add representative processor. (arm_override_options): Restructure way in which tuning information is deduced. * arm.md: Update "insn" and "type" attributes throughout. (insn): New attribute. (type): Compute "mult" from "insn" attribute. Add load2, load3, load4 alternatives. (arm automaton): Move to arm-generic.md. * config/arm/arm-cores.def: New file. * config/arm/arm-generic.md: Likewise. * config/arm/arm1026ejs.md: Likewise. From-SVN: r77171
2004-02-03Fix mistaken names in the last commit.Paolo Bonzini3-0/+0
2004-02-03 Paolo Bonzini <bonzini@gnu.org> Fix mistaken names in the last commit. * gcc.dg/noncompile/20040203-1.cc: Rename to 20040203-1.c * gcc.dg/noncompile/20040203-2.cc: Rename to 20040203-2.c * gcc.dg/noncompile/20040203-3.cc: Rename to 20040203-3.c From-SVN: r77170
2004-02-03invoke.texi (SPARC options): Remove -mflat and all -mxxx (xxx:chip) options.Eric Botcazou13-958/+97
* doc/invoke.texi (SPARC options): Remove -mflat and all -mxxx (xxx:chip) options. * config/sparc/aout.h (DBX_REGISTER_NUMBER): Delete. * config/sparc/litecoff.h (DBX_REGISTER_NUMBER): Likewise. * config/sparc/netbsd-elf.h (DBX_REGISTER_NUMBER): Likewise. * config/sparc/sol2.h (DBX_REGISTER_NUMBER): Likewise. * config/sparc/sparc-protos.h: Delete sparc_flat_* prototypes. * config/sparc/sparc.c: Likewise. (sparc_output_function_prologue): Remove TARGET_FLAT handling. (sparc_nonflat_function_prologue): Rename into sparc_function_prologue. (sparc_output_function_epilogue): Remove TARGET_FLAT handling. (sparc_nonflat_function_epilogue): Rename into sparc_function_epilogue. (struct sparc_frame_info, current_frame_info, zero_frame_info): Delete. (sparc_flat_must_save_register_p): Likewise. (sparc_flat_compute_frame_size): Likewise. (sparc_flat_save_restore): Likewise. (sparc_flat_function_prologue): Likewise. (sparc_flat_function_epilogue): Likewise. (sparc_flat_epilogue_delay_slots): Likewise. (sparc_flat_eligible_for_epilogue_delay): Likewise. (sparc_function_ok_for_sibcall): Remove TARGET_FLAT handling. * config/sparc/sparc.h (MASK_FLAT, TARGET_FLAT): Delete. (TARGET_SWITCHES): Remove -mflat and all -mxxx (xxx:chip) options. (SPARC_INCOMING_INT_ARG_FIRST): Remove TARGET_FLAT handling. (CONDITIONAL_REGISTER_USAGE): Likewise. (FRAME_POINTER_REQUIRED): Likewise. (INITIAL_ELIMINATION_OFFSET): Likewise. (BASE_RETURN_VALUE_REG): Likewise. (BASE_OUTGOING_VALUE_REG): Likewise. (BASE_PASSING_ARG_REG): Likewise. (BASE_INCOMING_ARG_REG): Likewise. (INCOMING_REGNO): Likewise. (OUTGOING_REGNO): Likewise. (LOCAL_REGNO): Likewise. (DELAY_SLOTS_FOR_EPILOGUE): Likewise. (ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise. (EPILOGUE_USES): Likewise. * config/sparc/sparc.md ("isa" attribute): Change "v6" into "v7". ("flat" attribute): Delete. (do_builtin_setjmp_setup): Remove TARGET_FLAT and "flat" attribute handling. (call followed by jump define_peephole's): Delete. (exception_receiver): Likewise. (builtin_setjmp_receiver): Likewise. * config/sparc/t-sparclite (MULTILIB_OPTIONS): Remove -mflat. From-SVN: r77169
2004-02-03re PR c/11658 (Wrong error message)Paolo Bonzini12-59/+104
2004-02-03 Paolo Bonzini <bonzini@gnu.org> PR c/11658 PR c/13994 * Makefile.in (c-parse.o, c-convert.o, c-typeck.o): Depend on langhooks.h. * objc/Make-lang.in (objc-parse.o): Depend on langhooks.h. * c-parse.in, c-convert.c, c-typeck.c, objc/objc-act.c: Include langhooks.h. Replace c_common_truthvalue_conversion with the truthvalue_conversion language hook throughout. (expr_no_commas): Call default_conversion before save_expr for the first term of the production 'x ? : y'. * c-common.c (c_common_truthvalue_conversion): Remove obsolete block. Invoke recursively the hook instead of this function. * c-convert.c (convert): handle ERROR_MARK_NODE. * c-typeck.c (build_binary_op): handle ERROR_MARK_NODE returned by the truthvalue_conversion language hook. * c-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use c_objc_common_truthvalue_conversion. * c-objc-common.c (c_objc_common_truthvalue_conversion): New function. * c-tree.h (c_objc_common_truthvalue_conversion): Declare it. * objc/objc-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use c_objc_common_truthvalue_conversion. From-SVN: r77168
2004-02-03re PR c/11658 (Wrong error message)Paolo Bonzini5-0/+72
2004-02-03 Paolo Bonzini <bonzini@gnu.org> PR c/11658 PR c/13994 * gcc.dg/noncompile/20040203-1.c: New test. * gcc.dg/noncompile/20040203-2.c: Likewise. * gcc.dg/noncompile/20040203-3.c: Likewise. * gcc.dg/20040203-1.c: Likewise. From-SVN: r77167
2004-02-02re PR c++/10858 (failure with calling a method inside sizeof: sorry, ↵Andrew Pinski2-2/+21
unimplemented: `method_call_expr' not supported by dump_expr) 2004-02-02 Andrew Pinski <pinskia@physics.uc.edu> PR c++/10858 * g++.dg/template/sizeof7.C: New test. From-SVN: r77164
2004-02-03c4x.h (FUNCTION_VALUE): Use gen_rtx_REG instead of gen_rtx.Kazu Hirata4-12/+26
* config/c4x/c4x.h (FUNCTION_VALUE): Use gen_rtx_REG instead of gen_rtx. (LIBCALL_VALUE): Likewise. * config/ip2k/ip2k.c (mdr_try_propagate_clr_sequence): Use gen_rtx_CC0 instead of gen_rtx. * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use gen_rtx_fmt_e and gen_rtx_fmt_ee instead of gen_rtx. (m68hc11_expand_compare): Use gen_rtx_fmt_ee instead of gen_rtx. (m68hc11_emit_logical): Likewise. From-SVN: r77162
2004-02-03alpha.c, [...]: Use const0_rtx instead of GEN_INT (0).Kazu Hirata27-71/+86
* config/alpha/alpha.c, config/arm/arm.c, config/c4x/c4x.c, config/fr30/fr30.md, config/frv/frv.c, config/frv/frv.md, config/h8300/h8300.c, config/ia64/ia64.c, config/ip2k/ip2k.md, config/m32r/m32r.md, config/m68hc11/m68hc11.c, config/mips/mips.md, config/mmix/mmix.c, config/mn10300/mn10300.c, config/mn10300/mn10300.md, config/ns32k/ns32k.c, config/pa/pa.md, config/pdp11/pdp11.c, config/rs6000/altivec.md, config/s390/s390.c, config/s390/s390.h, config/s390/s390.md, config/sh/sh.c, config/sh/sh.h, config/sh/sh.md, config/stormy16/stormy16.c: Use const0_rtx instead of GEN_INT (0). Do the same for other constants that are readily available. From-SVN: r77161
2004-02-03doloop.c, [...]: Use const0_rtx instead of GEN_INT (0).Kazu Hirata7-16/+23
* doloop.c, optabs.c, regmove.c, sched-deps.c, config/i386/i386.c, config/i386/i386.md: Use const0_rtx instead of GEN_INT (0). Do the same for other constants that are readily available. From-SVN: r77160
2004-02-03combine.c (simplify_set): Use gen_rtx_fmt_e instead of gen_rtx.Kazu Hirata9-20/+44
gcc/ * combine.c (simplify_set): Use gen_rtx_fmt_e instead of gen_rtx. * emit-rtl.c (init_emit_once): Use gen_rtx_PC and gen_rtx_CC0 instead of gen_rtx. * reload1.c (init_elim_table): Use gen_rtx_fmt_e instead of gen_rtx. * config/ns32k/ns32k.md (udivmodhi4): Use gen_rtx_IOR and gen_rtx_ASHIFT instead of gen_rtx. (udivmodqi4): Likewise. ada/ * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of gen_rtx. f/ * com.c (ffecom_member_phase2_): Use gen_rtx_MEM instead of gen_rtx. From-SVN: r77159
2004-02-02re PR target/13789 ([tree-ssa] ICE on _builtin_expect_addr)Richard Henderson3-1/+18
PR target/13789 * expr.c (store_expr): Use force_operand before emit_move_insn. From-SVN: r77158
2004-02-03tree.c (commutative_tree_code, [...]): New functions.Jeff Law4-13/+65
* tree.c (commutative_tree_code, associative_tree_code): New functions. (iterative_hash_expr): Use commutative_tree_code. * tree.h (commutative_tree_code, associative_tree_code): Declare. * fold-const.c (operand_equal_p): Use commutative_tree_code rather than inlining the commutativity check. (fold): Likewise. Co-Authored-By: Roger Sayle <roger@eyesopen.com> From-SVN: r77152
2004-02-03decl.c (java_init_decl_processing): Remove duplicate gnu/gcj/RawData.Tom Tromey2-1/+5
* decl.c (java_init_decl_processing): Remove duplicate gnu/gcj/RawData. From-SVN: r77151