Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r72250
|
|
2003-10-08 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.md ("abssi2_isel"): Add early clobber to
operand 2.
From-SVN: r72247
|
|
* config.gcc: Don't accept --enable-threads=pthreads. Clean
up related case statements.
* configure.in: Don't accept --enable-threads=pthreads,
decosf1, mach, or os2 (none of which work anyway). Alphabetize
supported thread files in case clause.
* configure: Regenerate.
From-SVN: r72244
|
|
above SPARC_STACK_BOUNDARY_HACK.
* function.c (pad_to_arg_alignment): Move 'boundary_in_bytes'
definition to above SPARC_STACK_BOUNDARY_HACK.
From-SVN: r72241
|
|
* c-pretty-print.c (pp_c_postfix_expression)
<COMPOUND_LITERAL_EXPR>: Fix thinko.
From-SVN: r72236
|
|
From-SVN: r72235
|
|
PR optimization/12142
* cse.c (count_reg_usage): In a SET with a REG SET_DEST, count the
uses of the register in the SET_SRC. Remove unnecessary argument.
* pa.c (legitimize_pic_address): Before reload, use a scratch register
for the intermediate result in loading the address of a SYMBOL_REF.
Set the MEM_NOTRAP_P flag for the MEM. Add a REG_EQUAL to the insn
which loads the SYMBOL_REF address.
From-SVN: r72234
|
|
PR bootstrap/12490
* scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant
to define the size of the extern_C_braces array. Set it to 200.
(scan_decls): Abort when extern_C_braces_length is out-of-bounds.
Co-Authored-By: Eric Botcazou <ebotcazou@libertysurf.fr>
From-SVN: r72224
|
|
the -o option.
* Makefile.in (gengtype-lex.c): flex 2.5.4[a] doesn't understand
a space after the -o option. flex 2.5.31 understands both, with
and without the space. Removed that space.
From-SVN: r72223
|
|
* config/mips/mips.c (mips_frame_info): Add cprestore_size field.
(compute_frame_size): Initialize it. Remove the .cprestore slot
from args_size.
(mips_output_function_prologue): Simplify accordingly.
(mips_debugger_offset): Change the mips16 frame pointer offset from
current_function_outgoing_args to cfun->machine->frame.args_size.
(mips_initial_elimination_offset): Likewise.
(mips_expand_prologue): Likewise.
(mips_expand_epilogue): Likewise.
From-SVN: r72222
|
|
* config/mips/mips.h (EXTRA_CONSTRAINT): Add 'W' constraint.
(EXTRA_MEMORY_CONSTRAINT): Define.
(CAN_ELIMINATE): Remove lwu workaround.
* config/mips/mips.md (*zero_extendsidi2_mem): Enable for mips16 too.
Use a 'W' constraint for the source operand.
From-SVN: r72221
|
|
* genopinit.c (main): Output code to declare undefined
variables.
From-SVN: r72220
|
|
From-SVN: r72219
|
|
From-SVN: r72218
|
|
2003-10-08 Giovanni Bajo <giovannibajo@libero.it>
* g++.dg/parse/error2.C: New test.
From-SVN: r72216
|
|
* cp_tree.h: Added TFF_NO_FUNCTION_ARGUMENTS.
* error.c (dump_function_decl): Use it to skip the dump of the
arguments.
(dump_expr): When dumping a declaration found within an
expression, always set TFF_NO_FUNCTION_ARGUMENTS
in the flags.
From-SVN: r72215
|
|
From-SVN: r72213
|
|
PR c++/11097
* g++.dg/other/error5.C: Modify the error message.
* g++.dg/lookup/using8.C: New test.
From-SVN: r72211
|
|
2003-10-07 Kelley Cook <kcook@gcc.gnu.org>
* gengtype-lex.l: Remove -Wtraditional cruft.
* Makefile.in (gengtype-lex.c): Likewise.
From-SVN: r72210
|
|
From-SVN: r72209
|
|
PR c++/11097
* pt.c (tsubst_decl): Substitute also the DECL_NAME node of
USING_DECL.
From-SVN: r72208
|
|
From-SVN: r72207
|
|
PR c++/12519
* c-semantics.c (genrtl_cleanup_stmt): Ignore the CLEANUP_DECL if
it isn't a decl.
From-SVN: r72206
|
|
-E warning)
2003-10-07 Alexandre Oliva <aoliva@redhat.com>
* gcc.c (cpp_options): Only pass -fworking-directory for -g* if
not overridden.
Fixes PR bootstrap/12173.
From-SVN: r72201
|
|
* errors.c: Don't include coretypes.h or tm.h.
(trim_filename): Use IS_DIR_SEPARATOR.
* Makefile.in: Update dependencies of errors.o and
$(BUILD_PREFIX_1)errors.o.
From-SVN: r72200
|
|
when aligning arguments.
2003-10-07 Geoffrey Keating <geoffk@apple.com>
* function.c (pad_to_arg_alignment): Take STACK_POINTER_OFFSET into
account when aligning arguments.
* calls.c (STACK_POINTER_OFFSET): Move default from here ...
* defaults.h (STACK_POINTER_OFFSET): ... to here.
* config/sparc/sparc.h (STACK_BOUNDARY): Add comment about how
it's wrong when TARGET_ARCH64 && TARGET_STACK_BIAS.
(SPARC_STACK_BOUNDARY_HACK): Define.
* config/rs6000/rs6000.c (function_arg): On non-SVR4 systems,
arrange for vector parameters to varargs functions to be passed
in both memory and GPRs when appropriate.
(rs6000_va_arg): Vector arguments passed in memory are 16-byte
aligned.
Index: testsuite/ChangeLog
2003-10-07 Geoffrey Keating <geoffk@apple.com>
* gcc.dg/darwin-abi-2.c: New file.
* gcc.c-torture/execute/va-arg-24.c: New file.
From-SVN: r72199
|
|
From-SVN: r72198
|
|
* hooks.c (hook_bool_tree_true): New.
(hook_rtx_tree_int_null): New.
(hook_rtx_rtx_null): Use NULL, not 0.
* hooks.h: Add 'extern' to everything.
(hook_bool_tree_true): New.
(hook_rtx_tree_int_null): New.
* targhooks.c (hook_bool_CUMULATIVE_ARGS_true): New.
* targhooks.h (hook_bool_CUMULATIVE_ARGS_true): New.
* config/rs6000/rs6000-protos.h (setup_incoming_varargs): Remove
prototype.
* config/rs6000/rs6000.c (rs6000_return_in_memory): New.
(setup_incoming_varargs): Prototype.
(TARGET_PROMOTE_FUNCTION_ARGS): Define.
(TARGET_PROMOTE_FUNCTION_RETURN): Define.
(TARGET_STRUCT_VALUE_RTX): Define.
(TARGET_RETURN_IN_MEMORY): Define.
(TARGET_SETUP_INCOMING_VARARGS): Define.
(TARGET_STRICT_ARGUMENT_NAMING): Define.
(TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Define.
(init_cumulative_args): Use rs6000_return_in_memory.
(setup_incoming_varargs): Make 'static'.
* config/rs6000/rs6000.h (PROMOTE_FUNCTION_ARGS): Delete.
(PROMOTE_FUNCTION_RETURN): Delete.
(STRUCT_VALUE): Delete.
(RETURN_IN_MEMORY): Delete.
(SETUP_INCOMING_VARARGS): Delete.
From-SVN: r72197
|
|
* g++.dg/template/spec10.C: Set exit value to zero on success. Fix
indentation.
From-SVN: r72195
|
|
-Wnonnull and -Winit-self.
* doc/invoke.texi (Warning Options): Simplify and clarify the
descriptions of -Wnonnull and -Winit-self.
From-SVN: r72194
|
|
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
|
|
* 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
|
|
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
|