Olivier Hainque
dbb6088f89
gstab.h (stab_code_type): Define, to be used instead of the __stab_debug_code enum, made anonymous.
...
* gstab.h (stab_code_type): Define, to be used instead of the
__stab_debug_code enum, made anonymous. Add 2009 to the copyright
notice.
* dbxout.c (STAB_CODE_TYPE): Remove #define and replace use
occurrences by stab_code_type.
* mips-tfile.c (STAB_CODE_TYPE): Remove #define, unused.
From-SVN: r147734
2009-05-20 12:44:44 +00:00
Martin Jambor
7ec492570b
tree-flow.h (insert_edge_copies_seq): Undeclare.
...
2009-05-20 Martin Jambor <mjambor@suse.cz>
* tree-flow.h (insert_edge_copies_seq): Undeclare.
(sra_insert_before): Likewise.
(sra_insert_after): Likewise.
(sra_init_cache): Likewise.
(sra_type_can_be_decomposed_p): Likewise.
* tree-mudflap.c (insert_edge_copies_seq): Copied here from tree-sra.c
* tree-sra.c (sra_type_can_be_decomposed_p): Made static.
(sra_insert_before): Likewise.
(sra_insert_after): Likewise.
(sra_init_cache): Likewise.
(insert_edge_copies_seq): Made static and moved upwards.
* tree-complex.c (extract_component): Added VIEW_CONVERT_EXPR switch
case.
* tree-flow-inline.h (contains_view_convert_expr_p): New function.
* ipa-prop.c (get_ssa_def_if_simple_copy): New function.
(determine_cst_member_ptr): Call get_ssa_def_if_simple_copy to skip
simple copies.
From-SVN: r147733
2009-05-20 12:18:10 +02:00
Eric Botcazou
3f6f0eb2e4
decl.c (gnat_to_gnu_entity): When discriminants affect the shape of the subtype...
...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
discriminants affect the shape of the subtype, retrieve the GCC type
directly from the original field if the GNAT types for the field and
the original field are the same.
From-SVN: r147732
2009-05-20 08:29:05 +00:00
Richard Guenther
0328ae4d56
expr.c (expand_expr_real_1): Avoid calling do_store_flag with mismatched comparison modes.
...
2009-05-20 Richard Guenther <rguenther@suse.de>
* expr.c (expand_expr_real_1): Avoid calling do_store_flag
with mismatched comparison modes.
* gcc.c-torture/compile/20090518-1.c: New testcase.
From-SVN: r147731
2009-05-20 08:19:50 +00:00
Ramana Radhakrishnan
a7994a57b9
Fix Thumb2 bic orn
...
2009-05-20 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm.md (*arm_iorsi3): Refactored for only ARM.
(peephole ior (reg, int) -> mov, ior): Refactored for only ARM.
* config/arm/thumb2.md (*thumb_andsi_not_shiftsi_si): Allow bic
with shifts for Thumb2.
(orsi_notsi): New for orn.
(*thumb_orsi_notshiftsi_si): Allow orn with shifts.
(*thumb2_iorsi3): Rewrite support for iorsi for Thumb2.
* config/arm/arm.c (const_ok_for_op): Split case for IOR for
Thumb2.
(arm_gen_constant): Set can_invert for IOR and Thumb2, Add
comments. Don't invert remainder for IOR.
From-SVN: r147729
2009-05-20 05:40:17 +00:00
Benjamin Kosnik
875d0f10a6
14340.cc: Abstract list type.
...
2009-05-19 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/23_containers/list/14340.cc: Abstract list type.
* testsuite/23_containers/list/init-list.cc: Same.
* testsuite/23_containers/list/pthread5.cc: Same.
* testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
* testsuite/23_containers/list/invalidation/3.cc: Same.
* testsuite/23_containers/list/invalidation/4.cc: Same.
* testsuite/23_containers/list/modifiers/insert/25288.cc: Same.
* testsuite/23_containers/list/modifiers/1.cc: Same.
* testsuite/23_containers/list/modifiers/2.cc: Same.
* testsuite/23_containers/list/modifiers/3.cc: Same.
* testsuite/23_containers/list/modifiers/swap/1.cc: Same.
* testsuite/23_containers/list/modifiers/swap/2.cc: Same.
* testsuite/23_containers/list/modifiers/swap/3.cc: Same.
* testsuite/23_containers/list/cons/1.cc: Same.
* testsuite/23_containers/list/cons/2.cc: Same.
* testsuite/23_containers/list/cons/3.cc: Same.
* testsuite/23_containers/list/cons/4.cc: Same.
* testsuite/23_containers/list/cons/5.cc: Same.
* testsuite/23_containers/list/cons/6.cc: Same.
* testsuite/23_containers/list/cons/7.cc: Same.
* testsuite/23_containers/list/cons/clear_allocator.cc: Same.
* testsuite/23_containers/list/cons/8.cc: Same.
* testsuite/23_containers/list/cons/9.cc: Same.
* testsuite/23_containers/list/operations/1.cc: Same.
* testsuite/23_containers/list/operations/2.cc: Same.
* testsuite/23_containers/list/operations/3.cc: Same.
* testsuite/23_containers/list/operations/4.cc: Same.
* testsuite/23_containers/list/operations/5.cc: Same.
* testsuite/23_containers/list/requirements/citerators.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/constructor.cc: Same.
* testsuite/23_containers/list/requirements/
partial_specialization/1.cc: Same.
* testsuite/23_containers/list/23781.cc: Same.
* testsuite/23_containers/list/pthread1.cc: Same.
* testsuite/23_containers/list/capacity/1.cc: Same.
* testsuite/23_containers/list/capacity/29134.cc: Same.
* testsuite/23_containers/list/check_construct_destroy.cc: Same.
* testsuite/23_containers/list/moveable.cc: Same.
* testsuite/util/common_type/assoc/common_type.hpp: Re-break lines.
From-SVN: r147728
2009-05-20 04:05:21 +00:00
Zdenek Dvorak
e36dc33956
re PR tree-optimization/40087 (Number of iterations analysis wrong)
...
PR tree-optimization/40087
* tree-ssa-loop-niter.c (number_of_iterations_ne_max,
number_of_iterations_ne): Rename never_infinite argument.
(number_of_iterations_lt_to_ne, number_of_iterations_lt,
number_of_iterations_le): Handle pointer-type ivs when
exit_must_be_taken is false.
(number_of_iterations_cond): Do not always assume that
exit_must_be_taken if the control variable is a pointer.
* gcc.dg/tree-ssa/pr40087.c: New test.
From-SVN: r147727
2009-05-20 00:33:54 +00:00
GCC Administrator
03d33c2a44
Daily bump.
...
From-SVN: r147726
2009-05-20 00:16:48 +00:00
Jerry DeLisle
3a546d4d9b
re PR libfortran/37754 (READ I/O Performance regression from 4.3 to 4.4/4.5)
...
2009-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/37754
* io/write_float.def: Simplify format calculation.
From-SVN: r147725
2009-05-20 00:16:38 +00:00
Andrew Pinski
5cfd5d9b8f
c-typeck.c (build_binary_op): Allow % on integal vectors.
...
2009-05-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
* c-typeck.c (build_binary_op): Allow % on integal vectors.
* doc/extend.texi (Vector Extension): Document that % is allowed too.
009-05-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
* typeck.c (build_binary_op): Allow % on integal vectors.
2009-05-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
* gcc.dg/vector-4.c: New testcase.
* gcc.dg/simd-1b.c: % is now allowed for integer vectors.
* g++.dg/ext/vector16.C: New testcase.
From-SVN: r147722
2009-05-19 16:14:10 -07:00
H.J. Lu
dae279f018
re PR c/40172 (Revision 147596 breaks bootstrap)
...
2009-05-19 H.J. Lu <hongjiu.lu@intel.com>
PR c/40172
* gcc.dg/pr40172.c: Renamed to ...
* gcc.dg/pr40172-1.c: This.
* gcc.dg/pr40172-2.c: New.
* gcc.dg/pr40172-3.c: Likewise.
From-SVN: r147719
2009-05-19 14:17:00 -07:00
H.J. Lu
2f1c7156ef
i386.c (ix86_avoid_jump_mispredicts): Check ASM_OUTPUT_MAX_SKIP_PAD instead of ASM_OUTPUT_MAX_SKIP_ALIGN.
...
2009-05-19 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_avoid_jump_mispredicts): Check
ASM_OUTPUT_MAX_SKIP_PAD instead of ASM_OUTPUT_MAX_SKIP_ALIGN.
From-SVN: r147718
2009-05-19 13:11:55 -07:00
Manuel López-Ibáñez
7bb2707483
re PR c/40172 (Revision 147596 breaks bootstrap)
...
2009-05-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c/40172
gcc/
* c.opt (Wlogical-op): Disabled by default.
* c-opt (c_common_post_options): Do not enable Wlogical-op with
Wextra.
* doc/invoke.texi (Wlogical-op): Likewise.
testsuite/
* gcc.dg/pr40172.c: Add -Wlogical-op to dg-options.
From-SVN: r147717
2009-05-19 19:29:27 +00:00
Eric Botcazou
5aefc6a0f0
tree-scalar-evolution.c (follow_ssa_edge_expr): Turn into CASE_CONVERT.
...
* tree-scalar-evolution.c (follow_ssa_edge_expr) <NOP_EXPR>: Turn
into CASE_CONVERT.
<PLUS_EXPR>: Strip useless type conversions instead of type nops.
Propagate the type of the first operand.
<ASSERT_EXPR>: Simplify.
(follow_ssa_edge_in_rhs): Use gimple_expr_type to get the type.
Rewrite using the RHS code as discriminant.
<NOP_EXPR>: Turn into CASE_CONVERT.
<PLUS_EXPR>: Propagate the type of the first operand.
From-SVN: r147716
2009-05-19 19:14:42 +00:00
Paolo Carlini
c8036448d1
re PR libstdc++/40184 (locale(const char* std_name) can create invalid facets for nonuniform locale)
...
2009-05-19 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40184
* include/bits/locale_classes.h (locale::facet::_S_lc_ctype_c_locale):
Declare...
* config/locale/gnu/c_locale.cc: ... and define.
* config/locale/generic/c_locale.cc: Define.
* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
Use it.
* testsuite/22_locale/locale/cons/40184.cc: New.
From-SVN: r147714
2009-05-19 18:20:47 +00:00
Steve Ellcey
f3a8311127
ia64-protos.h (ia64_dconst_0_5): New.
...
* config/ia64/ia64-protos.h (ia64_dconst_0_5): New.
(ia64_dconst_0_375): New.
* config/ia64/ia64.c (ia64_override_options): Remove
-minline-sqrt-min-latency warning.
(ia64_dconst_0_5_rtx, ia64_dconst_0_5): New.
(ia64_dconst_0_375_rtx, ia64_dconst_0_375): New
* config/ia64/ia64.md (*sqrt_approx): Remove.
(sqrtsf2): Remove #if 0.
(sqrtsf2_internal_thr): Rewrite and move to div.md.
(sqrtdf): Remove assert.
(sqrtdf2_internal_thr): Rewrite and move to div.md.
(sqrtxf2): Remove #if 0.
(sqrtxf2_internal_thr): Rewrite and move to div.md.
* div.md (sqrt_approx_rf): New.
(sqrtsf2_internal_thr): New implementation.
(sqrtsf2_internal_lat): New.
(sqrtdf2_internal_thr: New implementation.
(sqrtxf2_internal): New implementation.
From-SVN: r147713
2009-05-19 18:18:08 +00:00
Francois-Xavier Coudert
1ffc7157ef
* defaults.h (UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE)
...
(WCHAR_TYPE, MODIFIED_WCHAR_TYPE, PTRDIFF_TYPE, WINT_TYPE)
(INTMAX_TYPE, UINTMAX_TYPE, SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE)
(INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE)
(UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE)
(INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE)
(UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE)
(INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE)
(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE)
(SIZE_TYPE, PID_TYPE, CHAR16_TYPE, CHAR32_TYPE): Move defaults here...
* c-common.c: ...from here.
Co-Authored-By: Hans-Peter Nilsson <hp@axis.com>
From-SVN: r147712
2009-05-19 18:12:57 +00:00
H.J. Lu
e9351712b5
Replace spaces with tab.
...
From-SVN: r147709
2009-05-19 09:06:46 -07:00
Manuel López-Ibáñez
db91d9ef7b
c-common.c (warn_logical_operator): Remove unnecessary conditionals.
...
2009-05-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
* c-common.c (warn_logical_operator): Remove unnecessary
conditionals.
From-SVN: r147708
2009-05-19 15:41:17 +00:00
Kaveh R. Ghazi
bbb9d91f19
builtins.c (do_mpc_arg1): Separate MPFR/MPC C rounding types.
...
* builtins.c (do_mpc_arg1): Separate MPFR/MPC C rounding types.
From-SVN: r147707
2009-05-19 14:56:05 +00:00
Ben Elliston
ce883f549b
unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning assignments with memcpy calls.
...
* unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning
assignments with memcpy calls.
(add_fdes): Likewise.
(binary_search_unencoded_fdes): Likewise.
(linear_search_fdes): Eliminate type puns.
From-SVN: r147705
2009-05-19 23:24:30 +10:00
Richard Guenther
377f099ab8
tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do not falsely claim to have propagated into all uses.
...
2009-05-19 Richard Guenther <rguenther@suse.de>
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do
not falsely claim to have propagated into all uses.
* gcc.c-torture/compile/20090519-1.c: New testcase.
From-SVN: r147702
2009-05-19 11:51:54 +00:00
Ian Lance Taylor
7859dde7ee
cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug.
...
* cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug.
(cplus_demangle_fill_dtor): Likewise.
Co-Authored-By: Ben Elliston <bje@au.ibm.com>
From-SVN: r147699
2009-05-19 12:42:13 +10:00
Alexandre Oliva
31c98f4921
re PR other/40159 ("make all" ignores build failures)
...
PR other/40159
* Makefile.tpl (all): Don't assume gcc-bootstrap and
gcc-no-bootstrap are mutually exclusive.
* Makefile.in: Rebuilt.
From-SVN: r147695
2009-05-19 01:30:35 +00:00
GCC Administrator
d99e5e9584
Daily bump.
...
From-SVN: r147688
2009-05-19 00:16:50 +00:00
Alexandre Oliva
0f50183740
re PR other/40159 ("make all" ignores build failures)
...
PR other/40159
* Makefile.tpl (all): Don't end with unconditional success.
* Makefile.in: Rebuilt.
From-SVN: r147683
2009-05-19 00:01:17 +00:00
Ben Elliston
848bc769a5
invoke.texi (C Dialect Options): Update OpenMP specification version to v3.0.
...
* doc/invoke.texi (C Dialect Options): Update OpenMP specification
version to v3.0.
From-SVN: r147682
2009-05-19 09:41:55 +10:00
Paolo Carlini
cf0e6fff1d
re PR c++/40192 (Unable to use std::vector with typedef'd array types)
...
2009-05-18 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40192
* include/bits/stl_construct.h (struct _Destroy_aux): Add.
(_Destroy(_ForwardIterator, _ForwardIterator)): Use the latter.
* testsuite/23_containers/vector/40192.cc: New.
From-SVN: r147680
2009-05-18 23:16:20 +00:00
Kaz Kojima
1bb99877d3
sh-protos.h (sh_legitimate_address_p): Remove.
...
* config/sh/sh-protos.h (sh_legitimate_address_p): Remove.
* config/sh/sh.c (sh_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.
* config/sh/sh.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/sh/sh.md: Clean up references to GO_IF_LEGITIMATE_ADDRESS.
From-SVN: r147679
2009-05-18 22:31:46 +00:00
Jonathan Wakely
ff74fd1325
stl_pair.h (swap): Do not swap rvalues.
...
2009-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/stl_pair.h (swap): Do not swap rvalues.
* include/bits/stl_deque.h (swap): Likewise.
* include/bits/stl_list.h (swap): Likewise.
* include/bits/stl_vector.h (swap): Likewise.
* include/bits/stl_bvector.h (swap): Likewise.
* include/bits/stl_queue.h (swap): Likewise.
* include/bits/stl_stack.h (swap): Likewise.
* include/bits/stl_tree.h (swap): Likewise.
* include/bits/stl_map.h (swap): Likewise.
* include/bits/stl_multimap.h (swap): Likewise.
* include/bits/stl_set.h (swap): Likewise.
* include/bits/stl_multiset.h (swap): Likewise.
* include/bits/forward_list.h (swap): Likewise.
* include/bits/unique_ptr.h (swap): Likewise.
* include/debug/deque (swap): Likewise.
* include/debug/list (swap): Likewise.
* include/debug/vector (swap): Likewise.
* include/debug/map.h (swap): Likewise.
* include/debug/multimap.h (swap): Likewise.
* include/debug/set.h (swap): Likewise.
* include/debug/multiset.h (swap): Likewise.
* include/debug/unordered_map (swap): Likewise.
* include/debug/unordered_set (swap): Likewise.
* include/ext/vstring.h (swap): Likewise.
* include/tr1_impl/unordered_map (swap): Likewise.
* include/tr1_impl/hashtable (swap): Likewise.
* include/tr1_impl/unordered_set (swap): Likewise.
* include/std/tuple (swap): Likewise.
* include/std/mutex (swap): Likewise.
* include/std/thread (swap): Likewise.
(operator<<): Only output to lvalue streams.
* testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: Remove.
* testsuite/23_containers/headers/forward_list/synopsis.cc: Adjust.
* testsuite/23_containers/deque/requirements/dr438/
assign_neg.cc: Adjust line numbers.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Swap with lvalue and also
test non-member swap.
* testsuite/30_threads/thread/swap/2.cc: Remove.
From-SVN: r147678
2009-05-18 23:15:56 +01:00
Jason Merrill
e57d93c6bc
Implement explicit conversions ops as specified in N2437.
...
* decl.c (grokdeclarator): Handle explicit conversion ops.
(check_initializer): Pass flags to store_init_value.
* decl2.c (maybe_emit_vtables): Likewise.
* init.c (expand_aggr_init_1): Likewise.
* call.c (convert_class_to_reference): Take flags parm,
check DECL_NONCONVERTING_P.
(build_user_type_conversion_1): Check DECL_NONCONVERTING_P.
(add_builtin_candidates): Simplify getting type of conversion.
(build_object_call): Likewise. Check DECL_NONCONVERTING_P.
(implicit_conversion): Pass through LOOKUP_ONLYCONVERTING.
(reference_binding): Take flags parm. Direct-initialize copy parm.
(add_function_candidate): Direct-initialize the copy parm.
(add_conv_candidate): Use LOOKUP_IMPLICIT, not LOOKUP_NORMAL.
(build_builtin_candidate): Add LOOKUP_ONLYCONVERTING.
(conditional_conversion): Likewise.
(convert_like_real): Only complain about DECL_NONCONVERTING_P
constructors.
(perform_implicit_conversion_flags): Add flags parm to
perform_implicit_conversion. Improve diagnostics.
* cp-tree.h (LOOKUP_IMPLICIT): New macro.
(LOOKUP_COPY_PARM): New bit macro.
* cvt.c (build_expr_type_conversion): Check DECL_NONCONVERTING_P.
* typeck.c (convert_for_assignment): Take flags parm, pass it to
perform_implicit_conversion_flags.
(cp_build_modify_expr): Pass flags to convert_for_assignment.
(convert_for_initialization): Likewise.
* typeck2.c (store_init_value): Take flags parm, pass to
digest_init_flags.
(digest_init_flags): Add flags parm to digest_init.
(digest_init_r): Take flags parm, pass to convert_for_initialization.
(process_init_constructor_array): Pass it.
(process_init_constructor_record): Likewise.
(process_init_constructor_union): Likewise.
From-SVN: r147677
2009-05-18 17:48:02 -04:00
Dodji Seketeli
82725547db
re PR debug/40109 (Incorrect debug info nesting for typedef statements within namespaces)
...
Fix for PR debug/40109
gcc/ChangeLog:
PR debug/40109
* dwarf2out.c (gen_type_die_with_usage): Generate the DIE as a
child of the containing namespace's DIE.
gcc/testsuite/ChangeLog:
PR debug/40109
* g++.dg/debug/dwarf2/nested-1.C: New test.
From-SVN: r147674
2009-05-18 21:19:52 +02:00
Adam Nemet
f6a1e4301a
* config/mips/mips.md (*zero_extend<GPR:mode>_trunc<SHORT:mode>,
...
*zero_extendhi_truncqi): Move after the zero_extend patterns.
(*extenddi_truncate<mode>, *extendsi_truncate<mode>): Move after the
extend patterns.
From-SVN: r147673
2009-05-18 18:43:25 +00:00
H.J. Lu
6a90d232ab
re PR target/39942 (Nonoptimal code - leaveq; xchg %ax,%ax; retq)
...
2009-05-18 H.J. Lu <hongjiu.lu@intel.com>
PR target/39942
* config/i386/i386.c (ix86_avoid_jump_misspredicts): Replace
gen_align with gen_pad.
(ix86_reorg): Check ASM_OUTPUT_MAX_SKIP_PAD instead of
#ifdef ASM_OUTPUT_MAX_SKIP_ALIGN.
* config/i386/i386.h (ASM_OUTPUT_MAX_SKIP_PAD): New.
* config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_PAD): Likewise.
* config/i386/i386.md (align): Renamed to ...
(pad): This. Replace ASM_OUTPUT_MAX_SKIP_ALIGN with
ASM_OUTPUT_MAX_SKIP_PAD.
From-SVN: r147671
2009-05-18 10:21:13 -07:00
H.J. Lu
cf249b02ea
re PR testsuite/39907 (Aligned access to unaligned address)
...
2009-05-18 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/39907
* gcc.target/x86_64/abi/asm-support.S (snapshot_ret): Preserve
stack alignment.
From-SVN: r147667
2009-05-18 09:53:25 -07:00
Andreas Schwab
3f1c917c5d
* config.gcc: Fix variable syntax.
...
From-SVN: r147666
2009-05-18 16:49:50 +00:00
Andreas Schwab
06555043e5
* config.gcc: Fix variable syntax.
...
From-SVN: r147665
2009-05-18 16:22:47 +00:00
Andreas Schwab
c4406f7429
re PR target/39531 (m68k gcc does not convert andil to bclr when compiled on a 64bit host)
...
PR target/39531
* config/m68k/m68k.c (output_andsi3): Mask off sign bit copies
before calling exact_log2.
(output_iorsi3): Likewise.
(output_xorsi3): Likewise.
From-SVN: r147664
2009-05-18 15:36:18 +00:00
Janus Weil
e35bbb23ad
re PR fortran/40164 (Fortran 2003: "Arrays of procedure pointers" (using PPCs))
...
2009-05-18 Janus Weil <janus@gcc.gnu.org>
PR fortran/40164
* primary.c (gfc_match_rvalue): Handle procedure pointer components in
arrays.
* resolve.c (resolve_ppc_call,resolve_expr_ppc): Resolve component and
array references.
(resolve_fl_derived): Procedure pointer components are not required to
have constant array bounds in their return value.
2009-05-18 Janus Weil <janus@gcc.gnu.org>
PR fortran/40164
* gfortran.dg/proc_ptr_comp_8.f90: New.
From-SVN: r147663
2009-05-18 16:44:55 +02:00
Janus Weil
9b2db7be32
intrinsic.c (add_sym): Fix my last commit (r147655), which broke bootstrap.
...
2009-05-18 Janus Weil <janus@gcc.gnu.org>
* intrinsic.c (add_sym): Fix my last commit (r147655),
which broke bootstrap.
From-SVN: r147662
2009-05-18 15:56:44 +02:00
Kaz Kojima
9905269286
sh.c (expand_cbranchdi4): Use a scratch register for the none zero constant operand except for EQ and NE...
...
* config/sh/sh.c (expand_cbranchdi4): Use a scratch register
for the none zero constant operand except for EQ and NE
comprisons even when the first operand is R0.
From-SVN: r147661
2009-05-18 12:53:22 +00:00
Andreas Krebbel
f4aa38482c
2064.md: Remove trailing whitespaces.
...
2009-05-18 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/2064.md: Remove trailing whitespaces.
* config/s390/2084.md: Likewise.
* config/s390/constraints.md: Likewise.
* config/s390/fixdfdi.h: Likewise.
* config/s390/libgcc-glibc.ver: Likewise.
* config/s390/s390-modes.def: Likewise.
* config/s390/s390-protos.h: Likewise.
* config/s390/s390.c: Likewise.
* config/s390/s390.h: Likewise.
* config/s390/s390.md: Likewise.
* config/s390/tpf-unwind.h: Likewise.
From-SVN: r147660
2009-05-18 12:33:55 +00:00
Richard Guenther
bfa31dad8a
re PR tree-optimization/40168 (finding common subexpressions)
...
2009-05-18 Richard Guenther <rguenther@suse.de>
PR fortran/40168
* trans-expr.c (gfc_trans_zero_assign): For local array
destinations use an assignment from an empty constructor.
* gfortran.dg/array_memset_2.f90: Adjust.
From-SVN: r147659
2009-05-18 10:24:34 +00:00
Maxim Kuvyrkov
ab7256e4ce
* config/m68k/m68k.c (m68k_legitimize_address): Fix typo in signature.
...
From-SVN: r147656
2009-05-18 10:12:44 +00:00
Janus Weil
23e38561c5
re PR fortran/36947 (Attributes not fully checked comparing actual vs dummy procedure)
...
2009-05-18 Janus Weil <janus@gcc.gnu.org>
PR fortran/36947
PR fortran/40039
* expr.c (gfc_check_pointer_assign): Check intents when comparing
interfaces.
* gfortran.h (typedef struct gfc_intrinsic_arg): Add 'intent' member.
(gfc_compare_interfaces): Additional argument.
* interface.c (operator_correspondence): Add check for equality of
intents, and new argument 'intent_check'.
(gfc_compare_interfaces): New argument 'intent_check', which is passed
on to operator_correspondence.
(check_interface1): Don't check intents when comparing interfaces.
(compare_parameter): Do check intents when comparing interfaces.
* intrinsic.c (add_sym): Add intents for arguments of intrinsic
procedures.
(add_sym_1,add_sym_1s,add_sym_1m,add_sym_2,add_sym_2s,add_sym_3,
add_sym_3ml,add_sym_3red,add_sym_3s,add_sym_4): Use INTENT_IN by
default.
(add_sym_1_intent,add_sym_1s_intent,add_sym_2s_intent,add_sym_3s_intent)
: New functions to add intrinsic symbols, specifying custom intents.
(add_sym_4s,add_sym_5s): Add new arguments to specify intents.
(add_functions,add_subroutines): Add intents for various intrinsics.
* resolve.c (check_generic_tbp_ambiguity): Don't check intents when
comparing interfaces.
* symbol.c (gfc_copy_formal_args_intr): Copy intent.
2009-05-18 Janus Weil <janus@gcc.gnu.org>
PR fortran/36947
PR fortran/40039
* gfortran.dg/interface_27.f90: New.
* gfortran.dg/interface_28.f90: New.
* gfortran.dg/proc_ptr_11.f90: Fixing invalid test case.
* gfortran.dg/proc_ptr_result_1.f90: Ditto.
From-SVN: r147655
2009-05-18 11:19:20 +02:00
Maxim Kuvyrkov
75df395f15
M68K TLS support.
...
* configure.ac (m68k-*-*): Check if binutils support TLS.
* configure: Regenerate.
* config/m68k/predicates.md (symbolic_operand): Extend comment.
* config/m68k/constraints.md (Cu): New constraint.
* config/m68k/m68k.md (UNSPEC_GOTOFF): Remove.
(UNSPEC_RELOC16, UNSPEC_RELOC32): New constants.
(movsi): Handle TLS symbols.
(addsi3_5200): Handle XTLS symbols, indent.
* config/m68k/m68k-protos.h (m68k_legitimize_tls_address): Declare.
(m68k_tls_reference_p): Declare.
(m68k_legitimize_address): Declare.
(m68k_unwrap_symbol): Declare.
* config/m68k/m68k.opt (mxtls): New option.
* config/m68k/m68k.c (ggc.h): Include.
(m68k_output_dwarf_dtprel): Implement hook.
(TARGET_HAVE_TLS, TARGET_ASM_OUTPUT_DWARF_DTPREL): Define.
(m68k_expand_prologue): Load GOT pointer when function needs it.
(m68k_illegitimate_symbolic_constant_p): Handle TLS symbols.
(m68k_legitimate_constant_address_p): Same.
(m68k_decompose_address): Handle TLS references.
(m68k_get_gp): New static function.
(enum m68k_reloc): New contants.
(TLS_RELOC_P): New macro.
(m68k_wrap_symbol): New static function.
(m68k_unwrap_symbol): New function.
(m68k_final_prescan_insn_1): New static function.
(m68k_final_prescan_insn): New function.
(m68k_move_to_reg, m68k_wrap_symbol_into_got_ref): New static
functions.
(legitimize_pic_address): Handle TLS references..
(m68k_tls_get_addr, m68k_get_tls_get_addr)
(m68k_libcall_value_in_a0_p)
(m68k_call_tls_get_addr, m68k_read_tp, m68k_get_m68k_read_tp)
(m68k_call_m68k_read_tp): Helper variables and functions for ...
(m68k_legitimize_tls_address): Handle TLS references.
(m68k_tls_symbol_p, m68k_tls_reference_p_1, m68k_tls_reference_p):
New functions.
(m68k_legitimize_address): Handle TLS symbols.
(m68k_get_reloc_decoration): New static function.
(m68k_output_addr_const_extra): Handle UNSPEC_RELOC16 and
UNSPEC_RELOC32.
(m68k_output_dwarf_dtprel): Implement hook.
(print_operand_address): Handle UNSPEC_RELOC16 adn UNSPEC_RELOC32.
(m68k_libcall_value): Return result in A0 instead of D0 when asked by
m68k_call_* routines.
(sched_attr_op_type): Handle TLS symbols.
(gt-m68k.h): Include.
* config/m68k/m68k.h (FINAL_PRESCAN_INSN): Define.
(LEGITIMATE_PIC_OPERAND_P): Support TLS.
* gcc.target/m68k/tls-ie.c: New test.
* gcc.target/m68k/tls-le.c: New test.
* gcc.target/m68k/tls-gd.c: New test.
* gcc.target/m68k/tls-ld.c: New test.
* gcc.target/m68k/tls-ie-xgot.c: New test.
* gcc.target/m68k/tls-le-xtls.c: New test.
* gcc.target/m68k/tls-gd-xgot.c: New test.
* gcc.target/m68k/tls-ld-xgot.c: New test.
* gcc.target/m68k/tls-ld-xtls.c: New test.
* gcc.target/m68k/tls-ld-xgot-xtls.c: New test.
From-SVN: r147654
2009-05-18 07:54:44 +00:00
Bechir Zalila
676fd528c9
re PR ada/40166 (Ada compiler unable to build libraries)
...
PR ada/40166
* Makefile.in (TOOLS_TARGET_PAIRS): Use the correct path to the
target specific sources.
From-SVN: r147652
2009-05-18 07:40:56 +00:00
GCC Administrator
e852ce618c
Daily bump.
...
From-SVN: r147649
2009-05-18 00:16:37 +00:00
Martin Jambor
8b75fc9ba6
ipa-prop.c (ipa_check_stmt_modifications): Removed.
...
2009-05-18 Martin Jambor <mjambor@suse.cz>
* ipa-prop.c (ipa_check_stmt_modifications): Removed.
(visit_store_addr_for_mod_analysis): New function.
(ipa_detect_param_modifications): Use walk_stmt_load_store_addr_ops.
(determine_cst_member_ptr): Use gimple_assign_single_p.
(ipa_get_stmt_member_ptr_load_param): Use gimple_assign_single_p.
(ipa_analyze_call_uses): Use !gimple_assign_rhs2 rather than number of
operands. Don't check number of operands of a NOP_EXPR.
* testsuite/gcc.dg/ipa/modif-1.c: Do not check for unmodified int
parameter.
From-SVN: r147645
2009-05-18 01:33:35 +02:00
Eric Fisher
f133d4a2aa
tree-ssa.texi (SSA Operands): Fix a mistake.
...
2009-05-18 Eric Fisher <joefoxreal@gmail.com>
* doc/tree-ssa.texi (SSA Operands): Fix a mistake.
From-SVN: r147644
2009-05-18 08:10:36 +10:00