Eric Botcazou [Tue, 10 Nov 2009 18:01:22 +0000 (18:01 +0000)]
vect-multitypes-5.c: XFAIL on SPARC 32-bit.
* gcc.dg/vect/vect-multitypes-5.c: XFAIL on SPARC 32-bit.
* gcc.dg/vect/vect-multitypes-6.c: Likewise.
* gcc.dg/vect/vect-multitypes-12.c: Likewise.
* gcc.dg/vect/slp-multitypes-3.c: Likewise.
From-SVN: r154070
Eric Botcazou [Tue, 10 Nov 2009 17:44:46 +0000 (17:44 +0000)]
sparc.c (print_operand): Test for a non-null DECL_SIZE of DECL_RESULT before evaluating it.
* config/sparc/sparc.c (print_operand) <')'>: Test for a non-null
DECL_SIZE of DECL_RESULT before evaluating it.
From-SVN: r154068
Eric Botcazou [Tue, 10 Nov 2009 17:29:52 +0000 (17:29 +0000)]
ipa-sra-2.c: Use calloc instead of malloc.
* gcc.c-torture/execute/ipa-sra-2.c: Use calloc instead of malloc.
* gcc.dg/pr41963.c: Do not include math.h. Declare fabsf manually.
From-SVN: r154067
Kaveh R. Ghazi [Tue, 10 Nov 2009 16:16:57 +0000 (16:16 +0000)]
re PR tree-optimization/41987 (expected class ‘constant’, have ‘binary’ (rdiv_expr) in build_complex, at tree.c:1485)
PR tree-optimization/41987
* fold-const.c (const_binop): Avoid using fold_buildN().
testsuite:
* gcc.c-torture/compile/pr41987.c: New.
From-SVN: r154065
Martin Jambor [Tue, 10 Nov 2009 14:43:20 +0000 (15:43 +0100)]
tree-pass.h (struct ipa_opt_pass_d): Added stmt_fixup field.
2009-11-10 Martin Jambor <mjambor@suse.cz>
* tree-pass.h (struct ipa_opt_pass_d): Added stmt_fixup field.
(execute_all_ipa_stmt_fixups): Declare.
* ipa-cp.c (pass_ipa_cp): Added stmt_fixup value.
* ipa-inline.c (pass_ipa_inline): Likewise.
* ipa-pure-const.c (pass_ipa_pure_cons): Likewise.
* ipa-reference.c (pass_ipa_reference): Likewise.
* ipa.c (pass_ipa_whole_program_visibility): Likewise.
* lto-streamer-out.c (pass_ipa_lto_gimple_out): Likewise.
(pass_ipa_lto_finish_out): Likewise.
* lto-wpa-fixup.c (pass_ipa_lto_wpa_fixup): Likewise.
* passes.c (execute_ipa_stmt_fixups): New function.
(execute_all_ipa_stmt_fixups): New function.
* lto-streamer-in.c (input_function): Call execute_all_ipa_stmt_fixups.
From-SVN: r154064
Eric Botcazou [Tue, 10 Nov 2009 12:37:56 +0000 (12:37 +0000)]
re PR middle-end/20548 (ACATS c52103x c52104x c52104y segfault)
PR ada/20548
* system-linux-alpha.ads (Stack_Check_Probes): Set to true.
* system-linux-hppa.ads (Stack_Check_Probes): Likewise.
* system-linux-sparc.ads (Stack_Check_Probes): Likewise.
* system-linux-sparcv9.ads (Stack_Check_Probes): Likewise.
From-SVN: r154063
Eric Botcazou [Tue, 10 Nov 2009 12:19:27 +0000 (12:19 +0000)]
system-linux-alpha.ads (AAMP, [...]): Delete.
* system-linux-alpha.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-mips.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-mips64el.ads (AAMP, Compiler_System_Version, OpenVMS,
Functions_Return_By_DSP, Front_End_ZCX_Support, High_Integrity_Mode,
Long_Shifts_Inlined): Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-mipsel.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-s390.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-s390x.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-sh4.ads (Stack_Check_Limits, Always_Compatible_Rep):
New.
* system-linux-sparc.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support): Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-sparcv9.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-rtems.ads (OpenVMS): Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
From-SVN: r154062
Eric Botcazou [Tue, 10 Nov 2009 11:23:54 +0000 (11:23 +0000)]
re PR middle-end/20548 (ACATS c52103x c52104x c52104y segfault)
PR ada/20548
* explow.c (probe_stack_range): Fix typo.
* config/sparc/sparc.md (probe_stack): New expander.
From-SVN: r154061
GCC Administrator [Tue, 10 Nov 2009 00:16:43 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r154058
Jan Kratochvil [Mon, 9 Nov 2009 23:17:54 +0000 (23:17 +0000)]
* largefile.m4 (ACX_LARGEFILE): Call AC_PLUGINS.
From-SVN: r154055
Benjamin Kosnik [Mon, 9 Nov 2009 22:09:30 +0000 (22:09 +0000)]
user.cfg.in: Regenerate, add files.
2009-11-09 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Regenerate, add files.
* libsupc++/eh_ptr.cc: Format.
* libsupc++/exception_ptr.h: Same.
* libsupc++/cxxabi.h(recursive_init_error): Move declaration here.
* libsupc++/guard.cc: From here.
* libsupc++/nested_exception.h: Add markup.
From-SVN: r154054
Jon Beniston [Mon, 9 Nov 2009 20:34:44 +0000 (20:34 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2009-11-09 Jon Beniston <jon@beniston.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r154051
Jakub Jelinek [Mon, 9 Nov 2009 19:40:56 +0000 (20:40 +0100)]
re PR middle-end/40946 (Spurious array subscript is above bounds warning)
PR middle-end/40946
* gcc.dg/pr40946.c: New test.
From-SVN: r154047
Dave Korn [Mon, 9 Nov 2009 18:36:08 +0000 (18:36 +0000)]
cygwin.h (LINK_SPEC): Add -tsaware flag if !mno-cygwin.
* config/i386/cygwin.h (LINK_SPEC): Add -tsaware flag if !mno-cygwin.
From-SVN: r154044
Jason Merrill [Mon, 9 Nov 2009 18:33:00 +0000 (13:33 -0500)]
* gdbinit.in (pgq): New function for printing gimple sequence.
From-SVN: r154043
Jason Merrill [Mon, 9 Nov 2009 18:32:53 +0000 (13:32 -0500)]
re PR c++/41972 (nondependent static member function as a reference template parameter fails)
PR c++/41972
* parser.c (cp_parser_template_argument): Accept SCOPE_REF around
VAR_DECL.
From-SVN: r154042
Jason Merrill [Mon, 9 Nov 2009 18:32:44 +0000 (13:32 -0500)]
re PR c++/41994 (ICE with &A::operator T)
PR c++/41994
* pt.c (tsubst_baselink): tsubst the name.
From-SVN: r154041
Johannes Singler [Mon, 9 Nov 2009 16:36:59 +0000 (16:36 +0000)]
multiway_merge.h (multiway_merge_*, [...]): Replace int by appropriate difference_type (typedef to _SeqNumber) or _ThreadIndex.
2009-11-09 Johannes Singler <singler@kit.edu>
* include/parallel/multiway_merge.h (multiway_merge_*,
__sequential_multiway_merge, parallel_multiway_merge): Replace
int by appropriate difference_type (typedef to _SeqNumber) or
_ThreadIndex.
* include/parallel/multiseq_selection.h (multiseq_partition,
multiseq_selection): Replace int by appropriate difference_type
(typedef to _SeqNumber)
* include/parallel/base.h (__get_max_threads): Replace int by
_ThreadIndex.
* include/parallel/balanced_quicksort.h
(__qsb_local_sort_with_helping, __parallel_sort_qsb): Likewise.
* include/parallel/set_operations.h (__parallel_set_operation):
Likewise.
* include/parallel/unique_copy.h (__parallel_unique_copy): Likewise.
* include/parallel/multiway_mergesort.h (_SplitConsistently,
parallel_sort_mwms_pu, parallel_sort_mwms): Likewise.
* include/parallel/partial_sum.h (__parallel_partial_sum_linear):
Likewise.
* include/parallel/partition.h (__parallel_partition): Replace int
by appropriate difference_type or _ThreadIndex.
From-SVN: r154039
Paul Brook [Mon, 9 Nov 2009 13:50:38 +0000 (13:50 +0000)]
extend.texi (Half-Precision): Update wording to reflect that there are now multiple -mfpu options that enable...
2009-11-09 Paul Brook <paul@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/extend.texi (Half-Precision): Update wording to reflect
that there are now multiple -mfpu options that enable fp16
hardware support.
* doc/invoke.texi: Update list of ARM -mfpu= options.
* config.gcc: Update ARM --with-fpu option list.
* config/arm/arm.c (all_fpus): Add vfpv3-fp16, vfpv3-d16-fp16,
vfpv3xd and vfpv3xd-fp16.
(use_vfp_abi): New function.
(aapcs_vfp_is_call_or_return_candidate): Avoid double precision regs
when undesirable.
(aapcs_vfp_is_return_candidate, aapcs_vfp_is_call_candidate,
aapcs_vfp_allocate_return_reg): Use use_vfp_abi.
(arm_rtx_costs_1, arm_size_rtx_costs, arm_fastmul_rtx_costs,
arm_9e_rtx_costs): Only expect double-precision operations if the FPU
provides them.
(coproc_secondary_reload_class): Reload HFmode via GENERAL_REGS if no
NEON.
(arm_print_operand): Handle 'p' modifier.
(arm_hard_regno_mode_ok): : Allow HFmode in VFP registers if
TARGET_FP16.
* config/arm/arm.h (TARGET_VFP_SINGLE, TARGET_VFP_DOUBLE): Define.
(TARGET_FP16): Define.
* config/arm/vfp.md: Disable double-precision patterns if the FPU
does not provide them.
(arm_movdi_vfp, thumb2_movdi_vfp): Use fcpys to move
double-precision values on a single-precision FPU.
(movdf_vfp, thumb2_movdf_vfp): Likewise. Use "Dy" for
double-precision constants.
(movhf_vfp_neon): New pattern (was movhf_vfp).
(movhf_vfp): Remove NEON instructions.
* config/arm/constraints.md: Add new "Dy" constraint for
double-precision constants. Update description of "Dv".
* config/arm/arm.md: Disable double-precision patterns if the FPU
does not provide them
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r154034
Jakub Jelinek [Mon, 9 Nov 2009 13:37:47 +0000 (14:37 +0100)]
i386.c (print_operand): Fix formatting.
* config/i386/i386.c (print_operand) <case 'D'>: Fix formatting.
(print_operand) <case 'Y'>: Likewise. Fix a pasto in operand lossage
diagnostics.
From-SVN: r154033
Jason Merrill [Mon, 9 Nov 2009 00:26:03 +0000 (19:26 -0500)]
sso_string_base.h (_M_mutate): Remove extra 'const'.
2009-11-08 Jason Merrill <jason@redhat.com>
* include/ext/sso_string_base.h (_M_mutate): Remove extra 'const'.
From-SVN: r154025
GCC Administrator [Mon, 9 Nov 2009 00:17:16 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r154024
Jason Merrill [Sun, 8 Nov 2009 23:10:53 +0000 (18:10 -0500)]
37920, not 37290
From-SVN: r154021
H.J. Lu [Sun, 8 Nov 2009 22:36:51 +0000 (22:36 +0000)]
collect2.c (main): Search PLUGIN_LD for plugin linker.
2009-11-08 H.J. Lu <hongjiu.lu@intel.com>
* collect2.c (main): Search PLUGIN_LD for plugin linker.
* configure.ac (--with-plugin-ld): New. Default to ld.
* configure: Regenerated.
* config.in: Likewise.
* exec-tool.in (ORIGINAL_PLUGIN_LD_FOR_TARGET): New.
(collect-ld): Use ORIGINAL_PLUGIN_LD_FOR_TARGET for -plugin.
From-SVN: r154020
H.J. Lu [Sun, 8 Nov 2009 22:36:22 +0000 (14:36 -0800)]
Remove extra pathname.
From-SVN: r154019
Jason Merrill [Sun, 8 Nov 2009 22:27:39 +0000 (17:27 -0500)]
re PR target/37290 (Endless recursion in cse_cc_succs)
PR c++/37290
* pt.c (tsubst) [TYPEOF_TYPE]: Set cp_unevaluated_operand.
From-SVN: r154018
Jonathan Gray [Sun, 8 Nov 2009 22:19:45 +0000 (22:19 +0000)]
openbsd-stdint.h: Change to reflect what c_common_nodes_and_builtins expects.
* config/openbsd-stdint.h: Change to reflect what
c_common_nodes_and_builtins expects.
From-SVN: r154017
Paolo Carlini [Sun, 8 Nov 2009 21:26:57 +0000 (21:26 +0000)]
builtins.c (apply_args_reg_offset): Remove commented out delaration.
2009-11-08 Paolo Carlini <paolo.carlini@oracle.com>
* builtins.c (apply_args_reg_offset): Remove commented out delaration.
From-SVN: r154015
Jakub Jelinek [Sun, 8 Nov 2009 21:12:52 +0000 (22:12 +0100)]
re PR target/41985 (Internal compiler error reported.)
PR target/41985
* config/i386/i386.c (get_some_local_dynamic_name): Don't assert
function contains at least one local dynamic name.
(print_operand) <case '&'>: Instead output operand lossage diagnostics
here if that happens.
* gcc.target/i386/pr41985.c: New test.
From-SVN: r154014
Zbigniew Chamski [Sun, 8 Nov 2009 21:10:08 +0000 (21:10 +0000)]
cfgrtl.c (pass_free_cfg): Add pass name.
* cfgrtl.c (pass_free_cfg): Add pass name.
* cgraphbuild.c (pass_build_cgraph_edges): Likewise.
(pass_rebuild_cgraph_edges, pass_remove_cgraph_callee_edges): Likewise.
* dce.c (pass_ud_rtl_dce, pass_fast_rtl_dce): Change pass name.
* df-core.c (pass_df_initialize_no_opt): Likewise.
* except.c (pass_rtl_eh): Likewise.
* function.c (pass_init_function, pass_leaf_regs): Likewise.
* gcse.c (pass_rtl_pre): Change pass name.
* passes.c (pass_postreload): Add pass name.
(make_pass_instance): Don't use duplicate-tracking logic for
names starting with '*'.
(next_pass_1): Assert that pass has a name.
(register_one_dump_file): If there is an space in the name,
skip past it.
* predict.c (pass_strip_predict_hints): Add pass name.
* reg-stack.c (pass_stack_regs): Likewise.
* stack-ptr-mod.c (pass_stack_ptr_mod): Likewise.
* tree-cfg.c (pass_warn_function_return,
pass_warn_function_noreturn): Add pass name.
* tree-dfa.c (pass_referenced_vars): Likewise.
* tree-optimize.c (pass_cleanup_cfg_post_optimizing):
Fix whitespace before comment.
(pass_fixup_cfg): Add pass name, fix whitespace before comment.
(pass_init_datastructures): Add pass name.
* tree-ssa-loop.c (pass_record_bounds): Likewise.
* tree-ssa.c (pass_early_warn_uninitialized,
pass_late_warn_uninitialized): Likewise.
* tree.c (pass_ipa_free_lang_data): Likewise.
* doc/passes.texi (pass manager): Document how to disambiguate
pass names.
Co-Authored-By: Joern Rennecke <amylaar@spamcop.net>
From-SVN: r154013
Paolo Bonzini [Sun, 8 Nov 2009 20:44:56 +0000 (20:44 +0000)]
df-problems.c: Fix documentation for forward simulation of LR.
2009-11-08 Paolo Bonzini <bonzini@gnu.org>
* df-problems.c: Fix documentation for forward simulation of LR.
(df_simulate_one_insn_forwards): Use df_simulate_find_defs.
(df_simulate_finalize_forwards): Remove.
* df.h (df_simulate_finalize_forwards): Remove.
From-SVN: r154012
Richard Guenther [Sun, 8 Nov 2009 15:27:17 +0000 (15:27 +0000)]
tree-ssa-structalias.c (build_succ_graph): Properly make variables escape if they are stored to anything.
2009-11-08 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (build_succ_graph): Properly make
variables escape if they are stored to anything.
* gcc.dg/torture/pta-escape-1.c: New testcase.
From-SVN: r154010
Eric Botcazou [Sun, 8 Nov 2009 12:17:51 +0000 (12:17 +0000)]
decl.c (make_packable_type): Fix oversight.
* gcc-interface/decl.c (make_packable_type): Fix oversight.
(gnat_to_gnu_field): Do not attempt to change the form of the type
if the field requires strict alignment. Always change the form of
the type if the specified size is smaller than its size.
From-SVN: r154009
Richard Guenther [Sun, 8 Nov 2009 12:10:32 +0000 (12:10 +0000)]
re PR rtl-optimization/41928 (segfault at gcc/bitmap.c:297)
2009-11-08 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/41928
* loop-invariant.c (free_loop_data): If we didn't allocate
loop data do not try to free it.
* gfortran.dg/pr41928.f90: New testcase.
From-SVN: r154008
Jason Merrill [Sun, 8 Nov 2009 03:47:44 +0000 (22:47 -0500)]
* tree.c (reconstruct_complex_type): Preserve attributes.
From-SVN: r154007
Jason Merrill [Sun, 8 Nov 2009 03:47:36 +0000 (22:47 -0500)]
re PR c++/18451 (C++ error message regression)
PR c++/18451
PR c++/40738
* cp-tree.h (cp_decl_specifier_seq): Add any_type_specifiers_p.
* parser.c (cp_parser_single_declaration): Call
cp_parser_parse_and_diagnose_invalid_type_name here, too.
(cp_parser_parameter_declaration): And here.
(cp_parser_parse_and_diagnose_invalid_type_name): Be
less picky about declarator form. Don't skip to
the end of the block if we're in a declarator.
(cp_parser_decl_specifier_seq): Set any_type_specifiers_p.
(cp_parser_simple_declaration): Check it.
(cp_parser_member_declaration): Likewise.
(cp_parser_diagnose_invalid_type_name): Tweak error message.
(cp_parser_expression_statement): Likewise.
* decl2.c (grokfield): Mention decltype instead of typeof.
From-SVN: r154006
GCC Administrator [Sun, 8 Nov 2009 00:16:49 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r154005
Richard Guenther [Sat, 7 Nov 2009 21:33:29 +0000 (21:33 +0000)]
tree-ssa-structalias.c (build_succ_graph): Feed stores to anything only to variables that can take pointers.
2009-11-07 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (build_succ_graph): Feed stores
to anything only to variables that can take pointers.
(get_constraint_for_ssa_var): Properly exclude full
variables from expanding.
(first_vi_for_offset): Avoid overflow in arithmetic.
(first_or_preceding_vi_for_offset): Likewise.
(count_num_arguments): Fix implementation.
(gate_ipa_pta): Do not run when not optimizing.
From-SVN: r154002
David Binderman [Sat, 7 Nov 2009 20:51:14 +0000 (20:51 +0000)]
builtins.c (apply_args_size, [...]): Remove some set but not used variables.
2009-11-07 David Binderman <dcb314@hotmail.com>
* builtins.c (apply_args_size, expand_builtin_mathfn, expand_powi,
expand_builtin_expect, maybe_emit_sprintf_chk_warning): Remove some
set but not used variables.
* calls.c (flags_from_decl_or_type): Likewise.
* genautomata.c (check_regexp_units_distribution): Likewise.
From-SVN: r154001
Jason Merrill [Sat, 7 Nov 2009 20:28:54 +0000 (15:28 -0500)]
* g++.dg/abi/regparm1.C: Fix execute test.
From-SVN: r154000
Jakub Jelinek [Sat, 7 Nov 2009 17:41:07 +0000 (18:41 +0100)]
re PR tree-optimization/41643 (ICE (segmentation fault) for SPEC CPU2000's 176.gcc when using -fno-tree-dce)
PR tree-optimization/41643
* gcc.dg/pr41643.c: New test.
From-SVN: r153997
Uros Bizjak [Sat, 7 Nov 2009 07:44:08 +0000 (08:44 +0100)]
sse.md (xop_pmacsww, [...]): Compress operand alternatives.
* config/i386/sse.md (xop_pmacsww, xop_pmacssww, xop_pmacsdd,
xop_pmacssdd, xop_pmacssdql, xop_pmacssdqh, xop_pmacsdql,
*xop_pmacsdql_mem, xop_pmacsdqh, *xop_pmacsdqh_mem, xop_pmacsswd,
xop_pmacswd, xop_pmadcsswd, xop_pmadcswd, xop_pcmov_<mode>,
xop_pcmov_<mode>256, xop_pperm, xop_pperm_pack_v2di_v4si,
xop_pperm_pack_v4si_v8hi, xop_pperm_pack_v8hi_v16qi): Compress
operand alternatives.
From-SVN: r153993
Jerry DeLisle [Sat, 7 Nov 2009 02:35:06 +0000 (02:35 +0000)]
re PR fortran/41909 (ICE with "call foo" in "program foo")
2009-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41909
* gfortran.dg/recursive_check_15.f90: New test.
From-SVN: r153990
Jerry DeLisle [Sat, 7 Nov 2009 02:32:35 +0000 (02:32 +0000)]
Fix changelog.
From-SVN: r153989
Jerry DeLisle [Sat, 7 Nov 2009 02:30:08 +0000 (02:30 +0000)]
resolve.c (is_illegal_recursion): Return false if sym is program.
2009-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* resolve.c (is_illegal_recursion): Return false if sym is program.
From-SVN: r153988
Jan Kratochvil [Sat, 7 Nov 2009 01:59:54 +0000 (01:59 +0000)]
largefile.m4: New file.
* largefile.m4: New file.
Co-Authored-By: Joel Brobecker <brobecker@adacore.com>
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r153987
GCC Administrator [Sat, 7 Nov 2009 00:16:54 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r153985
Steven G. Kargl [Fri, 6 Nov 2009 23:47:51 +0000 (23:47 +0000)]
2009-11-06 Steven G. Kargl <kargl@gcc.gnu.org>
resolve.c (check_typebound_override): Remove duplicate "in" in error
message.
From-SVN: r153982
Benjamin Kosnik [Fri, 6 Nov 2009 22:15:17 +0000 (22:15 +0000)]
user.cfg.in: Adjust includes.
2009-11-06 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Adjust includes.
* doc/doxygen/doxygroups.cc: Move group markup.
* include/tr1_impl/regex: Change " to '. Add group markup.
* include/std/utility: Same.
* include/std/type_traits: Same.
* include/std/streambuf: Same.
* include/std/iosfwd: Same.
* include/std/limits: Same.
* include/std/sstream: Same.
* include/profile/impl/profiler_state.h: Same.
* include/profile/impl/profiler_hashtable_size.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/streambuf_iterator.h: Same.
* libsupc++/exception: Same.
* libsupc++/cxxabi.h: Same.
* include/tr1_impl/type_traits: Same.
* include/parallel/multiway_merge.h: Change @__c to @c, @__f to @f.
* include/parallel/list_partition.h: Same.
* include/parallel/for_each.h: Same.
* include/parallel/workstealing.h: Same.
* include/parallel/base.h: Same.
* include/parallel/equally_split.h: Same.
* include/parallel/random_shuffle.h: Same.
* include/parallel/balanced_quicksort.h: Same.
* include/parallel/merge.h: Same.
* include/parallel/multiway_mergesort.h: Same.
* include/parallel/compatibility.h: Same.
* include/parallel/queue.h: Same.
* include/parallel/checkers.h: Same.
* include/parallel/random_number.h: Same.
* include/c_global/csignal: Change # to \#.
* include/c_global/cstdlib: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cstdatomic: Same.
* include/c_global/cmath: Same.
* include/c_global/ciso646: Same.
* include/c_global/ctime: Same.
* include/c_global/clocale: Same.
* include/c_global/climits: Same.
* include/c_global/cassert: Same.
* include/c_global/csetjmp: Same.
* include/c_global/cwchar: Same.
* include/c_global/cfloat: Same.
* include/c_global/cstring: Same.
* include/c_global/cstddef: Same.
* include/c_global/cwctype: Same.
* include/std/memory: Only dance around boost_sp_counted_base.h.
* include/tr1_impl/boost_sp_counted_base.h: Add markup.
* include/tr1/shared_ptr.h: Strip markup.
* include/bits/shared_ptr.h: Move base types...
* include/bits/shared_ptr_base.h: ...here.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* configure: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
From-SVN: r153980
Jason Merrill [Fri, 6 Nov 2009 21:36:56 +0000 (16:36 -0500)]
add missing changelog line
From-SVN: r153979
Jason Merrill [Fri, 6 Nov 2009 21:18:42 +0000 (16:18 -0500)]
re PR c++/15946 (Unhelpful error message when "typename" is omitted)
PR c++/15946
* parser.c (cp_parser_check_template_parameters): Don't talk about
specialization at function scope.
(cp_parser_diagnose_invalid_type_name): Handle dependent scope.
(cp_parser_parse_and_diagnose_invalid_type_name): Likewise.
(cp_parser_expression_statement): Suggest typename.
* error.c (dump_decl) [SCOPE_REF]: Print the type here.
(dump_expr) [SCOPE_REF]: Call it.
(dump_type) [UNBOUND_CLASS_TEMPLATE]: Check TFF_UNQUALIFIED_NAME.
* cxx-pretty-print.c (pp_cxx_unqualified_id): Print class template
args.
From-SVN: r153978
Jason Merrill [Fri, 6 Nov 2009 21:18:35 +0000 (16:18 -0500)]
re PR c++/9381 (attribute on member function pointer have no effect)
PR c++/9381
* decl2.c (build_memfn_type): Preserve attributes.
(cp_reconstruct_complex_type): Likewise.
(maybe_retrofit_in_chrg): Likewise.
* call.c (standard_conversion): Use build_memfn_type.
* pt.c (tsubst): Likewise.
* decl.c (build_ptrmem_type): Likewise
(check_function_type): Preserve attributes.
* tree.c (cp_build_type_attribute_variant): Propagate exception
specs on METHOD_TYPE, too.
(strip_typedefs): Preserve exception specs and attributes.
From-SVN: r153977
Basile Starynkevitch [Fri, 6 Nov 2009 19:20:39 +0000 (19:20 +0000)]
plugins.texi (Plugin callbacks): added PLUGIN_PRAGMAS.
2009-11-06 Basile Starynkevitch <basile@starynkevitch.net>
* doc/plugins.texi (Plugin callbacks): added PLUGIN_PRAGMAS.
* c-pragma.c: Include "plugin.h".
(init_pragma): Invoke PLUGIN_PRAGMAS.
* gcc-plugin.h: Added PLUGIN_PRAGMAS.
* plugin.c (plugin_event_name): Added PLUGIN_PRAGMAS & the missing
PLUGIN_ATTRIBUTES.
(register_callback): Added PLUGIN_PRAGMAS. Fixed typo in message
error for unknown callback event.
(invoke_plugin_callbacks): Added PLUGIN_PRAGMAS.
* Makefile.in (c-pragma.o): Added dependency upon plugin.h.
(PLUGIN_HEADERS): added plugin.h.
2009-11-06 Basile Starynkevitch <basile@starynkevitch.net>
* g++.dg/plugin/pragma_plugin-test-1.C: new testcase for
PLUGIN_PRAGMAS.
* g++.dg/plugin/pragma_plugin.c: new test plugin for
PLUGIN_PRAGMAS.
* g++.dg/plugin/plugin.exp (plugin_test_list): Add pragma_plugin.c and
pragma_plugin-test-1.C.
From-SVN: r153975
Andrew Pinski [Fri, 6 Nov 2009 19:10:07 +0000 (19:10 +0000)]
re PR c++/41536 (always_inline does not work always with constructors)
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* optimize.c (maybe_clone_body): Copy DECL_ATTRIBUTES and
DECL_DISREGARD_INLINE_LIMITS also.
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* g++.dg/ext/always_inline-5.C: New test.
From-SVN: r153974
Jakub Jelinek [Fri, 6 Nov 2009 17:51:20 +0000 (18:51 +0100)]
re PR c++/41967 (gcc get into endless loop when compiling an openmp program)
PR c++/41967
* parser.c (cp_parser_omp_for_loop): After diagnosing not perfectly
nested loop and parsing statements, don't cp_parser_require }, instead
exit the loop if next token is CPP_EOF.
* g++.dg/gomp/pr41967.C: New test.
From-SVN: r153972
Michael Matz [Fri, 6 Nov 2009 15:05:20 +0000 (15:05 +0000)]
re PR middle-end/41963 (177.mesa in SPEC CPU 2K is miscompiled)
PR middle-end/41963
* tree-ssa-math-opts.c (execute_cse_reciprocals): Check all uses
of a potential reciprocal to really be reciprocals.
testsuite/
* gcc.dg/pr41963.c: New test.
From-SVN: r153971
Jonas Maebe [Fri, 6 Nov 2009 14:36:57 +0000 (15:36 +0100)]
Checking this in for: Jonas Maebe <jonas.maebe@elis.ugent.be>
Add DWARF attribute value for the "Borland fastcall" calling
convention.
* elf/dwarf2.h: Add DW_CC_GNU_borland_fastcall_i386 constant.
From-SVN: r153970
Paolo Carlini [Fri, 6 Nov 2009 11:39:35 +0000 (11:39 +0000)]
multiway_merge.h: Simple formatting and uglification fixes.
2009-11-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/find_selectors.h: Likewise.
* include/parallel/losertree.h: Likewise.
* include/parallel/list_partition.h: Likewise.
* include/parallel/for_each.h: Likewise.
* include/parallel/multiseq_selection.h: Likewise.
* include/parallel/workstealing.h: Likewise.
* include/parallel/par_loop.h: Likewise.
* include/parallel/numeric: Likewise.
* include/parallel/quicksort.h: Likewise.
* include/parallel/equally_split.h: Likewise.
* include/parallel/omp_loop_static.h: Likewise.
* include/parallel/random_shuffle.h: Likewise.
* include/parallel/balanced_quicksort.h: Likewise.
* include/parallel/tags.h: Likewise.
* include/parallel/set_operations.h: Likewise.
* include/parallel/merge.h: Likewise.
* include/parallel/unique_copy.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/search.h: Likewise.
* include/parallel/partition.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/find.h: Likewise.
* include/parallel/queue.h: Likewise.
* include/parallel/omp_loop.h: Likewise.
* include/parallel/checkers.h: Likewise.
* include/parallel/sort.h: Likewise.
From-SVN: r153966
Jakub Jelinek [Fri, 6 Nov 2009 10:33:33 +0000 (11:33 +0100)]
x86intrin.h: Include fma4intrin.h, xopintrin.h and lwpintrin.h after immintrin.h.
* config/i386/x86intrin.h: Include fma4intrin.h, xopintrin.h and
lwpintrin.h after immintrin.h.
* config/i386/fma4intrin.h (__v8sf, __v4df, __m256, __m256d): Remove
typedefs.
From-SVN: r153965
Ozkan Sezer [Fri, 6 Nov 2009 10:16:30 +0000 (10:16 +0000)]
configure.ac (FLAGS_FOR_TARGET): Add -L and -isystem paths for *-w64-mingw* and x86_64-*mingw*.
2009-11-06 Ozkan Sezer <sezeroz@gmail.com>
* configure.ac (FLAGS_FOR_TARGET): Add -L and -isystem
paths for *-w64-mingw* and x86_64-*mingw*.
* configure: Regenerated.
From-SVN: r153964
Jakub Jelinek [Fri, 6 Nov 2009 08:46:45 +0000 (09:46 +0100)]
re PR c/41935 (ICE : tree check: expected integer_cst, have nop_expr in int_cst_value, at tree.c:8301)
PR middle-end/41935
* c-common.c (fold_offsetof_1) <case ARRAY_REF>: Don't crash for VLAs
or non-constant index, allow index one past the last element and
allow exceeding array bound in arrays that might be used as flexible
array members.
* gcc.dg/pr41935.c: New test.
* c-c++-common/pr41935.c: New test.
* c-c++-common/builtin-offsetof.c (f0): Allow index one past the last
element.
* gcc.c-torture/execute/pr41935.c: New test.
From-SVN: r153962
Jonathan Wakely [Fri, 6 Nov 2009 08:38:02 +0000 (08:38 +0000)]
re PR libstdc++/41949 (std::endl documentation contains bad link)
2009-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/41949
* include/std/ostream: Adjust link.
From-SVN: r153961
Jason Merrill [Fri, 6 Nov 2009 04:32:13 +0000 (23:32 -0500)]
re PR c++/34180 (Default copy constructor copies const auto_ptr members)
PR c++/34180
* method.c (do_build_copy_constructor): Don't drop cv-quals from
the field type.
From-SVN: r153960
Jason Merrill [Fri, 6 Nov 2009 03:33:17 +0000 (22:33 -0500)]
re PR c++/7046 (#pragma pack(1) context evaluated at point of instantiation rather than declaration)
PR c++/7046
* class.c (finish_struct): Store maximum_field_alignment in
TYPE_PRECISION.
* pt.c (instantiate_class_template): Set maximum_field_alignment.
From-SVN: r153959
Jason Merrill [Fri, 6 Nov 2009 03:33:06 +0000 (22:33 -0500)]
re PR c++/34870 (argument-dependent lookup fails to find friend declaration)
PR c++/34870
* name-lookup.c (arg_assoc_class): Call complete_type.
* pt.c (instantiate_class_template): Call uses_template_parms
instead of dependent_type_p.
From-SVN: r153958
Jason Merrill [Fri, 6 Nov 2009 03:32:55 +0000 (22:32 -0500)]
re PR c++/41703 (Problems with SFINAE. Source works at gcc 3.4.6 but fails at 4.2.1 and 4.5.0.
20091008)
PR c++/41703
* pt.c (check_undeduced_parms): New subroutine of...
(more_specialized_fn): ...here. Undeduced template parms can make
a template less specialized than another.
From-SVN: r153957
GCC Administrator [Fri, 6 Nov 2009 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r153956
Richard Henderson [Thu, 5 Nov 2009 23:27:52 +0000 (15:27 -0800)]
* config/i386/ia32intrin.h: Protect CRC32 builtins with __SSE4_2__.
From-SVN: r153953
Steven G. Kargl [Thu, 5 Nov 2009 20:57:12 +0000 (20:57 +0000)]
re PR fortran/41918 (Superflous warning "was declared INTENT(OUT) but was not set")
2009-11-03 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/41918
* fortran/trans-decl.c: Silence intent(out) warning for derived type
dummy arguments with default initialization.
From-SVN: r153952
Eric Botcazou [Thu, 5 Nov 2009 18:26:21 +0000 (18:26 +0000)]
* gcc-interface/utils.c (gnat_type_for_mode): Handle vector modes.
From-SVN: r153949
Eric Botcazou [Thu, 5 Nov 2009 18:25:10 +0000 (18:25 +0000)]
trans.c (lvalue_required_p): New case.
* gcc-interface/trans.c (lvalue_required_p) <N_Unchecked_Conversion>:
New case.
From-SVN: r153948
Janus Weil [Thu, 5 Nov 2009 15:31:07 +0000 (16:31 +0100)]
re PR fortran/41556 ([OOP] Errors in applying operator/assignment to an abstract type)
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
* interface.c (matching_typebound_op,gfc_extend_assign): Handle CLASS
variables.
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
* gfortran.dg/class_12.f03: New test.
From-SVN: r153946
Jakub Jelinek [Thu, 5 Nov 2009 14:54:19 +0000 (15:54 +0100)]
i386.exp (check_effective_target_xop): Fix typo in builtin's name.
* gcc.target/i386/i386.exp (check_effective_target_xop): Fix typo
in builtin's name.
From-SVN: r153943
Paul Brook [Thu, 5 Nov 2009 14:47:45 +0000 (14:47 +0000)]
arm.c (arm_fp_model, [...]): Remove.
2009-11-05 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.c (arm_fp_model, arm_fpu_arch, arm_fpu_tune): Remove.
(arm_fpu_desc): New.
(all_fpus): Add FPU details.
(fp_model_for_fpu): Remove.
(arm_override_options): Set and use arm_fpu_desc and arm_fpu_attr.
(arm_output_epilogue, arm_save_coproc_regs): Use TARGET_FPA_EMU2.
(arm_file_start): Use arm_fpu_desc.
* config/arm/arm.h (TARGET_FPA, TARGET_MAVERICK, TARGET_VFP,
TARGET_VFPD32, TARGET_VFP3, TARGET_NEON_FP16, TARGET_NEON): Use
arm_fpu_desc.
(TARGET_FPA_EMU2): Define.
(arm_fp_model, fputype, arm_fpu_tune): Remove.
(vfp_reg_type, arm_fpu_desc): New.
* config/arm/arm.md (attr fpu): Simplify.
* config/arm/fpa.md (movxf_fpa): Use TARGET_FPA_EMU2.
* config/arm/linux-elf.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/bpabi.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/netbsd-elf.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/vxworks.h (FPUTYPE_DEFAULT): Use string value.
From-SVN: r153942
Michael Matz [Thu, 5 Nov 2009 14:11:26 +0000 (14:11 +0000)]
i386.c (ix86_builtin_reciprocal): Remove dependency on TARGET_RECIP.
* config/i386/i386.c (ix86_builtin_reciprocal): Remove dependency
on TARGET_RECIP.
* doc/invoke.texi (-mrecip): Clarify that we don't need -mrecip
for 1/sqrtf.
From-SVN: r153940
Paolo Carlini [Thu, 5 Nov 2009 14:06:13 +0000 (14:06 +0000)]
multiway_merge.h: Simple formatting and uglification fixes.
2009-11-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/losertree.h: Likewise.
* include/parallel/base.h: Likewise.
* include/parallel/par_loop.h: Likewise.
* include/parallel/omp_loop_static.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/omp_loop.h: Likewise.
From-SVN: r153939
Rafael Avila de Espindola [Thu, 5 Nov 2009 13:59:54 +0000 (13:59 +0000)]
lto-plugin.c (temp_obj_dir_name): Remove.
2009-11-05 Rafael Avila de Espindola <espindola@google.com>
* lto-plugin.c (temp_obj_dir_name): Remove.
(arguments_file_name): New.
(free_2): Free arguments_file_name instead of temp_obj_dir_name.
(exec_lto_wrapper): Create arguments file with make_temp_file.
(cleanup_handler): Don't remove the temporary directory. Remove the
arguments file.
(onload): Don't create the temporary directory.
From-SVN: r153938
Joern Rennecke [Thu, 5 Nov 2009 13:41:46 +0000 (13:41 +0000)]
* MAINTAINERS (Write After Approval): Add entry for my INRIA work.
From-SVN: r153937
Jason Merrill [Thu, 5 Nov 2009 13:11:42 +0000 (08:11 -0500)]
re PR c++/36912 (ICE with "-frounding-math -g")
PR c++/36912
* varasm.c (initializer_constant_valid_p): A PLUS_EXPR
or MINUS_EXPR of REAL_TYPE is not a valid constant initializer.
(output_constant): Avoid crash after error.
From-SVN: r153936
Martin Jambor [Thu, 5 Nov 2009 12:09:08 +0000 (13:09 +0100)]
tree-sra.c (struct access): Changed comment of next_sibling field.
2009-11-04 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): Changed comment of next_sibling field.
(analyze_modified_params): Loop over accesses of a group rather than
over all with the ame base, pass a common bitmap to
walk_aliased_vdefs.
(unmodified_by_ref_scalar_representative): Build link lists of
accesses of a group.
(splice_param_accesses): Likewise.
From-SVN: r153935
Janus Weil [Thu, 5 Nov 2009 10:42:48 +0000 (11:42 +0100)]
re PR fortran/41556 ([OOP] Errors in applying operator/assignment to an abstract type)
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41873
* resolve.c (resolve_function,resolve_call): Prevent abstract interfaces
from being called, but allow deferred type-bound procedures with
abstract interface.
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41873
* gfortran.dg/interface_abstract_4.f90: New test.
From-SVN: r153934
Maxim Kuvyrkov [Thu, 5 Nov 2009 10:22:27 +0000 (10:22 +0000)]
* gcc.target/m68k/pr41302.c: Fix target triplet.
From-SVN: r153933
Benjamin Kosnik [Thu, 5 Nov 2009 02:55:08 +0000 (02:55 +0000)]
009-11-04 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/25_algorithms/fill/5.cc: Move...
* testsuite/25_algorithms/fill_n/1.cc: ...here.
From-SVN: r153929
GCC Administrator [Thu, 5 Nov 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r153928
Kenneth Zadeck [Wed, 4 Nov 2009 23:17:54 +0000 (23:17 +0000)]
df-scan.c (df-uses-record): Add case zero_extract of mem.
2009-11-04 Kenneth Zadeck <zadeck@naturalbridge.com>
* df-scan.c (df-uses-record): Add case zero_extract of mem.
From-SVN: r153924
Jason Merrill [Wed, 4 Nov 2009 23:14:56 +0000 (18:14 -0500)]
Revert untested varasm.c change
From-SVN: r153923
Jason Merrill [Wed, 4 Nov 2009 23:14:14 +0000 (18:14 -0500)]
fix
From-SVN: r153922
Jason Merrill [Wed, 4 Nov 2009 23:13:23 +0000 (18:13 -0500)]
re PR c++/36912 (ICE with "-frounding-math -g")
PR c++/36912
* varasm.c (initializer_constant_valid_p): A PLUS_EXPR
or MINUS_EXPR of REAL_TYPE is not a valid constant initializer.
(output_constant): Avoid crash after error.
From-SVN: r153921
Jason Merrill [Wed, 4 Nov 2009 22:29:35 +0000 (17:29 -0500)]
re PR c++/39413 (static_assert and SFINAE)
PR c++/39413
* search.c (lookup_base): Don't complete_type (base).
From-SVN: r153920
Eric Botcazou [Wed, 4 Nov 2009 21:50:31 +0000 (21:50 +0000)]
Fix nit
From-SVN: r153919
Eric Botcazou [Wed, 4 Nov 2009 21:45:54 +0000 (21:45 +0000)]
re PR target/10127 (-fstack-check let's program crash)
PR target/10127
PR ada/20548
* config/i386/i386.md (probe_stack_range): New expander.
(logical operation peepholes): Do not split stack checking probes.
From-SVN: r153918
Harsha Jagasia [Wed, 4 Nov 2009 21:15:42 +0000 (21:15 +0000)]
invoke.texi (-mlwp): Add documentation.
2009-11-04 Harsha Jagasia <harsha.jagasia@amd.com>
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
* doc/invoke.texi (-mlwp): Add documentation.
* doc/extend.texi (x86 intrinsics): Add LWP intrinsics.
* config.gcc (i[34567]86-*-*): Include lwpintrin.h.
(x86_64-*-*): Ditto.
* config/i386/lwpintrin.h: New file, provide x86 compiler
intrinisics for LWP.
* config/i386/cpuid.h (bit_LWP): Define LWP bit.
* config/i386/x86intrin.h: Add LWP check and lwpintrin.h.
* config/i386/i386-c.c (ix86_target_macros_internal): Check
ISA_FLAG for LWP.
* config/i386/i386.h (TARGET_LWP): New macro for LWP.
* config/i386/i386.opt (-mlwp): New switch for LWP support.
* config/i386/i386.c (OPTION_MASK_ISA_LWP_SET): New.
(OPTION_MASK_ISA_LWP_UNSET): New.
(ix86_handle_option): Handle -mlwp.
(isa_opts): Handle -mlwp.
(enum pta_flags): Add PTA_LWP.
(override_options): Add LWP support.
(IX86_BUILTIN_LLWPCB16): New for LWP intrinsic.
(IX86_BUILTIN_LLWPCB32): Ditto.
(IX86_BUILTIN_LLWPCB64): Ditto.
(IX86_BUILTIN_SLWPCB16): Ditto.
(IX86_BUILTIN_SLWPCB32): Ditto.
(IX86_BUILTIN_SLWPCB64): Ditto.
(IX86_BUILTIN_LWPVAL16): Ditto.
(IX86_BUILTIN_LWPVAL32): Ditto.
(IX86_BUILTIN_LWPVAL64): Ditto.
(IX86_BUILTIN_LWPINS16): Ditto.
(IX86_BUILTIN_LWPINS32): Ditto.
(IX86_BUILTIN_LWPINS64): Ditto.
(enum ix86_special_builtin_type): Add LWP intrinsic support.
(builtin_description): Ditto.
(ix86_init_mmx_sse_builtins): Ditto.
(ix86_expand_special_args_builtin): Ditto.
* config/i386/i386.md (UNSPEC_LLWP_INTRINSIC): Add new UNSPEC
for LWP support.
(UNSPEC_SLWP_INTRINSIC): Ditto.
(UNSPECV_LWPVAL_INTRINSIC): Ditto.
(UNSPECV_LWPINS_INTRINSIC): Ditto.
(lwp_llwpcbhi1): New lwp pattern.
(lwp_llwpcbsi1): Ditto.
(lwp_llwpcbdi1): Ditto.
(lwp_slwpcbhi1): Ditto.
(lwp_slwpcbsi1): Ditto.
(lwp_slwpcbdi1): Ditto.
(lwp_lwpvalhi3): Ditto.
(lwp_lwpvalsi3): Ditto.
(lwp_lwpvaldi3): Ditto.
(lwp_lwpinshi3): Ditto.
(lwp_lwpinssi3): Ditto.
(lwp_lwpinsdi3): Ditto.
Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
From-SVN: r153917
Janus Weil [Wed, 4 Nov 2009 19:41:07 +0000 (20:41 +0100)]
[multiple changes]
2009-11-04 Tobias Burnus <burnus@gcc.gnu.org>
Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41937
* interface.c (gfc_check_operator_interface): Handle CLASS arguments.
* resolve.c (resolve_allocate_expr): Handle allocatable components of
CLASS variables.
2009-11-04 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41937
* gfortran.dg/class_11.f03: New test.
From-SVN: r153911
Jason Merrill [Wed, 4 Nov 2009 19:36:34 +0000 (14:36 -0500)]
correct PR number
From-SVN: r153910
Jason Merrill [Wed, 4 Nov 2009 19:34:25 +0000 (14:34 -0500)]
re PR c++/15882 (Check for return type of overloaded operator new too early)
PR c++/15882
* method.c (use_thunk): Check DECL_WEAK as well as
DECL_ONE_ONLY.
From-SVN: r153909
Paolo Carlini [Wed, 4 Nov 2009 18:48:21 +0000 (18:48 +0000)]
multiway_merge.h: Simple formatting and uglification fixes.
2009-11-04 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/losertree.h: Likewise.
From-SVN: r153907
Andrew Pinski [Wed, 4 Nov 2009 18:35:57 +0000 (18:35 +0000)]
re PR rtl-optimization/41833 (vec_splat followed by vec_splat could be improved)
2009-11-04 Andrew Pinski <andrew_pinski@playstation.sony.com>
Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
PR rtl-opt/41833
* simplify-rtx.c (simplify_binary_operation_1): Simplify vec_select of
a vec_duplicate.
2009-11-04 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR rtl-opt/41833
* gcc.target/powerpc/altivec-33.c: New testcase.
Co-Authored-By: Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
From-SVN: r153906
Jason Merrill [Wed, 4 Nov 2009 18:13:57 +0000 (13:13 -0500)]
PR c++/17365, DR 218
PR c++/17365, DR 218
* name-lookup.c (add_function): Ignore non-functions.
From-SVN: r153905
Richard Guenther [Wed, 4 Nov 2009 17:24:37 +0000 (17:24 +0000)]
gcc.c (process_command): Handle arguments name@offset.
2009-11-04 Richard Guenther <rguenther@suse.de>
Rafael Avila de Espindola <espindola@google.com>
* gcc.c (process_command): Handle arguments name@offset.
2009-11-04 Richard Guenther <rguenther@suse.de>
Rafael Avila de Espindola <espindola@google.com>
* lto-elf.c (lto_elf_build_section_table): Add the base offset.
(lto_elf_file_open): Handle offsets in arguments name@offest.
2009-11-04 Richard Guenther <rguenther@suse.de>
Rafael Avila de Espindola <espindola@google.com>
* lto-plugin.c (plugin_file_info): Remove temp field.
(cleanup_handler): Don't delete temporary objects.
(claim_file_handler): Don't create temporary objects.
Co-Authored-By: Rafael Avila de Espindola <espindola@google.com>
From-SVN: r153903
Harsha Jagasia [Wed, 4 Nov 2009 16:22:47 +0000 (16:22 +0000)]
config.gcc (i[34567]86-*-*): Include xopintrin.h.
2009-11-04 Harsha Jagasia <harsha.jagasia@amd.com>
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
* config.gcc (i[34567]86-*-*): Include xopintrin.h.
(x86_64-*-*): Ditto.
* config/i386/xopintrin.h: New file, provide common x86 compiler
intrinisics for XOP.
* config/i386/cpuid.h (bit_XOP): Define XOP bit.
* config/i386/x86intrin.h: Add XOP check and xopintrin.h.
* config/i386/i386-c.c(ix86_target_macros_internal): Check
ISA_FLAG for XOP.
* config/i386/i386.h(TARGET_XOP): New macro for XOP.
* config/i386/i386.opt (-mxop): New switch for XOP support.
* config/i386/i386.md (UNSPEC_XOP_UNSIGNED_CMP)
(UNSPEC_XOP_TRUEFALSE)
(UNSPEC_XOP_PERMUTE)
(UNSPEC_FRCZ): Add new UNSPEC for XOP support.
(PPERM_*): New constants for vpperm instruction.
(xop_pcmov_<mode>): Add XOP conditional mov instructions.
* config/i386/i386.c (OPTION_MASK_ISA_XOP_SET): New.
(OPTION_MASK_ISA_XOP_UNSET): New.
(OPTION_MASK_ISA_XOP_UNSET): Change definition to
depend on XOP.
(ix86_handle_option): Handle -mxop.
(isa_opts): Handle -mxop.
(enum pta_flags): Add PTA_XOP.
(override_options): Add XOP support.
(print_operand): Add code for XOP compare instructions.
(ix86_expand_sse_movcc): Extend for XOP conditional move
instruction.
(ix86_expand_int_vcond): Extend for XOP compare instruction.
(IX86_BUILTIN_VPCMOV): New for XOP intrinsic.
(IX86_BUILTIN_VPCMOV_V2DI): Ditto.
(IX86_BUILTIN_VPCMOV_V4SI): Ditto.
(IX86_BUILTIN_VPCMOV_V8HI): Ditto.
(IX86_BUILTIN_VPCMOV_V16QI): Ditto.
(IX86_BUILTIN_VPCMOV_V4SF): Ditto.
(IX86_BUILTIN_VPCMOV_V2DF): Ditto.
(IX86_BUILTIN_VPCMOV256): Ditto.
(IX86_BUILTIN_VPCMOV_V4DI256): Ditto.
(IX86_BUILTIN_VPCMOV_V8SI256): Ditto.
(IX86_BUILTIN_VPCMOV_V16HI256): Ditto.
(IX86_BUILTIN_VPCMOV_V32QI256): Ditto.
(IX86_BUILTIN_VPCMOV_V8SF256): Ditto.
(IX86_BUILTIN_VPCMOV_V4DF256): Ditto.
(IX86_BUILTIN_VPPERM): Ditto.
(IX86_BUILTIN_VPMACSSWW): Ditto.
(IX86_BUILTIN_VPMACSWW): Ditto.
(IX86_BUILTIN_VPMACSSWD): Ditto.
(IX86_BUILTIN_VPMACSWD): Ditto.
(IX86_BUILTIN_VPMACSSDD): Ditto.
(IX86_BUILTIN_VPMACSDD): Ditto.
(IX86_BUILTIN_VPMACSSDQL): Ditto.
(IX86_BUILTIN_VPMACSSDQH): Ditto.
(IX86_BUILTIN_VPMACSDQL): Ditto.
(IX86_BUILTIN_VPMACSDQH): Ditto.
(IX86_BUILTIN_VPMADCSSWD): Ditto.
(IX86_BUILTIN_VPMADCSWD): Ditto.
(IX86_BUILTIN_VPHADDBW): Ditto.
(IX86_BUILTIN_VPHADDBD): Ditto.
(IX86_BUILTIN_VPHADDBQ): Ditto.
(IX86_BUILTIN_VPHADDWD): Ditto.
(IX86_BUILTIN_VPHADDWQ): Ditto.
(IX86_BUILTIN_VPHADDDQ): Ditto.
(IX86_BUILTIN_VPHADDUBW): Ditto.
(IX86_BUILTIN_VPHADDUBD): Ditto.
(IX86_BUILTIN_VPHADDUBQ): Ditto.
(IX86_BUILTIN_VPHADDUWD): Ditto.
(IX86_BUILTIN_VPHADDUWQ): Ditto.
(IX86_BUILTIN_VPHADDUDQ): Ditto.
(IX86_BUILTIN_VPHSUBBW): Ditto.
(IX86_BUILTIN_VPHSUBWD): Ditto.
(IX86_BUILTIN_VPHSUBDQ): Ditto.
(IX86_BUILTIN_VPROTB): Ditto.
(IX86_BUILTIN_VPROTW): Ditto.
(IX86_BUILTIN_VPROTD): Ditto.
(IX86_BUILTIN_VPROTQ): Ditto.
(IX86_BUILTIN_VPROTB_IMM): Ditto.
(IX86_BUILTIN_VPROTW_IMM): Ditto.
(IX86_BUILTIN_VPROTD_IMM): Ditto.
(IX86_BUILTIN_VPROTQ_IMM): Ditto.
(IX86_BUILTIN_VPSHLB): Ditto.
(IX86_BUILTIN_VPSHLW): Ditto.
(IX86_BUILTIN_VPSHLD): Ditto.
(IX86_BUILTIN_VPSHLQ): Ditto.
(IX86_BUILTIN_VPSHAB): Ditto.
(IX86_BUILTIN_VPSHAW): Ditto.
(IX86_BUILTIN_VPSHAD): Ditto.
(IX86_BUILTIN_VPSHAQ): Ditto.
(IX86_BUILTIN_VFRCZSS): Ditto.
(IX86_BUILTIN_VFRCZSD): Ditto.
(IX86_BUILTIN_VFRCZPS): Ditto.
(IX86_BUILTIN_VFRCZPD): Ditto.
(IX86_BUILTIN_VFRCZPS256): Ditto.
(IX86_BUILTIN_VFRCZPD256): Ditto.
(IX86_BUILTIN_VPCOMEQUB): Ditto.
(IX86_BUILTIN_VPCOMNEUB): Ditto.
(IX86_BUILTIN_VPCOMLTUB): Ditto.
(IX86_BUILTIN_VPCOMLEUB): Ditto.
(IX86_BUILTIN_VPCOMGTUB): Ditto.
(IX86_BUILTIN_VPCOMGEUB): Ditto.
(IX86_BUILTIN_VPCOMFALSEUB): Ditto.
(IX86_BUILTIN_VPCOMTRUEUB): Ditto.
(IX86_BUILTIN_VPCOMEQUW): Ditto.
(IX86_BUILTIN_VPCOMNEUW): Ditto.
(IX86_BUILTIN_VPCOMLTUW): Ditto.
(IX86_BUILTIN_VPCOMLEUW): Ditto.
(IX86_BUILTIN_VPCOMGTUW): Ditto.
(IX86_BUILTIN_VPCOMGEUW): Ditto.
(IX86_BUILTIN_VPCOMFALSEUW): Ditto.
(IX86_BUILTIN_VPCOMTRUEUW): Ditto.
(IX86_BUILTIN_VPCOMEQUD): Ditto.
(IX86_BUILTIN_VPCOMNEUD): Ditto.
(IX86_BUILTIN_VPCOMLTUD): Ditto.
(IX86_BUILTIN_VPCOMLEUD): Ditto.
(IX86_BUILTIN_VPCOMGTUD): Ditto.
(IX86_BUILTIN_VPCOMGEUD): Ditto.
(IX86_BUILTIN_VPCOMFALSEUD): Ditto.
(IX86_BUILTIN_VPCOMTRUEUD): Ditto.
(IX86_BUILTIN_VPCOMEQUQ): Ditto.
(IX86_BUILTIN_VPCOMNEUQ): Ditto.
(IX86_BUILTIN_VPCOMLTUQ): Ditto.
(IX86_BUILTIN_VPCOMLEUQ): Ditto.
(IX86_BUILTIN_VPCOMGTUQ): Ditto.
(IX86_BUILTIN_VPCOMGEUQ): Ditto.
(IX86_BUILTIN_VPCOMFALSEUQ): Ditto.
(IX86_BUILTIN_VPCOMTRUEUQ): Ditto.
(IX86_BUILTIN_VPCOMEQB): Ditto.
(IX86_BUILTIN_VPCOMNEB): Ditto.
(IX86_BUILTIN_VPCOMLTB): Ditto.
(IX86_BUILTIN_VPCOMLEB): Ditto.
(IX86_BUILTIN_VPCOMGTB): Ditto.
(IX86_BUILTIN_VPCOMGEB): Ditto.
(IX86_BUILTIN_VPCOMFALSEB): Ditto.
(IX86_BUILTIN_VPCOMTRUEB): Ditto.
(IX86_BUILTIN_VPCOMEQW): Ditto.
(IX86_BUILTIN_VPCOMNEW): Ditto.
(IX86_BUILTIN_VPCOMLTW): Ditto.
(IX86_BUILTIN_VPCOMLEW): Ditto.
(IX86_BUILTIN_VPCOMGTW): Ditto.
(IX86_BUILTIN_VPCOMGEW): Ditto.
(IX86_BUILTIN_VPCOMFALSEW): Ditto.
(IX86_BUILTIN_VPCOMTRUEW): Ditto.
(IX86_BUILTIN_VPCOMEQD): Ditto.
(IX86_BUILTIN_VPCOMNED): Ditto.
(IX86_BUILTIN_VPCOMLTD): Ditto.
(IX86_BUILTIN_VPCOMLED): Ditto.
(IX86_BUILTIN_VPCOMGTD): Ditto.
(IX86_BUILTIN_VPCOMGED): Ditto.
(IX86_BUILTIN_VPCOMFALSED): Ditto.
(IX86_BUILTIN_VPCOMTRUED): Ditto.
(IX86_BUILTIN_VPCOMEQQ): Ditto.
(IX86_BUILTIN_VPCOMNEQ): Ditto.
(IX86_BUILTIN_VPCOMLTQ): Ditto.
(IX86_BUILTIN_VPCOMLEQ): Ditto.
(IX86_BUILTIN_VPCOMGTQ): Ditto.
(IX86_BUILTIN_VPCOMGEQ): Ditto.
(IX86_BUILTIN_VPCOMFALSEQ): Ditto.
(IX86_BUILTIN_VPCOMTRUEQ): Ditto.
(enum multi_arg_type): New enum for describing the various XOP
intrinsic argument types.
(bdesc_multi_arg): New table for XOP intrinsics.
(ix86_init_mmx_sse_builtins): Add XOP intrinsic support.
(ix86_expand_multi_arg_builtin): New function for creating XOP
intrinsics.
* config/i386/sse.md (sserotatemax): New mode attribute for XOP.
(xop_pmacsww): Ditto.
(xop_pmacssww): Ditto.
(xop_pmacsdd): Ditto.
(xop_pmacssdd): Ditto.
(xop_pmacssdql): Ditto.
(xop_pmacssdqh): Ditto.
(xop_pmacsdql): Ditto.
(xop_pmacsdql_mem): Ditto.
(xop_mulv2div2di3_low): Ditto.
(xop_pmacsdqh): Ditto.
(xop_pmacsdqh_mem): Ditto.
(xop_mulv2div2di3_high): Ditto.
(xop_pmacsswd): Ditto.
(xop_pmacswd): Ditto.
(xop_pmadcsswd): Ditto.
(xop_pmadcswd): Ditto.
(xop_pcmov_<mode>): Ditto.
(xop_pcmov_<mode>)256: Ditto.
(xop_phaddbw): Ditto.
(xop_phaddbd): Ditto.
(xop_phaddbq): Ditto.
(xop_phaddwd): Ditto.
(xop_phaddwq): Ditto.
(xop_phadddq): Ditto.
(xop_phaddubw): Ditto.
(xop_phaddubd): Ditto.
(xop_phaddubq): Ditto.
(xop_phadduwd): Ditto.
(xop_phadduwq): Ditto.
(xop_phaddudq): Ditto.
(xop_phsubbw): Ditto.
(xop_phsubwd): Ditto.
(xop_phsubdq): Ditto.
(xop_pperm): Ditto.
(rotl<mode>3): Ditto.
(rotr<mode>3): Ditto.
(xop_rotl<mode>3): Ditto.
(xop_rotr<mode>3): Ditto.
(vrotr<mode>3): Ditto.
(vrotl<mode>3): Ditto.
(xop_vrotl<mode>3): Ditto.
(vlshr<mode>3): Ditto.
(vashr<mode>3): Ditto.
(vashl<mode>3
(xop_ashl<mode>3): Ditto.
(xop_lshl<mode>3): Ditto.
(ashlv16qi3): Ditto.
(lshlv16qi3): Ditto.
(ashrv16qi3): Ditto.
(ashrv2di3): Ditto.
(xop_frcz<mode>2): Ditto.
(xop_vmfrcz<mode>2): Ditto.
(xop_frcz<mode>2256): Ditto.
(xop_maskcmp<mode>3): Ditto.
(xop_maskcmp_uns<mode>3): Ditto.
(xop_maskcmp_uns2<mode>3): Ditto.
(xop_pcom_tf<mode>3): Ditto.
* doc/invoke.texi (-mxop): Add documentation.
* doc/extend.texi (x86 intrinsics): Add XOP intrinsics.
* gcc.target/i386/xop-check.h: New file.
* gcc.target/i386/xop-hadduX.c: Ditto.
* gcc.target/i386/xop-haddX.c: Ditto.
* gcc.target/i386/xop-hsubX.c: Ditto.
* gcc.target/i386/xop-imul32widen-vector.c: Ditto.
* gcc.target/i386/xop-imul32widen-vector.c: Ditto.
* gcc.target/i386/xop-pcmov2.c: Ditto.
* gcc.target/i386/xop-pcmov.c: Ditto.
* gcc.target/i386/xop-rotate1-vector.c: Ditto.
* gcc.target/i386/xop-rotate2-vector.c: Ditto.
* gcc.target/i386/xop-rotate3-vector.c: Ditto.
* gcc.target/i386/xop-shift1-vector.c: Ditto.
* gcc.target/i386/xop-shift2-vector.c: Ditto.
* gcc.target/i386/xop-shift3-vector.c: Ditto.
* gcc.target/i386/i386.exp: Add check_effective_target_xop.
* gcc.target/i386/sse-12.c: Update with new compile options to
activate and check xopintrin.h intrinsic file.
* gcc.target/i386/sse-13.c: Ditto.
* gcc.target/i386/sse-14.c: Ditto.
* gcc.target/i386/sse-22.c: Ditto.
* gcc.target/i386/sse-23.c: Ditto.
* g++.dg/other/i386-2.C: Ditto.
* g++.dg/other/i386-3.C: Ditto.
* g++.dg/other/i386-5.C: Ditto.
* g++.dg/other/i386-6.C: Ditto.
Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
From-SVN: r153901