Age | Commit message (Collapse) | Author | Files | Lines |
|
floating-point conversersion libcalls.
* optabs.c (init_intraclass_conv_libfuncs): Fix order of array
indicees for floating-point conversersion libcalls.
From-SVN: r72193
|
|
* Makefile.in: Add more comments separating large conceptually
separate sections.
From-SVN: r72192
|
|
* configure.in: Clean up thread file logic.
* configure: Regenerate.
From-SVN: r72191
|
|
variables.
2003-10-07 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc: Minor cosmetic changes
and const-ifications of some variables.
* include/bits/locale_facets.tcc
(money_get::do_get(..., string_type&)): Simplify an if-else.
From-SVN: r72190
|
|
* config/i386/cygming.h (READONLY_DATA_SECTION_ASM_OP): Define.
(switch_to_section): Handle in_readonly_data.
* config/i386/winnt.c (i386_pe_asm_named_section): Handle
readonly data.
From-SVN: r72189
|
|
* arm.md (cmpsi2_addneg): New ARM pattern. Add peephole2 to generate
it.
(cbranchne_decr1): New Thumb pattern.
* arm.c (arm_addimm_operand): New insn predicate.
* arm-protos.h: Add a prototype for it.
* arm.h (PREDICATE_CODES): Add it.
From-SVN: r72188
|
|
* sched-int.h (sched_info): New field
sched_max_insns_priority.
* sched-rgn.c (init_ready_list): Add invocations to
targetm.sched.adjust_priority.
(sched_max_insns_priority): Init new field.
* sched-ebb.c (sched_max_insns_priority): Init new field.
* haifa-sched.c (set_priorities): Set
sched_info->sched_max_insns_priority.
* config/rs6000/rs6000.h:
(rs6000_sched_restricted_insns_priority_str): Support new
flag -mprioritize-restricted-insns.
(DEFAULT_RESTRICTED_INSNS_PRIORITY): Define.
* config/rs6000/rs6000.c (is_dispatch_slot_restricted): New
function.
(rs6000_adjust_priority): Change priority of restricted
insns, using above new function and new flag.
* doc/invoke.texi (-mprioritize-restricted-insns): Document
new option.
From-SVN: r72186
|
|
* expr.c (cmpstr_optab, cmpmem_optab): New.
* genopinit.c: Initialize them.
* optabs.h: Declare them.
* optabs.c (init_optabs): Clear them.
(prepare_cmp_insn): Use cmpstr_optab and cmpmem_optab to find
block memory compare insns, not conditional chains. Restructure
the fallback generation of a call to memcmp/bcmp for better
readability.
From-SVN: r72185
|
|
PR c++/10147
* call.c (initialize_reference): Tweak error message.
PR c++/12337
* init.c (build_new_1): Make sure that the expression returned is
not an lvalue.
PR c++/12344, c++/12236, c++/8656
* decl.c (start_function): Do not ignore attributes embedded in a
function declarator.
PR c++/12337
* g++.dg/init/new9.C: New test.
PR c++/12334, c++/12236, c++/8656
* g++.dg/ext/attrib8.C: New test.
From-SVN: r72183
|
|
* config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): New macro.
(mips_save_restore_fn): New typedef.
(mips_add_large_offset_to_sp, mips_emit_frame_related_store): Remove.
(mips_set_frame_expr, mips_frame_set): Move above prologue code.
(save_restore_insns): Remove, replacing with...
(mips_save_restore_reg, mips_for_each_saved_reg): ...these new fns.
(mips_save_reg, mips_restore_reg): New function.
(mips_expand_prologue, mips_expand_epilogue): Rework.
* config/mips/mips.h (MIPS_TEMP1_REGNUM, MIPS_TEMP2_REGNUM): Remove.
(MIPS_PROLOGUE_TEMP_REGNUM, MIPS_EPILOGUE_TEMP_REGNUM): New macros.
(MIPS_PROLOGUE_TEMP, MIPS_EPILOGUE_TEMP): New macros.
From-SVN: r72182
|
|
* config/mips/mips.c (mips_expand_prologue): Remove unused
traversal of function arguments.
From-SVN: r72181
|
|
* doc/invoke.texi: Remove documentation of -mentry.
* config/mips/mips.c (mips_entry_string, mips_entry): Remove.
(override_options, mips_save_reg_p): Remove handling.
(compute_frame_size, mips_output_function_prologue): Likewise.
(mips_expand_prologue, mips_expand_epilogue): Likewise.
* config/mips/mips.h (mips_entry_string): Remove declaration.
(TARGET_OPTIONS): Remove -mentry.
* config/mips/mips16.S: Remove mention of -mentry.
From-SVN: r72180
|
|
(LTI_extenddfxf2, LTI_extenddftf2, LTI_truncdfsf2, LTI_truncxfsf2)
(LTI_trunctfsf2, LTI_truncxfdf2, LTI_trunctfdf2, LTI_floatsisf)
(LTI_floatdisf, LTI_floattisf, LTI_floatsidf, LTI_floatdidf)
(LTI_floattidf, LTI_floatsixf, LTI_floatdixf, LTI_floattixf)
(LTI_floatsitf, LTI_floatditf, LTI_floattitf, LTI_fixsfsi, LTI_fixsfdi)
(LTI_fixsfti, LTI_fixdfsi, LTI_fixdfdi, LTI_fixdfti, LTI_fixxfsi)
(LTI_fixxfdi, LTI_fixxfti, LTI_fixtfsi, LTI_fixtfdi, LTI_fixtfti)
(LTI_fixunssfsi, LTI_fixunssfdi, LTI_fixunssfti, LTI_fixunsdfsi)
(LTI_fixunsdfdi, LTI_fixunsdfti, LTI_fixunsxfsi, LTI_fixunsxfdi)
(LTI_fixunsxfti, LTI_fixunstfsi, LTI_fixunstfdi, LTI_fixunstfti)
(extendsfdf2_libfunc, extendsfxf2_libfunc, extendsftf2_libfunc)
(extenddfxf2_libfunc, extenddftf2_libfunc, truncdfsf2_libfunc)
(truncxfsf2_libfunc, trunctfsf2_libfunc, truncxfdf2_libfunc)
(trunctfdf2_libfunc, floatsisf_libfunc, floatdisf_libfunc)
(floattisf_libfunc, floatsidf_libfunc, floatdidf_libfunc)
(floattidf_libfunc, floatsixf_libfunc, floatdixf_libfunc)
(floattixf_libfunc, floatsitf_libfunc, floatditf_libfunc)
(floattitf_libfunc, fixsfsi_libfunc, fixsfdi_libfunc, fixsfti_libfunc)
(fixdfsi_libfunc, fixdfdi_libfunc, fixdfti_libfunc, fixxfsi_libfunc)
(fixxfdi_libfunc, fixxfti_libfunc, fixtfsi_libfunc, fixtfdi_libfunc)
(fixtfti_libfunc, fixunssfsi_libfunc, fixunssfdi_libfunc)
(fixunssfti_libfunc, fixunsdfsi_libfunc, fixunsdfdi_libfunc)
(fixunsdfti_libfunc, fixunsxfsi_libfunc, fixunsxfdi_libfunc)
(fixunsxfti_libfunc, fixunstfsi_libfunc, fixunstfdi_libfunc)
(fixunstfti_libfunc): Delete.
* optabs.h (struct optab_handlers): Break out of struct optab.
(struct convert_optab, convert_optab, enum convert_optab_index,
convert_optab_table, sext_optab, zext_optab, trunc_optab,
sfix_optab, ufix_optab, sfixtrunc_optab, ufixtrunc_optab,
sfloat_optab, ufloat_optab): New.
(set_conv_libfunc): Prototype.
(GEN_FCN): Use C90 indirect call syntax, remove unnecessary cast.
(trunc_optab): Renamed btrunc_optab.
* builtins.c (expand_builtin_mathfn): Update to match.
* optabs.c (extendtab, fixtab, fixtrunctab, floattab): Delete.
(convert_optab_table, new_convert_optab, init_convert_optab)
(init_interclass_conv_libfuncs, init_intraclass_conv_libfuncs)
(set_conv_libfunc): New.
(can_extend_p, gen_extend_insn, can_fix_p, can_float_p)
(expand_float, expand_fix): Use new conversion optabs,
not old insn code tables or long chains of ifs.
(init_optabs): No need to clear old insn code tables.
Initialize the new optabs, not the old libfunc array entries.
Don't handle FIXUNS_TRUNC_LIKE_FIX_TRUNC here.
* genopinit.c: Initialize conversion optabs, not the
former insn code tables. Remove unnecessary casts.
Handle FIXUNS_TRUNC_LIKE_FIX_TRUNC here.
* expr.c (convert_move): Remove redundant check that
to_real==from_real. Use the conversion optabs instead
of long chains of tests of modes. Move partial-integer-mode
interconversion above all integer conversion. Do not recurse
on a value forced into a register in the original mode.
* config/gofast.h, config/frv/frv.c, config/ia64/ia64.c
* config/mips/mips.c, config/pa/pa.c, config/rs6000/rs6000.c
* config/sparc/sparc.c: Use set_conv_libfunc to adjust entries
in new conversion optabs; do not reference the old libfunc
array entries. No need to include libfuncs.h.
From-SVN: r72178
|
|
From-SVN: r72176
|
|
with a REG_EQUAL note that...
* config/i386/i386.c (ix86_expand_setcc): Annotate the floating
point comparison sequence with a REG_EQUAL note that describes
the comparison's semantics.
From-SVN: r72173
|
|
COND_EXPR when expanding the "A op 0 ? FOO ...
* expr.c (expand_expr <COND_EXPR>): Handle the void type semantics
of COND_EXPR when expanding the "A op 0 ? FOO : A" optimizations.
From-SVN: r72172
|
|
by using LCT_CONST and then calling...
* optabs.c (prepare_float_lib_cmp): Avoid searching for REG_RETVAL
instruction by using LCT_CONST and then calling emit_libcall_block
ourselves.
Co-Authored-By: Zack Weinberg <zack@codesourcery.com>
From-SVN: r72171
|
|
at expr.c:3206)
PR optimization/11974
* optabs.c (expand_unop): Promote libcall outmode according to
hard_libcall_value.
From-SVN: r72170
|
|
* real.h (REAL_MODE_FORMAT): New macro.
* c-cppbuiltin.c, optabs.c, real.c, config/alpha/alpha.c
* config/c4x/c4x.c, config/i370/i370.c, config/i386/freebsd.h
* config/i386/i386.c, config/i960/i960.c, config/ia64/ia64.c
* config/m68k/m68k.c, config/mips/mips.c, config/rs6000/rs6000.c
* config/vax/vax.c: Use REAL_MODE_FORMAT instead of referring
directly to real_format_for_mode array, wherever possible.
From-SVN: r72168
|
|
multiple bits in mask.)
2003-10-06 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11740
* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is):
Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
* config/locale/generic/ctype_members.cc: Same.
* testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
From-SVN: r72167
|
|
gcc
* dwarf2out.c (is_main_source): Remove variable.
(dwarf2out_start_source_file): Do not check is_main_source.
Do not reset is_main_source.
(dwarf2out_init): Do not initialize is_main_source.
testsuite
* gcc.dg/debug/dwarf2-3.h: New test.
* gcc.dg/debug/dwarf2-3.c: New test case for -feliminate-dwarf2-dups.
From-SVN: r72166
|
|
* fixinc/inclhack.def (stdio_va_list): Removed _ap fix.
(irix_stdio_va_list): Don't require leading printf, IRIX 6.5.21
introduced some multi-line prototypes.
* fixinc/fixincl.x: Regenerate.
From-SVN: r72165
|
|
2003-10-06 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (__pad<>::_S_pad):
Improve performance-wise: avoid one traits::copy, avoid
the __builtin_alloca, streamline.
From-SVN: r72164
|
|
* include/ffi_mips.h: Define FFI_MIPS_N32 for N32/N64 ABIs,
FFI_MIPS_O32 for O32 ABI.
From-SVN: r72161
|
|
From-SVN: r72160
|
|
* config/mips/mips.h (PREDICATE_CODES): Add stack_operand.
* config/mips/mips.c (stack_operand): New predicate.
* config/mips/mips.md: Use it for the destination of mips16 insns
that store $31.
From-SVN: r72158
|
|
* config/mips/mips.md (*lowsi): Renamed from lowsi.
(*lowdi): Likewise lowdi.
(*lowsi_mips16, *lowdi_mips16): New patterns.
* config/mips/mips.c (mips_const_insns, mips_output_move): Remove
mips16 CONSTANT_RELOC handling.
(mips_delegitimize_address): Adjust for new sdata representation.
From-SVN: r72157
|
|
arguments.
* config/mips/mips.c (mips_arg_info): If MUST_PASS_IN_STACK,
skip any remaining register arguments.
From-SVN: r72156
|
|
MEM subregs on big-endian targets.
* reload.c (find_reloads_subreg_address): Use correct offset for
paradoxical MEM subregs on big-endian targets.
From-SVN: r72153
|
|
* ltcf-cxx.sh (irix5*, irix6*): Prefix -soname and its arg with ${wl}.
* ltconfig (irix5*, irix6*): Don't override version_type.
From-SVN: r72152
|
|
2003-10-06 Andrew Haley <aph@redhat.com>
* tree.c (get_callee_fndecl): Call
lang_hooks.lang_get_callee_fndecl.
* langhooks-def.h (LANG_HOOKS_GET_CALLEE_FNDECL): New.
(lhd_get_callee_fndecl): New.
From-SVN: r72150
|
|
+2003-10-06 Andrew Pinski <apinski@apple.com>
+
+ * config/darwin.c (machopic_non_lazy_ptr_name): Fix off by one
+ error in calculating the length of the string.
+ (machopic_stub_name): Likewise.
From-SVN: r72149
|
|
return value of the comparison libcall...
* optabs.c (prepare_float_lib_cmp): Attach a REG_EQUAL note
describing the return value of the comparison libcall to the
REG_RETVAL instruction of the emitted sequence.
From-SVN: r72148
|
|
-fnon-call-exceptions -fno-gcse -O2)
PR optimization/12215
* cse.c (cse_set_around_loop): Emit the move at the beginning
of the next basic block for trapping sets.
From-SVN: r72141
|
|
2003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
PR optimization/11637
* combine.c (adjust_for_new_dest): New function to adjust the
notes and LOG_LINKS when the dest of an insn has changed.
(try_combine): Use it when deleting the first insn of a two-insn
parallel or splitting a two-load parallel.
From-SVN: r72138
|
|
* config/mips/mips.c (mips_classify_constant): Only allow UNSPECs
if TARGET_EXPLICIT_RELOCS.
From-SVN: r72137
|
|
From-SVN: r72136
|
|
PR bootstrap/12512
* Makefile.in (info): Use double-colon rules.
(dvi): Likewise.
(generated-manpages): Likewise.
* configure.in: Do not create lang.info, lang.dvi, or
lang.generated-manpages hooks.
* configure: Regenerated.
* objc/Make-lang.in (objc.info): Remove.
(objc.dvi): Remove.
(objc.generated-manpages): Remove.
* doc/sourcebuild.texi: Update description of info, dvi, and
generated-manpages hooks.
* Make-lang.in (ada.info): Replace with ...
(info): ... this.
(ada.dvi): Replace with ...
(dvi): ... this.
* Make-lang.in (c++.info): Remove.
(c++.dvi): Remove.
(c++.generated-manpages): Replace with ...
(generated-manpages): ... this.
* Make-lang.in (f77.info): Replace with ...
(info): ... this.
(f77.dvi): Replace with ...
(dvi): ... this.
(f77.generated-manpages): Replace with ...
(generated-manpages): ... this.
* Make-lang.in (java.info): Replace with ...
(info): ... this.
(java.dvi): Replace with ...
(dvi): ... this.
(java.generated-manpages): Replace with ...
* Make-lang.in (treelang.info): Replace with ...
(info): ... this.
* Make-lang.in (treelang.dvi): Replace with ...
(dvi): ... this.
From-SVN: r72135
|
|
From-SVN: r72134
|
|
From-SVN: r72133
|
|
destinations.
2003-10-05 Andrew Pinski <apinski@apple.com>
* config/darwin.c (machopic_non_lazy_ptr_name): Fix off by one
errors in memcpy destinations.
(machopic_stub_name): Likewise.
From-SVN: r72132
|
|
* configure.in: Allow explicit specification of CFLAGS_FOR_BUILD.
* configure: Rebuilt
* Makefile.tpl: Use CFLAGS_FOR_BUILD computed by configure
* Makefile.in: Rebuilt
From-SVN: r72130
|
|
length together.
* config/darwin.c (machopic_non_lazy_ptr_name):
Change strcat to memcpy and add length together.
(machopic_stub_name): Likewise.
From-SVN: r72129
|
|
* config/sh/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Handle new
signal trampoline codes.
From-SVN: r72128
|
|
From-SVN: r72125
|
|
2003-10-05 Chris Demetriou <cgd@broadcom.com>
* config/mips/mips.md (*divsf3): Move description of
SB-1 F2 erratum from here to...
(divsf3): Here. Disable if TARGET_FIX_SB1 is set and
flag_unsafe_math_optimizations is not.
From-SVN: r72123
|
|
TARGET_FPRS.
2003-10-05 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/linuxspe.h: Define TARGET_SPE_ABI, TARGET_SPE,
TARGET_E500, TARGET_ISEL, and TARGET_FPRS.
From-SVN: r72121
|
|
* c-pretty-print.c: Fix comment typos.
* c-pretty-print.h: Likewise.
* calls.c: Likewise.
* cfgloopmanip.c: Likewise.
* cgraphunit.c: Likewise.
* cppfiles.c: Likewise.
* final.c: Likewise.
* function.c: Likewise.
* gcov-io.h: Likewise.
* gcse.c: Likewise.
* genoutput.c: Likewise.
* loop.c: Likewise.
* postreload.c: Likewise.
* reg-stack.c: Likewise.
* regmove.c: Likewise.
* sched-int.h: Likewise.
* sched-rgn.c: Likewise.
* simplify-rtx.c: Likewise.
* tree-inline.c: Likewise.
* config/m68hc11/m68hc11.h: Likewise.
* config/mmix/mmix.c: Likewise.
* config/mn10300/mn10300.md: Likewise.
* config/sh/sh.h: Likewise.
From-SVN: r72118
|
|
* tree-inline.c (remap_type): New.
(remap_decl): Use it. Remap DECL_SIZE*.
(copy_body_r): Use it.
(walk_tree): Walk TREE_TYPE too.
(copy_tree_r): Don't walk subtrees of types.
* tree.c (variably_modified_type_p): Restructure. Consider integer
types with non-const bounds variably modified.
From-SVN: r72114
|
|
From-SVN: r72113
|