Kaveh R. Ghazi [Sun, 24 Jul 2005 21:38:02 +0000 (21:38 +0000)]
c-common.c (check_missing_format_attribute): New.
* c-common.c (check_missing_format_attribute): New.
* c-common.h (check_missing_format_attribute): Likewise.
* c-typeck.c (convert_for_assignment): Use it.
cp:
* call.c (convert_for_arg_passing): Check function pointers when
-Wmissing-format-attribute is activated.
* typeck.c (convert_for_assignment): Likewise.
testsuite:
* g++.dg/warn/miss-format-1.C, g++.dg/warn/miss-format-2.C,
g++.dg/warn/miss-format-3.C, g++.dg/warn/miss-format-4.C,
g++.dg/warn/miss-format-5.C, g++.dg/warn/miss-format-6.C: New.
From-SVN: r102338
Andreas Schwab [Sun, 24 Jul 2005 19:15:21 +0000 (19:15 +0000)]
m68k.md ("extendqidi2"): When source is an address register use a word move.
* config/m68k/m68k.md ("extendqidi2"): When source is an address
register use a word move. Correct operand of ext.w in 68000 code.
From-SVN: r102337
Mark Mitchell [Sun, 24 Jul 2005 16:33:53 +0000 (16:33 +0000)]
dwarf2out.c (gen_variable_die): Treat un-emitted COMDAT variables as declarations, rather than definitions.
* dwarf2out.c (gen_variable_die): Treat un-emitted COMDAT
variables as declarations, rather than definitions.
From-SVN: r102335
Paolo Bonzini [Sun, 24 Jul 2005 13:52:54 +0000 (13:52 +0000)]
Makefile.tpl: Wrap install between unstage and stage
2005-07-24 Paolo Bonzini <bonzini@gnu.org>
* Makefile.tpl: Wrap install between unstage and stage
* Makefile.in: Regenerate.
From-SVN: r102334
Steven Bosscher [Sun, 24 Jul 2005 10:37:48 +0000 (10:37 +0000)]
whitespace fixes for my scripts
From-SVN: r102333
Ira Rosen [Sun, 24 Jul 2005 10:10:49 +0000 (10:10 +0000)]
re PR tree-optimization/22526 (vectorizer produces mis-match types in conditionals)
PR tree-optimization/22526
* tree-vectorizer.c (slpeel_tree_peel_loop_to_edge): Match the type
of the zero node.
From-SVN: r102332
Francois-Xavier Coudert [Sun, 24 Jul 2005 08:36:33 +0000 (10:36 +0200)]
builtins.def: Add DEF_EXT_C99RES_BUILTIN to define builtins that C99 reserve for future use.
* builtins.def: Add DEF_EXT_C99RES_BUILTIN to define builtins
that C99 reserve for future use. Use it to define clog10,
clog10f and clog10l.
From-SVN: r102331
Kaveh R. Ghazi [Sun, 24 Jul 2005 03:44:26 +0000 (03:44 +0000)]
configure.ac (ACX_PROG_CC_WARNING_OPTS): add -Wmissing-format-attribute.
* configure.ac (ACX_PROG_CC_WARNING_OPTS): add
-Wmissing-format-attribute.
* configure: Regenerate.
From-SVN: r102327
Kaveh R. Ghazi [Sun, 24 Jul 2005 03:39:23 +0000 (03:39 +0000)]
Makefile.in (STRICT2_WARN): Add -Wmissing-format-attribute.
* Makefile.in (STRICT2_WARN): Add -Wmissing-format-attribute.
* configure.ac: Check for -Wmissing-format-attribute.
* configure: Regenerate.
From-SVN: r102326
Jerry DeLisle [Sun, 24 Jul 2005 02:30:27 +0000 (02:30 +0000)]
nan_inf_fmt.f90: Revise test to include case of field width of zero.
2005-07-23 Jerry DeLisle <jvdelisle@verizon.net>
* gfortran.fortran-torture/execute/nan_inf_fmt.f90: Revise test to
include case of field width of zero.
From-SVN: r102325
Jerry DeLisle [Sun, 24 Jul 2005 02:24:15 +0000 (02:24 +0000)]
write.c (write_float): Revise output of IEEE exceptional values to comply with F95 and F2003 standards.
2005-07-23 Jerry DeLisle <jvdelisle@verizon.net>
* io/write.c (write_float): Revise output of IEEE exceptional
values to comply with F95 and F2003 standards.
From-SVN: r102324
GCC Administrator [Sun, 24 Jul 2005 00:16:17 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102321.2
Jerry DeLisle [Sat, 23 Jul 2005 23:54:50 +0000 (23:54 +0000)]
re PR fortran/21875 ([meta-bug] NIST test suite failures)
2005-07-23 Jerry DeLisle <jvdelisle@verizon.net>
PR libgfortran/21875
* gfortran.dg/fmt_read_bz_bn.f90: Revised test to include case
with trailing blanks on normal formatted read.
From-SVN: r102316
Richard Henderson [Sat, 23 Jul 2005 21:50:14 +0000 (14:50 -0700)]
re PR tree-optimization/22623 (type mismatch between an SSA_NAME and its symbol)
PR tree-optimization/22623
* tree-complex.c (set_component_ssa_name): Use replace_ssa_name_symbol.
From-SVN: r102315
Giovanni Bajo [Sat, 23 Jul 2005 21:36:40 +0000 (23:36 +0200)]
re PR target/22577 (PA bootstrap fails)
PR target/22577
* config/pa/pa.c (reloc_needed): Updated for VECs inside CONSTRUCTOR.
From-SVN: r102314
James A. Morrison [Sat, 23 Jul 2005 17:59:06 +0000 (17:59 +0000)]
var_defs.tree: Remove extra lines.
2005-07-23 James A. Morrrison <phython@gcc.gnu.org>
* compile/var_defs.tree: Remove extra lines.
From-SVN: r102311
Kaveh R. Ghazi [Sat, 23 Jul 2005 15:22:46 +0000 (15:22 +0000)]
Makefile.in (C_TREE_H): Update dependencies.
* Makefile.in (C_TREE_H): Update dependencies.
* c-tree.h: Include toplev.h.
* diagnostic.h (diagnostic_set_info): Add format attribute.
* rtl-error.c (diagnostic_for_asm): Likewise.
From-SVN: r102309
Kaveh R. Ghazi [Sat, 23 Jul 2005 14:57:03 +0000 (14:57 +0000)]
* getopt.c: Include ansidecl.h before system headers.
From-SVN: r102308
Chao-ying Fu [Sat, 23 Jul 2005 08:36:54 +0000 (08:36 +0000)]
mips-dsp.md: New file.
* config/mips/mips-dsp.md: New file.
* config/mips/mips-modes.def (V4QI, V2HI, CCDSP): New modes.
* config/mips/mips.c (mips_function_type): Add types for DSP builtin
functions.
(mips_builtin_type): Add MIPS_BUILTIN_DIRECT_NO_TARGET and
MIPS_BUILTIN_BPOSGE32.
(mips_expand_builtin_direct): Add one parameter to indicate that
builtin functions need to return a value.
(mips_expand_builtin_bposge): New for expanding "bposge" builtin
functions.
(mips_regno_to_class): Add classes for 12 new DSP registers.
(mips_subword): Change to check four HI registers.
(mips_output_move): Output move to and from 6 new DSP accumulators.
(override_options): Make sure -mdsp and -mips16 are not used together.
Map 'A' to DSP_ACC_REGS and 'a' to ACC_REGS. Enable DSP accumulators
for machine modes.
(mips_conditional_register_usage): Disable 6 new DSP accumulators
when !TARGET_DSP.
(print_operand): Add 'q' for printing DSP accumulators.
(mips_cannot_change_mode_class): Check ACC_REGS.
(mips_secondary_reload_class): Check ACC_REGS.
(mips_vector_mode_supported_p): Enable V2HI and V4QI when TARGET_DSP.
(mips_register_move_cost): Check ACC_REGS.
(CODE_FOR_mips_addq_ph, CODE_FOR_mips_addu_qb, CODE_FOR_mips_subq_ph)
(CODE_FOR_mips_subu_qb): New code-aliasing macros.
(DIRECT_NO_TARGET_BUILTIN, BPOSGE_BUILTIN): New macros.
(dsp_bdesc): New array.
(bdesc_arrays): Add DSP builtin function table.
(mips_prepare_builtin_arg): Check predicate again after
copy_to_mode_reg.
(mips_expand_builtin): Add one more parameter to
mips_expand_builtin_direct. Expand MIPS_BUILTIN_DIRECT_NO_TARGET and
MIPS_BUILTIN_BPOSGE32.
(mips_init_builtins): Initialize new function types.
(mips_expand_builtin_direct): Check if builtin functions need to
return a value and pass operands properly.
(mips_expand_builtin_bposge): New function.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Add __mips_dsp.
(ASM_SPEC): Map -mdsp to -mdsp in GAS.
(FIRST_PSEUDO_REGISTER): Increase to 188.
(FIXED_REGISTERS, CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS):
Update for 12 new DSP registers.
(DSP_ACC_REG_FIRST, DSP_ACC_REG_LAST, DSP_ACC_REG_NUM, AC1HI_REGNUM)
(AC1LO_REGNUM, AC2HI_REGNUM, AC2LO_REGNUM, AC3HI_REGNUM, AC3LO_REGNUM):
(DSP_ACC_REG_P, ACC_REG_P, ACC_HI_REG_P): New macros.
(reg_class): Add DSP_ACC_REGS and ACC_REGS.
(REG_CLASS_NAMES): Add names for DSP_ACC_REGS and ACC_REGS.
(REG_CLASS_CONTENTS): Update for DSP_ACC_REGS, ACC_REGS and ALL_REGS.
(REG_ALLOC_ORDER): Update for 12 new DSP registers.
(mips_char_to_class): Add 'A' for DSP_ACC_REGS and 'a' for ACC_REGS.
(UIMM6_OPERAND, IMM10_OPERAND): New macros.
(EXTRA_CONSTRAINT_Y): Add YA and YB extra constraints.
(REGISTER_NAMES): Add names for 12 new DSP registers.
* config/mips/mips.md: Include mips-dsp.md.
(UNSPEC_ADDQ, UNSPEC_ADDQ_S, UNSPEC_SUBQ, UNSPEC_SUBQ_S, UNSPEC_ADDSC)
(UNSPEC_ADDWC, UNSPEC_MODSUB, UNSPEC_RADDU_W_QB, UNSPEC_ABSQ_S)
(UNSPEC_PRECRQ_QB_PH, UNSPEC_PRECRQ_PH_W, UNSPEC_PRECRQ_RS_PH_W)
(UNSPEC_PRECRQU_S_QB_PH, UNSPEC_PRECEQ_W_PHL, UNSPEC_PRECEQ_W_PHR)
(UNSPEC_PRECEQU_PH_QBL, UNSPEC_PRECEQU_PH_QBR, UNSPEC_PRECEQU_PH_QBLA)
(UNSPEC_PRECEQU_PH_QBRA, UNSPEC_PRECEU_PH_QBL, UNSPEC_PRECEU_PH_QBR)
(UNSPEC_PRECEU_PH_QBLA, UNSPEC_PRECEU_PH_QBRA, UNSPEC_SHLL)
(UNSPEC_SHLL_S, UNSPEC_SHRL_QB, UNSPEC_SHRA_PH, UNSPEC_SHRA_R)
(UNSPEC_MULEU_S_PH_QBL, UNSPEC_MULEU_S_PH_QBR, UNSPEC_MULQ_RS_PH)
(UNSPEC_MULEQ_S_W_PHL, UNSPEC_MULEQ_S_W_PHR, UNSPEC_DPAU_H_QBL)
(UNSPEC_DPAU_H_QBR, UNSPEC_DPSU_H_QBL, UNSPEC_DPSU_H_QBR)
(UNSPEC_DPAQ_S_W_PH, UNSPEC_DPSQ_S_W_PH, UNSPEC_MULSAQ_S_W_PH)
(UNSPEC_DPAQ_SA_L_W, UNSPEC_DPSQ_SA_L_W, UNSPEC_MAQ_S_W_PHL)
(UNSPEC_MAQ_S_W_PHR, UNSPEC_MAQ_SA_W_PHL, UNSPEC_MAQ_SA_W_PHR)
(UNSPEC_BITREV, UNSPEC_INSV, UNSPEC_REPL_QB, UNSPEC_REPL_PH)
(UNSPEC_CMP_EQ, UNSPEC_CMP_LT, UNSPEC_CMP_LE, UNSPEC_CMPGU_EQ_QB)
(UNSPEC_CMPGU_LT_QB, UNSPEC_CMPGU_LE_QB, UNSPEC_PICK, UNSPEC_PACKRL_PH)
(UNSPEC_EXTR_W, UNSPEC_EXTR_R_W, UNSPEC_EXTR_RS_W, UNSPEC_EXTR_S_H)
(UNSPEC_EXTP, UNSPEC_EXTPDP, UNSPEC_SHILO, UNSPEC_MTHLIP, UNSPEC_WRDSP)
(UNSPEC_RDDSP): New constants.
(*movdi_32bit): Change 'x' to 'a' for ACC_REGS.
(*movsi_internal): Change 'x' to 'a' for ACC_REGS. Add an
A<-d alternative.
* config/mips/mips.opt (-mdsp): New option.
* config/mips/predicates.md (const_uimm6_operand, const_imm10_operand)
(reg_imm10_operand): New predicates.
* doc/extend.texi (MIPS DSP Built-in Functions): New section.
* doc/invoke.texi (-mdsp): Document new option.
From-SVN: r102307
Oyvind Harboe [Sat, 23 Jul 2005 04:49:57 +0000 (04:49 +0000)]
re PR testsuite/21073 (Incorrect declaration of member variable in p3060d.C testcase)
2005-07-23 Oyvind Harboe <oyvind.harboe@zylin.com>
PR testsuite/21073
* g++.old-deja/g++.mike/p3060d.C: Fix type of VoidObjMemberFunc.
PR testsuite/20454
* gcc.dg/
20001117-1.c: Fix type of __cyg_profile_func_enter
and __cyg_profile_func_exit.
From-SVN: r102306
David Edelsohn [Sat, 23 Jul 2005 03:26:27 +0000 (03:26 +0000)]
comma_format_extension_3.f: Fix typo.
* gfortran.dg/comma_format_extension_3.f: Fix typo.
* gfortran.dg/comma_format_extension_4.f: Same.
* gfortran.dg/pr15332.f: Same.
* gfortran.dg/pr21730.f: Same.
From-SVN: r102305
Andrew Pinski [Sat, 23 Jul 2005 02:32:25 +0000 (02:32 +0000)]
vrp2.C: Fix testcase.
2005-07-22 Andrew Pinski <pinskia@physics.uc.edu>
* g++.dg/opt/vrp2.C: Fix testcase.
From-SVN: r102304
Andrew Pinski [Sat, 23 Jul 2005 02:20:30 +0000 (02:20 +0000)]
re PR tree-optimization/22625 (-ftree-vrp produces wrong code)
2005-07-22 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/22625
* g++.dg/opt/vrp2.C: New test.
From-SVN: r102303
GCC Administrator [Sat, 23 Jul 2005 00:16:12 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102301.2
SUGIOKA Toshinobu [Fri, 22 Jul 2005 22:56:27 +0000 (07:56 +0900)]
sysv.S (ffi_call_SYSV): Stop argument popping correctly on sh3.
* src/sh/sysv.S (ffi_call_SYSV): Stop argument popping correctly
on sh3.
(ffi_closure_SYSV): Change the stack layout for sh3 struct argument.
* src/sh/ffi.c (ffi_prep_args): Fix sh3 argument copy, when it is
partially on register.
(ffi_closure_helper_SYSV): Likewise.
(ffi_prep_cif_machdep): Don't set too many cif->flags.
From-SVN: r102298
Tom Tromey [Fri, 22 Jul 2005 20:45:36 +0000 (20:45 +0000)]
Makefile.in: Rebuilt.
* include/Makefile.in: Rebuilt.
* include/Makefile.am (tool_include__HEADERS): Include
classpath's jni.h.
From-SVN: r102296
DJ Delorie [Fri, 22 Jul 2005 18:09:37 +0000 (14:09 -0400)]
c-objc-common.c (c_cannot_inline_tree_fn): Add warning control to warning calls.
* c-objc-common.c (c_cannot_inline_tree_fn): Add warning control
to warning calls.
* tree-inline.c (inlinable_function_p): Likewise.
From-SVN: r102289
Jerry DeLisle [Fri, 22 Jul 2005 17:43:31 +0000 (17:43 +0000)]
re PR libfortran/22570 (Null Characters instead of blanks in text output.)
2005-07-22 Jerry DeLisle <jvdelisle@verizon.net>
PR libfortran/22570
* io/unit.c (init_units): Replace BLANK_ZERO with
BLANK_UNSPECIFIED.
From-SVN: r102288
Mark Mitchell [Fri, 22 Jul 2005 17:40:37 +0000 (17:40 +0000)]
re PR debug/21828 (debug info omitted for uninitialized variables)
PR debug/21828
* toplev.c (check_global_declarations): Do not mark undefined
variables as DECL_IGNORED_P.
* varasm.c (first_global_object_name): GTY it.
(weak_global_object_name): Likewise.
(notice_global_symbol): Use ggc_strdup, not xstrdup, when creating
a string to go into {weak,first}_global_object_name.
PR debug/21828
* gcc.dg/debug/dwarf2/dwarf-uninit.c: New test.
From-SVN: r102287
DJ Delorie [Fri, 22 Jul 2005 17:10:34 +0000 (13:10 -0400)]
c-format.c (check_function_format): Change warning control option from OPT_Wattribute to OPT_Wmissing_format_attribute.
* c-format.c (check_function_format): Change warning control
option from OPT_Wattribute to OPT_Wmissing_format_attribute.
From-SVN: r102286
Paul Thomas [Fri, 22 Jul 2005 14:07:19 +0000 (14:07 +0000)]
[multiple changes]
2005-07-22 Jerry DeLisle <jvdelisle@verizon.net>
PR libfortran/21875 (FM111.f)
* io/read.c (next_char): Return a ' ' character when BLANK_ZERO
or BLANK_NULL are active.
(read_decimal): Interpret ' ' character correctly for BZ or BN.
(read_radix): Interpret ' ' character correctly for BZ or BN.
(read_f): Interpret ' ' character correctly for BZ or BN.
2005-07-22 Paul Thomas <pault@gcc.gnu.org>
PR libfortran/22570
* read.c (read_x): Correct the condition for doing the
x-editing during formatted input.
* transfer.c (formatted_transfer): Cast offset difference
as int, clean-up arithmetic with new variable, bytes_used,
zero counters for FMT_SLASH,
(data_transfer_init) Zero X- and T-editing counters
unconditionally.
(next_record_w) Zero X- and T-editing counters.
unconditionally.
From-SVN: r102284
Diego Novillo [Fri, 22 Jul 2005 13:39:18 +0000 (13:39 +0000)]
tree-ssa-alias.c (count_ptr_derefs): Do not consider &PTR->FLD a dereference of PTR.
* tree-ssa-alias.c (count_ptr_derefs): Do not consider
&PTR->FLD a dereference of PTR.
* tree-ssa-structalias.c (update_alias_info): Consider &PTR->FLD
a potential dereference of PTR.
testsuite/ChangeLog
* gcc.dg/tree-ssa/
20050719-1.c: New test.
From-SVN: r102283
J"orn Rennecke [Fri, 22 Jul 2005 12:25:20 +0000 (12:25 +0000)]
re PR rtl-optimization/20370 (dead_or_predictable doesn't resize reg_n_info)
PR rtl-optimization/20370
* ifcvt.c (dead_or_predicable): Before calling propagate_block,
call allocate_reg_info if necessary.
From-SVN: r102282
J"orn Rennecke [Fri, 22 Jul 2005 12:15:37 +0000 (12:15 +0000)]
re PR rtl-optimization/21848 (load_mems / replace_loop_mems bug causes miscompilation of jcf-io.c / SEGV while processing java/lang/AbstractMethodError)
PR rtl-optimization/21848
* calls.c (emit_library_call_value_1): For const functions, add
USEs of the stack slots to CALL_INSN_FUNCTION_USAGE.
From-SVN: r102281
J"orn Rennecke [Fri, 22 Jul 2005 12:06:18 +0000 (12:06 +0000)]
re PR rtl-optimization/22445 (Optimizations done by cselib depend on pointer values)
PR rtl-optimization/22445
* cselib.c (target.h): Include.
(rtx_equal_for_cselib_p): Allow commutative matches.
(cselib_hash_rtx): Don't use MODE for CONST_INT hashing.
Remove MODE parameter. Changed all callers.
From-SVN: r102280
J"orn Rennecke [Fri, 22 Jul 2005 11:55:42 +0000 (11:55 +0000)]
re PR rtl-optimization/22258 (combine causes spill failure on return value register)
PR rtl-optimization/22258
* combine.c (likely_spilled_retval_1, likely_spilled_retval_p):
New functions.
(try_combine): Use likely_spilled_retval_p.
From-SVN: r102279
Paul Woegerer [Fri, 22 Jul 2005 09:49:48 +0000 (09:49 +0000)]
config.gcc: Add crx-elf support.
* config.gcc: Add crx-elf support.
* doc/contrib.texi: Mention crx.
* doc/extend.texi: Document crx extensions.
* doc/install.texi: Document crx install.
* doc/invoke.texi: Document crx options.
* doc/md.texi: Document crx constraints.
* config/crx/crx-protos.h: New file.
* config/crx/crx.c: New file.
* config/crx/crx.h: New file.
* config/crx/crx.md: New file.
* config/crx/crx.opt: New file.
* config/crx/t-crx: New file.
From-SVN: r102278
Bernd Schmidt [Fri, 22 Jul 2005 09:46:30 +0000 (09:46 +0000)]
bfin-longcall-1.c: New file.
* gcc.dg/bfin-longcall-1.c: New file.
* gcc.dg/bfin-longcall-2.c: New file.
From-SVN: r102277
Manfred Hollstein [Fri, 22 Jul 2005 07:31:32 +0000 (07:31 +0000)]
tree-ssa-structalias.c (merge_graph_nodes): Fix uninitialised warnings.
gcc/ChangeLog:
* tree-ssa-structalias.c (merge_graph_nodes): Fix uninitialised
warnings.
(int_add_graph_edge): Likewise.
(collapse_nodes): Likewise.
(process_unification_queue): Likewise.
gcc/cp/ChangeLog:
* parser.c (cp_parser_declaration): Fix unitialised warnings.
gcc/fortran/ChangeLog:
* match.c (gfc_match_symbol): Fix uninitialised warnings.
* matchexp.c (gfc_match_expr): Likewise.
gcc/java/ChangeLog:
* verify-impl.c (check_class_constant): Fix uninitialised warnings.
(check_constant): Likewise.
(check_wide_constant): Likewise.
From-SVN: r102273
Richard Kenner [Fri, 22 Jul 2005 07:13:42 +0000 (07:13 +0000)]
re PR tree-optimization/22336 (ICE Segfault in record_block_change at function.c:5498)
2005-07-22 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
Laurent GUERBY <laurent@guerby.net>
PR tree-optimization/22336
* function.c (record_block_change): Check for
cfun->ib_boundaries_block.
Co-Authored-By: Laurent GUERBY <laurent@guerby.net>
From-SVN: r102272
Ben Elliston [Fri, 22 Jul 2005 04:24:05 +0000 (14:24 +1000)]
getopt.c: Include "ansidecl.h".
* getopt.c: Include "ansidecl.h".
(_getopt_initialize): Mark argc and argv parameters as unused.
From-SVN: r102271
Ben Elliston [Fri, 22 Jul 2005 03:55:44 +0000 (13:55 +1000)]
* regex.c (regcomp): Change type of `i' from unsigned to int.
From-SVN: r102270
James A. Morrison [Fri, 22 Jul 2005 03:48:00 +0000 (03:48 +0000)]
fold-const.c (fold_unary): Don't strip signed nops from ABS_EXPRs.
2005-07-21 James A. Morrison <phython@gcc.gnu.org>
* fold-const.c (fold_unary): Don't strip signed nops from ABS_EXPRs.
(tree_expr_nonnegative_p): Return try for TYPE_UNSIGNED.
From-SVN: r102269
Ben Elliston [Fri, 22 Jul 2005 03:21:19 +0000 (13:21 +1000)]
Recover patch lost in the sourceware repository:
2005-07-09 Ben Elliston <bje@au.ibm.com>
* memcpy.c: Remove ANSI_PROTOTYPES conditional code.
* memmove.c: Likewise.
* objalloc.c: Likewise.
From-SVN: r102268
Ben Elliston [Fri, 22 Jul 2005 03:14:38 +0000 (13:14 +1000)]
configure.ac: Check for a getopt(3) declaration.
* configure.ac: Check for a getopt(3) declaration.
* configure, config.in: Regenerate.
From-SVN: r102267
DJ Delorie [Fri, 22 Jul 2005 03:11:24 +0000 (23:11 -0400)]
... Add warning control to warning call.
* c-common.c (check_function_sentinel): Likewise.
(check_nonnull_arg): Likewise.
From-SVN: r102266
DJ Delorie [Fri, 22 Jul 2005 02:35:54 +0000 (22:35 -0400)]
c-typeck.c (parser_build_binary_op): Add warning control to warning calls.
* c-typeck.c (parser_build_binary_op): Add warning control to warning
calls.
(c_finish_if_stmt): Likewise.
From-SVN: r102265
DJ Delorie [Fri, 22 Jul 2005 02:10:23 +0000 (22:10 -0400)]
toplev.c (warn_deprecated_use): Add warning control to warning call.
* toplev.c (warn_deprecated_use): Add warning control to warning
call.
From-SVN: r102264
Richard Henderson [Fri, 22 Jul 2005 00:33:46 +0000 (17:33 -0700)]
re PR tree-optimization/22504 (benchmark - galgel fails at runtime with miscompare output)
PR tree-opt/22504
* tree-complex.c (complex_ssa_name_components): New.
(cvc_lookup): Allow entry not found.
(create_components): Remove.
(create_one_component_var, get_component_var): New.
(get_component_ssa_name, set_component_ssa_name): New.
(extract_component): Use get_component_ssa_name.
(update_complex_components): Use set_component_ssa_name.
(update_complex_components_on_edge): Likewise.
(update_phi_components): Create new PHI nodes directly, instead
of adding insns to edges.
(tree_lower_complex): Allocate and free complex_variable_components
and complex_ssa_name_components here.
From-SVN: r102260
GCC Administrator [Fri, 22 Jul 2005 00:16:52 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102258.2
Daniel Berlin [Thu, 21 Jul 2005 22:34:33 +0000 (22:34 +0000)]
alias.c (nonoverlapping_component_refs_p): Use TYPE_MAIN_VARIANT, revert to returning false.
2005-07-20 Daniel Berlin <dberlin@dberlin.org>
* alias.c (nonoverlapping_component_refs_p): Use TYPE_MAIN_VARIANT,
revert to returning false.
From-SVN: r102256
Janis Johnson [Thu, 21 Jul 2005 22:00:27 +0000 (22:00 +0000)]
* gcc.c-torture/compile/
20050721-1.c: New test for 3.4 fix.
From-SVN: r102252
Uros Bizjak [Thu, 21 Jul 2005 19:59:09 +0000 (21:59 +0200)]
re PR target/21149 (invalid code generation for _mm_movehl_ps SSE intrisinc)
PR target/21149
* config/i386/i386.md (sse_movhlps): Fix vec_select values.
From-SVN: r102250
Uros Bizjak [Thu, 21 Jul 2005 19:55:03 +0000 (21:55 +0200)]
re PR target/22576 (ICE with simple factorial program compiled with -ffast-math on gcc 4.0.2)
PR target/22576
* config/i386/i386.md (cmpxf): Change operand constraints
to "nonmemory_operand".
From-SVN: r102247
Andrew Pinski [Thu, 21 Jul 2005 19:51:49 +0000 (19:51 +0000)]
i386.md (trap): Use "".word/t0x0b0f" instead of ud2.
2005-07-21 Andrew Pinski <pinskia@physics.uc.edu>
* config/i386/i386.md (trap): Use "".word/t0x0b0f" instead of ud2.
From-SVN: r102246
Andrew Pinski [Thu, 21 Jul 2005 19:43:47 +0000 (19:43 +0000)]
class.c (build_base_path): Fix typo.
2005-07-21 Andrew Pinski <pinskia@physics.uc.edu>
* class.c (build_base_path): Fix typo.
From-SVN: r102245
Andrew Pinski [Thu, 21 Jul 2005 19:36:50 +0000 (19:36 +0000)]
re PR middle-end/21180 (checking on fold no longer happens in some cases)
2005-07-21 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/21180
* fold-const.c (fold_build1): Add checksum for the operands.
(fold_build2): Likewise.
(fold_build3): Likewise.
From-SVN: r102244
Andrew Pinski [Thu, 21 Jul 2005 19:33:45 +0000 (19:33 +0000)]
re PR tree-optimization/19055 (Minor bit optimization with or and xor)
2005-07-21 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/19055
* gcc.dg/tree-ssa/pr19055.c: New test.
* gcc.dg/tree-ssa/pr19055-2.c: New test.
2005-07-21 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/19055
* fold-const.c (fold_binary): Transform "(X | Y) ^ X" to "Y & ~ X".
From-SVN: r102243
Eric Christopher [Thu, 21 Jul 2005 18:32:27 +0000 (18:32 +0000)]
MAINTAINERS: Change affiliation.
2005-07-21 Eric Christopher <echristo@apple.com>
* MAINTAINERS: Change affiliation.
From-SVN: r102241
Andrew Pinski [Thu, 21 Jul 2005 18:29:05 +0000 (18:29 +0000)]
re PR c++/22358 (C++ front-end produces mis-match types in MODIFY_EXPR)
2005-07-21 Andrew Pinski <pinskia@physics.uc.edu>
PR C++/22358
* g++.dg/other/pr22358.C: New test.
2005-07-21 Andrew Pinski <pinskia@physics.uc.edu>
PR C++/22358
* class.c (build_base_path): Convert BINFO_OFFSET to the correct type.
From-SVN: r102240
Paolo Bonzini [Thu, 21 Jul 2005 17:27:27 +0000 (17:27 +0000)]
common.opt (-fforward-propagate): Committed by mistake, removed.
2005-07-21 Paolo Bonzini <bonzini@gnu.org>
* common.opt (-fforward-propagate): Committed by mistake,
removed.
From-SVN: r102239
Paul Woegerer [Thu, 21 Jul 2005 16:08:13 +0000 (16:08 +0000)]
* Updated ChangeLog
From-SVN: r102238
Paul Woegerer [Thu, 21 Jul 2005 15:46:10 +0000 (15:46 +0000)]
* MAINTAINERS: Added myself as crx-port maintainer.
From-SVN: r102237
Douglas Gregor [Thu, 21 Jul 2005 15:14:59 +0000 (15:14 +0000)]
re PR c++/2922 ([DR 197] two-stage lookup for unqualified function calls with type-dependent arguments)
2005-07-21 Douglas Gregor <doug.gregor@gmail.com>
PR c++/2922
* g++.dg/lookup/two-stage5.C: New test from bug comments.
From-SVN: r102236
Volker Reichelt [Thu, 21 Jul 2005 14:50:46 +0000 (14:50 +0000)]
re PR c++/15938 (ICE with anonymous unions)
PR c++/15938
* g++.dg/init/union2.C: New test.
From-SVN: r102235
Doug Gregor [Thu, 21 Jul 2005 14:18:52 +0000 (14:18 +0000)]
Completed this ChangeLog entry:
2005-07-20 Douglas Gregor <doug.gregor@gmail.com>
PR c++/2922
* semantics.c (perform_koenig_lookup): For dependent calls, just
return the set of functions we've found so far. Later, it will be
augmented by those found through argument-dependent lookup.
* name-lookup.c (lookup_arg_dependent): Implement DR 164 by removing
the optimization that skips namespaces where the functions were
originally found.
From-SVN: r102234
Volker Reichelt [Thu, 21 Jul 2005 11:53:00 +0000 (11:53 +0000)]
reg-stack.c: Fix comment typo(s).
* reg-stack.c: Fix comment typo(s).
* tree-ssa-operands.c: Likewise.
* tree-vectorizer: Likewise.
From-SVN: r102232
Volker Reichelt [Thu, 21 Jul 2005 10:33:31 +0000 (10:33 +0000)]
call.c: Fix comment typo(s).
* call.c: Fix comment typo(s).
* cxx-pretty-print.h: Likewise.
* name-lookup.c: Likewise.
* parser.c: Likewise.
From-SVN: r102231
Volker Reichelt [Thu, 21 Jul 2005 09:57:05 +0000 (09:57 +0000)]
re PR other/22393 (ICE in emit_move_insn, at expr.c:3142)
PR c/22393
* gcc.dg/complex-4.c: New test.
From-SVN: r102229
Nick Clifton [Thu, 21 Jul 2005 08:08:17 +0000 (08:08 +0000)]
Replace C++ style line comments with C style line comments.
(symbian_add_attribute): Do not use a ? operator on the LHS of an assignment.
(sh_symbian_handle_dll_attribute): Change the type of the method vector to
"VEC(tree,gc)*" and use vector accessor macros to walk over the elements.
(symbian_export_vtable_and_rtti_p): Likewise.
(symbian_class_needs_attribute_p): Likewise.
From-SVN: r102228
Richard Guenther [Thu, 21 Jul 2005 08:02:21 +0000 (08:02 +0000)]
re PR testsuite/22522 (gcc.dg/tree-ssa/flatten-2.c scan-assembler cycle.: fails)
2005-07-21 Richard Guenther <rguenther@suse.de>
PR testsuite/22522
* gcc.dg/tree-ssa/flatten-1.c: Use correct regexp for
scanning for asm labels.
* gcc.dg/tree-ssa/flatten-2.c: Likewise.
From-SVN: r102227
Paolo Bonzini [Thu, 21 Jul 2005 07:30:00 +0000 (07:30 +0000)]
re PR target/22085 (error with -fpreprocessed)
gcc:
2005-07-21 Paolo Bonzini <bonzini@gnu.org>
PR target/22085
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Do not
initialize targetm.resolve_overloaded_builtin here.
(altivec_expand_overloaded_builtin): Make it non-static.
* config/rs6000/rs6000-protos.h
(altivec_expand_overloaded_builtin): New prototype.
* config/rs6000/rs6000.h (REGISTER_TARGET_PRAGMAS): Initialize
targetm.resolve_overloaded_builtin here.
* config/rs6000/darwin.h (REGISTER_TARGET_PRAGMAS): Likewise.
testsuite:
2005-07-21 Paolo Bonzini <bonzini@gnu.org>
PR target/22085
* gcc.dg/altivec-pr22085.c: New.
From-SVN: r102226
Paolo Bonzini [Thu, 21 Jul 2005 07:24:34 +0000 (07:24 +0000)]
re PR rtl-optimization/19210 (not using do-loop for some loops)
gcc:
2005-07-21 Paolo Bonzini <bonzini@gnu.org>
Zdenek Dvorak <dvorakz@suse.cz>
PR tree-optimization/19210
* common.opt (Wunsafe-loop-optimizations, funsafe-loop-optimizations):
New.
* Makefile.in (tree-ssa-loop-niter.o): Depend intl.o.
* loop-iv.c (get_simple_loop_desc): If -funsafe-loop-optimizations,
rely on unproven assumptions.
* predict.c (predict_loops): Adjust call to number_of_iterations_exit.
* tree-flow.h (number_of_iterations_exit): Add final parameter.
* tree-scalar-evolution.c (number_of_iterations_in_loop): Adjust call
to number_of_iterations_exit.
* tree-ssa-loop-ivcanon.c (empty_loop_p): Likewise.
* tree-ssa-loop-ivopts.c (niter_for_exit): Likewise.
* tree-ssa-loop-niter.c (find_loop_niter,
estimate_numbers_of_iterations_loop): Likewise.
(number_of_iterations_exit): Honor the new options.
* doc/invoke.texi (Wunsafe-loop-optimizations,
funsafe-loop-optimizations): Document them.
gcc/testsuite:
2005-07-21 Paolo Bonzini <bonzini@gnu.org>
* gcc.dg/tree-ssa/pr19210-1.c: New.
* gcc.dg/tree-ssa/pr19210-2.c: New.
Co-Authored-By: Zdenek Dvorak <dvorakz@suse.cz>
From-SVN: r102225
Richard Sandiford [Thu, 21 Jul 2005 06:51:25 +0000 (06:51 +0000)]
re PR rtl-optimization/22167 (Strange optimization bug when using -Os)
PR rtl-optimization/22167
* gcse.c (hoist_code): Fix hoist_exprs[] check.
From-SVN: r102219
Adam Nemet [Thu, 21 Jul 2005 05:44:22 +0000 (05:44 +0000)]
lynx.h: Mark __do_global_ctors_aux and __do_global_dtors_aux longcall.
* config/rs6000/lynx.h: Mark __do_global_ctors_aux and
__do_global_dtors_aux longcall.
From-SVN: r102218
Douglas Gregor [Thu, 21 Jul 2005 03:56:46 +0000 (03:56 +0000)]
re PR c++/2922 ([DR 197] two-stage lookup for unqualified function calls with type-dependent arguments)
2005-07-20 Douglas Gregor <doug.gregor@gmail.com>
PR c++/2922
* g++.dg/lookup/two-stage2.C: New.
* g++.dg/lookup/two-stage3.C: New.
* g++.dg/lookup/two-stage4.C: New. Illustrates how we have not yet
fixed two-stage name lookup for operators.
* g++.dg/template/call3.C: Compiler now produces an appropriate
error message.
* g++.dg/template/crash37.C: Compiler now describes bla() on line
14 as a candidate.
* g++.dg/template/ptrmem4.C: Compiler produces different error
message.
* g++.old-deja/g++.other/pmf3.C: Compiler now describes
connect_to_method as a candidate.
From-SVN: r102217
Douglas Gregor [Thu, 21 Jul 2005 03:53:07 +0000 (03:53 +0000)]
re PR c++/2922 ([DR 197] two-stage lookup for unqualified function calls with type-dependent arguments)
2005-07-20 Douglas Gregor <doug.gregor@gmail.com>
PR c++/2922
* semantics.c (perform_koenig_lookup): For dependent calls, just
return the set of functions we've found so far. Later, it will be
augmented by those found through argument-dependent lookup.
* name-lookup.c (lookup_arg_dependent):
From-SVN: r102216
Kazu Hirata [Thu, 21 Jul 2005 00:55:20 +0000 (00:55 +0000)]
gensupport.c (old_preds): Don't reference PREDICATE_CODES.
* gensupport.c (old_preds): Don't reference PREDICATE_CODES.
(old_special_pred_table): Don't reference
SPECIAL_MODE_PREDICATES.
* system.h (PREDICATE_CODES, SPECIAL_MODE_PREDICATES): Poison.
* config/arc/arc.h: Don't mention PREDICATE_CODES.
* config/sh/predicates.h: Don't mention
SPECIAL_MODE_PREDICATES.
* doc/tm.texi (PREDICATE_CODES, SPECIAL_MODE_PREDICATES):
Remove.
From-SVN: r102215
GCC Administrator [Thu, 21 Jul 2005 00:16:12 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102213.2
Tom Tromey [Wed, 20 Jul 2005 23:39:44 +0000 (23:39 +0000)]
sources.am, [...]: Rebuilt.
* sources.am, Makefile.in: Rebuilt.
* Makefile.am (all_xlib_lo_files): Removed.
(all_libgcj_lo_files): Likewise.
(lib_gnu_awt_xlib_la_LIBADD): List correct .lo files.
(xlib_java_source_files): Removed.
(xlib_nat_headers): Updated.
* configure: Rebuilt.
* configure.ac: Create standard.omit.
* standard.omit.in: New file.
* standard.omit: Removed.
* scripts/makemake.tcl (gnu/gcj/xlib, gnu/awt/xlib): Now
'package'.
(emit_package_rule): Special case xlib peers.
(emit_source_var): Likewise.
Read standard.omit.in.
* gnu/awt/xlib/XToolkit.java (createEmbeddedWindow): New method.
From-SVN: r102211
Kaz Kojima [Wed, 20 Jul 2005 23:32:01 +0000 (23:32 +0000)]
ffi.c (ffi_call): Handle small structures correctly.
* src/sh/ffi.c (ffi_call): Handle small structures correctly.
Remove empty line.
* src/sh64/ffi.c (simple_type): Remove.
(return_type): Handle small structures correctly.
(ffi_prep_args): Likewise.
(ffi_call): Likewise.
(ffi_closure_helper_SYSV): Likewise.
* src/sh64/sysv.S (ffi_call_SYSV): Handle 1, 2 and 4-byte return.
Emit position independent code if PIC and remove wrong datalabel
prefixes from EH data.
From-SVN: r102210
DJ Delorie [Wed, 20 Jul 2005 23:27:36 +0000 (19:27 -0400)]
* MAINTAINERS: Add self as m32c maintainer.
From-SVN: r102208
DJ Delorie [Wed, 20 Jul 2005 23:27:02 +0000 (19:27 -0400)]
config.gcc: Add m32c-elf support.
* config.gcc: Add m32c-elf support.
* doc/contrib.texi: Mention m32c.
* doc/extend.texi: Document m32c extensions.
* doc/install.texi: Mention m32c.
* doc/invoke.texi: Document m32c options.
* doc/md.texi: Document m32c constraints.
* config/m32c/addsub.md: New file.
* config/m32c/bitops.md: New file.
* config/m32c/cond.md: New file.
* config/m32c/jump.md: New file.
* config/m32c/m32c-lib1.S: New file.
* config/m32c/m32c-lib2.c: New file.
* config/m32c/m32c-modes.def: New file.
* config/m32c/m32c-pragma.c: New file.
* config/m32c/m32c-protos.h: New file.
* config/m32c/m32c.abi: New file.
* config/m32c/m32c.c: New file.
* config/m32c/m32c.h: New file.
* config/m32c/m32c.md: New file.
* config/m32c/m32c.opt: New file.
* config/m32c/minmax.md: New file.
* config/m32c/mov.md: New file.
* config/m32c/muldiv.md: New file.
* config/m32c/predicates.md: New file.
* config/m32c/prologue.md: New file.
* config/m32c/shift.md: New file.
* config/m32c/t-m32c: New file.
From-SVN: r102207
Kaz Kojima [Wed, 20 Jul 2005 22:55:50 +0000 (22:55 +0000)]
sh.md (UNSPEC_SP_SET, [...]): New constants.
* config/sh/sh.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New constants.
(stack_protect_set, stack_protect_test): New expanders.
(stack_protect_set_si, stack_protect_set_si_media,
stack_protect_set_di_media, stack_protect_test_si,
stack_protect_test_si_media, stack_protect_test_di_media):
New insns.
From-SVN: r102206
Paolo Carlini [Wed, 20 Jul 2005 22:07:57 +0000 (22:07 +0000)]
streambuf.tcc (xsgetn, xsputn): Use streamsize instead of size_t.
2005-07-20 Paolo Carlini <pcarlini@suse.de>
* include/bits/streambuf.tcc (xsgetn, xsputn): Use streamsize
instead of size_t.
* src/streambuf.cc (__copy_streambufs): Likewise.
From-SVN: r102204
Andrew Pinski [Wed, 20 Jul 2005 21:34:52 +0000 (21:34 +0000)]
c-typeck.c (output_init_element): Don't copy the INTEGER_CST.
2005-07-20 Andrew Pinski <pinskia@physics.uc.edu>
* c-typeck.c (output_init_element): Don't copy the INTEGER_CST.
From-SVN: r102203
Tom Tromey [Wed, 20 Jul 2005 21:24:56 +0000 (21:24 +0000)]
* HACKING: Updated.
From-SVN: r102202
James A. Morrison [Wed, 20 Jul 2005 20:26:11 +0000 (20:26 +0000)]
tree.h (tree_expr_nonzero_p): Export.
2005-07-20 James A. Morrison <phython@gcc.gnu.org>
* tree.h (tree_expr_nonzero_p): Export.
* fold-const.c (tree_expr_nonzero_p): Likewise.
Return true for CALL_EXPRs that are alloca calls.
(fold_binary): Use omit_one_operand when checking EQ_EXPRs or NE_EXPRs
against zero.
* tree-flow.h (expr_computes_nonzero): Remove.
* tree-vrp.c (expr_computes_nonzero): Remove.
(vrp_expr_computes_nonzero): Use tree_expr_nonzero_p.
(extract_range_from_unary_expr): Likewise.
* tree-ssa-dom.c (record_equivalences_from_stmt): Use
tree_expr_nonzero_p.
From-SVN: r102201
Bernd Schmidt [Wed, 20 Jul 2005 11:12:26 +0000 (11:12 +0000)]
bfin-protos.h (legitimize_pic_address): Don't declare.
* config/bfin/bfin-protos.h (legitimize_pic_address): Don't declare.
* config/bfin/bfin.c (legitimize_pic_address): Now static. Take
extra arg "picreg" and use it instead of pic_offset_table_rtx.
All callers changed.
(frame_related_constant_load): New arg "related" which controls
setting of RTX_FRAME_RELATED_P. All callers changed.
(bfin_load_pic_reg): New function, broken out of bfin_expand_prologue.
(bfin_expand_prologue): Add stack limit checking.
* config/bfin/bfin.md (trapifcc): New pattern.
From-SVN: r102195
Bernd Schmidt [Wed, 20 Jul 2005 10:42:51 +0000 (10:42 +0000)]
bfin.c: Include "langhooks.h".
* config/bfin/bfin.c: Include "langhooks.h".
(def_builtin): Go through lang_hooks to call builtin_function.
From-SVN: r102193
Bernd Schmidt [Wed, 20 Jul 2005 09:48:03 +0000 (09:48 +0000)]
bfin-protos.h (bfin_longcall_p): Declare.
* config/bfin/bfin-protos.h (bfin_longcall_p): Declare.
* config/bfin/predicates.md (symbol_ref_operand): New.
(call_insn_operand): Delete. All callers changed to use
register_no_elim_operand.
* config/bfin/bfin.c (init_cumulative_args): Initialize the new
call_cookie field.
(function_arg): Use it to generate the call's operand 2.
(bfin_longcall_p): New function.
(bfin_expand_call): Extra arg "cookie". All callers and declaration
changed. Emit extra USE in the pattern. Use bfin_longcall_p to
determine if the address needs to be in a REG.
(bfin_handle_longcall_attribute): New function.
(bfin_attribute_table): Add "longcall" and "shortcall".
* config/bfin/bfin.h (CALL_NORMAL, CALL_LONG, CALL_SHORT): New macros.
(CUMULATIVE_ARGS): New member call_cookie.
(PREDICATE_CODES): Add symbol_ref_operand.
* config/bfin/bfin.md (call, call_value, sibcall, sibcall_value): Add
extra USE to the pattern.
(call_symbol, sibcall_symbol, call_value_symbol, sibcall_value_symbol):
New patterns, split off call_insn, sibcall_insn, call_value_insn and
sibcall_value_insn; now the new patterns handle direct calls and the
old ones indirect calls.
* doc/extend.texi: Mention Blackfin in longcall/shortcall docs.
From-SVN: r102191
Zdenek Dvorak [Wed, 20 Jul 2005 08:29:44 +0000 (10:29 +0200)]
* doc/trouble.texi: Update section on handling of empty loops.
From-SVN: r102190
Kazu Hirata [Wed, 20 Jul 2005 06:39:38 +0000 (06:39 +0000)]
config.gcc: Remove support for sparc-*-openbsd*...
gcc/
* config.gcc: Remove support for sparc-*-openbsd*,
i860-*-sysv4*, ip2k-*-elf, ns32k-*-netbsdelf*,
ns32k-*-netbsd*.
* config.host: Remove support for i860-*-sysv4* as a host.
* config/i860/*, config/ip2k/*, config/ns32k/*,
config/sparc/openbsd.h, config/sparc/t-openbsd: Remove.
* doc/install.texi, doc/invoke.texi, doc/md.texi: Don't
mention obsolete ports.
testsuite/
* gcc.dg/
20020312-2.c, gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c,
gcc.dg/cpp/assert4.c: Don't mention obsolete ports.
From-SVN: r102189
Kaz Kojima [Wed, 20 Jul 2005 05:03:25 +0000 (05:03 +0000)]
sh.c (regno_reg_class): Add GENERAL_REGS for soft frame pointer.
* config/sh/sh.c (regno_reg_class): Add GENERAL_REGS for
soft frame pointer.
(sh_expand_prologue): Use hard_frame_pointer_rtx instead
of frame_pointer_rtx.
(sh_expand_epilogue): Likewise.
(sh_set_return_address): Likewise.
(initial_elimination_offset): Use HARD_FRAME_POINTER_REGNUM
instead of FRAME_POINTER_REGNUM if needed. Add elimination
offsets from FRAME_POINTER_REGNUM.
* config/sh/sh.h (SH_REGISTER_NAMES_INITIALIZER): Add sfp.
(sh_register_names): Add initializer for sfp.
(GENERAL_OR_AP_REGISTER_P): Permit FRAME_POINTER_REGNUM.
(VALID_REGISTER_P): Likewise.
(FIRST_PSEUDO_REGISTER): Update.
(DWARF_FRAME_REGISTERS): Define.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Add sfp.
(HARD_FRAME_POINTER_REGNUM): Define.
(FRAME_POINTER_REGNUM): Redefine.
(ELIMINABLE_REGS): Never eliminate to FRAME_POINTER_REGNUM,
but HARD_FRAME_POINTER_REGNUM instead. Add eliminations
from FRAME_POINTER_REGNUM.
(CAN_ELIMINATE): Use HARD_FRAME_POINTER_REGNUM instead of
FRAME_POINTER_REGNUM.
(REG_CLASS_CONTENTS): Add sfp.
(REG_ALLOC_ORDER): Likewise.
(FRAME_GROWS_DOWNWARD): Set to 1. Update comment.
(GO_IF_LEGITIMATE_ADDRESS): Use hard_frame_pointer_rtx instead
of frame_pointer_rtx.
(LEGITIMIZE_RELOAD_ADDRESS): Likewise.
From-SVN: r102187
James A. Morrison [Wed, 20 Jul 2005 03:30:58 +0000 (03:30 +0000)]
fold-const.c (tree_expr_nonnegative_p): Only return true for ABS_EXPR when flag_wrapv is false because of INT_MIN.
2005-07-19 James A. Morrison <phython@gcc.gnu.org>
* fold-const.c (tree_expr_nonnegative_p): Only return true for
ABS_EXPR when flag_wrapv is false because of INT_MIN.
(tree_expr_nonzero_p): Always call tree_expr_nonzero_p on the argument
of an ABS_EXPR.
(fold_unary): Always fold ABS_EXPR<ABS_EXPR<x>> into
ABS_EXPR<x>.
From-SVN: r102184
Giovanni Bajo [Wed, 20 Jul 2005 01:19:59 +0000 (03:19 +0200)]
Make CONSTRUCTOR use VEC to store initializers.
* c-common.c (complete_array_type): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* c-pretty-print.c (pp_c_initializer_list): Use pp_c_constructor_elts.
(pp_c_constructor_elts): New function.
* c-pretty-print.h (pp_c_constructor_elts): Declare.
* c-typeck.c (build_function_call, build_c_cast, digest_init,
struct constructor_stack, struct initializer_stack,
constructor_elements, push_init_level, pop_init_level,
add_pending_init, find_init_member, output_init_element): Update to
cope with VEC in CONSTRUCTOR_ELTS.
* coverage.c (build_fn_info_value, build_ctr_info_value,
build_gcov_info): Likewise.
* expr.c (categorize_ctor_elements_1, store_constructor,
expand_expr_real_1): Likewise.
* fold-const.c (fold_ternary): Likewise.
* gimplify.c (gimplify_init_ctor_preeval, zero_sized_field_decl,
gimplify_init_constructor, gimplify_expr): Likewise.
* tree-dump.c (dequeue_and_dump): Likewise.
* tree-inline.c (copy_tree_r): Add code to duplicate a CONSTRUCTOR
node.
* tree-pretty-print.c (dump_generic_node): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* tree-sra.c (generate_element_init_1): Likewise.
* tree-ssa-ccp.c (fold_const_aggregate_ref): Likewise.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* tree-vect-generic.c (expand_vector_piecewise): Likewise.
* tree-vect-transform.c (vect_get_vec_def_for_operand):
(get_initial_def_for_reduction): Likewise.
* tree-vn.c (set_value_handle, get_value_handle): CONSTURCTOR uses
value handle in annotations.
* tree.c (tree_node_kind, tree_code_size, make_node_stat,
tree_node_structure): Add support for constr_kind.
(build_vector_from_ctor, build_constructor_single,
build_constructor_from_list): New functions.
(build_constructor): Update to take a VEC instead of a TREE_LIST.
(simple_cst_equal, iterative_hash_expr, initializer_zerop, walk_tree):
Update to cope with VEC in CONSTRUCTOR_ELTS.
* tree.def (CONSTRUCTOR): Make it a tcc_exceptional node.
* tree.h (FOR_EACH_CONSTRUCTOR_VALUE, FOR_EACH_CONSTRUCTOR_ELT,
CONSTRUCTOR_APPEND_ELT): New macros.
(struct constructor_elt, struct tree_constructor): New data types.
(union tree_node): Add tree_constructor field.
* treestruct.def: Define TS_CONSTRUCTOR.
* varasm.c (const_hash_1, compare_constant, copy_constant,
compute_reloc_for_constant, output_addressed_constants,
initializer_constant_valid_p, output_constant,
array_size_for_constructor, output_constructor): Update to cope with
VEC in CONSTRUCTOR_ELTS.
* vec.h (VEC_empty, VEC_copy): New macros.
ada/
Make CONSTRUCTOR use VEC to store initializers.
* decl.c (gnat_to_gnu_entity): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* trans.c (extract_values): Likewise.
* utils.c (convert, remove_conversions): Likewise.
* utils2.c (contains_save_expr_p, build_binary_op, build_unary_op,
gnat_build_constructor): Likewise.
cp/
Make CONSTRUCTOR use VEC to store initializers.
* call.c (convert_default_arg): Update call to digest_init.
* class.c (dump_class_hierarchy, dump_array): Update to cope with
VEC in CONSTRUCTOR_ELTS.
* cp-tree.h (EMPTY_CONSTRUCTOR_P): Likewise.
(finish_compound_literal, digest_init): Update declaration.
* decl.c (struct reshape_iter): New data type.
(reshape_init_array): Rename to...
(reshape_init_array_1): Update to cope with VEC in CONSTRUCTOR_ELTS.
(reshape_init): Rewrite from scratch. Split parts into...
(reshape_init_array, reshape_init_vector, reshape_init_class,
reshape_init_r): New functions.
(check_initializer): Update call to reshape_init. Remove obsolete
code.
(initialize_artificial_var, cp_complete_array_type): Update to cope
with VEC in CONSTRUCTOR_ELTS.
* decl2.c (grokfield): Update calls to digest_init.
(mark_vtable_entries): Update to cope with VEC in CONSTRUCTOR_ELTS.
* error.c (dump_expr_init_vec): New function.
(dump_expr): Use dump_expr_init_vec.
* init.c (build_zero_init, build_vec_init): Update to cope with VEC
in CONSTRUCTOR_ELTS.
(expand_default_init): Update call to digest_init.
* parser.c (cp_parser_postfix_expression): Use a VEC for the
initializers.
(cp_parser_initializer_list): Build a VEC of initializers.
* pt.c (tsubst_copy, tsubst_copy_and_build): Update to cope with VEC
in CONSTRUCTOR_ELTS.
* rtti.c (tinfo_base_init, generic_initializer, ptr_initializer,
ptm_initializer, class_initializer, get_pseudo_ti_init): Use
build_constructor_from_list instead of build_constructor.
* semantics.c (finish_compound_literal): Update call to digest_init.
* tree.c (stabilize_init): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* typeck.c (build_ptrmemfunc1): Likewise.
* typeck2.c: (cxx_incomplete_type_error, split_nonconstant_init_1):
Likewise.
(store_init_value): Use build_constructor_from_list and update call
to digest_init.
(digest_init): Rewrite.
(process_init_constructor): Rewrite from scratch. Split into...
(process_init_constructor_array, picflag_from_initializer,
process_init_constructor_record, process_init_constructor_union):
New functions.
(PICFLAG_ERRONEOUS, PICFLAG_NOT_ALL_CONSTANT, PICFLAG_NOT_ALL_SIMPLE):
New macros.
(build_functional_cast): Use build_constructor_from_list instead of
build_constructor.
fortran/
Make CONSTRUCTOR use VEC to store initializers.
* trans-array.c (gfc_build_null_descriptor,
gfc_trans_array_constructor_value, gfc_conv_array_initializer):
Update to cope with VEC in CONSTRUCTOR_ELTS.
* trans-common.c (create_common): Likewise.
* trans-expr.c (gfc_conv_structure): Likewise.
* trans-stmt.c (gfc_trans_character_select): Use
build_constructor_from_list instead of build_constructor.
java/
Make CONSTRUCTOR use VEC to store initializers.
* check-init.c (check_init): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* class.c (make_field_value, make_method_value, get_dispatch_table,
make_class_data, emit_symbol_table, emit_catch_table,
emit_assertion_table): Use build_constructor_from_list instead of
build_constructor.
* constants.c (build_constants_constructor): Likewise.
* java-gimplify.c (java_gimplify_new_array_init): Update to cope with
VEC in CONSTRUCTOR_ELTS.
* java-tree.h (START_RECORD_CONSTRUCTOR, PUSH_SUPER_VALUE,
PUSH_FIELD_VALUE, FINISH_RECORD_CONSTRUCTOR): Create a VEC instead
of a TREE_LIST.
* jcf-write.c (generate_bytecode_insns): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* parse.y (build_new_array_init): Use build_constructor_from_list
instead of build_constructor.
(patch_new_array_init): Update to cope with VEC in
CONSTRUCTOR_ELTS.
(array_constructor_check_entry): Likewise.
objc/
Make CONSTRUCTOR use VEC to store initializers.
* objc-act.c (objc_build_constructor): Use build_constructor_from_list
instead of build_constructor.
testsuite/
Make CONSTRUCTOR use VEC to store initializers.
* g++.dg/ext/complit3.C: Check for specific error messages.
* g++.dg/init/brace2.C: Update error message.
* g++.dg/warn/Wbraces2.C: Likewise.
From-SVN: r102182
Devang Patel [Wed, 20 Jul 2005 00:24:49 +0000 (17:24 -0700)]
* dbxout.c (dbxout_type): Check Objective-C++ lang.
From-SVN: r102181
GCC Administrator [Wed, 20 Jul 2005 00:16:32 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102179.2
Andreas Tobler [Tue, 19 Jul 2005 21:17:06 +0000 (23:17 +0200)]
2005-07-19 Andreas Tobler <a.tobler@schweiz.ch>
push the missing CL.
From-SVN: r102175
Andreas Tobler [Tue, 19 Jul 2005 21:15:36 +0000 (23:15 +0200)]
Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD.
2005-07-19 Andreas Tobler <a.tobler@schweiz.ch>
* Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD.
* Makefile.in: Regenerate.
* include/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* configure.ac: Add POWERPC_FREEBSD rules.
* configure: Regenerate.
* src/powerpc/ffitarget.h: Add POWERPC_FREEBSD rules.
(FFI_SYSV_TYPE_SMALL_STRUCT): Define.
* src/powerpc/ffi.c: Add flags to handle small structure returns
in ffi_call_SYSV.
(ffi_prep_cif_machdep): Handle small structures for SYSV 4 ABI.
Aka FFI_SYSV.
(ffi_closure_helper_SYSV): Likewise.
* src/powerpc/ppc_closure.S: Add return types for small structures.
* src/powerpc/sysv.S: Add bits to handle small structures for
final SYSV 4 ABI
From-SVN: r102174