Eric Botcazou
6687b74039
* gimplify.c (mostly_copy_tree_r): Deal with BIND_EXPR.
...
From-SVN: r161774
2010-07-03 13:14:48 +00:00
Jonathan Wakely
21ffc3f709
regex_compiler.h: Fix filename in doxygen comment.
...
2010-07-03 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/regex_compiler.h: Fix filename in doxygen comment.
* include/bits/regex_constants.h: Likewise.
* include/bits/regex_error.h: Likewise.
* include/bits/regex_grep_matcher.h: Likewise.
* include/bits/regex_grep_matcher.tcc: Likewise.
* include/bits/regex_nfa.tcc: Likewise.
From-SVN: r161773
2010-07-03 13:35:03 +01:00
Jan Hubicka
bd7f30a156
* config/i386/i386.c (override_options): Revert accidental commit.
...
From-SVN: r161772
2010-07-03 11:55:30 +00:00
Kai Tietz
3e26ba50da
Add missing e-mail address.
...
From-SVN: r161771
2010-07-03 12:30:52 +02:00
Eric Botcazou
40d1f6afc1
decl.c (gnat_to_gnu_entity): Branch to common code handling the alignment of discrete types.
...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>:
Branch to common code handling the alignment of discrete types.
<E_Signed_Integer_Type>: Likewise.
<E_Modular_Integer_Type>: Likewise.
From-SVN: r161770
2010-07-03 09:54:13 +00:00
Iain Sandoe
cb5eb94e1c
re PR testsuite/44518 (objc++ encode-2.mm and encode-3.mm fail on several platforms)
...
2010-07-03 Iain Sandoe <iains@gcc.gnu.org>
Mikael Pettersson <mikpe@it.uu.se>
PR testsuite/44518
* obj-c++.dg/encode-2.mm: Produce object and save temps.
Make signed-ness of chars explicit. Scan the object for
strings that are split by some target assemblers.
* obj-c++.dg/encode-3.mm: Make the signed-ness of chars
explicit.
Co-Authored-By: Mikael Pettersson <mikpe@it.uu.se>
From-SVN: r161769
2010-07-03 08:15:59 +00:00
Eric Botcazou
e2cb8da267
Fix long lines
...
From-SVN: r161768
2010-07-03 06:23:09 +00:00
Hans-Peter Nilsson
d9e7913ca2
* gfortran.dg/char_bounds_check_fail_1.f90: Correct dg-output string.
...
From-SVN: r161767
2010-07-03 06:07:59 +00:00
Le-Chun Wu
3f59fa1c96
invoke.texi: Update documentation of -Wshadow.
...
PR/44128
* gcc/doc/invoke.texi: Update documentation of -Wshadow.
* gcc/cp/name-lookup.c (pushdecl_maybe_friend): Warn when a local
decl (variable or type) shadows another type.
* gcc/testsuite/g++.dg/warn/Wshadow-7.C: New test.
From-SVN: r161765
2010-07-03 01:10:06 +00:00
Daniel Jacobowitz
73160ba9dc
arm.c (arm_canonicalize_comparison): Canonicalize DImode comparisons.
...
2010-07-02 Daniel Jacobowitz <dan@codesourcery.com>
Julian Brown <julian@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/arm/arm.c (arm_canonicalize_comparison): Canonicalize DImode
comparisons. Adjust to take both operands.
(arm_select_cc_mode): Handle DImode comparisons.
(arm_gen_compare_reg): Generate a scratch register for DImode
comparisons which require one. Use xor for Thumb equality checks.
(arm_const_double_by_immediates): New.
(arm_print_operand): Allow 'Q' and 'R' for constants.
(get_arm_condition_code): Handle new CC_CZmode and CC_NCVmode.
* config/arm/arm.h (CANONICALIZE_COMPARISON): Always use
arm_canonicalize_comparison.
* config/arm/arm-modes.def: Add CC_CZmode and CC_NCVmode.
* config/arm/arm-protos.h (arm_canonicalize_comparison): Update
prototype.
(arm_const_double_by_immediates): Declare.
* config/arm/constraints.md (Di): New constraint.
* config/arm/predicates.md (arm_immediate_di_operand)
(arm_di_operand, cmpdi_operand): New.
* config/arm/arm.md (cbranchdi4): Handle non-Cirrus also.
(*arm_cmpdi_insn, *arm_cmpdi_unsigned)
(*arm_cmpdi_zero, *thumb_cmpdi_zero): New insns.
(cstoredi4): Handle non-Cirrus also.
gcc/testsuite/
* gcc.c-torture/execute/20100416-1.c: New test case.
Co-Authored-By: Julian Brown <julian@codesourcery.com>
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r161764
2010-07-02 21:00:37 -04:00
Julian Brown
400cfcf50e
re PR target/43703 (Unexpected floating point precision loss due to ARM NEON autovectorization)
...
2010-07-02 Julian Brown <julian@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
PR target/43703
gcc/
* config/arm/vec-common.md (add<mode>3, sub<mode>3, smin<mode>3)
(smax<mode>3): Disable for NEON float modes when
flag_unsafe_math_optimizations is false.
* config/arm/neon.md (*add<mode>3_neon, *sub<mode>3_neon)
(*mul<mode>3_neon)
(mul<mode>3add<mode>_neon, mul<mode>3neg<mode>add<mode>_neon)
(reduc_splus_<mode>, reduc_smin_<mode>, reduc_smax_<mode>): Disable
for NEON float modes when flag_unsafe_math_optimizations is false.
(quad_halves_<code>v4sf): Only enable if flag_unsafe_math_optimizations
is true.
* doc/invoke.texi (ARM Options): Add note about floating point
vectorization requiring -funsafe-math-optimizations.
gcc/testsuite/
* gcc.dg/vect/vect.exp: Add -ffast-math for NEON.
* gcc.dg/vect/vect-reduc-6.c: Add XFAIL for NEON.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r161763
2010-07-02 20:46:51 -04:00
Sandra Loosemore
bab53516d0
neon.md (UNSPEC_VABA): Delete.
...
2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
Julian Brown <julian@codesourcery.com>
gcc/
* config/arm/neon.md (UNSPEC_VABA): Delete.
(UNSPEC_VABAL): Delete.
(UNSPEC_VABS): Delete.
(UNSPEC_VMUL_N): Delete.
(adddi3_neon): New.
(subdi3_neon): New.
(mul<mode>3add<mode>_neon): Make the pattern named.
(mul<mode>3neg<mode>add<mode>_neon): Likewise.
(neon_vadd<mode>): Replace with define_expand, and move the remaining
unspec parts...
(neon_vadd<mode>_unspec): ...to this.
(neon_vmla<mode>, neon_vmla<mode>_unspec): Likewise.
(neon_vlms<mode>, neon_vmls<mode>_unspec): Likewise.
(neon_vsub<mode>, neon_vsub<mode>_unspec): Likewise.
(neon_vaba<mode>): Rewrite in terms of vabd.
(neon_vabal<mode>): Rewrite in terms of vabdl.
(neon_vabs<mode>): Rewrite without unspec.
* config/arm/arm.md (*arm_adddi3): Disable for TARGET_NEON.
(*arm_subdi3): Likewise.
* config/arm/neon.ml (Vadd, Vsub): Split out 64-bit variants and add
No_op attribute to disable assembly output checks.
* config/arm/arm_neon.h: Regenerated.
* doc/arm-neon-intrinsics.texi: Regenerated.
gcc/testsuite/
* gcc.target/arm/neon/vadds64.c: Regenerated.
* gcc.target/arm/neon/vaddu64.c: Regenerated.
* gcc.target/arm/neon/vsubs64.c: Regenerated.
* gcc.target/arm/neon/vsubu64.c: Regenerated.
* gcc.target/arm/neon-vmla-1.c: Add -ffast-math to options.
* gcc.target/arm/neon-vmls-1.c: Likewise.
* gcc.target/arm/neon-vsubs64.c: New execution test.
* gcc.target/arm/neon-vsubu64.c: New execution test.
* gcc.target/arm/neon-vadds64.c: New execution test.
* gcc.target/arm/neon-vaddu64.c: New execution test.
Co-Authored-By: Julian Brown <julian@codesourcery.com>
From-SVN: r161762
2010-07-02 20:31:43 -04:00
GCC Administrator
b614e5669e
Daily bump.
...
From-SVN: r161760
2010-07-03 00:18:48 +00:00
Jan Hubicka
556e9ba028
ipa-split.c (split_function): For aggregate values set return_slot_opt...
...
* ipa-split.c (split_function): For aggregate values set return_slot_opt;
when passing DECL_BY_REFERENCE produce *<retval> = fncall.part ()
(execute_split_functions): Do not care about DECL_BY_REFERENCE.
From-SVN: r161756
2010-07-02 23:38:19 +00:00
Sandra Loosemore
b3b7bbce43
neon.md (UNSPEC_VAND): Delete.
...
2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/arm/neon.md (UNSPEC_VAND): Delete.
(UNSPEC_VBIC): Delete.
(UNSPEC_VCLZ): Delete.
(UNSPEC_VCNT): Delete.
(UNSPEC_VEOR): Delete.
(UNSPEC_VORN): Delete.
(UNSPEC_VORR): Delete.
(iordi3_neon): Rewrite RTL without unspec. Add alternatives to handle
core registers too.
(anddi3_neon): Likewise.
(orndi3_neon): Likewise.
(bicdi3_neon): Likewise.
(xordi3_neon): Likewise.
(neon_vclz<mode>): Rewrite as define_expand and clz<mode>2 to get
rid of unspec and handle unused operand.
(neon_vcnt<mode>): Similarly, with popcount<mode>2.
* config/arm/predicates.md (imm_for_neon_logic_operand):
Require TARGET_NEON.
(imm_for_neon_inv_logic_operand): Likewise.
* config/arm/arm.md (define_split for logical_binary_operator):
Disable for NEON registers.
(anddi3): Add new define_expand, and rename the insn. Disable
this insn for NEON, where anddi3_neon now applies.
(*anddi_notdi_di): Disable for TARGET_NEON, where bicdi3_neon applies.
(iordi3): As for anddi3.
(xordi3): Likewise.
* config/arm/neon.ml (Vand): Split DImode variants and mark them
as No_op to disable testing for exact instruction match.
(Vorr): Likewise.
(Veor): Likewise.
(Vbic): Likewise.
(Vorn): Likewise.
* config/arm/arm_neon.h: Regenerated.
* doc/arm-neon-intrinsics.texi: Regenerated.
gcc/testsuite/
* gcc.target/arm/neon-vands64.c: New.
* gcc.target/arm/neon-vandu64.c: New.
* gcc.target/arm/neon-vbics64.c: New.
* gcc.target/arm/neon-vbicu64.c: New.
* gcc.target/arm/neon-veors64.c: New.
* gcc.target/arm/neon-veoru64.c: New.
* gcc.target/arm/neon-vorns64.c: New.
* gcc.target/arm/neon-vornu64.c: New.
* gcc.target/arm/neon-vorrs64.c: New.
* gcc.target/arm/neon-vorru64.c: New.
* gcc.target/arm/neon/vands64.c: Regenerated.
* gcc.target/arm/neon/vandu64.c: Regenerated.
* gcc.target/arm/neon/vbics64.c: Regenerated.
* gcc.target/arm/neon/vbicu64.c: Regenerated.
* gcc.target/arm/neon/veors64.c: Regenerated.
* gcc.target/arm/neon/veoru64.c: Regenerated.
* gcc.target/arm/neon/vorns64.c: Regenerated.
* gcc.target/arm/neon/vornu64.c: Regenerated.
* gcc.target/arm/neon/vorrs64.c: Regenerated.
* gcc.target/arm/neon/vorru64.c: Regenerated.
From-SVN: r161755
2010-07-02 19:16:35 -04:00
Eric Botcazou
f4a4b582ca
Minor fixes
...
From-SVN: r161751
2010-07-02 21:38:40 +00:00
Eric Botcazou
260c8ba389
expr.h (emit_stack_probe): Declare.
...
* expr.h (emit_stack_probe): Declare.
* explow.c (emit_stack_probe): Make global.
(anti_adjust_stack_and_probe): Fix comments.
* config/sparc/linux.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
* config/sparc/linux64.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
* config/sparc/sol2.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
* config/sparc/sparc.c: Include except.h.
(sparc_emit_probe_stack_range): New function.
(output_probe_stack_range): Likewise.
(sparc_expand_prologue): Invoke sparc_emit_probe_stack_range if static
built-in stack checking is enabled.
* config/sparc/sparc-protos.h (output_probe_stack_range): Declare.
* config/sparc/sparc.md (UNSPECV_PROBE_STACK_RANGE): New constant.
(probe_stack_range): New insn.
From-SVN: r161749
2010-07-02 21:25:28 +00:00
Jerry DeLisle
8c54dc55ef
runtime_warning_1.f90: Remove extra dg line.
...
2010-07-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* gfortran.dg/runtime_warning_1.f90: Remove extra dg line.
From-SVN: r161747
2010-07-02 20:57:08 +00:00
Richard Guenther
e4f1aef136
re PR target/43958 (FAIL: gcc.dg/ipa/ipa-pta-10.c scan-ipa-dump pta "ESCAPED = { }")
...
PR target/43958
* config/pa/pa.c (hppa_gimplify_va_arg_expr): Use pointer arithmetic
for argument alignment.
From-SVN: r161746
2010-07-02 20:51:58 +00:00
Jerry DeLisle
1b9d45ed41
runtime_warning_1.f90: Fix dg syntax.
...
2010-07-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* gfortran.dg/runtime_warning_1.f90: Fix dg syntax.
* gfortran.dg/intent_out_5.f90: Same.
* gfortran.dg/ltrans-7.f90: Same.
* gfortran.dg/char_bounds_check_fail_1.f90: Same.
From-SVN: r161745
2010-07-02 20:51:50 +00:00
Jan Hubicka
2094f1fcd6
ipa-split.c (verify_non_ssa_vars): Break out from ......
...
* ipa-split.c (verify_non_ssa_vars): Break out from ...; perform DFS walk
backwards from entry_bb to check only those basic block of header
that might lead to execution of split part.
(consider_split) ... here.
(find_return_bb): Allow assignment in return BB.
(find_retval): New.
(split_function): Fix name of cloned function; take care of updating return
value in return_bb containing move.
* gcc.dg/tree-ssa/ipa-split-5.c: New function.
From-SVN: r161744
2010-07-02 20:45:00 +00:00
Iain Sandoe
c21ae2bfce
Object1.h: Correct Line endings.
...
* objc-obj-c++-shared/Object1.h: Correct Line endings.
From-SVN: r161743
2010-07-02 20:34:27 +00:00
Jakub Jelinek
416f380b0d
re PR c++/44780 (Bogus set-but-not-used variable warning)
...
PR c++/44780
* typeck.c (convert_for_assignment): When converting a convertible
vector type or objc++ types, call mark_rvalue_use.
* typeck2.c (build_m_component_ref): Use return values from
mark_rvalue_use or mark_lvalue_use.
* class.c (build_base_path): Likewise.
* call.c (build_conditional_expr): Likewise.
* c-c++-common/Wunused-var-12.c: New test.
From-SVN: r161742
2010-07-02 22:22:32 +02:00
Andreas Schwab
2dc8bd762e
re PR target/44771 (m68k_expand_prologue: variable set but not used)
...
PR target/44771
* config/m68k/m68k.c (m68k_expand_prologue): Remove set but not
used variable insn.
From-SVN: r161741
2010-07-02 20:15:59 +00:00
Mikael Morin
ff5b6492be
re PR fortran/44662 (unitialized memory on testcases abstract_type_6.f03 and typebound_call_4.f03)
...
2010-07-02 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/44662
* decl.c (match_procedure_in_type): Clear structure before using.
(gfc_match_generic): Ditto.
From-SVN: r161739
2010-07-02 20:01:05 +00:00
Nathan Froyd
dfd6ece2cb
trans-types.h (gfc_add_field_to_struct): Add tree ** parameter.
...
* trans-types.h (gfc_add_field_to_struct): Add tree ** parameter.
* trans-types.c (gfc_add_field_to_struct_1): New function, most
of which comes from...
(gfc_add_field_to_struct): ...here. Call it. Add new parameter.
(gfc_get_desc_dim_type): Call gfc_add_field_to_struct_1 for
building fields.
(gfc_get_array_descriptor_base): Likewise.
(gfc_get_mixed_entry_union): Likewise.
(gfc_get_derived_type): Add extra chain parameter for
gfc_add_field_to_struct.
* trans-stmt.c (gfc_trans_character_select): Likewise.
* trans-io.c (gfc_build_st_parameter): Likewise.
From-SVN: r161738
2010-07-02 19:53:24 +00:00
Eric Botcazou
0acba2b4cc
implicit-zee.c (combine_reaching_defs): Fix long lines.
...
* implicit-zee.c (combine_reaching_defs): Fix long lines.
(is_set_with_extension_DI): Delete.
(struct zero_extend_info): New structure.
(add_removable_zero_extend ): New function.
(find_removable_zero_extends): Use note_stores to find SETs.
(find_and_remove_ze): Fix long line, remove superfluous parentheses.
From-SVN: r161736
2010-07-02 19:25:30 +00:00
Tobias Burnus
7a0208b791
re PR libfortran/43298 (fortran library does not read in NaN -Inf or Inf)
...
2010-06-28 Tobias Burnus <burnus@net-b.de>
PR fortran/43298
* list_read.c (parse_real): Do not pass (..) on for NAN(..).
* read.c (convert_real): Fix comment about NAN/INF.
From-SVN: r161735
2010-07-02 21:07:30 +02:00
Jakub Jelinek
f0ee5e3e2a
Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes.
...
* Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes.
* Makefile.in: Regenerated.
From-SVN: r161731
2010-07-02 18:52:38 +02:00
Sebastian Pop
f3e3b4762b
Script to check patches violating the GNU style.
...
2010-07-02 Sebastian Pop <sebastian.pop@amd.com>
* check_GNU_style.sh: New.
From-SVN: r161729
2010-07-02 16:34:55 +00:00
Changpeng Fang
14e444c392
Reduce the cost in miss rate computation.
...
2010-07-02 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (compute_miss_rate): Rename to
is_miss_rate_acceptable. Pull total_positions computation
out of the loops. Early return if miss_positions exceeds
the acceptable threshold.
* tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Call
is_miss_rate_acceptable after renaming of compute_miss_rate.
From-SVN: r161728
2010-07-02 16:34:38 +00:00
Changpeng Fang
a245c04bcc
PR 44576: miss rate computation improvement for prefetching loop arrays.
...
2010-07-02 Changpeng Fang <changpeng.fang@amd.com>
PR middle-end/44576
* tree-ssa-loop-prefetch.c (compute_miss_rate): Return 1000 (out
of 1000) for miss rate if the address diference is greater than or
equal to the cache line size (the two reference will never hit the
same cache line).
From-SVN: r161727
2010-07-02 16:34:29 +00:00
Bernd Schmidt
e4c6a07ab5
re PR tree-optimization/42172 (inefficient bit fields assignments)
...
PR target/42172
* config/arm/arm.c (thumb1_rtx_costs): Improve support for SIGN_EXTEND
and ZERO_EXTEND.
(arm_rtx_costs_1): Likewise.
(arm_size_rtx_costs): Use arm_rtx_costs_1 for these codes.
* config/arm/arm.md (is_arch6): New attribute.
(zero_extendhisi2, zero_extendqisi2, extendhisi2,
extendqisi2): Tighten the code somewhat, avoiding invalid
RTL to occur in the expander patterns.
(thumb1_zero_extendhisi2): Merge with thumb1_zero_extendhisi2_v6.
(thumb1_zero_extendhisi2_v6): Delete.
(thumb1_extendhisi2): Merge with thumb1_extendhisi2_v6.
(thumb1_extendhisi2_v6): Delete.
(thumb1_extendqisi2): Merge with thumb1_extendhisi2_v6.
(thumb1_extendqisi2_v6): Delete.
(zero_extendhisi2 for register input splitter): New.
(zero_extendqisi2 for register input splitter): New.
(thumb1_extendhisi2 for register input splitter): New.
(extendhisi2 for register input splitter): New.
(extendqisi2 for register input splitter): New.
(TARGET_THUMB1 extendqisi2 for memory input splitter): New.
(arm_zero_extendhisi2): Allow nonimmediate_operand for operand 1,
and add support for a register alternative requiring a split.
(thumb1_zero_extendqisi2): Likewise.
(arm_zero_extendqisi2): Likewise.
(arm_extendhisi2): Likewise.
(arm_extendqisi2): Likewise.
testsuite/
PR target/42172
* gcc.target/arm/pr42172-1.c: New test.
From-SVN: r161726
2010-07-02 16:25:59 +00:00
Bernd Schmidt
18e8200f70
re PR rtl-optimization/42835 (Missed merging common code sequence at the end of two basic blocks)
...
PR target/42835
* config/arm/arm-modes.def (CC_NOTB): New mode.
* config/arm/arm.c (get_arm_condition_code): Handle it.
* config/arm/thumb2.md (thumb2_compare_scc): Delete pattern.
* config/arm/arm.md (subsi3_compare0_c): New pattern.
(compare_scc): Now a define_and_split. Add a number of extra
splitters before it.
testsuite/
PR target/42835
* gcc.target/arm/pr42835.c: New test.
From-SVN: r161725
2010-07-02 16:22:33 +00:00
Rainer Orth
faeb4ee3aa
configure.ac (gfortran_use_symver): Only check for Sun-style symbol versioning on Solaris 2.
...
libgfortran:
* configure.ac (gfortran_use_symver): Only check for Sun-style symbol
versioning on Solaris 2.
* configure: Regenerate.
libssp:
* configure.ac (ssp_use_symver): Only check for Sun-style symbol
versioning on Solaris 2.
* configure: Regenerate.
From-SVN: r161724
2010-07-02 16:17:04 +00:00
Paolo Carlini
1fa29c8462
crash101.C: Remove stray // from dg-error comment.
...
2010-07-02 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/template/crash101.C: Remove stray // from dg-error comment.
From-SVN: r161722
2010-07-02 15:17:10 +00:00
Sandra Loosemore
a277dd9b1a
arm.c (neon_vdup_constant): Expand into canonical RTL instead of an unspec.
...
2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/arm/arm.c (neon_vdup_constant): Expand into canonical RTL
instead of an unspec.
(neon_expand_vector_init): Likewise.
* config/arm/neon.md (UNSPEC_VCOMBINE): Delete.
(UNSPEC_VDUP_LANE): Delete.
(UNSPEC VDUP_N): Delete.
(UNSPEC_VGET_HIGH): Delete.
(UNSPEC_VGET_LANE): Delete.
(UNSPEC_VGET_LOW): Delete.
(UNSPEC_VMVN): Delete.
(UNSPEC_VSET_LANE): Delete.
(V_double_vector_mode): New.
(vec_set<mode>_internal): Make code emitted match that for the
corresponding intrinsics.
(vec_setv2di_internal): Likewise.
(neon_vget_lanedi): Rewrite to expand into emit_move_insn.
(neon_vget_lanev2di): Rewrite to expand into vec_extractv2di.
(neon_vset_lane<mode>): Combine double and quad patterns and
expand into vec_set<mode>_internal instead of UNSPEC_VSET_LANE.
(neon_vset_lanedi): Rewrite to expand into emit_move_insn.
(neon_vdup_n<mode>): Rewrite RTL without unspec.
(neon_vdup_ndi): Rewrite as define_expand and use emit_move_insn.
(neon_vdup_nv2di): Rewrite RTL without unspec and merge with
with neon_vdup_lanev2di, adjusting the pattern from the latter
to be predicable for consistency.
(neon_vdup_lane<mode>_internal): New.
(neon_vdup_lane<mode>): Turn into a define_expand and rewrite
to avoid using an unspec.
(neon_vdup_lanedi): Rewrite RTL pattern to avoid unspec.
(neon_vdup_lanev2di): Turn into a define_expand.
(neon_vcombine): Rewrite pattern to eliminate UNPSEC_VCOMBINE.
(neon_vget_high<mode>): Replace with....
(neon_vget_highv16qi): New pattern using canonical RTL.
(neon_vget_highv8hi): Likewise.
(neon_vget_highv4si): Likewise.
(neon_vget_highv4sf): Likewise.
(neon_vget_highv2di): Likewise.
(neon_vget_low<mode>): Replace with....
(neon_vget_lowv16qi): New pattern using canonical RTL.
(neon_vget_lowv8hi): Likewise.
(neon_vget_lowv4si): Likewise.
(neon_vget_lowv4sf): Likewise.
(neon_vget_lowv2di): Likewise.
* config/arm/neon.ml (Vget_lane): Add No_op attribute to suppress
test for this emitting vmov.
(Vset_lane): Likewise.
(Vdup_n): Likewise.
(Vmov_n): Likewise.
* doc/arm-neon-intrinsics.texi: Regenerated.
gcc/testsuite/
* gcc.target/arm/neon/vdup_ns64.c: Regenerated.
* gcc.target/arm/neon/vdup_nu64.c: Regenerated.
* gcc.target/arm/neon/vdupQ_ns64.c: Regenerated.
* gcc.target/arm/neon/vdupQ_nu64.c: Regenerated.
* gcc.target/arm/neon/vmov_ns64.c: Regenerated.
* gcc.target/arm/neon/vmov_nu64.c: Regenerated.
* gcc.target/arm/neon/vmovQ_ns64.c: Regenerated.
* gcc.target/arm/neon/vmovQ_nu64.c: Regenerated.
* gcc.target/arm/neon/vget_lanes64.c: Regenerated.
* gcc.target/arm/neon/vget_laneu64.c: Regenerated.
* gcc.target/arm/neon/vset_lanes64.c: Regenerated.
* gcc.target/arm/neon/vset_laneu64.c: Regenerated.
* gcc.target/arm/neon-vdup_ns64.c: New.
* gcc.target/arm/neon-vdup_nu64.c: New.
* gcc.target/arm/neon-vdupQ_ns64.c: New.
* gcc.target/arm/neon-vdupQ_nu64.c: New.
* gcc.target/arm/neon-vdupQ_lanes64.c: New.
* gcc.target/arm/neon-vdupQ_laneu64.c: New.
* gcc.target/arm/neon-vmov_ns64.c: New.
* gcc.target/arm/neon-vmov_nu64.c: New.
* gcc.target/arm/neon-vmovQ_ns64.c: New.
* gcc.target/arm/neon-vmovQ_nu64.c: New.
* gcc.target/arm/neon-vget_lanes64.c: New.
* gcc.target/arm/neon-vget_laneu64.c: New.
* gcc.target/arm/neon-vset_lanes64.c: New.
* gcc.target/arm/neon-vset_laneu64.c: New.
From-SVN: r161720
2010-07-02 10:48:04 -04:00
Sandra Loosemore
8c98c2a6cc
neon.md (vec_extractv2di): Correct error in register numbering to reconcile with neon_vget_lanev2di.
...
2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/arm/neon.md (vec_extractv2di): Correct error in register
numbering to reconcile with neon_vget_lanev2di.
From-SVN: r161719
2010-07-02 10:43:26 -04:00
Richard Guenther
90fa9e17bf
tree-ssa-structalias.c (pt_solution_set_var): New function.
...
2010-07-02 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (pt_solution_set_var): New function.
* tree-ssa-alias.h (pt_solution_set_var): Declare.
* tree-ssa-loop-ivopts.c (copy_ref_info): Also copy or create
points-to information.
From-SVN: r161716
2010-07-02 13:25:23 +00:00
Christian Borntraeger
c3ac3ddf84
s390.c (override_options): Adopt prefetching at -O3 to handle flag_prefetch_loop_arrays as a tristate.
...
2010-07-02 Christian Borntraeger <borntraeger@de.ibm.com>
* config/s390/s390.c (override_options): Adopt prefetching
at -O3 to handle flag_prefetch_loop_arrays as a tristate.
From-SVN: r161709
2010-07-02 12:43:00 +00:00
Jan Hubicka
b144ba9d4d
df-problems.c (df_kill_notes): Do not collect dead notes.
...
* df-problems.c (df_kill_notes): Do not collect dead notes.
(df_set_note): Just call add_reg_note.
(df_set_unused_notes_for_mw, df_set_dead_notes_for_mw,
df_create_unused_note): Do not deal with lists of old notes.
(df_note_bb_compute): Likewise.
From-SVN: r161708
2010-07-02 12:30:38 +00:00
Richard Guenther
fca821b51c
tree-ssa-structalias.c (find_func_aliases): Handle pointer alignment via BIT_AND_EXPR.
...
2010-07-02 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (find_func_aliases): Handle
pointer alignment via BIT_AND_EXPR.
* tree-vrp.c (extract_range_from_binary_expr): Likewise.
From-SVN: r161707
2010-07-02 12:28:54 +00:00
Rainer Orth
8198d54181
acinclude.m4 (symvers_renaming): Define HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT instead of...
...
2010-07-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* acinclude.m4 (symvers_renaming): Define
HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT instead of
_GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
Fix syntax error.
* config.h.in: Regenerate.
* configure: Regenerate.
From-SVN: r161706
2010-07-02 12:09:29 +00:00
Richard Guenther
1936833358
tree-data-ref.c (initialize_data_dependence_relation): Handle mismatching number of dimensions properly.
...
2010-07-02 Richard Guenther <rguenther@suse.de>
* tree-data-ref.c (initialize_data_dependence_relation): Handle
mismatching number of dimensions properly.
* g++.dg/torture/20100702-1.C: New testcase.
From-SVN: r161705
2010-07-02 12:05:59 +00:00
Eric Botcazou
2334baf490
misc.c (gnat_handle_option): Do not populate gnat_argv.
...
* gcc-interface/misc.c (gnat_handle_option): Do not populate gnat_argv.
(gnat_handle_option): Allocate only one element for gnat_argv.
(gnat_init): Do not populate gnat_argv.
From-SVN: r161704
2010-07-02 11:52:30 +00:00
Ulrich Weigand
1a4fc49d7f
re PR target/44707 (operand requires impossible reload)
...
ChangeLog:
PR target/44707
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Recognize
(lo_sum (high ...) ...) patterns generated by earlier passes.
testsuite/ChangeLog:
PR target/44707
* gcc.c-torture/compile/pr44707.c: New test.
From-SVN: r161703
2010-07-02 11:48:30 +00:00
Matthias Klose
d1f736a2d7
- Revert two chunks from libstdc++-v3/python/libstdcxx/v6/printers.py,
...
left over from testing.
From-SVN: r161702
2010-07-02 10:55:51 +00:00
Rainer Orth
1e0859a29e
Missed in last commit.
...
From-SVN: r161701
2010-07-02 10:26:12 +00:00
Rainer Orth
ca6d1176f7
configure.ac: Check for Sun symbol versioning.
...
* configure.ac: Check for Sun symbol versioning.
Check for memmove.
* configure: Regenerate.
* config.h.in: Regenerate.
* Makefile.am [LIBSSP_USE_SYMVER]: Protect version_arg,
version_dep with LIBSSP_USE_SYMVER_GNU.
[LIBSSP_USE_SYMVER_SUN]: Handle Sun symbol versioning.
* Makefile.in: Regenerate.
* ssp.map: Reformat.
* memmove-chk.c: Change guard to HAVE_MEMMOVE.
From-SVN: r161699
2010-07-02 10:15:09 +00:00
Paolo Carlini
baf7c318bb
re PR c++/44039 (ICE: Segmentation fault on error recovery)
...
/cp
2010-07-02 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/44039
* pt.c (tsubst_baselink): Return error_mark_node if lookup_fnfields
returns NULL_TREE.
/testsuite
2010-07-02 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/44039
* g++.dg/template/crash101.C: New.
From-SVN: r161698
2010-07-02 10:13:21 +00:00