Richard Henderson [Tue, 10 Aug 2010 14:50:34 +0000 (07:50 -0700)]
i386.c (ix86_compute_frame_layout): Re-align stack after saving registers.
* config/i386/i386.c (ix86_compute_frame_layout): Re-align stack
after saving registers. Assert that SSE registers are only saved
with a sufficiently aligned frame.
(ix86_emit_save_reg_using_mov): Assert realigned only with DRAP;
remove stack_realign_fp handling.
(ix86_expand_prologue): Save int registers before stack_realign_fp,
and do not mark the stack alignment as frame related.
(ix86_expand_epilogue): SP is now invalid with stack_realign_fp.
* dwarf2out.c (dwarf2out_frame_debug_expr): Flush queued register
saves when re-aligning the stack.
From-SVN: r163068
Robert Dewar [Tue, 10 Aug 2010 14:34:24 +0000 (14:34 +0000)]
sem_ch8.adb, [...]: Change name Write_Scopes to ws.
2010-08-10 Robert Dewar <dewar@adacore.com>
* sem_ch8.adb, sem_ch8.ads: Change name Write_Scopes to ws.
* sem_util.adb: Minor reformatting.
From-SVN: r163067
Nathan Froyd [Tue, 10 Aug 2010 14:31:52 +0000 (14:31 +0000)]
basic-block.h (alloc_aux_for_block, [...]): Delete.
* basic-block.h (alloc_aux_for_block, alloc_aux_for_edge): Delete.
* cfg.c (alloc_aux_for_block, alloc_aux_for_edge): Make static.
(alloc_aux_for_blocks, clear_aux_for_blocks): Use FOR_ALL_BB.
From-SVN: r163066
Javier Miranda [Tue, 10 Aug 2010 14:29:36 +0000 (14:29 +0000)]
sem_aggr.adb (Resolve_Extension_Aggregate): Warn on the use of C++ constructors that leave the object partially initialized.
2010-08-10 Javier Miranda <miranda@adacore.com>
* sem_aggr.adb (Resolve_Extension_Aggregate): Warn on the use of C++
constructors that leave the object partially initialized.
* exp_atag.ads, exp_atags.adb (Build_Inherit_CPP_Prims): New subprogram
that copies from parent of Typ the dispatch table slots of inherited
C++ primitives. It handles primary and secondary dispatch tables.
* einfo.adb (Related_Type): Moved from Node26 to Node27. Required to
use this attribute with E_Variable entities.
(Set_Is_Tag): Relax assertion to allow its use with variables that
store tags.
(Set_Related_Type): Relax assertion to allow its use with variables
that store the tag of a C++ class.
(Write_26_Field_Name): Remove Related_Type.
(Write_27_Field_Name): Add Related_Type.
* einfo.ads (Related_Type): Moved from Node26 to Node27. Available also
with E_Variable entities.
* sem_prag.adb (CPP_Constructor): Warn on duplicated occurrence of this
pragma.
* sem_util.adb (Search_Tag): Add missing support for CPP types.
(Enclosing_CPP_Parent): New subprogram.
(Has_Suffix): New subprogram.
* sem_util.ads (Enclosing_CPP_Parent): New subprogram that returns the
closest ancestor of a type that is a C++ type.
(Has_Suffix): New subprogram. Used in assertions to check the suffix of
internal entities.
* sem_attr.adb (Analyze_Access_Attribute): Check wrong use of current
instance in derivations of C++ types.
* exp_tss.adb (CPP_Init_Proc): New subprogram.
(Is_CPP_Init_Proc): New subprogram.
(Set_TSS): Handle new C++ init routines.
* exp_tss.ads (TSS_CPP_Init): New TSS name. For initialization of C++
dispatch tables.
(CPP_Init_Proc): New subprogram.
(Is_CPP_Init_Proc): New subprogram.
* exp_disp.adb (CPP_Num_Prims): New subprogram.
(Has_CPP_Constructors): New subprogram.
(Make_Secondary_DT, Make_DT): For derivations of CPP types, do not
initialize slots located in the C++ part of the dispatch table.
(Make_Tags): For CPP types declare variables used by the IP routine to
store the C++ tag values after the first invocation of the C++
constructor.
(Build_CPP_Init_DT): New subprogram.
(Set_CPP_Constructors): New implementation that builds an IP for each
CPP constructor. These IP are wrappers of the C++ constructors that,
after the first invocation of the constructor, read the C++ tags from
the object and save them locally. These copies of the C++ tags are used
by the IC routines to initialize tables of Ada derivations of CPP types.
(Write_DT): Indicate what primitives are imported from C++
* exp_disp.ads (CPP_Num_Prims): New subprogram.
(Has_CPP_Constructors): New subprogram.
* exp_aggr.adb (Build_Record_Aggr_Code): For derivations of C++ types
invoke the IC routine to inherit the slots of the parents.
* sem_ch13.adb (Analyze_Freeze_Entity): Add new warnings on CPP types.
* exp_ch3.adb (Is_Variable_Size_Array): New subprogram.
(Is_Variable_Size_Record): Factorize code calling
Is_Variable_Size_Array.
(Build_CPP_Init_Procedure): New subprogram that builds the tree
corresponding to the procedure that initializes the C++ part of the
dispatch table of an Ada tagged type that is a derivation of a CPP type.
(Build_Init_Procedure): Adding documentation plus code reorganization to
leave more clear the construction of the IP with C++ types.
(Expand_Freeze_Record_Type): Delay call to Set_CPP_Constructors because
it cannot be called after Make_Tags has been invoked.
(Inherit_CPP_Tag): Removed.
(Init_Secondary_Tags): For derivations of CPP types, warn on tags
located at variable offset.
* freeze.ads: Minor reformating.
* sem_ch8.adb (Write_Scopes): Add pragma export. Required to have it
available in gdb.
* gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r163065
Nathan Froyd [Tue, 10 Aug 2010 14:22:18 +0000 (14:22 +0000)]
* dwarf2out.c (struct die_struct): Move die_tag to the end.
From-SVN: r163064
Robert Dewar [Tue, 10 Aug 2010 13:50:53 +0000 (13:50 +0000)]
a-chahan.ads: Add comments on handling of obsolescent entries.
2010-08-10 Robert Dewar <dewar@adacore.com>
* a-chahan.ads: Add comments on handling of obsolescent entries.
* opt.ads: Add Ada_2005 and Ada_2012 renamings for versions.
* restrict.adb (Check_Obsolescent_2005_Entity): New procedure.
* restrict.ads (Check_Obsolescent_2005_Entity): New procedure.
* sem_attr.adb (Analyze_Access_Attribute): Call
Check_Obsolescent_2005_Entity to check for access to obsolescent
Ada.Characters.Handling subprogram.
(Analyze_Attribute, case Class): Applying Class to untagged incomplete
type is obsolescent in Ada 2005.
(Analyze_Attribute, case Constrained): Better placement of flag when
flagged as obsolescent feature.
(Analyze_Attribute, case Storage_Size): Use with tasks is obsolescent
* sem_ch10.adb (Analyze_With_Clause): With of renamings such as Text_IO
is an obsolescent feature.
* sem_ch11.adb (Analyze_Raise_Statement): Numeric_Error is obsolescent
feature.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Call
Check_Obsolescent_2005_Entity to check for renaming obsolete
Ada.Characters.Handling subprogram.
* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Check
for obsolescent restrictions in Ada 2005.
(Analyze_Pragma, case Suppress): Entity arg is obsolescent in Ada 2005
(Analyze_Pragma, case Interface): Interface is obsolescent in Ada 2005
* sem_res.adb (Resolve_Call): Call Check_Obsolescent_2005_Entity to
check for obsolescent references to Ada.Characters.Handling subprograms
2010-08-10 Robert Dewar <dewar@adacore.com>
* einfo.adb, einfo.ads: Fix bad -gnatdt output for incomplete type.
2010-08-10 Robert Dewar <dewar@adacore.com>
* errout.ads: Add VMS table entries for 2005, 12, 2012 switches
* par-ch4.adb: Change wording of Ada 2012 messages
* vms_data.ads: Add VMS entries for /2005, /12, /2012
From-SVN: r163063
Arnaud Charlet [Tue, 10 Aug 2010 13:43:01 +0000 (15:43 +0200)]
[multiple changes]
2010-08-10 Robert Dewar <dewar@adacore.com>
* a-suenco.adb (Convert): Fix bug in UTF-16 to UTF-8 conversion for
codes in the range 16#80#..16#7FF#.
* sem_ch10.adb: Minor reformatting.
2010-08-10 Arnaud Charlet <charlet@adacore.com>
* gnat1drv.adb (Scan_Front_End_Switches): Always perform semantics and
generate ali files in CodePeer mode, so that a gnatmake -c -k will
proceed further when possible
* freeze.adb (Freeze_Static_Object): Fix thinko. Do not generate error
messages when ignoring representation clauses (-gnatI).
2010-08-10 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb (Expand_N_Selected_Component): Do not attempt to
constant-fold discriminant reference if the constraint is an object
with non-static expression. Expression may contain volatile references
in the presence of renamings.
2010-08-10 Vincent Celier <celier@adacore.com>
* prj-proc.adb (Get_Attribute_Index): If Index is All_Other_Names,
returns Index.
* prj-strt.adb (Attribute_Reference): Recognize 'others' as a valid
index for an associative array where it is allowed.
From-SVN: r163060
Arnaud Charlet [Tue, 10 Aug 2010 13:37:59 +0000 (15:37 +0200)]
[multiple changes]
2010-08-10 Thomas Quinot <quinot@adacore.com>
* exp_attr.adb: Add comments.
2010-08-10 Jerome Lambourg <lambourg@adacore.com>
* adaint.c (__gnat_get_file_names_case_sensitive): return 0 on darwin.
From-SVN: r163059
Sofiane Naci [Tue, 10 Aug 2010 13:37:25 +0000 (13:37 +0000)]
iterators.md: New file.
2010-08-09 Sofiane Naci <sofiane.naci@arm.com>
* config/arm/iterators.md: New file.
* config/arm/arm.md: Include iterators.md.
(QHSI): Move to new file.
(LTUGEU, cnb, optab, ior_xor): Likewise.
* config/arm/iwmmxt.md (VMMX): Move to new file.
(VSHFT, MMX_char): Likewise.
* config/arm/neon.md (VD): Move to new file.
(VDX, VDI, VQ, VQX, VQI, VQXMOV, VSTRUCT, VTAB, V_TAB_n, VW): Likewise.
(VN, VDQ, VDQW, VDQIW, VCVTF, VCVTI, VMD, VMQ, VMDQ, VMDI): Likewise.
(VMDQI, VX, VE, V64, V32, V_CVTTO, V_elem, V_ext, V_two_elem): Likewise.
(V_three_elem, V_four_elem, V_req, V_widen, V_narrow, V_HALF): Likewise.
(V_half,V_DOUBLE, V_double, V_double_width, V_cmp_result): Likewise.
(V_if_elem, V_s_elem, V_u_elem, V_uf_sclr, V_sz_elem, VD_dup): Likewise.
(V_PAIR, vqh_ops, vqhs_ops, VQH_mnem, VQH_sign, V_suf64): Likewise.
(scalar_mul_constraint,Is_float_mode, Scalar_mul_8_16): Likewise.
(Is_d_reg, V_mode_nunits): Likewise.
* config/arm/vec-common.md (VALL): Move to new file.
(VALLW, VINT, VINTW): Likewise.
From-SVN: r163058
Bernd Schmidt [Tue, 10 Aug 2010 12:48:16 +0000 (12:48 +0000)]
re PR middle-end/45182 (Failed to build SPEC CPU 2000/2006)
PR middle-end/45182
* combine.c (make_compound_operation): Don't try to convert
shifts into multiplications for modes that aren't SCALAR_INT_MODE_P.
PR middle-end/45182
* gcc.c-torture/compile/pr45182.c: New test.
From-SVN: r163057
Paolo Carlini [Tue, 10 Aug 2010 11:28:23 +0000 (11:28 +0000)]
1.cc: Avoid -Wall warnings.
2010-08-10 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/ext/stdio_sync_filebuf/char/1.cc: Avoid -Wall
warnings.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
From-SVN: r163056
Paolo Carlini [Tue, 10 Aug 2010 10:28:47 +0000 (10:28 +0000)]
range_access.cc: Avoid -Wall warnings.
2010-08-10 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/23_containers/array/range_access.cc: Avoid -Wall
warnings.
From-SVN: r163054
Paolo Carlini [Tue, 10 Aug 2010 10:08:56 +0000 (10:08 +0000)]
cons_overflow_neg.cc: Avoid -Wall warnings.
2010-08-10 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Avoid -Wall
warnings.
* include/bits/shared_ptr.h (shared_ptr<>::shared_ptr
(const shared_ptr<>&), shared_ptr(shared_ptr<>&&), weak_ptr<>::
weak_ptr(const weak_ptr<>&), weak_ptr(const shared_ptr<>&)):
Constrain appropriately via std::is_convertible, etc.
* include/bits/shared_ptr_base.h: Likewise.
* include/bits/unique_ptr.h (default_delete<>::
default_delete(const default_delete<>&),
unique_ptr<>::unique_ptr(unique_ptr<>&&), operator=(unique_ptr<>&&)):
Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
line numbers.
* testsuite/20_util/shared_ptr/cons/43820.cc: Likewise.
* include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(auto_ptr<>&&)):
Add.
* include/std/memory: Adjust includes order.
* testsuite/20_util/unique_ptr/cons/auto_ptr.cc: New.
* testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Minor tweaks.
From-SVN: r163053
Richard Guenther [Tue, 10 Aug 2010 09:16:22 +0000 (09:16 +0000)]
tree.h (get_object_alignment): Adjust prototype.
2010-08-10 Richard Guenther <rguenther@suse.de>
* tree.h (get_object_alignment): Adjust prototype.
* builtins.c (get_object_alignment): Return unsigned int,
drop the align parameter. Handle MEM_REF, MISALIGNED_INDIRECT_REF
and TARGET_MEM_REF properly.
(get_pointer_alignment): Adjust.
* emit-rtl.c (get_mem_align_offset): Adjust comment.
(set_mem_attributes_minus_bitpos): Adjust.
* tree-ssa-ccp.c (get_value_from_alignment): Adjust.
From-SVN: r163051
Richard Guenther [Tue, 10 Aug 2010 09:13:37 +0000 (09:13 +0000)]
tree-ssa-copy.c (set_copy_of_val): Use operand_equal_p.
2010-08-10 Richard Guenther <rguenther@suse.de>
* tree-ssa-copy.c (set_copy_of_val): Use operand_equal_p.
(copy_prop_visit_assignment): Simplify.
(copy_prop_visit_stmt): Also visit assignments from
constants.
(copy_prop_visit_phi_node): Use operand_equal_p.
From-SVN: r163050
Paolo Carlini [Tue, 10 Aug 2010 07:17:44 +0000 (07:17 +0000)]
re PR libstdc++/45228 ([C++0x] Can't copy-construct "tuple<int,int,int>" from "const tuple<int,int,int>" rvalue)
2010-08-10 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/45228
* include/std/tuple (tuple<typename... _Elements>): Constrain
converting constructors and assignment operators with
sizeof...(_UElements) == sizeof...(_Elements).
(tuple(tuple<_UElements...>&): Remove.
(tuple<typename _T1>): Add.
* testsuite/20_util/tuple/cons/45228.cc: New.
* testsuite/20_util/tuple/cons/converting.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
dg-error line number.
* include/std/tuple (_Tuple_impl<>::_Tuple_impl(const _Tuple_impl&)):
Defaulted.
* include/std/tuple (tuple<typename _T1, typename _T2>
::operator=(pair<_U1, _U2>&&)): Use forward.
From-SVN: r163049
Nathan Froyd [Tue, 10 Aug 2010 03:00:37 +0000 (03:00 +0000)]
* ipa-split.c (find_split_points): Free stack.
From-SVN: r163048
Nathan Froyd [Tue, 10 Aug 2010 02:51:40 +0000 (02:51 +0000)]
tree.h (tree_node_kind): Delete.
* tree.h (tree_node_kind) [perm_list_kind,temp_list_kind]: Delete.
* tree.c (tree_node_kind): Delete corresponding entries.
From-SVN: r163047
GCC Administrator [Tue, 10 Aug 2010 00:17:01 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r163046
Jason Merrill [Mon, 9 Aug 2010 21:13:12 +0000 (17:13 -0400)]
re PR c++/45236 ([C++0x] Can't access nested type of a partial class specialization involving variadic parameters)
PR c++/45236
* pt.c (lookup_template_class): Don't re-coerce outer parms.
From-SVN: r163042
Thomas Koenig [Mon, 9 Aug 2010 19:34:49 +0000 (19:34 +0000)]
re PR fortran/44235 (array temporary with high upper bound)
2010-08-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/44235
* array.c (gfc_ref_dimen_size): Add end argument.
If end is non-NULL, calculate it.
(ref_size): Adjust call to gfc_ref_dimen_size.
(gfc_array_dimen_size): Likewise.
(gfc_array_res_shape): Likewise.
* gfortran.h: Adjust prototype for gfc_ref_dimen_size.
* resolve.c (resolve_array_ref): For stride not equal to -1,
fill in the lowest possible end.
2010-08-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/44235
* gfortran.dg/dependency_32.f90: New test.
From-SVN: r163041
Janus Weil [Mon, 9 Aug 2010 18:32:09 +0000 (20:32 +0200)]
intrinsic.texi: Correct documentation of ASINH, ACOSH and ATANH.
2010-08-09 Janus Weil <janus@gcc.gnu.org>
* intrinsic.texi: Correct documentation of ASINH, ACOSH and ATANH.
From-SVN: r163039
H.J. Lu [Mon, 9 Aug 2010 15:57:13 +0000 (15:57 +0000)]
Remove unused ret.
2010-08-09 H.J. Lu <hongjiu.lu@intel.com>
* alias.c (may_alias_p): Remove unused ret.
From-SVN: r163038
Bingfeng Mei [Mon, 9 Aug 2010 14:44:03 +0000 (14:44 +0000)]
ddg.c (walk_mems_2): Moved from alias.c, use may_alias_p instead of alias_sets_conflict_p.
2010-08-09 Bingfeng Mei <bmei@broadcom.com>
* ddg.c (walk_mems_2): Moved from alias.c, use may_alias_p instead of
alias_sets_conflict_p.
(walk_mems_1): Moved from alias.c.
(insns_may_alias_p): New function, originally insn_alias_sets_conflict_p
in alias.c.
(add_inter_loop_mem_dep): Use insns_may_alias_p now.
* cse.c (cse_insn): New argument in calling nonoverlapping_memrefs_p.
* alias.c (walk_mems_2): Moved to ddg.c.
(walk_mems_1): Ditto.
(insn_alias_sets_conflict_p): Renamed to insns_may_alias_p and moved
to ddg.c.
(nonoverlapping_memrefs_p): Add flag to guard offset-based memory
disambiguation.
*(may_alias_p): New function to check whether two memory expression
may alias or not. Currently used in buidling inter-iteration memory
dependence.
*alias.h (nonoverlapping_memrefs_p): New flag as third argument.
(insn_alias_sets_conflict_p): Removed
*rtl.h (may_alias_p): New function prototype.
From-SVN: r163037
Nathan Froyd [Mon, 9 Aug 2010 14:36:50 +0000 (14:36 +0000)]
tree.c (nreverse): Assert that we don't have a BLOCK.
gcc/
* tree.c (nreverse): Assert that we don't have a BLOCK.
gcc/ada/
* gcc-interface/utils.c (gnat_poplevel): Use blocks_nreverse.
From-SVN: r163036
Nathan Froyd [Mon, 9 Aug 2010 14:30:39 +0000 (14:30 +0000)]
call.c (add_builtin_candidates): Use VECs for local variable `types'.
* call.c (add_builtin_candidates): Use VECs for local variable
`types'. Adjust remainder of function accordingly.
From-SVN: r163035
Nathan Froyd [Mon, 9 Aug 2010 14:28:47 +0000 (14:28 +0000)]
name-lookup.c (is_associated_namespace): Convert local variables to be VECs instead of TREE_LISTs.
* name-lookup.c (is_associated_namespace): Convert local variables
to be VECs instead of TREE_LISTs.
From-SVN: r163034
Nathan Froyd [Mon, 9 Aug 2010 14:07:58 +0000 (14:07 +0000)]
builtins.c (fold_builtin_next_arg): Use stdarg_p.
gcc/
* builtins.c (fold_builtin_next_arg): Use stdarg_p.
* config/arm/arm.c (arm_get_pcs_model): Likewise.
* config/avr/avr.c (init_cumulative_args): Likewise.
* config/iq2000/iq2000.c (iq2000_expand_prologue): Likewise.
* config/lm32/lm32.c (lm32_setup_incoming_varargs): Likewise.
* config/m68k/m68k.c (m68k_return_pops_args): Likewise.
* config/mn10300/mn10300.c (mn10300_builtin_saveregs): Likewise.
* config/pa/pa.c (hppa_builtin_saveregs): Likewise.
* config/pa/som.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
* config/rs6000/rs6000.c (init_cumulative_args): Likewise.
* dwarf2out.c (gen_subprogram_die): Likewise.
* function.c (allocate_struct_function): Likewise.
* c-aux-info.c (gen_formal_list_for_func_dec): Likewise.
(deserves_ellipsis): Delete.
gcc/cp/
* tree.c (varargs_function_p): Use stdarg_p.
From-SVN: r163033
Richard Guenther [Mon, 9 Aug 2010 13:20:11 +0000 (13:20 +0000)]
tree-ssa-copy.c (cached_last_copy_of): Remove.
2010-08-07 Richard Guenther <rguenther@suse.de>
* tree-ssa-copy.c (cached_last_copy_of): Remove.
(valueize_val): New function.
(get_last_copy_of): Remove.
(set_copy_of_val): Simplify.
(dump_copy_of): Likewise.
(copy_prop_visit_cond_stmt): Use valueize_val.
(copy_prop_visit_phi_node): Properly handle unvisited names.
Drop code managing copy-of chains.
(init_copy_prop): Adjust.
(fini_copy_prop): Likewise.
(execute_copy_prop): Remove obsolete comment.
From-SVN: r163032
Richard Guenther [Mon, 9 Aug 2010 13:18:08 +0000 (13:18 +0000)]
re PR tree-optimization/44632 (wrong code for complex division)
2010-08-09 Richard Guenther <rguenther@suse.de>
PR middle-end/44632
* function.c (gimplify_parameters): Do not clear addressable
bit of the original parameter.
* g++.dg/opt/nrv17.C: New testcase.
From-SVN: r163031
Andreas Tobler [Mon, 9 Aug 2010 13:00:32 +0000 (15:00 +0200)]
configure.ac: Add target powerpc64-*-freebsd*.
2010-08-09 Andreas Tobler <andreast@fgznet.ch>
* configure.ac: Add target powerpc64-*-freebsd*.
* configure: Regenerate.
* testsuite/libffi.call/cls_align_longdouble_split.c: Pass
-mlong-double-128 only to linux targets.
* testsuite/libffi.call/cls_align_longdouble_split2.c: Likewise.
* testsuite/libffi.call/cls_longdouble.c: Likewise.
* testsuite/libffi.call/huge_struct.c: Likewise.
From-SVN: r163030
Richard Guenther [Mon, 9 Aug 2010 11:43:23 +0000 (11:43 +0000)]
re PR target/45212 (FAIL: gcc.target/alpha/pr24178.c scan-assembler ldl.*,18\\\\()
2010-08-09 Richard Guenther <rguenther@suse.de>
PR middle-end/45212
* emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust
alignment from MEM_REF offset only if we took it from the
base object.
* gcc.target/i386/pr24178.c: New testcase.
From-SVN: r163029
Eric Fisher [Mon, 9 Aug 2010 11:08:59 +0000 (11:08 +0000)]
* doc/sourcebuild.texi (vect_int_mult): Remove duplicate entry.
From-SVN: r163028
Eric Botcazou [Mon, 9 Aug 2010 06:35:09 +0000 (06:35 +0000)]
utils.c (build_vms_descriptor32): Fix formatting.
* gcc-interface/utils.c (build_vms_descriptor32): Fix formatting.
(build_vms_descriptor): Likewise.
From-SVN: r163027
Nathan Froyd [Mon, 9 Aug 2010 01:06:34 +0000 (01:06 +0000)]
utils.c (make_descriptor_field): Add tree parameter.
* gcc-interface/utils.c (make_descriptor_field): Add tree parameter.
(build_vms_descriptor32): Adjust calls to it for new parameter.
(build_vms_descriptor): Likewise.
From-SVN: r163026
Nathan Froyd [Mon, 9 Aug 2010 00:53:48 +0000 (00:53 +0000)]
* gcc-interface/decl.c (rec_variant). Declare. Declare a VEC of it.
(build_variant_list): Return a VEC instead of a tree. Take a
VEC instead of a tree.
(create_variant_part_from): Take a VEC instead of a tree for
variant_list. Adjust accordingly.
(gnat_to_gnu_entity): Adjust for changes to previous functions.
From-SVN: r163025
GCC Administrator [Mon, 9 Aug 2010 00:17:13 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r163024
Uros Bizjak [Sun, 8 Aug 2010 21:54:44 +0000 (23:54 +0200)]
20030107-1.c: Do not call cleanup-coverage-files.
* gcc.dg/
20030107-1.c: Do not call cleanup-coverage-files.
* gcc.dg/
20030702-1.c: Ditto.
* gcc.dg/
20050309-1.c: Ditto.
* gcc.dg/
20050325-1.c: Ditto.
* gcc.dg/
20050330-2.c: Ditto.
* gcc.dg/
20051201-1.c: Ditto.
* gcc.dg/gomp/pr27573.c: Ditto.
* gcc.dg/gomp/pr34610.c: Ditto.
* gcc.dg/pr24225.c: Ditto.
* gcc.dg/pr26570.c: Ditto.
* gcc.dg/pr32773.c: Ditto.
* g++.dg/gcov/gcov-6.C: Ditto.
* g++.dg/gomp/pr34608.C: Ditto.
* gfortran.dg/gomp/pr27573.f90: Ditto.
* gcc.dg/profile-dir-1.c: Do not call cleanup-coverage-files. Remove
dg-require-host-local dg directive.
* gcc.dg/profile-dir-2.c: Ditto.
* gcc.dg/profile-dir-3.c: Ditto.
From-SVN: r163020
Nathan Froyd [Sun, 8 Aug 2010 18:41:39 +0000 (18:41 +0000)]
c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
* c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
(maybe_apply_renaming_pragma): Delete unneeded declarations.
From-SVN: r163015
Nathan Froyd [Sun, 8 Aug 2010 17:44:53 +0000 (17:44 +0000)]
c-tree.h (build_arg_info): Declare.
* c-tree.h (build_arg_info): Declare.
* c-decl.c (build_arg_info): Define.
(get_parm_info): Call it. Delete initialization code.
* c-parser.c (c_parser_parms_declarator): Likewise.
(c_parser_parms_list_declaractor): Likewise.
From-SVN: r163014
Nathan Froyd [Sun, 8 Aug 2010 17:42:40 +0000 (17:42 +0000)]
c-tree.h (c_arg_tag): Define.
* c-tree.h (c_arg_tag): Define. Define a VEC containing it.
(struct c_arg_info): Change type of tags field.
* c-decl.c (grokdeclarator): Update for changed type of tags field.
(get_parm_info): Likewise.
(store_parm_decls_newstyle): Likewise.
From-SVN: r163013
Nathan Froyd [Sun, 8 Aug 2010 17:41:10 +0000 (17:41 +0000)]
c-pragma.c (pending_redefinition): Declare.
* c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
(pending_redefine_extname): Change type to a VEC.
(add_to_renaming_pragma_list): Update for new type of
pending_redefine_extname.
(maybe_apply_pending_pragma): Likewise.
From-SVN: r163012
Nathan Froyd [Sun, 8 Aug 2010 17:39:49 +0000 (17:39 +0000)]
rs6000.c (branch_island): Define.
* config/rs6000/rs6000.c (branch_island): Define. Define a VEC of it.
(branch_island_list): Delete.
(branch_islands): Declare.
(add_compiler_branch_island): Adjust for branch_islands instead of
branch_island_list.
(macho_branch_islands): Likewise.
(no_previous_def): Likewise.
(get_prev_label): Likewise.
From-SVN: r163011
Richard Guenther [Sun, 8 Aug 2010 15:45:22 +0000 (15:45 +0000)]
re PR tree-optimization/45109 (ICE: in get_constraint_for_component_ref, at tree-ssa-structalias.c:2932)
2010-08-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45109
* gcc.c-torture/compile/pr45109.c: New testcase.
From-SVN: r163007
John David Anglin [Sun, 8 Aug 2010 15:04:38 +0000 (15:04 +0000)]
re PR boehm-gc/34544 (pthread_default_stacksize_np failed.)
PR boehm-gc/34544
* gthr-posix.h (__gthread_start): Delete.
(__gthread_active_init): Use pthread_default_stacksize_np instead of
pthread_create to determine if hpux pthreads are active.
* gthr-posix95.h (__gthread_start): Delete.
(__gthread_active_init): Likewise use pthread_default_stacksize_np.
From-SVN: r163003
Paolo Carlini [Sun, 8 Aug 2010 14:54:51 +0000 (14:54 +0000)]
re PR libstdc++/44963 ([DR 1334] Ambiguous function overload using __gnu_cxx::crope with std::back_inserter in c++0x mode)
2010-08-08 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/44963
* include/bits/stl_iterator.h (insert_iterator<>::
operator=(const typename _Container::value_type&,
back_insert_iterator<>::
operator=(const typename _Container::value_type&),
front_insert_iterator<>::
operator=(const typename _Container::value_type&))): Add
in C++0x mode.
* testsuite/ext/rope/44963.cc: New.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
dg-error line number.
From-SVN: r163001
Uros Bizjak [Sun, 8 Aug 2010 12:09:46 +0000 (14:09 +0200)]
march.c: Skip if -march defined.
* gcc.dg/march.c: Skip if -march defined.
* gcc.dg/mtune.c: Skip if -mtune defined.
* g++.old-deja/g++.jason/thunk3.C: Skip for targets with
generic thunk support.
From-SVN: r162998
Paolo Carlini [Sun, 8 Aug 2010 10:07:16 +0000 (10:07 +0000)]
cmath: Implement US 136.
2010-08-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/c_global/cmath: Implement US 136.
* include/tr1_impl/cmath: Do not bring fpclassify, etc from namespace
std, define namespace tr1.
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++0x.cc: New.
From-SVN: r162995
Kai Tietz [Sun, 8 Aug 2010 07:30:08 +0000 (07:30 +0000)]
mingw32.h ((EXTRA_OS_CPP_BUILTINS): Define _WIN64 not expanded.
2010-08-08 Kai Tietz <kai.tietz@onevision.com>
* config/i386/mingw32.h ((EXTRA_OS_CPP_BUILTINS): Define
_WIN64 not expanded.
From-SVN: r162994
Nathan Froyd [Sun, 8 Aug 2010 02:16:06 +0000 (02:16 +0000)]
parser.c (cp_default_arg_entry): Declare.
* parser.c (cp_default_arg_entry): Declare. Declare a VEC of it.
(cp_unparsed_functions_entry): Declare. Declare a VEC of it.
(cp_parser) [unparsed_functions_queues]: Rename to unparsed_queues.
Change type to a VEC.
(unparsed_funs_with_default_args): Define.
(unparsed_funs_with_definitions): Define.
(push_unparsed_function_queues): New function.
(cp_parser_new): Call it.
(pop_unparsed_function_queues): New function.
(cp_parser_class_specifier): Adjust processing of unparsed functions.
(cp_parser_template_declaration_after_export): Use VEC_safe_push.
(cp_parser_save_member_function_body): Likewise.
(cp_parser_late_parsing_for_member): Call push_unparsed_function_queues
and pop_unparsed_function_queues.
(cp_parser_late_parsing_default_args): Likewise.
(cp_parser_save_default_args): Use VEC_safe_push.
From-SVN: r162992
Nathan Froyd [Sun, 8 Aug 2010 02:14:07 +0000 (02:14 +0000)]
name-lookup.h (cp_label_binding): Declare.
* name-lookup.h (cp_label_binding): Declare. Declare a VEC type
containing it.
(cp_binding_level): Convert shadowed_labels and dead_vars_from_for
fields to VECs.
* decl.c (poplevel): Adjust for type changes.
(declare_local_label): Likewise.
From-SVN: r162991
GCC Administrator [Sun, 8 Aug 2010 00:17:03 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162989
Nathan Froyd [Sat, 7 Aug 2010 21:12:32 +0000 (21:12 +0000)]
decl.c (gnat_to_gnu_entity): Use XALLOCAVEC instead of alloca.
* gcc-interface/decl.c (gnat_to_gnu_entity): Use XALLOCAVEC instead
of alloca.
(components_to_record): Likewise.
* gcc-interface/trans.c (gnat_to_gnu): Likewise.
* gcc-interface/utils.c (max_size): Likewise.
(build_vms_descriptor32): Likewise.
(build_vms_descriptor): Likewise.
From-SVN: r162985
Nathan Froyd [Sat, 7 Aug 2010 21:10:45 +0000 (21:10 +0000)]
interface.c (compare_actual_formal): Use XALLOCAVEC instead of alloca.
* interface.c (compare_actual_formal): Use XALLOCAVEC instead of
alloca.
(check_some_aliasing): Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_conversion): Likewise.
(gfc_conv_intrinsic_int): Likewise.
(gfc_conv_intrinsic_lib_function): Likewise.
(gfc_conv_intrinsic_cmplx): Likewise.
(gfc_conv_intrinsic_ctime): Likewise.
(gfc_conv_intrinsic_fdate): Likewise.
(gfc_conv_intrinsic_ttynam): Likewise.
(gfc_conv_intrinsic_minmax): Likewise.
(gfc_conv_intrinsic_minmax_char): Likewise.
(gfc_conv_intrinsic_ishftc): Likewise.
(gfc_conv_intrinsic_index_scan_verify): Likewise.
(gfc_conv_intrinsic_merge): Likewise.
(gfc_conv_intrinsic_trim): Likewise.
* trans.c (gfc_trans_runtime_error_vararg): Likewise.
From-SVN: r162984
Uros Bizjak [Sat, 7 Aug 2010 20:32:30 +0000 (22:32 +0200)]
re PR target/45213 ("suffix or operands invalid for `push'" triggered by optimisations on x86_64)
PR target/45213
* config/i386/i386.c (ix86_print_operand): Handle 'q' operand modifier
to output 32bit SFmode immediate as 8 byte sign extended value.
testsuite/ChangeLog:
PR target/45213
* gcc.target/i386/pr45213.c: New test.
From-SVN: r162983
Jerry DeLisle [Sat, 7 Aug 2010 12:10:25 +0000 (12:10 +0000)]
re PR fortran/45143 ([F2008,corrig1] Endless loop with unlimited edit descriptor)
2010-08-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45143
* gfortran.dg/fmt_error_11.f03: New test.
From-SVN: r162979
Jerry DeLisle [Sat, 7 Aug 2010 12:03:23 +0000 (12:03 +0000)]
re PR fortran/45143 ([F2008,corrig1] Endless loop with unlimited edit descriptor)
2010-08-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45143
* io/format.c: Remove fnode storage structure definitions, moving these
to format.h. (parse_format_list): Add check for data descriptors,
taking care of nested formats. Adjust calling parameters to pass a
check flag. (parse_format): Likewise.
* io/format.h: Add structures moved from format.c.
From-SVN: r162978
Marcus Shawcroft [Sat, 7 Aug 2010 09:31:14 +0000 (09:31 +0000)]
By ramana for Marcus Shawcroft.
2010-08-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
* config/arm/linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with
'unsigned short' and 'unsigned char' instead of 'short' and 'char'.
(SUBWORD_BOOL_CAS): Likewise.
(SUBWORD_SYNC_OP): Likewise.
(SUBWORD_TEST_AND_SET): Likewise.
(FETCH_AND_OP_WORD): Parenthesise INF_OP
(SUBWORD_SYNC_OP): Likewise.
(OP_AND_FETCH_WORD): Likewise.
* lib/target-supports.exp (check_effective_target_sync_int_long):
Add arm*-*-linux-gnueabi.
(check_effective_target_sync_char_short): Likewise.
From-SVN: r162977
Ramana Radhakrishnan [Sat, 7 Aug 2010 09:20:41 +0000 (09:20 +0000)]
Cortex A9 VFP Pipeline description.
2010-08-07 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/cortex-a9.md: Rewrite VFP Pipeline description.
* config/arm/arm.c (arm_xscale_tune): Initialize sched_adjust_cost.
(arm_fastmul_tune,arm_slowmul_tune, arm_9e_tune): Likewise.
(arm_adjust_cost): Split into xscale_sched_adjust_cost and a
generic part.
(cortex_a9_sched_adjust_cost): New function.
(xscale_sched_adjust_cost): New function.
* config/arm/arm-protos.h (struct tune_params): New field
sched_adjust_cost.
* config/arm/arm-cores.def: Adjust costs for cortex-a9.
From-SVN: r162976
Nathan Froyd [Sat, 7 Aug 2010 04:26:26 +0000 (04:26 +0000)]
decl.c (subst_pair): Declare.
* gcc-interface/decl.c (subst_pair): Declare. Declare a VEC of it.
(build_subst_list): Return a VEC instead of a tree.
(build_variant_list): Take a VEC for subst_list. Adjust
accordingly.
(create_field_decl_from): Likewise.
(create_variant_part_from): Likewise.
(copy_and_substitute_in_size): Likewise.
(gnat_to_gnu_entity): Adjust for new interface to build_subst_list.
Free the built vector.
From-SVN: r162975
GCC Administrator [Sat, 7 Aug 2010 00:17:14 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162973
Eric Botcazou [Fri, 6 Aug 2010 23:22:52 +0000 (23:22 +0000)]
re PR target/44942 (Bug in argument passing of long double)
PR target/44942
* config/sparc/sparc.c (function_arg_advance): Always take into account
the padding, if any.
From-SVN: r162967
Thomas Koenig [Fri, 6 Aug 2010 22:33:37 +0000 (22:33 +0000)]
re PR fortran/45159 (Unnecessary temporaries)
2010-08-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45159
* dependency.c (check_section_vs_section): Handle cases where
the start expression coincides with the lower or upper
bound of the array.
2010-08-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45159
* gfortran.dg/dependency_31.f90: New test.
From-SVN: r162966
David Malcolm [Fri, 6 Aug 2010 20:43:04 +0000 (20:43 +0000)]
hook.in: Rename variable dir to dir_.
libstdc++-v3/
* python/hook.in: Rename variable dir to dir_.
Co-Authored-By: Jan Kratochvil <jan.kratochvil@redhat.com>
From-SVN: r162962
Dan Witte [Fri, 6 Aug 2010 20:05:33 +0000 (20:05 +0000)]
Remove warnings
From-SVN: r162959
Anthony Green [Fri, 6 Aug 2010 20:02:41 +0000 (20:02 +0000)]
Add missing commit from patch earlier today
From-SVN: r162958
Thomas Koenig [Fri, 6 Aug 2010 19:54:34 +0000 (19:54 +0000)]
dependency_30.f90: Fix incorrect dg-do line.
2010-08-06 Thomas Koenig <tkoenig@gcc.gnu.org>
* gfortran.dg/dependency_30.f90: Fix incorrect dg-do line.
From-SVN: r162957
Jason Merrill [Fri, 6 Aug 2010 19:41:23 +0000 (15:41 -0400)]
* include/std/thread: Add deleted thread(thread&).
From-SVN: r162954
Jason Merrill [Fri, 6 Aug 2010 19:35:01 +0000 (15:35 -0400)]
typeck.c (complete_type_or_maybe_complain): Split out from...
* typeck.c (complete_type_or_maybe_complain): Split out from...
(complete_type_or_else): Here.
(build_class_member_access_expr): Call it.
(finish_class_member_access_expr): Likewise.
* call.c (build_special_member_call): Likewise.
* cvt.c (build_expr_type_conversion): Likewise.
* init.c (build_new): Likewise.
* typeck2.c (build_functional_cast): Likewise.
* cp-tree.h: Declare it.
* init.c (build_value_init): Add complain parm.
(build_value_init_noctor): Likewise.
(perform_member_init): Pass it.
(expand_aggr_init_1): Likewise.
(build_new_1): Likewise.
(build_vec_init): Likewise.
* pt.c (tsubst_expr): Likewise.
* typeck2.c (build_functional_cast): Likewise.
* cp-tree.h: Adjust.
* tree.c (build_target_expr_with_type): Handle error_mark_node.
From-SVN: r162953
Jason Merrill [Fri, 6 Aug 2010 19:34:49 +0000 (15:34 -0400)]
typeck.c (decay_conversion): Any expression with type nullptr_t decays to nullptr.
* typeck.c (decay_conversion): Any expression with type nullptr_t
decays to nullptr.
From-SVN: r162952
Paolo Carlini [Fri, 6 Aug 2010 14:46:08 +0000 (14:46 +0000)]
tuple (pack_arguments): Rename to forward_as_tuple and simplify, per US 98 and US 99.
2010-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple (pack_arguments): Rename to forward_as_tuple
and simplify, per US 98 and US 99.
* testsuite/20_util/tuple/creation_functions/pack_arguments.cc:
Rename to...
* testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
... this, adjust.
* testsuite/20_util/pair/piecewise.cc: Adjust.
From-SVN: r162948
Eric Botcazou [Fri, 6 Aug 2010 12:58:04 +0000 (12:58 +0000)]
decl.c (gnat_to_gnu_entity): Do not build an allocator for large imported objects.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not build an
allocator for large imported objects.
From-SVN: r162947
Dan Witte [Fri, 6 Aug 2010 12:36:26 +0000 (12:36 +0000)]
Add OS/2 Support
Co-Authored-By: Walter Meinl <wuno@lsvw.de>
From-SVN: r162946
Dan Horák [Fri, 6 Aug 2010 12:26:52 +0000 (14:26 +0200)]
Define libffi macros carefully
From-SVN: r162945
Richard Guenther [Fri, 6 Aug 2010 11:47:31 +0000 (11:47 +0000)]
tree-ssa-ccp.c (struct prop_value_d): Add mask member.
2010-08-06 Richard Guenther <rguenther@suse.de>
* tree-ssa-ccp.c (struct prop_value_d): Add mask member.
(dump_lattice_value): Dump it.
(get_default_value): Adjust.
(get_constant_value): Likewise.
(set_value_varying): Likewise.
(set_lattice_value): Make sure to not go up the lattice
with bitwise constant values.
(get_value_for_expr): Handle ADDR_EXPRs.
(value_to_double_int): New function.
(get_value_from_alignment): Likewise.
(do_dbg_cnt): Adjust.
(ccp_lattice_meet): Handle partially constant values.
(bit_value_unop_1): New function.
(bit_value_binop_1): Likewise.
(bit_value_unop): Likewise.
(bit_value_binop): Likewise.
(evaluate_stmt): Track partially constant values if
flag_tree_bit_ccp is set.
(ccp_fold_stmt): Dump if we folded a predicate.
(ccp_visit_stmt): Adjust.
* common.opt (ftree-bit-ccp): New flag.
* doc/invoke.texi (ftree-bit-ccp): Document.
* opts.c (decode_options): Enable bit-CCP at -O1.
* gcc.dg/tree-ssa/ssa-dce-3.c: XFAIL.
* gcc.dg/tree-ssa/pr23744.c: Disable CCP.
* gcc.dg/tree-ssa/pr25382.c: Likewise.
* gcc.dg/tree-ssa/ssa-ccp-30.c: New testcase.
* gcc.dg/tree-ssa/ssa-ccp-31.c: Likewise.
* gcc.dg/tree-ssa/ssa-ccp-32.c: Likewise.
* gcc.dg/tree-ssa/ssa-ccp-33.c: Likewise.
* gcc.c-torture/execute/
20100805-1.c: Likewise.
From-SVN: r162943
Paolo Carlini [Fri, 6 Aug 2010 11:28:50 +0000 (11:28 +0000)]
tuple (begin, end): Remove per GB 87.
2010-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple (begin, end): Remove per GB 87.
* testsuite/20_util/tuple/range_access.cc: Remove.
From-SVN: r162942
Paolo Carlini [Fri, 6 Aug 2010 08:58:27 +0000 (08:58 +0000)]
ratio (ratio_less): Improve, use ratio_divide to avoid more overflows.
2010-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/ratio (ratio_less): Improve, use ratio_divide to avoid
more overflows.
* testsuite/20_util/ratio/comparisons/comp1.cc: Extend.
* testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
From-SVN: r162941
Michael Kohler [Fri, 6 Aug 2010 05:45:23 +0000 (05:45 +0000)]
Fix spelling errors
From-SVN: r162938
Evan Phoenix [Fri, 6 Aug 2010 05:40:15 +0000 (05:40 +0000)]
Fix SELinux test
From-SVN: r162937
Matthias Klose [Fri, 6 Aug 2010 05:28:37 +0000 (05:28 +0000)]
Improve libffi comments
From-SVN: r162936
Anthony Green [Fri, 6 Aug 2010 05:24:11 +0000 (05:24 +0000)]
Enable build with microsoft compiler
From-SVN: r162935
Oliver Kiddle [Fri, 6 Aug 2010 04:55:25 +0000 (04:55 +0000)]
Enable build with sun compiler
From-SVN: r162933
Conrad Irwin [Fri, 6 Aug 2010 04:45:46 +0000 (04:45 +0000)]
Add closure API example to documentation
From-SVN: r162932
David Daney [Fri, 6 Aug 2010 04:11:29 +0000 (04:11 +0000)]
* class.c (build_utf8_ref): Fix code formatting from previous commit.
From-SVN: r162931
David Daney [Fri, 6 Aug 2010 04:02:42 +0000 (04:02 +0000)]
* class.c (build_utf8_ref): Make decl DECL_USER_ALIGN.
From-SVN: r162930
Alan Modra [Fri, 6 Aug 2010 02:46:44 +0000 (12:16 +0930)]
invoke.texi (RS/6000 and PowerPC Options): Rewrite -mrelocatable and -mrelocatable-lib description.
* doc/invoke.texi (RS/6000 and PowerPC Options): Rewrite -mrelocatable
and -mrelocatable-lib description.
From-SVN: r162929
GCC Administrator [Fri, 6 Aug 2010 00:17:23 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162928
Bernd Schmidt [Thu, 5 Aug 2010 22:58:35 +0000 (22:58 +0000)]
From Martin Thuresson <martint@google.com>
* postreload.c (reload_cse_simplify_operands): Use
SET_REGNO_RAW instead of SET_REGNO.
* caller-save.c (reg_save_code): Use SET_REGNO_RAW instead of
SET_REGNO.
* ira.c (setup_prohibited_mode_move_regs): Use SET_REGNO_RAW
instead of SET_REGNO.
* rtl.h (SET_REGNO_RAW): New macro.
From-SVN: r162924
Eric Botcazou [Thu, 5 Aug 2010 22:18:33 +0000 (22:18 +0000)]
rtlanal.c (nonzero_bits1): Use unsigned HOST_WIDE_INT in all mask computations.
* rtlanal.c (nonzero_bits1): Use unsigned HOST_WIDE_INT in all mask
computations. Fix formatting issues.
(num_sign_bit_copies1): Likewise.
(canonicalize_condition): Likewise.
From-SVN: r162923
Richard Henderson [Thu, 5 Aug 2010 19:41:31 +0000 (12:41 -0700)]
Replace exact_log2(x & -x) in favor of more direct computation.
* toplev.h (ctz_hwi, clz_hwi, ffs_hwi): New.
(floor_log2): Use clz_hwi.
(exact_log2): Use ctz_hwi.
* toplev.c (ctz_hwi, clz_hwi, ffs_hwi): New.
* builtins.c (fold_builtin_bitop): Use them.
* simplify-rtx.c (simplify_const_unary_operation): Likewise.
* combine.c (get_pos_from_mask): Use ctz_hwi.
* double-int.c (double_int_ctz): Likewise.
* explow.c (force_reg): Likewise.
* tree.h (SET_DECL_OFFSET_ALIGN): Use ffs_hwi.
From-SVN: r162920
Richard Henderson [Thu, 5 Aug 2010 18:04:58 +0000 (11:04 -0700)]
re PR target/45189 (New stack alignment test failures)
PR target/45189
Fix unwind for i386 stack re-alignment.
From-SVN: r162919
Richard Guenther [Thu, 5 Aug 2010 16:37:38 +0000 (16:37 +0000)]
expr.c (store_expr): Use emit_block_move only if both source and target are MEMs.
2010-08-05 Richard Guenther <rguenther@suse.de>
* expr.c (store_expr): Use emit_block_move only if both
source and target are MEMs. Use store_bit_field if only
the target is a MEM.
From-SVN: r162918
Richard Henderson [Thu, 5 Aug 2010 15:39:54 +0000 (08:39 -0700)]
re PR target/45189 (New stack alignment test failures)
PR 45189
Unbreak ia64 build after last dwarf2out.c change.
From-SVN: r162917
Nicolas Setton [Thu, 5 Aug 2010 15:21:13 +0000 (15:21 +0000)]
gcov.c (flag_display_progress): New static variable.
* gcov.c (flag_display_progress): New static variable.
(main): Display progress info on standard output if requested.
(options): Add -d/--display-progress.
(print_usage): Print them.
(process_args): Handle them.
* doc/gcov.texi: Document them.
From-SVN: r162916
Andi Kleen [Thu, 5 Aug 2010 14:25:45 +0000 (14:25 +0000)]
lto-plugin.c: Include <hashtab.h>
* lto-plugin.c: Include <hashtab.h>
(sym_aux): Add next_conflict field to save conflict chains.
(plugin_file_info): Add conflicts symtab.
(parse_table_entry): Initialize aux->next_conflict.
(process_symtab): Increment found.
(dump_symtab): Add.
(finish_conflict_resolution): Add.
(free_symtab): Add.
(write_resolution): Remove symbols loop and move into
dump_symtab. Call dump_symtab for main symbol and conflicts table.
Call free_symtab to free conflicts table.
(SWAP): Add.
(eq_sym): Add.
(hash_sym): Add.
(symbol_strength): Add.
(resolve_conflicts): Add.
(claim_file_handler): Add n variable. Check return value of
process_symtab. Call resolve_conflicts.
From-SVN: r162915
Martin Jambor [Thu, 5 Aug 2010 13:36:18 +0000 (15:36 +0200)]
re PR testsuite/42855 (FAIL: gcc.dg/tree-ssa/pr42585.c scan-tree-dump-times optimized *)
2010-08-05 Martin Jambor <mjambor@suse.cz>
PR testsuite/42855
* testsuite/gcc.dg/tree-ssa/pr42585.c: Skip dump scan on powerpc
and arm.
From-SVN: r162913
Martin Jambor [Thu, 5 Aug 2010 13:30:14 +0000 (15:30 +0200)]
ipa-cp.c (ipcp_discover_new_direct_edges): New function.
2010-08-05 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (ipcp_discover_new_direct_edges): New function.
(ipcp_insert_stage): Redirect only edges not flagged with
indirect_inlining_edge. Call ipcp_discover_new_direct_edges for all
discovered constants.
* testsuite/gcc.dg/ipa/ipcp-ii-1.c: New test.
* testsuite/g++.dg/ipa/ipcp-ivi-1.C: Likewise.
From-SVN: r162912
Martin Jambor [Thu, 5 Aug 2010 13:23:07 +0000 (15:23 +0200)]
ipa-prop.h (enum ipa_lattice_type): Changed comments.
2010-08-05 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (enum ipa_lattice_type): Changed comments.
(struct ipa_param_descriptor): New fields types and
cannot_devirtualize.
(ipa_param_cannot_devirtualize_p): New function.
(ipa_param_types_vec_empty): Likewise.
(ipa_make_edge_direct_to_target): Declare.
* ipa-cp.c: Fixed first stage driver name in initial comment,
described devirtualization there too.
(ipcp_analyze_node): Call ipa_analyze_params_uses.
(ipcp_print_all_lattices): Print devirtualization info.
(ipa_set_param_cannot_devirtualize): New function.
(ipcp_initialize_node_lattices): Set cannot_devirtualize when setting
lattice to BOTTOM.
(ipcp_init_stage): Merged into...
(ipcp_generate_summary): ...its caller.
(ipcp_change_tops_to_bottom): Also process type lists.
(ipcp_add_param_type): New function.
(ipcp_copy_types): Likewise.
(ipcp_propagate_types): Likewise.
(ipcp_propagate_stage): Also propagate types.
(ipcp_need_redirect_p): Variable jump_func moved to its scope block.
Also return true if propagated types require it.
(ipcp_update_callgraph): Dump redirection info.
(ipcp_process_devirtualization_opportunities): New function.
(ipcp_const_param_count): Include known type information.
(ipcp_insert_stage): Call ipcp_process_devirtualization_opportunities
on new node. Fixed formatting.
* ipa-prop.c (make_edge_direct_to_target): Renamed to
ipa_make_edge_direct_to_target and changed all callers. Made
externally visible.
(ipa_node_duplication_hook): Duplicate types vector.
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Also try to
redirect outgoing calls for which we can't get a decl from the
statement. Check that we can get a decl from the call statement.
* ipa-inline.c (inline_indirect_intraprocedural_analysis): Call
ipa_analyze_params_uses only when ipa-cp is disabled.
* tree-inline.c (get_indirect_callee_fndecl): Removed.
(expand_call_inline): Do not call get_indirect_callee_fndecl.
* params.def (PARAM_DEVIRT_TYPE_LIST_SIZE): New parameter.
* Makefile.in (ipa-cp.o): Add gimple.h to dependencies.
* testsuite/g++.dg/ipa/devirt-1.C: New test.
* testsuite/g++.dg/ipa/devirt-2.C: Likewise.
* testsuite/g++.dg/ipa/devirt-3.C: Likewise.
* testsuite/g++.dg/ipa/devirt-4.C: Likewise.
* testsuite/g++.dg/ipa/devirt-5.C: Likewise.
* testsuite/gcc.dg/ipa/iinline-3.c: Likewise.
From-SVN: r162911
Uros Bizjak [Thu, 5 Aug 2010 12:03:36 +0000 (14:03 +0200)]
expmed.c (expand_mult_const): Expand shift into temporary.
* expmed.c (expand_mult_const) <case alg_shift>: Expand shift into
temporary. Emit move from temporary to accum, so REG_EQUAL note will
be attached to this insn in correct mode.
From-SVN: r162910
Arnaud Charlet [Thu, 5 Aug 2010 09:26:47 +0000 (11:26 +0200)]
[multiple changes]
2010-08-05 Robert Dewar <dewar@adacore.com>
* gnat1drv.adb: Minor reformatting.
2010-08-05 Ed Schonberg <schonberg@adacore.com>
* sem.adb (Do_Unit_And_Dependents): If some parent unit is an
instantiation, process its body before the spec of the main unit,
because it may contain subprograms invoked in the spec of main.
* einfo.ads: Add documention of delayed freeze.
2010-08-05 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Process_Linker): Take into account new values for
attribute Response_File_Format.
* prj.ads (Response_File_Format): New enumeration values GCC_GNU,
GCC_Object_List and GCC_Option_List.
2010-08-05 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb (Expand_N_Selected_Component): Do not constant-fold a
selected component that denotes a discriminant if it is the
discriminant of a component of an unconstrained record type.
From-SVN: r162908