Richard Sandiford [Sat, 9 Aug 2008 18:11:19 +0000 (18:11 +0000)]
mips.h (STATIC_CHAIN_REGNUM): Remap to $15.
gcc/
* config/mips/mips.h (STATIC_CHAIN_REGNUM): Remap to $15.
(FUNCTION_PROFILER): Save the static chain pointer into $2
beforehand and restore it aftewards.
(TRAMPOLINE_TEMPLATE): Adjust accordingly. Load the target
address directly into $25 and call the function through $25;
do not clobber $3. Pad the DImode version to cover the space
left by the deleted $25 <- $3 move.
(TRAMPOLINE_SIZE): Adjust the size of the SImode version after
the removal of the $25 <- $3 move.
(INITIALIZE_TRAMPOLINE): Update offsets accordingly.
* config/mips/sdemtk.h (FUNCTION_PROFILER): As for mips.h.
From-SVN: r138909
Richard Sandiford [Sat, 9 Aug 2008 18:10:18 +0000 (18:10 +0000)]
mips.h (FUNCTION_NAME_ALREADY_DECLARED): Delete.
gcc/
2008-08-09 Richard Sandiford <rdsandiford@googlemail.com>
Daniel Jacobowitz <dan@codesourcery.com>
* config/mips/mips.h (FUNCTION_NAME_ALREADY_DECLARED): Delete.
* config/mips/linux.h (ASM_DECLARE_FUNCTION_NAME): Delete.
(ASM_DECLARE_FUNCTION_SIZE, FUNCTION_NAME_ALREADY_DECLARED): Delete.
* config/mips/mips.c (mips_start_function_definition): New function.
(mips_end_function_definition): Likewise.
(mips_output_function_prologue): Use mips_start_function_definition.
(mips_output_function_epilogue): Use mips_end_function_definition.
(build_mips16_function_stub): Use mips_start_function_definition
and mips_end_function_definition.
(build_mips16_call_stub): Likewise.
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
From-SVN: r138908
Richard Guenther [Sat, 9 Aug 2008 17:28:39 +0000 (17:28 +0000)]
gimple.c (gimple_build_call_1): Deal with FUNCTION_DECL fn.
2008-08-09 Richard Guenther <rguenther@suse.de>
* gimple.c (gimple_build_call_1): Deal with FUNCTION_DECL fn.
* gimple.h (gimple_call_fn): Adjust comment.
(gimple_call_set_fndecl): New function.
(gimple_call_fndecl): Adjust for GIMPLE_CALL no
longer having bare FUNCTION_DECL operand.
(gimple_call_return_type): Likewise.
* tree-cfg.c (verify_stmt): Verify function operand of a GIMPLE_CALL.
* value-prof.c (gimple_divmod_fixed_value): Do not emit labels.
(gimple_mod_pow2): Likewise.
(gimple_mod_subtract): Likewise.
(gimple_ic): Likewise.
(gimple_stringop_fixed_value): Likewise.
(gimple_indirect_call_to_profile): Fix for GIMPLE_CALL no
longer having bare FUNCTION_DECL operand.
* ipa-cp.c (ipcp_update_callgraph): Use gimple_call_set_fndecl.
* omp-low.c (optimize_omp_library_calls): Likewise.
* cgraphunit.c (update_call_expr): Likewise.
* tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise.
(execute_convert_to_rsqrt): Likewise.
* cfgexpand.c (gimple_to_tree): Simplify.
(release_stmt_tree): Fix for GIMPLE_CALL no longer having
bare FUNCTION_DECL operand.
* tree-nested.c (init_tmp_var_with_call): Use gimple_call_return_type.
(convert_gimple_call): Use gimple_call_fndecl.
* c-common.c (c_warn_unused_result): Likewise.
* gcc.dg/tree-ssa/inline-2.c: New testcase.
From-SVN: r138907
Paolo Carlini [Sat, 9 Aug 2008 15:58:52 +0000 (15:58 +0000)]
Revert fix for libstdc++/35637, thanks to other/36901.
2008-08-09 Paolo Carlini <paolo.carlini@oracle.com>
Revert fix for libstdc++/35637, thanks to other/36901.
* include/tr1_impl/type_traits (__is_function_helper): New, uses
variadic templates.
(is_function): Forward to the latter.
(__in_array): Remove.
From-SVN: r138906
Paolo Carlini [Sat, 9 Aug 2008 15:02:30 +0000 (15:02 +0000)]
ctype_members.cc: Include <cstdio>.
2008-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* config/locale/darwin/ctype_members.cc: Include <cstdio>.
From-SVN: r138905
Manuel López-Ibáñez [Sat, 9 Aug 2008 12:37:32 +0000 (12:37 +0000)]
re PR c++/17880 (-Wsequence-point doesn't warn inside if, while, do conditions, for beg/cond/end expressions etc.)
2008-08-09 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c/17880
* c-typeck.c (digest_init): Call verify_sequence_points from here.
(c_finish_return): Likewise.
(c_start_case): Likewise.
* c-common.c (warn_for_collisions_1): Use explicit location in
warning.
* c-parser.c (c_parser_condition): New. Call
verify_sequence_points.
(c_parser_paren_condition): Call c_parser_condition.
(c_parser_for_statement): Call c_parser_condition.
testsuite/
* gcc.dg/sequence-pt-pr17880.c: New.
From-SVN: r138904
Manuel López-Ibáñez [Sat, 9 Aug 2008 09:37:57 +0000 (09:37 +0000)]
misc.c (gnat_handle_option): Replace set_Wunused by warn_unused.
2008-08-09 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
ada/
* gcc-interface/misc.c (gnat_handle_option): Replace set_Wunused
by warn_unused.
From-SVN: r138903
Manuel López-Ibáñez [Sat, 9 Aug 2008 00:30:41 +0000 (00:30 +0000)]
re PR c++/12242 (g++ should warn about out-of-range int->enum conversions)
2008-08-09 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c++/12242
cp/
* cvt.c (ocp_convert): Warn for out-of-range conversions to enum.
testsuite/
* g++.dg/warn/pr12242.C: New.
From-SVN: r138898
GCC Administrator [Sat, 9 Aug 2008 00:16:37 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r138896
Manuel López-Ibáñez [Fri, 8 Aug 2008 23:57:19 +0000 (23:57 +0000)]
re PR other/36901 (pedwarn() + -pedantic-errors + -w (inhibit_warnings) should not emit errors)
2008-08-09 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 36901
* diagnostic.def (DK_PEDWARN, DK_PERMERROR): New.
* diagnostic.c (pedantic_warning_kind, permissive_error_kind):
Moved from diagnostic.h
(diagnostic_report_diagnostic): Return bool. Handle DK_PEDWARN and
DK_PERMERROR.
(emit_diagnostic): New.
(warning0, pedwarn0): Delete.
(warning, warning_at, pedwarn, permerror): Return bool.
* diagnostic.h (pedantic_warning_kind, permissive_error_kind):
Moved to diagnostic.c.
(struct diagnostic_context): Use correct type for
classify_diagnostic.
(diagnostic_report_diagnostic): Update declaration.
(emit_diagnostic): Declare.
* errors.c (warning): Return bool.
* errors.h (warning): Update declaration.
* toplev.h (warning0, pedwarn0): Delete.
(warning, warning_at, pedwarn, permerror): Return bool.
* c-errors.c (pedwarn_c99, pedwarn_c90): Use DK_PEDWARN.
* c-decl.c (locate_old_decl): Delete 'diag' argument. Always use
inform. Update all calls.
(diagnose_mismatched_decls): Check return value of warning/pedwarn
before giving informative note.
(implicit_decl_warning): Likewise.
* c-typeck.c (build_function_call): Likewise.
* tree-sssa.c (warn_uninit): Likewise.
* builtins.c (gimplify_va_arg_expr): Likewise.
fortran/
* f95-lang.c (gfc_mark_addressable): Use "pedwarn (0," instead of
'pedwarn0'.
cp/
* cp-tree.h (struct diagnostic_context, struct diagnostic_info):
Delete forward declarations. Check that toplev.h has not been
included before this file. Include toplev.h and diagnostic.h.
* error.c (cp_cpp_error): Use DK_PEDWARN.
(cxx_incomplete_type_diagnostic): Update declaration.
(cxx_incomplete_type_error): Use DK_ERROR.
* typeck2.c (cxx_incomplete_type_diagnostic): Take a diagnostic_t
as argument. Use emit_diagnostic.
(cxx_incomplete_type_error): Use DK_ERROR.
(add_exception_specifier): Use diagnostic_t instead of custom
codes.
* typeck.c (complete_type_or_else): Update call to
cxx_incomplete_type_diagnostic.
* init.c (build_delete): Likewise.
* call.c (diagnostic_fn_t): Remove unused typedef.
(build_temp): Pass a pointer to diagnostic_t.
(convert_like_real): Use emit_diagnostic.
(joust): Check return value of warning before giving informative
note.
* friend.c (do_friend): Check return value of warning
before giving informative note.
* parser.c (cp_parser_template_id): Likewise.
testsuite/
* gcc.dg/pr36901-1.c: New.
* gcc.dg/pr36901-3.c: New.
* gcc.dg/pr36901-2.c: New.
* gcc.dg/pr36901-4.c: New.
* gcc.dg/pr36901-system.h: New.
* gcc.dg/pr36901.h: New.
* gcc.target/powerpc/altivec-macros.c: Update.
* gcc.target/i386/regparm.c: Update.
* gcc.dg/funcdef-var-1.c: Update.
* gcc.dg/parm-mismatch-1.c: Update.
* gcc.dg/attr-noinline.c: Update.
* gcc.dg/wtr-static-1.c: Update.
* gcc.dg/redecl-11.c: Update.
* gcc.dg/pr27953.c: Update.
* gcc.dg/proto-1.c: Update.
* gcc.dg/decl-3.c: Update.
* gcc.dg/redecl-13.c: Update.
* gcc.dg/pr15360-1.c: Update.
* gcc.dg/redecl-15.c: Update.
* gcc.dg/enum-compat-1.c: Update.
* gcc.dg/dll-3.c: Update.
* gcc.dg/array-5.c: Update.
* gcc.dg/Wredundant-decls-2.c: Update.
* gcc.dg/inline4.c: Update.
* gcc.dg/redecl-2.c: Update.
* gcc.dg/inline-14.c: Update.
* gcc.dg/tls/diag-3.c: Update.
* gcc.dg/funcdef-var-2.c: Update.
* gcc.dg/
20041213-1.c: Update.
* gcc.dg/old-style-then-proto-1.c: Update.
* gcc.dg/decl-2.c: Update.
* gcc.dg/redecl-12.c: Update.
* gcc.dg/decl-4.c: Update.
* gcc.dg/Wshadow-1.c: Update.
* gcc.dg/transparent-union-2.c: Update.
* gcc.dg/visibility-7.c: Update.
* gcc.dg/dll-2.c: Update.
* gcc.dg/redecl-16.c: Update.
* gcc.dg/inline1.c: Update.
* gcc.dg/decl-8.c: Update.
* gcc.dg/nested-redef-1.c: Update.
* gcc.dg/inline3.c: Update.
* gcc.dg/redecl-1.c: Update.
* gcc.dg/inline5.c: Update.
* gcc.dg/pr35899.c: Update.
* gcc.dg/noncompile/label-lineno-1.c: Update.
* gcc.dg/noncompile/label-1.c: Update.
* gcc.dg/noncompile/
20020220-1.c: Update.
* gcc.dg/noncompile/redecl-1.c: Update.
* gcc.dg/redecl-5.c: Update.
* gcc.dg/qual-return-3.c: Update.
* gcc.dg/label-decl-4.c: Update.
From-SVN: r138893
Manuel López-Ibáñez [Fri, 8 Aug 2008 23:32:23 +0000 (23:32 +0000)]
re PR middle-end/7651 (Define -Wextra strictly in terms of other warning flags)
2008-08-09 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 7651
* doc/invoke.texi (-Wextra): Move warning from here...
(-Wuninitialized): ... to here.
cp/
* class.c (check_bases_and_members): Warn with -Wuninitialized
instead of -Wextra.
testsuite/
* g++.dg/warn/Wuninitializable-member.C: New.
* g++.dg/warn/Wuninitializable-member-no.C: New.
From-SVN: r138892
Paul Thomas [Fri, 8 Aug 2008 23:22:51 +0000 (23:22 +0000)]
re PR fortran/37011 (F2003, type extension: multiple inheritence not rejected)
2008-08-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/37011
* symbol.c (gfc_add_extension): New function.
* decl.c (gfc_get_type_attr_spec): Call it.
(gfc_match_derived_decl): Set symbol extension attribute from
attr.extension.
* gfortran.h : Add prototype for gfc_add_extension.
From-SVN: r138891
Manuel López-Ibáñez [Fri, 8 Aug 2008 23:15:31 +0000 (23:15 +0000)]
re PR c/28875 ("-Wextra -Wno-unused-parameter -Wall" doesn't work as expected)
2008-08-08 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 28875
* flags.h (set_Wunused): Delete
* toplev.c (process_options): Handle Wunused flags here.
* opts.c (maybe_warn_unused_parameter): Delete.
(common_handle_option): Replace set_Wunused by warn_unused.
(set_Wextra): Do not handle Wunused-parameter here.
(set_Wunused): Delete.
* c-opts.c (c_common_handle_option): Replace set_Wunused by
warn_unused.
* common.opt (Wunused): Add Var and Init.
(Wunused-function): Likewise.
(Wunused-label): Likewise.
(Wunused-parameter): Likewise.
(Wunused-value): Likewise.
(Wunused-variable): Likewise.
fortran/
* options.c (set_Wall): Replace set_Wunused by warn_unused.
java/
* lang.c (java_handle_option): Replace set_Wunused with
warn_unused.
testsuite/
* gcc.dg/unused-6-no.c: New.
* gcc.dg/unused-6-WallWextra.c: New.
From-SVN: r138890
Peter Bergner [Fri, 8 Aug 2008 21:40:18 +0000 (16:40 -0500)]
invoke.texi: Add cpu_type power7.
2008-08-08 Peter Bergner <bergner@vnet.ibm.com>
* doc/invoke.texi: Add cpu_type power7.
* config.in (HAVE_AS_VSX): New.
* config.gcc: Add cpu_type power7.
* configure.ac (HAVE_AS_VSX): Check for assembler support of the
VSX instructions.
* configure: Regenerate.
* config/rs6000/rs6000.c (rs6000_override_options): Alias power7 to
power5.
* config/rs6000/rs6000.h (ASM_CPU_POWER7_SPEC): Define.
(ASM_CPU_SPEC): Pass %(asm_cpu_power7) for -mcpu=power7.
(EXTRA_SPECS): Add asm_cpu_power7 spec string.
From-SVN: r138887
Volker Reichelt [Fri, 8 Aug 2008 21:17:54 +0000 (21:17 +0000)]
re PR c++/35985 (ICE with pointer to member function as base)
PR c++/35985
* decl.c (xref_basetypes): Check base for MAYBE_CLASS_TYPE_P,
and make sure it is not a union.
* g++.dg/inherit/base3.C: New.
From-SVN: r138886
Dorit Nuzman [Fri, 8 Aug 2008 19:00:36 +0000 (19:00 +0000)]
tree-vect-transform.c (vectorizable_conversion): Pass the integral type to vectorize.builtin_conversion.
2008-08-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vectorizable_conversion): Pass the integral
type to vectorize.builtin_conversion.
(vectorizable_conversion): Likewise.
* config/i386/i386.c (ix86_vectorize_builtin_conversion): Always takes
integral type as input.
* config/rs6000/rs6000.c (rs6000_builtin_conversion): Add case for
FIX_TRUNC_EXPR.
(rs6000_expand_builtin): Add case for ALTIVEC_BUILTIN_VCTUXS
and ALTIVEC_BUILTIN_VCTSXS.
(rs6000_builtin_mul_widen_even. rs6000_builtin_mul_widen_odd): Fix
formatting.
From-SVN: r138885
Daniel Kraft [Fri, 8 Aug 2008 18:19:46 +0000 (20:19 +0200)]
gfortran.h (gfc_finalizer): Replaced member `procedure' by two new members `proc_sym' and `proc_tree' to...
2008-08-08 Daniel Kraft <d@domob.eu>
* gfortran.h (gfc_finalizer): Replaced member `procedure' by two
new members `proc_sym' and `proc_tree' to store the symtree after
resolution.
(gfc_find_sym_in_symtree): Made public.
* decl.c (gfc_match_final_decl): Adapted for new member name.
* interface.c (gfc_find_sym_in_symtree): Made public.
(gfc_extend_expr), (gfc_extend_assign): Changed call accordingly.
* module.c (mio_finalizer), (mio_f2k_derived), (mio_full_f2k_derived):
New methods for module-file IO of f2k_derived.
(mio_symbol): Do IO of f2k_derived namespace.
* resolve.c (gfc_resolve_finalizers): Adapted for new member name and
finding the symtree for the symbol here.
* symbol.c (gfc_free_finalizer): Adapted for new members.
2008-08-08 Daniel Kraft <d@domob.eu>
* gfortran.dg/finalize_9.f03: New test.
* gfortran.dg/module_md5_1.f90: Adapted MD5-sum for changed module
file format.
From-SVN: r138884
Richard Guenther [Fri, 8 Aug 2008 15:01:05 +0000 (15:01 +0000)]
tree-ssa-ccp.c (likely_value): Calls are not all varying.
2008-08-08 Richard Guenther <rguenther@suse.de>
* tree-ssa-ccp.c (likely_value): Calls are not all varying.
(surely_varying_stmt_p): Calls are varying only if they are
non-builtin and not indirect or have no result.
(ccp_fold): Re-instantiate code before the tuples merge.
* gcc.dg/tree-ssa/ssa-ccp-20.c: New testcase.
From-SVN: r138882
Ed Schonberg [Fri, 8 Aug 2008 13:09:37 +0000 (13:09 +0000)]
freeze.adb (Generate_Prim_Op_References): New procedure, abstracted from Freeze_Entity.
2008-08-08 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Generate_Prim_Op_References): New procedure, abstracted
from Freeze_Entity. Used to generate cross-reference information for
types declared in generic packages.
From-SVN: r138881
Thomas Quinot [Fri, 8 Aug 2008 13:03:37 +0000 (13:03 +0000)]
Makefile.in: Reintroduce g-soccon.ads as a compatibility shim.
2008-08-08 Thomas Quinot <quinot@adacore.com>
* gcc-interface/Makefile.in: Reintroduce g-soccon.ads as a
compatibility shim.
From-SVN: r138880
Arnaud Charlet [Fri, 8 Aug 2008 13:00:00 +0000 (15:00 +0200)]
gnat_ugn.texi: The "Run-Time Checks" section said "arithmetic overflow checking for integer...
2008-08-08 Bob Duff <duff@adacore.com>
* gnat_ugn.texi: The "Run-Time Checks" section said "arithmetic overflow
checking for integer operations (including division by zero)", which
is wrong -- divide by zero is not part of overflow checking.
Also added misc clarification about what check-suppression means.
* gnat_rm.texi: Clarify the meaning of pragma Suppress.
From-SVN: r138879
Robert Dewar [Fri, 8 Aug 2008 12:59:38 +0000 (14:59 +0200)]
s-strxdr.adb: Minor reformatting
2008-08-08 Robert Dewar <dewar@adacore.com>
* s-strxdr.adb: Minor reformatting
From-SVN: r138878
Thomas Quinot [Fri, 8 Aug 2008 12:59:28 +0000 (14:59 +0200)]
g-soccon.ads: New file.
2008-08-08 Thomas Quinot <quinot@adacore.com>
* g-soccon.ads: New file.
* g-stheme.adb, g-socthi-vms.adb, g-socthi-vxworks.adb,
g-socthi-mingw.adb, g-sttsne-vxworks.adb, g-socthi.adb,
g-stsifd-sockets.adb, g-socket.adb, g-socket.ads,
g-sothco.adb, g-sothco.ads: Add back GNAT.Sockets.Constants as a child
unit, to allow building software that depends on this internal unit
with both older and newer compilers.
From-SVN: r138877
Thomas Quinot [Fri, 8 Aug 2008 12:59:14 +0000 (14:59 +0200)]
s-osinte-hpux.ads, [...]: Minor reformatting
2008-08-08 Thomas Quinot <quinot@adacore.com>
* s-osinte-hpux.ads, s-osinte-irix.ads: Minor reformatting
From-SVN: r138876
Thomas Quinot [Fri, 8 Aug 2008 12:58:46 +0000 (14:58 +0200)]
s-osinte-freebsd.ads: Minor reformatting
2008-08-08 Thomas Quinot <quinot@adacore.com>
* s-osinte-freebsd.ads: Minor reformatting
From-SVN: r138875
Thomas Quinot [Fri, 8 Aug 2008 12:58:36 +0000 (14:58 +0200)]
gsocket.h: On Windows...
2008-08-08 Thomas Quinot <quinot@adacore.com>
* gsocket.h:
On Windows, include <errno.h> and redefine only selected errno values
from their <winsock2.h> definitions.
From-SVN: r138874
Thomas Quinot [Fri, 8 Aug 2008 12:37:51 +0000 (14:37 +0200)]
2008-08-08 Thomas Quinot <quinot@adacore.com>
* g-sercom.ads:
(Name): Document application scope (only legacy PC serial ports on
Linux and Windows).
From-SVN: r138873
Thomas Quinot [Fri, 8 Aug 2008 12:23:48 +0000 (12:23 +0000)]
Makefile.in: generate s-oscons.ads again, previous change was unneeded.
2008-08-06 Thomas Quinot <quinot@adacore.com>
* Makefile.in: generate s-oscons.ads again, previous change was
unneeded.
From-SVN: r138872
Thomas Quinot [Fri, 8 Aug 2008 12:23:28 +0000 (12:23 +0000)]
Makefile.in, [...]: Revert previous change, not needed after all.
2008-08-08 Thomas Quinot <quinot@adacore.com>
* gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Revert
previous change, not needed after all.
From-SVN: r138871
Arnaud Charlet [Fri, 8 Aug 2008 12:22:51 +0000 (14:22 +0200)]
exp_ch4.adb (Expand_Allocator_Expression): add check if null exclusion indicator is present
2008-08-08 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb (Expand_Allocator_Expression): add check if null
exclusion indicator is present
From-SVN: r138870
Robert Dewar [Fri, 8 Aug 2008 12:22:26 +0000 (14:22 +0200)]
sem_attr.adb: Minor code reorganization (use Nkind_In) Minor reformatting
2008-08-08 Robert Dewar <dewar@adacore.com>
* sem_attr.adb: Minor code reorganization (use Nkind_In)
Minor reformatting
From-SVN: r138869
Robert Dewar [Fri, 8 Aug 2008 12:22:18 +0000 (14:22 +0200)]
s-fileio.adb: Minor reformatting
2008-08-08 Robert Dewar <dewar@adacore.com>
* s-fileio.adb: Minor reformatting
From-SVN: r138868
Robert Dewar [Fri, 8 Aug 2008 12:22:10 +0000 (14:22 +0200)]
g-comlin.ads: Minor reformatting
2008-08-08 Robert Dewar <dewar@adacore.com>
* g-comlin.ads: Minor reformatting
From-SVN: r138867
Robert Dewar [Fri, 8 Aug 2008 12:22:02 +0000 (14:22 +0200)]
g-comlin.adb: Minor code reorganization Minor reformatting
2008-08-08 Robert Dewar <dewar@adacore.com>
* g-comlin.adb: Minor code reorganization
Minor reformatting
From-SVN: r138866
Richard Guenther [Fri, 8 Aug 2008 11:30:13 +0000 (11:30 +0000)]
re PR tree-optimization/37056 (ICE in build2_stat, at tree.c:3257)
2008-08-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37056
* gimple.h (gimple_assign_rhs_class): New helper function.
* tree-ssa-loop-niter.c (get_val_for): Fix tuplification, handle
unary operations properly.
* gcc.c-torture/compile/pr37056.c: New testcase.
From-SVN: r138865
Jan Hubicka [Fri, 8 Aug 2008 10:09:37 +0000 (12:09 +0200)]
i386.h (ix86_size_cost): Declare.
* i386.h (ix86_size_cost): Declare.
(ix86_cur_cost): New function macro.
* i386.md (peepholes expanding size and splitters): Predicate by
optimize_insn_for_speed_p.
(peepholes reduce size and splitters): Predicate by
optimize_insn_for_size_p.
* i386.c (ix86_size_cost): Rename from ...
(size_cost): This one.
(override_options): Update.
(decide_alg): Likewise.
(ix86_expand_clear): Use RTL profile.
(ix86_pad_returns): Use RTL profile.
From-SVN: r138864
Jan Hubicka [Fri, 8 Aug 2008 10:04:51 +0000 (12:04 +0200)]
recog.c (split_all_insns): Set RTL profile
* recog.c (split_all_insns): Set RTL profile
(peephole2_optimize): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
* combine.c (combine_instructions): Likewise.
From-SVN: r138863
Paolo Carlini [Fri, 8 Aug 2008 09:54:09 +0000 (09:54 +0000)]
ios_base.h: Undef _IOS_BASE_SEEK_CUR and _IOS_BASE_SEEK_END at the end of the file.
2008-08-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/ios_base.h: Undef _IOS_BASE_SEEK_CUR and
_IOS_BASE_SEEK_END at the end of the file.
* include/bits/char_traits.h: Likewise for _CHAR_TRAITS_EOF.
From-SVN: r138862
Kaveh R. Ghazi [Fri, 8 Aug 2008 01:42:33 +0000 (01:42 +0000)]
c-common.c (c_common_reswords): Also warn about keyword "bool".
* c-common.c (c_common_reswords): Also warn about keyword "bool".
testsuite:
* gcc.dg/Wcxx-compat-2.c: Check for bool/_Bool.
From-SVN: r138859
GCC Administrator [Fri, 8 Aug 2008 00:16:46 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r138854
Bob Wilson [Thu, 7 Aug 2008 23:44:31 +0000 (23:44 +0000)]
xtensa.c (xtensa_copy_incoming_a7): Copy incoming value in a6 after the set_frame_ptr insn.
* config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Copy incoming value
in a6 after the set_frame_ptr insn.
From-SVN: r138851
Richard Henderson [Thu, 7 Aug 2008 20:06:36 +0000 (13:06 -0700)]
re PR target/37033 (Revision 138733 breaks -g vs -g0 for PCH)
PR debug/37033
* gcc.c (cpp_options): Pass along -g*.
From-SVN: r138850
Aaron W. LaFramboise [Thu, 7 Aug 2008 19:30:14 +0000 (13:30 -0600)]
pex-win32.c (argv_to_argc): New function.
2008-08-07 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
* pex-win32.c (argv_to_argc): New function.
(spawn_script): Duplicate argv before calling win32_spawn.
From-SVN: r138849
H.J. Lu [Thu, 7 Aug 2008 18:28:23 +0000 (11:28 -0700)]
semantics.c (finish_decltype_type): Initialize type.
2008-08-07 H.J. Lu <hongjiu.lu@intel.com>
* semantics.c (finish_decltype_type): Initialize type.
From-SVN: r138848
Joseph Myers [Thu, 7 Aug 2008 16:58:29 +0000 (17:58 +0100)]
arm.c (output_move_neon): Update comment describing big-endian vector layout.
* config/arm/arm.c (output_move_neon): Update comment describing
big-endian vector layout.
(arm_assemble_integer): Do not handle big-endian NEON vectors
specially.
* config/arm/neon.md (vec_set<mode>_internal, vec_extract<mode>,
neon_vget_lane<mode>_sext_internal,
neon_vget_lane<mode>_zext_internal, neon_vget_lane<mode>): Adjust
element indices for big-endian.
From-SVN: r138847
Richard Henderson [Thu, 7 Aug 2008 16:29:22 +0000 (09:29 -0700)]
configure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): New.
* configure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): New.
* configure, config.in: Rebuild.
* debug.h (dwarf2out_do_cfi_asm): Declare.
* c-cppbuiltin.c (c_cpp_builtins): Use it.
* dwarf2out.c (dwarf2out_do_cfi_asm): New.
(dwarf2out_cfi_label, add_fde_cfi, output_call_frame_info,
dwarf2out_begin_prologue, dwarf2out_end_epilogue): Use it.
From-SVN: r138846
Joseph Myers [Thu, 7 Aug 2008 15:43:28 +0000 (16:43 +0100)]
iwmmxt.md (movv8qi_internal, [...]): Combine into mov<mode>_internal.
* config/arm/iwmmxt.md (movv8qi_internal, movv4hi_internal,
movv2si_internal): Combine into mov<mode>_internal.
(movv2si_internal_2): Remove.
From-SVN: r138844
Douglas Gregor [Thu, 7 Aug 2008 15:38:59 +0000 (15:38 +0000)]
semantics.c (finish_decltype_type): Handle calls to function pointers and references to functions properly.
2008-08-07 Douglas Gregor <doug.gregor@gmail.com>
* semantics.c (finish_decltype_type): Handle calls to function
pointers and references to functions properly.
2008-08-07 Douglas Gregor <doug.gregor@gmail.com>
* g++.dg/cpp0x/decltype12.C: New.
From-SVN: r138843
Stephen M. Webb [Thu, 7 Aug 2008 15:06:28 +0000 (15:06 +0000)]
* include/tr1_impl/regex (match_results): Add cbegin()/cend() per N2691 WD.
From-SVN: r138842
Jan Hubicka [Thu, 7 Aug 2008 14:55:32 +0000 (16:55 +0200)]
re PR target/37048 (Revision 138835 breaks bootstrap)
PR target/37048
* i386.md (single stringop patterns): Enable unconditionally.
From-SVN: r138841
Andrew Haley [Thu, 7 Aug 2008 14:19:15 +0000 (14:19 +0000)]
StackTrace2.java: Rewrite to prevent spurious failure when some methods are inlined.
2008-08-07 Andrew Haley <aph@redhat.com>
* testsuite/libjava.lang/StackTrace2.java: Rewrite to prevent
spurious failure when some methods are inlined.
From-SVN: r138840
H.J. Lu [Thu, 7 Aug 2008 13:16:23 +0000 (06:16 -0700)]
re PR target/36992 (Very stange code for _mm_move_epi64)
gcc/
2008-08-07 H.J. Lu <hongjiu.lu@intel.com>
PR target/36992
* config/i386/emmintrin.h (_mm_move_epi64): Use
__builtin_ia32_movq128.
* config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVQ128.
(bdesc_args): Add IX86_BUILTIN_MOVQ128.
* config/i386/sse.md (sse2_movq128): New.
* doc/extend.texi: Document __builtin_ia32_movq128.
gcc/testsuite/
2008-08-07 H.J. Lu <hongjiu.lu@intel.com>
PR target/36992
* gcc.target/i386/pr36992-1.c: Scan movq.
* gcc.target/i386/pr36992-2.c: Use "-O2 -msse4" instead of
"-O0 -msse2". Scan movq.
From-SVN: r138839
Richard Guenther [Thu, 7 Aug 2008 10:01:48 +0000 (10:01 +0000)]
re PR middle-end/37042 (Strict-aliasing warnings are printed for _mm_load_si128, even though __m128i is __attribute__((__may_alias__)).)
2008-08-07 Richard Guenther <rguenther@suse.de>
PR middle-end/37042
* tree-ssa-alias-warnings.c (nonstandard_alias_p): Ref-all
pointers can access anything.
* gcc.dg/Wstrict-aliasing-bogus-ref-all-2.c: New testcase.
From-SVN: r138837
Jan Hubicka [Thu, 7 Aug 2008 07:35:51 +0000 (09:35 +0200)]
optabs.c (emit_unop_insn): Break out to ...
* optabs.c (emit_unop_insn): Break out to ...
(maybe_emit_unop_insn): ... this one.
(expand_sfix_optab): Use maybe variant.
* optabs.h (maybe_emit_unop_insn): Declare.
* i386.md (mov0 patterns): Enable by default.
(FP conversion expanders): Disable expansion of code expanding
sequences when instruction should be optimized for size.
(single strinop patterns): Enable when optimizing for size.
(string expanders): Disable expanding of code expanding sequences
when optimizning instruction for size.
* i386.c (ix86_expand_vector_move_misalign): Do code size optimization
per BB basis.
(ix86_fp_comparison_sahf_cost): Likewise.
(ix86_expand_branch): Likewise.
(ix86_expand_ashl_const): Likewise.
(ix86_split_ashl): Likewise.
(ix86_expand_strlen): Likewise.
(ix86_emit_fp_unordered_jump): Likewie.
From-SVN: r138835
Andreas Krebbel [Thu, 7 Aug 2008 07:18:53 +0000 (07:18 +0000)]
20080806-1.c: Move testcase ...
2008-08-07 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.c-torture/compile/
20080806-1.c: Move testcase ...
* gcc.target/s390/
20080806-1.c: ... to here.
From-SVN: r138834
GCC Administrator [Thu, 7 Aug 2008 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r138832
Paolo Carlini [Wed, 6 Aug 2008 23:17:05 +0000 (23:17 +0000)]
acinclude.m4 ([GLIBCXX_CHECK_STDIO_MACROS]): New, checks for common values of EOF, SEEK_CUR, SEEK_END.
2008-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_CHECK_STDIO_MACROS]): New, checks for
common values of EOF, SEEK_CUR, SEEK_END.
* configure.ac: Use it.
* include/bits/ios_base.h: Likewise.
* include/bits/char_traits.h: Likewise.
* config/locale/gnu/ctype_members.cc: Include <cstdio>.
* config/locale/generic/ctype_members.cc: Likewise.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error lines.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
* configure: Regenerate.
* config.h.in: Likewise.
From-SVN: r138829
Douglas Gregor [Wed, 6 Aug 2008 19:08:12 +0000 (19:08 +0000)]
re PR c++/36460 (No space between >'s not always handled in C++0x)
2008-08-06 Douglas Gregor <doug.gregor@gmail.com>
PR c++/36460
* parser.c (cp_parser_template_argument): Don't assume that '>>'
following a type-id is an error when in C++0x mode.
2008-08-06 Douglas Gregor <doug.gregor@gmail.com>
PR c++/36460
* g++.dg/cpp0x/bracket3.C: Add another test case for the >>
warning under -Wc++0x-compat.
* g++.dg/cpp0x/bracket4.C: Add testcase for PR c++/36460.
From-SVN: r138819
Kaveh R. Ghazi [Wed, 6 Aug 2008 17:22:05 +0000 (17:22 +0000)]
matrix-reorg.c (compute_offset): Avoid C++ keywords.
* matrix-reorg.c (compute_offset): Avoid C++ keywords.
* c-common.c: Fix typo.
(c_common_reswords): Activate more C++ keyword warnings.
testsuite:
* gcc.dg/Wcxx-compat-2.c: Adjust test for more warnings.
From-SVN: r138817
Manuel López-Ibáñez [Wed, 6 Aug 2008 16:37:06 +0000 (16:37 +0000)]
re PR c++/26785 ("extra qualification" error gives line number of end of declaration)
2008-08-06 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 26785
* diagnostic.c (permerror_at): New.
* toplev.h (permerror_at): Declare.
cp/
* decl.c (grokdeclarator): Use explicit location with
permerror_at.
testsuite/
* g++.dg/warn/pr26785.C: New.
From-SVN: r138816
Victor Kaplansky [Wed, 6 Aug 2008 16:26:46 +0000 (16:26 +0000)]
tree-vect-transform.c (vect_model_simple_cost): Return immediately if stmt is pure SLP.
2008-08-06 Victor Kaplansky <victork@il.ibm.com>
Ira Rosen <irar@il.ibm.com>
* tree-vect-transform.c (vect_model_simple_cost): Return
immediately if stmt is pure SLP.
(vect_model_store_cost): Ditto.
(vect_model_load_cost): Ditto.
(vectorizable_store): Remove PURE_SLP check before call
to vect_model_store_cost.
(vect_model_store_cost): When checking whether stmt describe
strided access, add a check that it is not slp_node.
Testsute
* gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c: New test.
Co-Authored-By: Ira Rosen <irar@il.ibm.com>
From-SVN: r138815
Manuel López-Ibáñez [Wed, 6 Aug 2008 16:17:41 +0000 (16:17 +0000)]
re PR c++/8715 ('~' operator for unsigned char and conversion to bool)
2008-08-06 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 8715
* c-common.c (warn_for_sign_compare): New. Handle separately the
case that 'constant' is zero.
* c-typeck.c (build_binary_op): Move code to c-common.c
cp/
* typeck.c (cp_build_binary_op): Move code to c-common.c.
testsuite/
* gcc.dg/pr8715.c: New.
* g++.dg/warn/pr8715.C: New.
From-SVN: r138814
Kaveh R. Ghazi [Wed, 6 Aug 2008 16:12:51 +0000 (16:12 +0000)]
alpha.c (alpha_preferred_reload_class, [...]): Avoid C++ keywords.
* config/alpha/alpha.c (alpha_preferred_reload_class,
alpha_secondary_reload, alpha_emit_set_const_1, function_value,
alpha_output_mi_thunk_osf): Avoid C++ keywords.
* config/arm/arm.c (output_move_vfp, output_move_neon): Likewise.
* config/arm/arm.md: Likewise.
* config/avr/avr-protos.h (preferred_reload_class,
test_hard_reg_class, avr_simplify_comparison_p,
out_shift_with_cnt, class_max_nregs): Likewise.
* config/avr/avr.c (class_max_nregs, avr_simplify_comparison_p,
output_movqi, output_movhi, output_movsisf, out_shift_with_cnt,
preferred_reload_class, test_hard_reg_class): Likewise.
* config/bfin/bfin.c (legitimize_pic_address, hard_regno_mode_ok,
bfin_memory_move_cost, bfin_secondary_reload,
bfin_output_mi_thunk): Likewise.
* config/crx/crx.c (crx_secondary_reload_class,
crx_memory_move_cost): Likewise.
* config/frv/frv-protos.h (frv_secondary_reload_class,
frv_class_likely_spilled_p, frv_class_max_nregs): Likewise.
* config/frv/frv.c (frv_override_options, frv_alloc_temp_reg,
frv_secondary_reload_class, frv_class_likely_spilled_p,
frv_class_max_nregs): Likewise.
* config/h8300/h8300.c (h8300_classify_operand,
h8300_unary_length, h8300_bitfield_length, h8300_asm_insn_count):
Likewise.
* config/i386/winnt.c (i386_pe_declare_function_type): Likewise.
* config/ia64/ia64.c (ia64_preferred_reload_class,
ia64_secondary_reload_class, ia64_output_mi_thunk): Likewise.
* config/iq2000/iq2000.c (gen_int_relational): Likewise.
* config/m32c/m32c.c (class_can_hold_mode, m32c_output_compare):
Likewise.
* config/m68hc11/m68hc11.c (preferred_reload_class,
m68hc11_memory_move_cost): Likewise.
* config/mcore/mcore.c (mcore_secondary_reload_class,
mcore_reload_class): Likewise.
* config/mips/mips.c (mips_hard_regno_mode_ok_p,
mips_class_max_nregs, mips_cannot_change_mode_class,
mips_preferred_reload_class, mips_secondary_reload_class,
mips_output_mi_thunk): Likewise.
* config/mmix/mmix.c (mmix_preferred_reload_class,
mmix_preferred_output_reload_class, mmix_secondary_reload_class):
Likewise.
* config/mn10300/mn10300.c (mn10300_secondary_reload_class):
Likewise.
* config/pa/pa.c (pa_secondary_reload, pa_combine_instructions,
pa_can_combine_p, pa_cannot_change_mode_class): Likewise.
* config/pa/pa.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
* config/rs6000/rs6000.c (paired_expand_vector_init,
rs6000_secondary_reload_class, rs6000_output_mi_thunk,
compare_section_name, rs6000_memory_move_cost): Likewise.
* config/s390/s390.c (s390_emit_compare_and_swap,
s390_preferred_reload_class, s390_secondary_reload,
legitimize_pic_address, legitimize_tls_address,
legitimize_reload_address, s390_expand_cs_hqi, s390_expand_atomic,
s390_class_max_nregs): Likewise.
* config/s390/s390.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
* config/s390/s390.md: Likewise.
* config/score/score-protos.h (score_secondary_reload_class,
score_preferred_reload_class): Likewise.
* config/score/score.c (score_preferred_reload_class,
score_secondary_reload_class): Likewise.
* config/score/score3.c (score3_output_mi_thunk,
score3_preferred_reload_class, score3_secondary_reload_class,
score3_hard_regno_mode_ok): Likewise.
* config/score/score3.h (score3_preferred_reload_class,
score3_secondary_reload_class): Likewise.
* config/score/score7.c (score7_output_mi_thunk,
score7_preferred_reload_class, score7_secondary_reload_class,
score7_hard_regno_mode_ok): Likewise.
* config/score/score7.h (score7_preferred_reload_class,
score7_secondary_reload_class): Likewise.
* config/sh/sh.c (prepare_move_operands, output_far_jump,
output_branchy_insn, add_constant, gen_block_redirect,
sh_insn_length_adjustment, sh_cannot_change_mode_class,
sh_output_mi_thunk, replace_n_hard_rtx, sh_secondary_reload):
Likewise.
* config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
* config/stormy16/stormy16.c (xstormy16_output_cbranch_hi,
xstormy16_output_cbranch_si, xstormy16_secondary_reload_class,
xstormy16_preferred_reload_class): Likewise.
* config/xtensa/xtensa.c (xtensa_expand_compare_and_swap,
xtensa_expand_atomic, override_options,
xtensa_preferred_reload_class, xtensa_secondary_reload_class):
Likewise.
* reorg.c (try_merge_delay_insns): Likewise.
* tree.c (merge_dllimport_decl_attributes): Likewise.
* config/frv/frv.c (frv_print_operand): Change isalpha to ISALPHA.
From-SVN: r138813
Michael Matz [Wed, 6 Aug 2008 16:10:22 +0000 (16:10 +0000)]
Makefile.in (write_entries_to_file): Quote words.
* Makefile.in (write_entries_to_file): Quote words.
* gengtype.c: (read_input_line): Skip over leading white-space.
From-SVN: r138812
Bob Wilson [Wed, 6 Aug 2008 16:03:03 +0000 (16:03 +0000)]
config.host: Match more processor names for Xtensa.
libgcc/
* config.host: Match more processor names for Xtensa.
From-SVN: r138811
Marc Gauthier [Wed, 6 Aug 2008 16:02:16 +0000 (16:02 +0000)]
config.gcc: Match more processor names for Xtensa.
2008-08-06 Marc Gauthier <marc@tensilica.com>
* config.gcc: Match more processor names for Xtensa.
* configure.ac: Likewise.
* doc/install.texi (Specific): Likewise.
* configure: Regenerate.
testsuite/
* lib/target-supports.exp (check_profiling_available): Match more
processor names for Xtensa.
* g++.old-deja/g++.jason/thunk3.C: Likewise.
* gcc.dg/intmax_t-1.c: Likewise.
* gcc.dg/sibcall-3.c: Likewise.
* gcc.dg/sibcall-4.c: Likewise.
* gcc.c-torture/compile/
20001226-1.c: Likewise.
From-SVN: r138810
Kaveh R. Ghazi [Wed, 6 Aug 2008 15:57:09 +0000 (15:57 +0000)]
builtins.c (expand_builtin_profile_func): Avoid C++ keywords.
* builtins.c (expand_builtin_profile_func): Avoid C++ keywords.
* calls.c (avoid_likely_spilled_reg): Likewise.
* cfgexpand.c (gimple_assign_rhs_to_tree): Likewise.
* cgraph.c (cgraph_clone_edge, cgraph_clone_node): Likewise.
* config/i386/i386.c (ix86_expand_special_args_builtin,
ix86_secondary_reload): Likewise.
* except.c (struct eh_region, gen_eh_region_catch,
remove_unreachable_regions, duplicate_eh_regions,
assign_filter_values, build_post_landing_pads,
sjlj_find_directly_reachable_regions, remove_eh_handler,
reachable_next_level, foreach_reachable_handler,
can_throw_internal_1, can_throw_external_1,
collect_one_action_chain): Likewise.
* expr.c (expand_expr_real_1, vector_mode_valid_p): Likewise.
* fold-const.c (twoval_comparison_p, eval_subst): Likewise.
* function.c (update_temp_slot_address, instantiate_new_reg,
instantiate_virtual_regs_in_rtx,
instantiate_virtual_regs_in_insn): Likewise.
* gimple.c (extract_ops_from_tree, gimple_seq_copy): Likewise.
* gimplify.c (gimplify_call_expr, gimplify_init_constructor,
gimplify_cleanup_point_expr): Likewise.
* ipa-cp.c (ipcp_lattice_changed): Likewise.
* passes.c (next_pass_1): Likewise.
* print-tree.c (print_node_brief, print_node): Likewise.
* profile.c (branch_prob): Likewise.
* tree-dump.c (dump_register): Likewise.
* tree-eh.c (replace_goto_queue_cond_clause, lower_catch):
Likewise.
* tree-inline.c (remap_ssa_name, remap_type_1, remap_blocks,
copy_statement_list, remap_gimple_op_r, copy_tree_body_r,
copy_edges_for_bb, copy_cfg_body, copy_tree_r,
copy_arguments_for_versioning, copy_static_chain): Likewise.
* tree-into-ssa.c (names_replaced_by, add_to_repl_tbl,
add_new_name_mapping, register_new_name_mapping): Likewise.
* tree-mudflap.c (mf_xform_derefs): Likewise.
* tree-predcom.c (struct chain, dump_chain, replace_ref_with,
get_init_expr, combine_chains): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
* tree-ssa-structalias.c (create_variable_info_for): Likewise.
* tree-vrp.c (simplify_cond_using_ranges): Likewise.
* tree.c (substitute_in_expr, iterative_hash_expr): Likewise.
* value-prof.c (gimple_duplicate_stmt_histograms): Likewise.
From-SVN: r138809
H.J. Lu [Wed, 6 Aug 2008 15:43:46 +0000 (15:43 +0000)]
re PR middle-end/37010 (-mno-accumulate-outgoing-args doesn't work with stack alignment)
gcc/
2008-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/37010
* calls.c (expand_call): Use the biggest preferred stack
boundary.
gcc/testsuite/
2008-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/37010
* gcc.dg/torture/stackalign/push-1.c: New.
From-SVN: r138808
Michael Matz [Wed, 6 Aug 2008 15:34:45 +0000 (15:34 +0000)]
re PR target/36613 (likely codegen bug)
PR target/36613
* reload.c (push_reload): Merge in,out,in_reg,out_reg members
for reused reload, instead of overwriting them.
* gcc.target/i386/pr36613.c: New testcase.
From-SVN: r138807
H.J. Lu [Wed, 6 Aug 2008 15:29:37 +0000 (08:29 -0700)]
re PR middle-end/37009 (No need to align stack when incoming stack is aligned)
gcc/
2008-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/37009
* cfgexpand.c (expand_stack_alignment): Check parm_stack_boundary
for incoming stack boundary.
* function.c (assign_parm_find_entry_rtl): Update
parm_stack_boundary.
* function.h (rtl_data): Add parm_stack_boundary.
* config/i386/i386.c (ix86_finalize_stack_realign_flags): Check
parm_stack_boundary for incoming stack boundary.
gcc/testsuite/
2008-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/37009
* gcc.dg/torture/stackalign/alloca-2.c: New.
* gcc.dg/torture/stackalign/alloca-3.c: Likewise.
* gcc.dg/torture/stackalign/alloca-4.c: Likewise.
* gcc.dg/torture/stackalign/vararg-3.c: Likewise.
* gcc.target/i386/incoming-1.c: Likewise.
* gcc.target/i386/incoming-2.c: Likewise.
* gcc.target/i386/incoming-3.c: Likewise.
* gcc.target/i386/incoming-4.c: Likewise.
* gcc.target/i386/incoming-5.c: Likewise.
From-SVN: r138806
Joseph Myers [Wed, 6 Aug 2008 15:20:14 +0000 (16:20 +0100)]
jump.c (rtx_renumbered_equal_p): Do not call subreg_regno_offset for unrepresentable subregs or treat them as...
* jump.c (rtx_renumbered_equal_p): Do not call subreg_regno_offset
for unrepresentable subregs or treat them as equal to other regs
or subregs with the same register number.
From-SVN: r138804
Samuel Tardieu [Wed, 6 Aug 2008 13:55:07 +0000 (13:55 +0000)]
Make-lang.in: Use GCC_FOR_TARGET when dealing with s-oscons-tmplt.i.
gcc/ada/
* gcc-interface/Make-lang.in: Use GCC_FOR_TARGET when dealing
with s-oscons-tmplt.i.
libada/
* Makefile.in: Pass FLAGS_TO_PASS to sub-make for target
oscons.
From-SVN: r138800
Samuel Tardieu [Wed, 6 Aug 2008 13:54:31 +0000 (13:54 +0000)]
Make-lang.in (OSCONS_CPPFLAGS): Remove.
gcc/ada/
* gcc-interface/Make-lang.in (OSCONS_CPPFLAGS): Remove.
From-SVN: r138799
Paolo Carlini [Wed, 6 Aug 2008 12:25:00 +0000 (12:25 +0000)]
acinclude.m4 ([GLIBCXX_CHECK_INT64_T]): Also check whether int64_t is actually a typedef to long or long long.
2008-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_CHECK_INT64_T]): Also check whether int64_t
is actually a typedef to long or long long.
* include/bits/postypes.h: If int64_t is actually a typedef for
long or long long don't include <stdint.h> unnecessarily.
* configure: Regenerate.
* config.h.in: Likewise.
From-SVN: r138797
Aldy Hernandez [Wed, 6 Aug 2008 10:25:22 +0000 (10:25 +0000)]
re PR middle-end/35432 (ICE with zero-sized array)
PR middle-end/35432
* gimplify.c (gimplify_modify_expr): Do not optimize zero-sized types
if want_value.
testsuite/
* gcc.c-torture/compile/pr35432.c: New file.
From-SVN: r138793
Arnaud Charlet [Wed, 6 Aug 2008 10:08:09 +0000 (12:08 +0200)]
Makefile.in, [...]: Remove GNAT.Sockets.Constants.
2008-08-06 Thomas Quinot <quinot@adacore.com>
* gcc-interface/Makefile.in,
g-socthi-vxworks.adb, g-socthi-mingw.adb, g-sttsne-vxworks.adb,
g-socthi.adb, g-socket.adb, g-socket.ads, g-sothco.ads,
g-soccon-linux-x86.ads, g-soccon-vxworks.ads, g-soccon-mingw.ads,
g-soccon-hpux-ia64.ads, g-soccon-irix.ads, g-soccon-linux-64.ads,
g-soccon-aix.ads, g-soccon-solaris.ads, g-soccon-lynxos.ads,
g-soccon-vms.ads, g-soccon.ads, g-soccon-freebsd.ads,
g-soccon-linux-ppc.ads, g-soccon-tru64.ads, g-soccon-hpux.ads,
g-soccon-solaris-64.ads, gen-oscons.c, g-soccon-darwin.ads,
g-soccon-mingw-64.ads, g-soccon-linux-mips.ads, g-soccon-rtems.ads:
Remove GNAT.Sockets.Constants. This internal package is replaced by
System.OS_Constants.
From-SVN: r138792
Robert Dewar [Wed, 6 Aug 2008 10:03:52 +0000 (12:03 +0200)]
gnat_ugn.texi: Clarify -gnato documentation
2008-08-06 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Clarify -gnato documentation
From-SVN: r138791
Ed Schonberg [Wed, 6 Aug 2008 10:03:21 +0000 (12:03 +0200)]
sem_ch3.adb (Analyze_Component_Declaration): Protect against misuse of incomplete type.
2008-08-06 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Analyze_Component_Declaration): Protect against misuse
of incomplete type.
* sem_ch8.adb (Analyze_Object_Renaming): Diagnose properly a renaming
of a formal parameter of an incomplete type. Improve error message for
other improper uses of incomplete types.
From-SVN: r138790
Thomas Quinot [Wed, 6 Aug 2008 09:43:33 +0000 (09:43 +0000)]
Makefile.in: Now generate s-oscons-$(THREAD_KIND).
2008-08-06 Thomas Quinot <quinot@adacore.com>
* Makefile.in: Now generate s-oscons-$(THREAD_KIND).
From-SVN: r138789
Thomas Quinot [Wed, 6 Aug 2008 09:43:10 +0000 (11:43 +0200)]
Makefile.in, [...]: Remove obsolete targets referencing gen-soccon When generating s-oscons.ads...
2008-08-06 Thomas Quinot <quinot@adacore.com>
* gcc-interface/Makefile.in, gcc-interface/Make-lang.in:
Remove obsolete targets referencing gen-soccon
When generating s-oscons.ads, use a file name that includes the
THREAD_KIND, to ensure that the (potentially different) version from a
previous build with a different threads flavour does not get reused.
From-SVN: r138788
Thomas Quinot [Wed, 6 Aug 2008 09:42:31 +0000 (11:42 +0200)]
Makefile.in, [...]: Remove obsolete targets referencing gen-soccon When generating s-oscons.ads...
2008-08-06 Thomas Quinot <quinot@adacore.com>
* gcc-interface/Makefile.in, gcc-interface/Make-lang.in:
Remove obsolete targets referencing gen-soccon
When generating s-oscons.ads, use a file name that includes the
THREAD_KIND, to ensure that the (potentially different) version from a
previous build with a different threads flavour does not get reused.
From-SVN: r138787
Arnaud Charlet [Wed, 6 Aug 2008 09:41:04 +0000 (11:41 +0200)]
s-fileio.adb (Open): When file open operation fails...
2008-08-06 Thomas Quinot <quinot@adacore.com>
* s-fileio.adb (Open): When file open operation fails, raise Name_Error
only when the operating system reports a non-existing file or directory
(ENOENT), otherwise raise Name_Error.
From-SVN: r138786
Thomas Quinot [Wed, 6 Aug 2008 09:35:27 +0000 (11:35 +0200)]
exp_ch11.adb: Minor reformatting
2008-08-06 Thomas Quinot <quinot@adacore.com>
* exp_ch11.adb: Minor reformatting
From-SVN: r138785
Ed Schonberg [Wed, 6 Aug 2008 09:35:17 +0000 (11:35 +0200)]
sem_ch3.adb (Access_Subprogram_Declaration): If the return type is incomplete...
2008-08-06 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Access_Subprogram_Declaration): If the return type is
incomplete, add the access_to_subprogram type to the list of private
dependents only if the incomplete type will be completed in the current
scope.
(Build_Discriminant_Constraints): If the type of the discriminant is
access_to_variable, reject a constraint that is access_to_constant.
From-SVN: r138784
Thomas Quinot [Wed, 6 Aug 2008 09:35:06 +0000 (11:35 +0200)]
sem_res.adb: Minor reformatting
2008-08-06 Thomas Quinot <quinot@adacore.com>
* sem_res.adb: Minor reformatting
From-SVN: r138783
Arnaud Charlet [Wed, 6 Aug 2008 09:16:07 +0000 (09:16 +0000)]
New tests.
From-SVN: r138782
Arnaud Charlet [Wed, 6 Aug 2008 08:57:21 +0000 (10:57 +0200)]
g-socket-dummy.adb, [...]: New files.
2008-08-06 Thomas Quinot <quinot@adacore.com>
* g-socket-dummy.adb, g-socket-dummy.ads, g-sothco-dummy.adb,
g-sothco-dummy.ads, g-socthi-dummy.adb, g-socthi-dummy.ads,
g-sttsne-dummy.ads: New files.
* gcc-interface/Makefile.in, Makefile.rtl: Use placeholder sources
with pragma Unimplemented_Unit for sockets packages on Nucleus.
From-SVN: r138781
Jerome Lambourg [Wed, 6 Aug 2008 08:52:44 +0000 (10:52 +0200)]
g-comlin.adb (Set_Command_Line): Now that aliases can contain parameters, always specify the expected separator.
2008-08-06 Jerome Lambourg <lambourg@adacore.com>
* g-comlin.adb (Set_Command_Line): Now that aliases can contain
parameters, always specify the expected separator.
From-SVN: r138780
Ed Schonberg [Wed, 6 Aug 2008 08:52:36 +0000 (10:52 +0200)]
sem_res.adb (Resolve_Call): Use base type to determine whether a dereference is needed because a subtype of...
2008-08-06 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Resolve_Call): Use base type to determine whether a
dereference is needed because a subtype of an access_to_subprogram is
simply an access-subtype
From-SVN: r138779
Javier Miranda [Wed, 6 Aug 2008 08:52:28 +0000 (10:52 +0200)]
exp_disp (Expand_Interface_Actuals): Adds missing support for expansion of calls to subprograms using selected...
2008-08-06 Javier Miranda <miranda@adacore.com>
* exp_disp (Expand_Interface_Actuals): Adds missing support for
expansion of calls to subprograms using selected components.
From-SVN: r138778
Pascal Obry [Wed, 6 Aug 2008 08:52:19 +0000 (10:52 +0200)]
adaint.c: Another fix for ACL support on Windows.
2008-08-06 Pascal Obry <obry@adacore.com>
* adaint.c: Another fix for ACL support on Windows.
From-SVN: r138777
Thomas Quinot [Wed, 6 Aug 2008 08:52:10 +0000 (10:52 +0200)]
sem_ch3.adb: Minor reformatting
2008-08-06 Thomas Quinot <quinot@adacore.com>
* sem_ch3.adb: Minor reformatting
From-SVN: r138776
Arnaud Charlet [Wed, 6 Aug 2008 08:33:21 +0000 (10:33 +0200)]
g-comlin.adb (Define_Switch, [...]): New.
2008-08-06 Jerome Lambourg <lambourg@adacore.com>
* g-comlin.adb (Define_Switch, Get_Switches): New.
(Can_Have_Parameter, Require_Parameter, Actual_Switch): New, used when
ungrouping switches.
(For_Each_Simple_Switch): Allow more control over parameters handling.
This generic method now allows ungrouping of switches with parameters
and switches with more than one letter after the prefix.
(Set_Command_Line): Take care of switches that are prefixed with a
switch handling parameters without delimiter (-gnatya and -gnaty3 for
example).
(Add_Switch, Remove_Switch): Handle parameters possibly present inside
a group, as in gnaty3aM80 (3 and 80 are parameters). Report status of
the operation.
(Start, Alias_Switches, Group_Switches): Take care of parameters
possibly present inside a group.
* g-comlin.ads (Define_Switch): New method used to define a list of
expected switches, that are necessary for correctly ungrouping switches
with more that one character after the prefix.
(Get_Switches): Method that builds a getopt string from the list of
switches as set previously by Define_Switch.
(Add_Switch, Remove_Switch): New versions of the methods, reporting the
status of the operation. Also allow the removal of switches with
parameters only.
(Command_Line_Configuration_Record): Maintain a list of expected
switches.
From-SVN: r138775
Thomas Quinot [Wed, 6 Aug 2008 08:32:52 +0000 (10:32 +0200)]
sem.adb: Minor rewording (comment)
2008-08-06 Thomas Quinot <quinot@adacore.com>
* sem.adb: Minor rewording (comment)
From-SVN: r138774
Ed Schonberg [Wed, 6 Aug 2008 08:32:42 +0000 (10:32 +0200)]
sem_ch3.adb (Find_Type_Name): protect against duplicate incomplete declaration for the same type.
2008-08-06 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Find_Type_Name): protect against duplicate incomplete
declaration for the same type.
From-SVN: r138773
Ed Schonberg [Wed, 6 Aug 2008 08:32:32 +0000 (10:32 +0200)]
g-awk.adb (Finalize): Do not use directly objects of the type in the finalization routine to prevent...
2008-08-06 Ed Schonberg <schonberg@adacore.com>
* g-awk.adb (Finalize): Do not use directly objects of the type in the
finalization routine to prevent elaboration order anomalies in new
finalization scheme.
From-SVN: r138772
Quentin Ochem [Wed, 6 Aug 2008 08:32:09 +0000 (10:32 +0200)]
s-stausa.adb (Fill_Stack): Fixed pragma assert and top pattern mark in the case of an empty pattern size.
2008-08-06 Quentin Ochem <ochem@adacore.com>
* s-stausa.adb (Fill_Stack): Fixed pragma assert and top pattern mark
in the case of an empty pattern size.
(Compute_Result): Do not do any computation in the case of an empty
pattern size.
(Report_Result): Fixed computation of the overflow guard.
From-SVN: r138771
Vincent Celier [Wed, 6 Aug 2008 08:32:00 +0000 (10:32 +0200)]
gnat_ugn.texi: Document compiler switch -gnateG
2008-08-06 Vincent Celier <celier@adacore.com>
* gnat_ugn.texi: Document compiler switch -gnateG
From-SVN: r138770
Thomas Quinot [Wed, 6 Aug 2008 08:31:51 +0000 (10:31 +0200)]
xnmake.adb: Use new XUtil package for platform independent text output.
2008-08-06 Thomas Quinot <quinot@adacore.com>
* xnmake.adb: Use new XUtil package for platform independent text
output.
From-SVN: r138769
Doug Rupp [Wed, 6 Aug 2008 08:07:32 +0000 (08:07 +0000)]
decl.c (gnat_to_gnu_param): Force 32bit descriptor if TARGET_MALLOC64 clear.
2008-08-06 Doug Rupp <rupp@adacore.com>
* gcc-interface/decl.c (gnat_to_gnu_param): Force 32bit descriptor if
TARGET_MALLOC64 clear.
* gcc-interface/utils2.c (build_call_alloc_dealloc): Force 32bit malloc
if TARGET_MALLOC64 clear.
* gcc-interface/gigi.h (TARGET_ABI_OPEN_VMS): Move here from utils2.c
(TARGET_MALLC64): New macro. Default to clear.
From-SVN: r138768