Eric Botcazou
22d12fc2cb
trans.c (lvalue_required_p): New case.
...
* gcc-interface/trans.c (lvalue_required_p) <N_Unchecked_Conversion>:
New case.
From-SVN: r153948
2009-11-05 18:25:10 +00:00
Janus Weil
4b7dd692c2
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
2009-11-05 16:31:07 +01:00
Jakub Jelinek
5ddf025851
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
2009-11-05 15:54:19 +01:00
Paul Brook
d79f303241
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
2009-11-05 14:47:45 +00:00
Michael Matz
79e22ff8a4
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
2009-11-05 14:11:26 +00:00
Paolo Carlini
338311e5d7
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
2009-11-05 14:06:13 +00:00
Rafael Avila de Espindola
94086ef69c
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
2009-11-05 13:59:54 +00:00
Joern Rennecke
3be9759a01
* MAINTAINERS (Write After Approval): Add entry for my INRIA work.
...
From-SVN: r153937
2009-11-05 13:41:46 +00:00
Jason Merrill
5ab8b6b550
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
2009-11-05 08:11:42 -05:00
Martin Jambor
30a20e9731
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
2009-11-05 13:09:08 +01:00
Janus Weil
8bae6273fb
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
2009-11-05 11:42:48 +01:00
Maxim Kuvyrkov
eb6219852b
* gcc.target/m68k/pr41302.c: Fix target triplet.
...
From-SVN: r153933
2009-11-05 10:22:27 +00:00
Benjamin Kosnik
dc5de59088
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
2009-11-05 02:55:08 +00:00
GCC Administrator
d5bcfb20ba
Daily bump.
...
From-SVN: r153928
2009-11-05 00:16:41 +00:00
Kenneth Zadeck
4f2da32b77
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
2009-11-04 23:17:54 +00:00
Jason Merrill
cb5f207480
Revert untested varasm.c change
...
From-SVN: r153923
2009-11-04 18:14:56 -05:00
Jason Merrill
be998fb7bc
fix
...
From-SVN: r153922
2009-11-04 18:14:14 -05:00
Jason Merrill
e3503aa8cf
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
2009-11-04 18:13:23 -05:00
Jason Merrill
f4ecc8fd6b
re PR c++/39413 (static_assert and SFINAE)
...
PR c++/39413
* search.c (lookup_base): Don't complete_type (base).
From-SVN: r153920
2009-11-04 17:29:35 -05:00
Eric Botcazou
f96b189564
Fix nit
...
From-SVN: r153919
2009-11-04 21:50:31 +00:00
Eric Botcazou
35a07c37da
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
2009-11-04 21:45:54 +00:00
Harsha Jagasia
3e901069e7
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
2009-11-04 21:15:42 +00:00
Janus Weil
6168891d1f
[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
2009-11-04 20:41:07 +01:00
Jason Merrill
0bc044b8b3
correct PR number
...
From-SVN: r153910
2009-11-04 14:36:34 -05:00
Jason Merrill
eeeca7d418
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
2009-11-04 14:34:25 -05:00
Paolo Carlini
d87f43c358
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
2009-11-04 18:48:21 +00:00
Andrew Pinski
0e159e0f2b
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
2009-11-04 10:35:57 -08:00
Jason Merrill
ac3554c568
PR c++/17365, DR 218
...
PR c++/17365, DR 218
* name-lookup.c (add_function): Ignore non-functions.
From-SVN: r153905
2009-11-04 13:13:57 -05:00
Richard Guenther
7e9dc421e5
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
2009-11-04 17:24:37 +00:00
Harsha Jagasia
43a8b70590
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
2009-11-04 16:22:47 +00:00
Mark Mitchell
7d6ce94a23
re PR driver/11810 (gcc -pipe -ox.o -c x.c writes erroneous x.o on compile error)
...
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.
From-SVN: r153900
2009-11-04 15:47:00 +00:00
Rafael Avila de Espindola
1cddcdcac5
lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
...
2009-11-04 Rafael Avila de Espindola <espindola@google.com>
* lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
From-SVN: r153899
2009-11-04 15:45:31 +00:00
Richard Earnshaw
57f5eef091
[multiple changes]
...
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.
From-SVN: r153895
2009-11-04 14:09:55 +00:00
Nick Clifton
4003023f9d
defaults.h (CONSTANT_ADDRESS_P): Provide a default definition.
...
* 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.
From-SVN: r153894
2009-11-04 11:06:36 +00:00
Richard Biener
92fcbf95c1
re PR tree-optimization/41919 (optimized code with -O2 or -O3 gives strange result)
...
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.
From-SVN: r153893
2009-11-04 10:35:04 +00:00
Revital Eres
0cf7986c82
Another fix to the misaligned store vectorizer patch
...
From-SVN: r153892
2009-11-04 10:22:22 +00:00
Richard Guenther
fbd4382774
re PR tree-optimization/41919 (optimized code with -O2 or -O3 gives strange result)
...
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.
From-SVN: r153891
2009-11-04 10:18:33 +00:00
Maxim Kuvyrkov
db5e2d51eb
[multiple changes]
...
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.
From-SVN: r153890
2009-11-04 09:57:55 +00:00
Richard Guenther
e3b8749b11
c-opts.c (c_common_post_options): Move LTO option processing code ...
...
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.
From-SVN: r153889
2009-11-04 09:40:15 +00:00
Jakub Jelinek
00ffc97dfa
c-common.c (fold_offsetof_1): Use %wd instead of HOST_WIDE_INT_PRINT_DEC.
...
* c-common.c (fold_offsetof_1): Use %wd instead of
HOST_WIDE_INT_PRINT_DEC.
From-SVN: r153887
2009-11-04 08:26:30 +01:00
GCC Administrator
4999625e0f
Daily bump.
...
From-SVN: r153886
2009-11-04 00:16:51 +00:00
Maciej W. Rozycki
bfd4796379
linux.h (TARGET_OS_CPP_BUILTINS): Don't define __pic__ or __PIC__.
...
* config/vax/linux.h (TARGET_OS_CPP_BUILTINS): Don't define
__pic__ or __PIC__.
From-SVN: r153883
2009-11-04 00:07:24 +00:00
Maciej W. Rozycki
45f681502f
config.gcc (vax-*-linux*): Keep the original contents of tmake_file while adding vax/t-linux.
...
* config.gcc (vax-*-linux*): Keep the original contents of
tmake_file while adding vax/t-linux.
From-SVN: r153882
2009-11-04 00:05:53 +00:00
Jason Merrill
9a6f7249ea
re PR c++/36959 (C++ front-end causing a static inline function to be emitted)
...
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.
From-SVN: r153878
2009-11-03 18:02:41 -05:00
Eric Botcazou
d809253a56
re PR target/10127 (-fstack-check let's program crash)
...
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.
From-SVN: r153877
2009-11-03 22:49:37 +00:00
Jakub Jelinek
24d179b4c7
re PR rtl-optimization/41917 (Strange athrithmetic result with -O3)
...
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.
From-SVN: r153874
2009-11-03 23:36:39 +01:00
Uros Bizjak
0b94d8b285
pr41900.c: Make test compile only.
...
* gcc.target/i386/pr41900.c: Make test compile only. Scan assembler
dump to not include "call *%esp".
From-SVN: r153871
2009-11-03 22:33:26 +01:00
Richard Sandiford
791c344bc6
mips.md: Fix typos.
...
gcc/
* config/mips/mips.md: Fix typos.
From-SVN: r153870
2009-11-03 21:28:48 +00:00
Richard Sandiford
8d0239334c
invoke.texi: Fix typo.
...
gcc/
* doc/invoke.texi: Fix typo.
From-SVN: r153869
2009-11-03 21:25:49 +00:00
Jason Merrill
e58793e86f
re PR c++/39786 (Qualified name lookup through different numbers of using directives)
...
PR c++/39786
* g++.dg/lookup/using22.C: New.
From-SVN: r153865
2009-11-03 15:52:30 -05:00