paolo [Fri, 6 Nov 2009 11:39:35 +0000 (11:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153966
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 6 Nov 2009 10:33:33 +0000 (10:33 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153965
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Fri, 6 Nov 2009 10:16:30 +0000 (10:16 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153964
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 6 Nov 2009 08:46:45 +0000 (08:46 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153962
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 6 Nov 2009 08:38:02 +0000 (08:38 +0000)]
2009-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/41949
* include/std/ostream: Adjust link.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153961
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 6 Nov 2009 04:32:13 +0000 (04:32 +0000)]
PR c++/34180
* method.c (do_build_copy_constructor): Don't drop cv-quals from
the field type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153960
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 6 Nov 2009 03:33:17 +0000 (03:33 +0000)]
PR c++/7046
* class.c (finish_struct): Store maximum_field_alignment in
TYPE_PRECISION.
* pt.c (instantiate_class_template): Set maximum_field_alignment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153959
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 6 Nov 2009 03:33:06 +0000 (03:33 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153958
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 6 Nov 2009 03:32:55 +0000 (03:32 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153957
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 6 Nov 2009 00:16:52 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153956
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 5 Nov 2009 23:27:52 +0000 (23:27 +0000)]
* config/i386/ia32intrin.h: Protect CRC32 builtins with __SSE4_2__.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153953
138bc75d-0d04-0410-961f-
82ee72b054a4
kargl [Thu, 5 Nov 2009 20:57:12 +0000 (20:57 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153952
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 5 Nov 2009 18:26:21 +0000 (18:26 +0000)]
* gcc-interface/utils.c (gnat_type_for_mode): Handle vector modes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153949
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 5 Nov 2009 18:25:10 +0000 (18:25 +0000)]
* gcc-interface/trans.c (lvalue_required_p) <N_Unchecked_Conversion>:
New case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153948
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Thu, 5 Nov 2009 15:31:07 +0000 (15:31 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153946
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 5 Nov 2009 14:54:19 +0000 (14:54 +0000)]
* gcc.target/i386/i386.exp (check_effective_target_xop): Fix typo
in builtin's name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153943
138bc75d-0d04-0410-961f-
82ee72b054a4
pbrook [Thu, 5 Nov 2009 14:47:45 +0000 (14:47 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153942
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Thu, 5 Nov 2009 14:11:26 +0000 (14:11 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153940
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 5 Nov 2009 14:06:13 +0000 (14:06 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153939
138bc75d-0d04-0410-961f-
82ee72b054a4
espindola [Thu, 5 Nov 2009 13:59:54 +0000 (13:59 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153938
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Thu, 5 Nov 2009 13:41:46 +0000 (13:41 +0000)]
* MAINTAINERS (Write After Approval): Add entry for my INRIA work.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153937
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 5 Nov 2009 13:11:42 +0000 (13:11 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153936
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Thu, 5 Nov 2009 12:09:08 +0000 (12:09 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153935
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Thu, 5 Nov 2009 10:42:48 +0000 (10:42 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153934
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Thu, 5 Nov 2009 10:22:27 +0000 (10:22 +0000)]
* gcc.target/m68k/pr41302.c: Fix target triplet.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153933
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153929
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 5 Nov 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153928
138bc75d-0d04-0410-961f-
82ee72b054a4
zadeck [Wed, 4 Nov 2009 23:17:54 +0000 (23:17 +0000)]
2009-11-04 Kenneth Zadeck <zadeck@naturalbridge.com>
* df-scan.c (df-uses-record): Add case zero_extract of mem.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153924
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 4 Nov 2009 23:14:56 +0000 (23:14 +0000)]
Revert untested varasm.c change
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153923
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 4 Nov 2009 23:14:14 +0000 (23:14 +0000)]
fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153922
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 4 Nov 2009 23:13:23 +0000 (23:13 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153921
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 4 Nov 2009 22:29:35 +0000 (22:29 +0000)]
PR c++/39413
* search.c (lookup_base): Don't complete_type (base).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153920
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 4 Nov 2009 21:50:31 +0000 (21:50 +0000)]
Fix nit
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153919
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 4 Nov 2009 21:45:54 +0000 (21:45 +0000)]
PR target/10127
PR ada/20548
* config/i386/i386.md (probe_stack_range): New expander.
(logical operation peepholes): Do not split stack checking probes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153918
138bc75d-0d04-0410-961f-
82ee72b054a4
dwarak [Wed, 4 Nov 2009 21:15:42 +0000 (21:15 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153917
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Wed, 4 Nov 2009 19:41:07 +0000 (19:41 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153911
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 4 Nov 2009 19:36:34 +0000 (19:36 +0000)]
correct PR number
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153910
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 4 Nov 2009 19:34:25 +0000 (19:34 +0000)]
PR c++/15882
* method.c (use_thunk): Check DECL_WEAK as well as
DECL_ONE_ONLY.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153909
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 4 Nov 2009 18:48:21 +0000 (18:48 +0000)]
2009-11-04 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/losertree.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153907
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Wed, 4 Nov 2009 18:35:57 +0000 (18:35 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153906
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 4 Nov 2009 18:13:57 +0000 (18:13 +0000)]
PR c++/17365, DR 218
* name-lookup.c (add_function): Ignore non-functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153905
138bc75d-0d04-0410-961f-
82ee72b054a4
espindola [Wed, 4 Nov 2009 17:24:37 +0000 (17:24 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153903
138bc75d-0d04-0410-961f-
82ee72b054a4
dwarak [Wed, 4 Nov 2009 16:22:47 +0000 (16:22 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153901
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Wed, 4 Nov 2009 15:47:00 +0000 (15:47 +0000)]
PR driver/11810
* gcc.c (SWITCHES_NEED_SPACES): Define to "o".
* config/alpha/osf.h (SWITCHES_NEED_SPACES): Remove here.
* config/mips/iris.h (SWITCHES_NEED_SPACES): Remove here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153900
138bc75d-0d04-0410-961f-
82ee72b054a4
espindola [Wed, 4 Nov 2009 15:45:31 +0000 (15:45 +0000)]
2009-11-04 Rafael Avila de Espindola <espindola@google.com>
* lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153899
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Wed, 4 Nov 2009 14:09:55 +0000 (14:09 +0000)]
2009-11-04 Richard Earnshaw <rearnsha@arm.com>
PR target/40835
* arm.md (peephole2 patterns for move and compare): New.
2009-11-04 Wei Guozhi <carrot@google.com>
PR target/40835
* gcc.target/arm/pr40835: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153895
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 4 Nov 2009 11:06:36 +0000 (11:06 +0000)]
* defaults.h (CONSTANT_ADDRESS_P): Provide a default definition.
Make sure that it does not allow CONST_DOUBLEs.
* doc/tm.texi (CONSTANT_ADDRESS_P): Update description.
* config/avr/avr.h (CONSTANT_ADDRESS_P): Delete.
* config/bfin/bfin.h (CONSTANT_ADDRESS_P): Delete.
* config/cris/cris.h (CONSTANT_ADDRESS_P): Delete.
* config/fr30/fr30.h (CONSTANT_ADDRESS_P): Delete.
* config/frv/frv.h (CONSTANT_ADDRESS_P): Delete.
* config/m32c/m32c.h (CONSTANT_ADDRESS_P): Delete.
* config/m68hc11/m68hc11.h (CONSTANT_ADDRESS_P): Delete.
* config/mep/mep.h (CONSTANT_ADDRESS_P): Delete.
* config/mn10300/mn10300.h (CONSTANT_ADDRESS_P): Delete.
* config/moxie/moxie.h (CONSTANT_ADDRESS_P): Delete.
* config/pdp11/pdp11.h (CONSTANT_ADDRESS_P): Delete.
* config/picochip/picochip.h (CONSTANT_ADDRESS_P): Delete.
* config/score/score.h (CONSTANT_ADDRESS_P): Delete.
* config/stormy16/stormy16.h (CONSTANT_ADDRESS_P): Delete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153894
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 4 Nov 2009 10:35:04 +0000 (10:35 +0000)]
2009-11-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/41919
* tree-vrp.c (test_for_singularity): Properly compare values.
* gcc.c-torture/execute/pr41919.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153893
138bc75d-0d04-0410-961f-
82ee72b054a4
revitale [Wed, 4 Nov 2009 10:22:22 +0000 (10:22 +0000)]
Another fix to the misaligned store vectorizer patch
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153892
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 4 Nov 2009 10:18:33 +0000 (10:18 +0000)]
2009-11-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/41919
* tree-vrp.c (test_for_singularity): Properly compare values.
* gcc.c-torture/execute/pr41919.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153891
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Wed, 4 Nov 2009 09:57:55 +0000 (09:57 +0000)]
2009-11-04 Maxim Kuvyrkov <maxim@codesourcery.com>
PR target/41302
* config/m68k/m68k.c (m68k_reg_present_p): New static function.
(m68k_ok_for_sibcall_p): Handle different result return locations.
2009-11-04 Carlos O'Donell <carlos@codesourcery.com>
PR target/41302
* gcc.target/m68k/pr41302.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153890
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 4 Nov 2009 09:40:15 +0000 (09:40 +0000)]
2009-11-04 Richard Guenther <rguenther@suse.de>
* c-opts.c (c_common_post_options): Move LTO option processing
code ...
* opts.c (decode_options): ... here.
fortran/
* options.c (gfc_post_options): Rely on common code processing
LTO options. Only enable -fwhole-file here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153889
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 4 Nov 2009 07:26:30 +0000 (07:26 +0000)]
* c-common.c (fold_offsetof_1): Use %wd instead of
HOST_WIDE_INT_PRINT_DEC.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153887
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 4 Nov 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153886
138bc75d-0d04-0410-961f-
82ee72b054a4
macro [Wed, 4 Nov 2009 00:07:24 +0000 (00:07 +0000)]
* config/vax/linux.h (TARGET_OS_CPP_BUILTINS): Don't define
__pic__ or __PIC__.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153883
138bc75d-0d04-0410-961f-
82ee72b054a4
macro [Wed, 4 Nov 2009 00:05:53 +0000 (00:05 +0000)]
* config.gcc (vax-*-linux*): Keep the original contents of
tmake_file while adding vax/t-linux.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153882
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Nov 2009 23:02:41 +0000 (23:02 +0000)]
PR c++/36959
* decl2.c (cxx_callgraph_analyze_expr): Don't reference a function
just because a static variable in it is needed unless -frepo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153878
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 3 Nov 2009 22:49:37 +0000 (22:49 +0000)]
PR target/10127
PR ada/20548
* expr.h (STACK_CHECK_PROBE_INTERVAL): Delete.
(STACK_CHECK_PROBE_INTERVAL_EXP): New macro.
(STACK_CHECK_MOVING_SP): Likewise.
* system.h (STACK_CHECK_PROBE_INTERVAL): Poison it.
* doc/tm.texi (Stack Checking): Delete STACK_CHECK_PROBE_INTERVAL.
Document STACK_CHECK_PROBE_INTERVAL_EXP and STACK_CHECK_MOVING_SP.
* doc/md.texi (Standard Pattern Names): Tweak entry of CHECK_STACK.
Document PROBE_STACK.
* explow.c (anti_adjust_stack_and_probe): New function.
(allocate_dynamic_stack_space): Do not directly allocate space if
STACK_CHECK_MOVING_SP, instead invoke above function.
(emit_stack_probe): Handle probe_stack insn.
(PROBE_INTERVAL): New macro.
(STACK_GROW_OPTAB): Likewise.
(STACK_GROW_OFF): Likewise.
(probe_stack_range): Use Pmode and memory_address consistently. Fix
loop condition in the small constant case. Rewrite in the general
case to be immune to wraparounds. Make sure the address of probes
is valid. Try to use [base + disp] addressing mode if possible.
* ira.c (setup_eliminable_regset): Set frame_pointer_needed if stack
checking is enabled and STACK_CHECK_MOVING_SP.
* rtlanal.c (may_trap_p_1) <MEM>: If stack checking is enabled,
return 1 for volatile references to the stack pointer.
* tree.c (build_common_builtin_nodes): Do not set ECF_NOTHROW on
__builtin_alloca if stack checking is enabled.
* unwind-dw2.c (uw_identify_context): Take into account whether the
context is that of a signal frame or not.
* config/i386/linux.h (STACK_CHECK_MOVING_SP): Define to 1.
* config/i386/linux64.h (STACK_CHECK_MOVING_SP): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153877
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 3 Nov 2009 22:36:39 +0000 (22:36 +0000)]
PR rtl-optimization/41917
* rtlanal.c (num_sign_bit_copies1) <case UMOD>: If sign bit of second
operand isn't known to be 0, return 1.
* gcc.c-torture/execute/pr41917.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153874
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 3 Nov 2009 21:33:26 +0000 (21:33 +0000)]
* gcc.target/i386/pr41900.c: Make test compile only. Scan assembler
dump to not include "call *%esp".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153871
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 3 Nov 2009 21:28:48 +0000 (21:28 +0000)]
gcc/
* config/mips/mips.md: Fix typos.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153870
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 3 Nov 2009 21:25:49 +0000 (21:25 +0000)]
gcc/
* doc/invoke.texi: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153869
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Nov 2009 20:52:30 +0000 (20:52 +0000)]
PR c++/39786
* g++.dg/lookup/using22.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153865
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Nov 2009 20:52:21 +0000 (20:52 +0000)]
PR c++/41876
* parser.c (cp_parser_type_specifier_seq): Rename is_condition to
is_declaration.
(cp_parser_exception_declaration): Pass true.
(cp_parser_omp_for_loop): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153864
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Nov 2009 18:43:06 +0000 (18:43 +0000)]
PR c++/41927
* typeck.c (build_x_binary_op): Don't do warn_parentheses
if we're in a SFINAE context.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153863
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Nov 2009 18:42:59 +0000 (18:42 +0000)]
PR c++/41815
* call.c (build_call_a): Strip cv-quals from rvalue result.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153862
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 3 Nov 2009 18:16:34 +0000 (18:16 +0000)]
2009-11-03 David Krauss <potswa@mac.com>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41351
* include/bits/stl_algo.h (__rotate(_RandomAccessIterator,
_RandomAccessIterator, _RandomAccessIterator,
random_access_iterator_tag)): Rewrite to use only std::swap in
general and std::copy/std::copy_backward when safe.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153860
138bc75d-0d04-0410-961f-
82ee72b054a4
pbrook [Tue, 3 Nov 2009 17:58:59 +0000 (17:58 +0000)]
2009-11-03 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/neon.ml (vectype): Add T_floatSF.
(string_of_vectype): Ditto.
* config/arm/neon-gen.ml (signed_ctype): Add T_floatSF.
(deftypes): Use float for float32_t.
* config/arm/arm_neon.h: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153858
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Nov 2009 17:11:18 +0000 (17:11 +0000)]
PR c++/40944
* call.c (initialize_reference): Add complain parm.
* typeck.c (convert_for_initialization): Pass it.
* decl.c (grok_reference_init): Likewise.
* cp-tree.h: Declare it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153856
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Nov 2009 17:11:08 +0000 (17:11 +0000)]
PR c++/40687
* pt.c (do_auto_deduction): Diagnose inconsistent deduction.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153855
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Tue, 3 Nov 2009 16:51:52 +0000 (16:51 +0000)]
2009-11-03 Tobias Burnus <burnus@net-b.de>
PR fortran/41907
* trans-expr.c (gfc_conv_procedure_call): Fix presence check
for optional arguments.
2009-11-03 Tobias Burnus <burnus@net-b.de>
PR fortran/41907
* gfortran.dg/missing_optional_dummy_6.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153854
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 3 Nov 2009 16:25:29 +0000 (16:25 +0000)]
* config/rx/predicates.md (rx_store_multiple_vector): Reverse
order of expected registers.
(rx_load_multiple_vector): Likewise.
(rx_rtsd_vector): Likewise.
* config/rx/rx.c (rx_cpu_type): New variable.
(rx_print_operand): Fix bug printing 64-bit constant values.
(rx_emit_stack_pushm): Reverse order of pushed registers.
(gen_rx_store_vector): Likewise.
(is_fast_interrupt_func): Only accept "fast_interrupt" as the
attribute name.
(is_exception_func): Rename to is_interrupt_func and only accept
"interrupt" as the attribute name.
(rx_get_stack_layout): Use new function name.
(rx_func_attr_inlinable): Likewise.
(rx_attribute_table): Remove "exception".
(rx_expand_prologue): If necessary push the accumulator register
in the prologue of interrupt functions.
(rx_expand_epilogue): If necessary pop the accumulator.
(rx_builtins): Add RX_BUILTIN_MVTIPL.
(rx_expand_builtin_stz): Remove.
(rx_expand_builtin_mvtipl): New function.
(rx_init_builtins): Handle RX_BUILTIN_MVTIPL.
(rx_expand_builtin): Likewise.
(rx_enable_fpu): New variable.
(rx_handle_option): Handle -fpu, -nofpu, -mcpu and -patch.
* config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Assert machine based
on rx_cpu_type. Define __RX_FPU_INSNS__ if FPU insns are allowed.
(enum rx_cpu_types): Define.
(ASM_SPEC): Pass -m32bit-doubles on to assembler.
(INCOMING_FRAME_SP_OFFSET): Define.
(ARG_POINTER_CFA_OFFSET): Define.
(FRAME_POINTER_CFA_OFFSET): Define.
(OVERRIDE_OPTIONS): Enable fast math if RX FPU insns are enabled.
(ALLOW_RX_FPU_INSNS): Define.
* config/rx/rx.md: Test ALLOW_RX_FPU_INSNS instead of
fast_math_flags_set_p.
(UNSPEC_BUILTIN_MVTIPL): Define.
(revl): Rename to bswapsi2.
(bswaphi2): New pattern.
(mvtachi): Mark as volatile because it uses a register unknown to
GCC.
(mvtaclo): Likewise.
(racw): Likewise.
(mvtc): Remove clobber of cc0.
(mvtcp): Delete.
(opecp): Delete.
* config/rx/rx.opt (mieee): Remove.
(fpu): Add.
(nofpu): Add.
(mcpu=): Add.
(patch=): Add.
(msave-acc-in-interrupts): Add.
* config/rx/t-rx (MULTILIB_OPTIONS): Change default to 64bit
doubles.
(MULTILIB_DIRS): Likewise.
(MULTILIB_MATCHES): Treat -fpu as an alias for -m32bit-doubles.
* doc/extend.texi: Remove description of "exception" function
attribute.
* doc/invoke.texi: Document -fpu, -nofpu, -mcpu=, -patch= and
-msave-acc-in-interrupts options.
* gcc.target/rx/builtins,c: Remove redundant tests.
Add test of MVTIPL instruction.
* gcc.target/rx/interrupts.c: Use fast_interrupt and interrupt
function attributes. Add -msave-acc-in-interrupts option to the
command line.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153853
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Tue, 3 Nov 2009 15:21:55 +0000 (15:21 +0000)]
* g++.dg/torture/pr36191.C: Don't run with -fomit-frame-pointer on
sh, m68k and fido.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153852
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Tue, 3 Nov 2009 13:20:08 +0000 (13:20 +0000)]
Move builtin-offsetof.c test
PR c++/38699
* c-c++-common/dfp/builtin-offsetof.c: Moved to ...
* c-c++-common/builtin-offsetof.c: ... here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153848
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 3 Nov 2009 11:45:00 +0000 (11:45 +0000)]
2009-11-03 Richard Guenther <rguenther@suse.de>
* c-common.c (fold_offsetof_1): Use HOST_WIDE_INT_PRINT_DEC.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153846
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 3 Nov 2009 10:59:33 +0000 (10:59 +0000)]
* gcc.target/i386/pr41900.c (main): Add missing volatile.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153845
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Tue, 3 Nov 2009 10:44:36 +0000 (10:44 +0000)]
Fix PR c++/38699
gcc/ChangeLog:
PR c++/38699
* c-common.c (fold_offsetof_1): Issue errors when the
member designator of the offsetoff expression is not legitimate.
gcc/testsuite/ChangeLog:
* c-c++-common/dfp/builtin-offsetof.c: New test.
* g++.dg/other/offsetof6.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153843
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 3 Nov 2009 08:26:02 +0000 (08:26 +0000)]
* config/i386/i386.md (*call_value_1_rex64_ms_sysv): Use register
names instead of numerical constants.
(sse_prologue_save): Ditto.
(*sse_prologue_save_insn): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153840
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 3 Nov 2009 07:53:05 +0000 (07:53 +0000)]
PR target/41900
* config/i386/i386.h (ix86_arch_indices) <X86_ARCH_CALL_ESP>: New.
(TARGET_CALL_ESP): New define.
* config/i386/i386.c (initial_ix86_tune_features): Initialize
X86_ARCH_CALL_ESP.
* config/i386/i386.md
(*call_pop_1_esp, *call_1_esp, *call_value_pop_1_esp,
*call_value_1_esp): Rename from *call_pop_1, *call_1,
*call_value_pop_1 and *call_value_1. Depend on TARGET_CALL_ESP.
(*call_pop_1, *call_1, *call_value_pop_1, *call_value_1):
New patterns, use "lsm" as operand 1 constraint.
* config/i386/predicates.md (call_insn_operand): Depend on
index_register_operand for !TARGET_CALL_ESP to avoid %esp register.
testsuite/ChangeLog:
PR target/41900
* gcc.target/i386/pr41900.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153838
138bc75d-0d04-0410-961f-
82ee72b054a4
hutchinsonandy [Tue, 3 Nov 2009 03:24:38 +0000 (03:24 +0000)]
*gcc.c-torture/execute/pr40668.c: Correct for 16bit int size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153835
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Tue, 3 Nov 2009 00:47:48 +0000 (00:47 +0000)]
2009-11-02 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Use base class with nested types.
(__future_base): New.
(__future_base::_Result_base): From _Future_result_base.
(__future_base::_Result): From _Future_result.
(__future_base::_Move_result): From _Move_future_result.
(__future_base::_Ptr): From _Future_ptr.
(__future_base::_State): From _Future_state.
(__basic_future): From _Future_impl.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust line
numbers.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Same.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153834
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Tue, 3 Nov 2009 00:40:57 +0000 (00:40 +0000)]
2009-11-02 Benjamin Kosnik <bkoz@redhat.com>
* MAINTAINERS: Add Jonathan Wakely under Various Maintainers, move
Phil Edwards to Write-After Approval.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153833
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 3 Nov 2009 00:16:42 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153832
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Mon, 2 Nov 2009 22:58:07 +0000 (22:58 +0000)]
Fix PR c++/41856
PR c++/41856
* g++.dg/lookup/extern-c-redecl3.C: Make the test x86
only.
* g++.dg/lookup/extern-c-redecl4.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153829
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Mon, 2 Nov 2009 22:14:20 +0000 (22:14 +0000)]
Forgot files from r153825
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153827
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Mon, 2 Nov 2009 21:52:59 +0000 (21:52 +0000)]
Split up io/io.h
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153825
138bc75d-0d04-0410-961f-
82ee72b054a4
andreast [Mon, 2 Nov 2009 21:18:17 +0000 (21:18 +0000)]
2009-11-02 Andreas Tobler <a.tobler@schweiz.org>
PR libffi/41908
* testsuite/libffi.call/testclosure.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153824
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Mon, 2 Nov 2009 19:55:02 +0000 (19:55 +0000)]
Fix PR c++/37093
gcc/cp/ChangeLog:
PR c++/37093
* pt.c (check_valid_ptrmem_cst_expr): New function.
(convert_nontype_argument): Use it to output an error for
illegal pointer to member expressions used as template arguments.
gcc/testsuite/ChangeLog:
PR c++/37093
* g++.dg/other/ptrmem10.C: New test.
* g++.dg/other/ptrmem11.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153822
138bc75d-0d04-0410-961f-
82ee72b054a4
janis [Mon, 2 Nov 2009 19:32:05 +0000 (19:32 +0000)]
PR testsuite/41878
* gfortran.dg/vect/vect-2.f90: Fix effective-target expression, add
spaces in some expressions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153821
138bc75d-0d04-0410-961f-
82ee72b054a4
rwild [Mon, 2 Nov 2009 18:52:08 +0000 (18:52 +0000)]
Work with defaulted $prefix (NONE) in libjava.
libjava/:
PR bootstrap/38867
* configure.ac (expanded_prefix): New variable, set to the
default prefix if none was passed on the command line.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153820
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 2 Nov 2009 16:52:57 +0000 (16:52 +0000)]
* c-c++-common/dfp/pr35620.c: Give the union a name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153818
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 2 Nov 2009 16:14:26 +0000 (16:14 +0000)]
Restrict DR 757 change to C++0x mode.
* decl2.c (mark_used): Check cxx_dialect.
* decl.c (grokfndecl): Do check type linkage in C++98 mode.
(grokvardecl): Likewise.
* pt.c (check_instantiated_arg): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153816
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Mon, 2 Nov 2009 14:30:39 +0000 (14:30 +0000)]
gcc/
PR tree-optimization/41857
* tree-flow.h (rewrite_use_address): Add BASE_HINT argument.
* tree-ssa-loop-ivopts.c (rewrite_use_address): Pass base hint
to create_mem_ref.
* tree-ssa-address.c (move_hint_to_base): New function.
(most_expensive_mult_to_index): Add TYPE argument. Use mode and
address space associated with TYPE.
(addr_to_parts): Add TYPE and BASE_HINT arguments. Pass TYPE to
most_expensive_mult_to_index. Call move_hint_to_base.
(create_mem_ref): Add BASE_HINT argument. Pass BASE_HINT and
TYPE to addr_to_parts.
gcc/testsuite/
PR tree-optimization/41857
* gcc.target/spu/ea/pr41857.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153810
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 2 Nov 2009 14:13:49 +0000 (14:13 +0000)]
2009-11-02 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/41750
* tree-sra.c (analyze_modified_params): Loop over all
representatives of components of a parameter.
* testsuite/gcc.c-torture/execute/pr41750.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153809
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 2 Nov 2009 13:57:13 +0000 (13:57 +0000)]
PR tree-optimization/41841
* ipa-struct-reorg.c (build_data_structure): Don't attempt to look at
local variables of not yet materialized clones.
* gcc.dg/pr41841.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153807
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 2 Nov 2009 13:55:41 +0000 (13:55 +0000)]
PR debug/41893
* cfgexpand.c (expand_debug_expr): Don't attempt to create DECL_RTL
for a VOIDmode variable.
* gcc.dg/debug/pr41893-1.c: New test.
* gcc.dg/debug/pr41893-2.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153806
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 2 Nov 2009 13:39:46 +0000 (13:39 +0000)]
PR c++/41774
* c-pragma.c (visstack): Change into vector of ints rather than
enum symbol_visibility.
(push_visibility): Add kind argument, push default_visibility together
with kind.
(pop_visibility): Add kind argument, return true if successful, fail
if visibility stack is empty or if stack top is of different kind.
(handle_pragma_visibility): Don't check length of visstack, instead
call pop_visibility and issue diagnostics if it failed. Pass 0
as last argument to push_visibility and pop_visibility.
* c-pragma.h (push_visibility): Add kind argument.
(pop_visibility): Likewise. Return bool instead of void.
* name-lookup.c (handle_namespace_attrs): Pass 1 as last argument to
push_visibility.
* parser.c (cp_parser_namespace_definition): Pass 1 as argument to
pop_visibility.
* rtti.c (push_abi_namespace): Pass 2 as last argument to
push_visibility.
(pop_abi_namespace): Pass 2 as argument to pop_visibility.
* g++.dg/ext/visibility/namespace3.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153805
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 2 Nov 2009 02:46:35 +0000 (02:46 +0000)]
* gcc.dg/tree-ssa/restrict-1.c: Move to c-c++-common.
* gcc.dg/tree-ssa/restrict-2.c: Move to c-c++-common.
* gcc.dg/tree-ssa/restrict-4.c: Move to c-c++-common.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153800
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 2 Nov 2009 00:16:53 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153799
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 1 Nov 2009 22:12:07 +0000 (22:12 +0000)]
* tree.def (TARGET_MEM_REF): Update comment.
* alias.c (get_alias_set): Retrieve the original memory reference for
a TARGET_MEM_REF before proceeding.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153796
138bc75d-0d04-0410-961f-
82ee72b054a4