H.J. Lu [Thu, 1 May 2008 17:47:43 +0000 (17:47 +0000)]
i386.c (ix86_builtin_type): Replace DI_FTYPE_DI_DI_INT with V1DI2DI_FTYPE_V1DI_V1DI_INT.
2008-05-01 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_builtin_type): Replace
DI_FTYPE_DI_DI_INT with V1DI2DI_FTYPE_V1DI_V1DI_INT.
(bdesc_args): Updated.
(ix86_init_mmx_sse_builtins): Likewise.
(ix86_expand_args_builtin): Likewise.
* config/i386/tmmintrin.h (_mm_alignr_pi8): Replace long long
with __v1di.
* doc/extend.texi: Correct __builtin_ia32_palignr.
From-SVN: r134864
H.J. Lu [Thu, 1 May 2008 16:13:23 +0000 (16:13 +0000)]
re PR target/36095 (__builtin_ia32_crc32di shouldn't defined in 32bit)
2008-05-01 H.J. Lu <hongjiu.lu@intel.com>
PR target/36095
* config/i386/i386.c (bdesc_crc32): Removed.
(ix86_expand_crc32): Likewise.
(ix86_builtin_type): Replace V2DI2TI_FTYPE_V2DI2TI_INT with
V2DI2TI_FTYPE_V2DI_INT, V2DI2TI_FTYPE_V2DI2TI_V2DI2TI_INT with
V2DI2TI_FTYPE_V2DI_V2DI_INT. Add UINT64_FTYPE_UINT64_UINT64,
UINT_FTYPE_UINT_UINT, UINT_FTYPE_UINT_USHORT and
UINT_FTYPE_UINT_UCHAR.
(bdesc_args): Updated. Add crc32 builtins.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Updated to support subreg.
* doc/extend.texi: Correct __builtin_ia32_crc32di.
From-SVN: r134861
Jan Hubicka [Thu, 1 May 2008 16:08:15 +0000 (18:08 +0200)]
tree-pass.h (opt_pass): Add IPA_PASS.
* tree-pass.h (opt_pass): Add IPA_PASS.
(varpool_node, cgraph_node): Forward declare.
(ipa_opt_pass): Define.
(pass_ipa_inline): Turn into ipa_opt_pass.
(pass_apply_inline): Remove.
* ipa-inline.c (pass_ipa_inline): Turn into ipa_opt_pass.
(apply_inline): Turn into ....
(inline_transform): ... this one.
(inline_generate_summary): New function.
(pass_apply_inline): Remove.
* function.h (ipa_opt_pass): Forward declare structure; typedef;
vector.
(struct function): Add ipa_transforms_to_apply.
* passes.c (register_one_dump_file): Work on IPA_PASS.
(init_optimization_passes): Remove pass_inline_parameters and
pass_apply_inline.
(pass_init_dump_file, pass_fini_dump_file): Break out from ....
(execute_one_pass) ... here; apply transforms when possible.
(add_ipa_transform_pass, execute_ipa_summary_asses,
execute_one_ipa_transform_pass): New.
(execute_ipa_pass_list): Update for IPA_PASS type.
From-SVN: r134859
H.J. Lu [Thu, 1 May 2008 15:03:57 +0000 (15:03 +0000)]
i386.c (ix86_builtin_type): Add V2DI_FTYPE_V2DI_V16QI...
2008-05-01 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_builtin_type): Add
V2DI_FTYPE_V2DI_V16QI, V2DI_FTYPE_V2DI_UINT_UINT and
V2DI_FTYPE_V2DI_V2DI_UINT_UINT.
(bdesc_args): Add SSE4a builtins.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Likewise.
(ix86_expand_builtin): Likewise.
From-SVN: r134854
H.J. Lu [Thu, 1 May 2008 15:02:16 +0000 (15:02 +0000)]
i386.c (ix86_builtin_type): Add V8HI_FTYPE_V8HI_V8HI_COUNT...
2008-05-01 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_builtin_type): Add
V8HI_FTYPE_V8HI_V8HI_COUNT, V8HI_FTYPE_V8HI_SI_COUNT,
V4SI_FTYPE_V4SI_V4SI_COUNT, V4SI_FTYPE_V4SI_SI_COUNT,
V4HI_FTYPE_V4HI_V4HI_COUNT, V4HI_FTYPE_V4HI_SI_COUNT,
V2DI_FTYPE_V2DI_V2DI_COUNT, V2DI_FTYPE_V2DI_SI_COUNT,
V2SI_FTYPE_V2SI_V2SI_COUNT, V2SI_FTYPE_V2SI_SI_COUNT,
V1DI_FTYPE_V1DI_V1DI_COUNT, V1DI_FTYPE_V1DI_SI_COUNT,
V8HI_FTYPE_V8HI_INT, V4SI_FTYPE_V4SI_INT, V4HI_FTYPE_V4HI_INT,
V2DI2TI_FTYPE_V2DI2TI_INT, V2DI2TI_FTYPE_V2DI2TI_V2DI2TI_INT
and DI_FTYPE_DI_DI_INT.
(bdesc_args): Add MMX/SSE shift, shuffle and palignr builtins.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Likewise.
(ix86_expand_builtin): Likewise.
(ix86_expand_binop_imm_builtin): Removed.
* doc/extend.texi: Correct __builtin_ia32_palignr128.
From-SVN: r134853
Richard Guenther [Thu, 1 May 2008 11:22:33 +0000 (11:22 +0000)]
re PR middle-end/36093 (__align__ produces incorrect results in certain cases)
2008-05-01 Richard Guenther <rguenther@suse.de>
PR middle-end/36093
* gcc.c-torture/execute/pr36093.c: New testcase.
From-SVN: r134851
Eric Botcazou [Thu, 1 May 2008 10:50:01 +0000 (10:50 +0000)]
decl.c (make_packable_type): Resize the last component to its RM size only if it is of an aggregate type.
* decl.c (make_packable_type): Resize the last component to its RM size
only if it is of an aggregate type.
* trans.c (call_to_gnu): Fix nit in comment.
(gnat_to_gnu): Likewise.
From-SVN: r134848
GCC Administrator [Thu, 1 May 2008 00:17:47 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r134843
François-Xavier Coudert [Wed, 30 Apr 2008 21:45:02 +0000 (21:45 +0000)]
intrinsic.c (add_functions): Add SELECTED_CHAR_KIND intrinsic.
* intrinsic.c (add_functions): Add SELECTED_CHAR_KIND intrinsic.
* intrinsic.h (gfc_check_selected_char_kind,
gfc_simplify_selected_char_kind): New prototypes.
* gfortran.h (gfc_isym_id): Add GFC_ISYM_SC_KIND.
* trans.h (gfor_fndecl_sc_kind): New function decl.
* trans-decl.c (gfor_fndecl_sc_kind): Build new decl.
* arith.c (gfc_compare_with_Cstring): New function.
* arith.h (gfc_compare_with_Cstring): New prototype.
* check.c (gfc_check_selected_char_kind): New function.
* primary.c (match_string_constant, match_kind_param): Mark
symbols used as literal constant kind param as referenced.
* trans-intrinsic.c (gfc_conv_intrinsic_sc_kind): New function.
(gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_sc_kind.
* intrinsic.texi (SELECTED_CHAR_KIND): Document new intrinsic.
* simplify.c (gfc_simplify_selected_char_kind): New function.
* intrinsics/selected_char_kind.c: New file.
* Makefile.am: Add intrinsics/selected_char_kind.c.
* Makefile.in: Regenerate.
* gfortran.dg/selected_char_kind_1.f90: New test.
* gfortran.dg/selected_char_kind_2.f90: New test.
* gfortran.dg/selected_char_kind_3.f90: New test.
From-SVN: r134839
Richard Guenther [Wed, 30 Apr 2008 21:42:24 +0000 (21:42 +0000)]
re PR tree-optimization/32921 (Revision 126326 causes 12% slowdown)
2008-04-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/32921
* tree-ssa-loop-im.c (mem_refs_may_alias_p): Disambiguate with TBAA.
From-SVN: r134838
Kai Tietz [Wed, 30 Apr 2008 20:24:46 +0000 (20:24 +0000)]
chmod_1.f90: Disable for *-*-mingw*.
2008-04-30 Kai Tietz <kai.tietz@onevision.com>
* gfortran.dg/chmod_1.f90: Disable for *-*-mingw*.
* gfortran.dg/chmod_2.f90: Likewise.
* gfortran.dg/chmod_3.f90: Likewise.
* gfortran.dg/open_errors.f90: Likewise.
From-SVN: r134837
Paul Thomas [Wed, 30 Apr 2008 20:13:21 +0000 (20:13 +0000)]
re PR fortran/35997 (Used function interface bug)
2008-04-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35997
* module.c (find_symbol): Do not return a result for a symbol
that has been renamed in another module.
2008-04-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35997
* gfortran.dg/use_rename_3.f90
From-SVN: r134836
Richard Sandiford [Wed, 30 Apr 2008 19:33:32 +0000 (19:33 +0000)]
arm.c (arm_unwind_emit): Use crtl->all_throwers_are_sibcalls instead of cfun->all_throwers_are_sibcalls.
gcc/
* config/arm/arm.c (arm_unwind_emit): Use
crtl->all_throwers_are_sibcalls instead of
cfun->all_throwers_are_sibcalls.
(arm_output_fn_unwind): Likewise.
* config/frv/frv.c (frv_stack_info): Use crtl->uses_pic_offset_table
instead of cfun->uses_pic_offset_table.
(frv_expand_prologue): Likewise.
(frv_frame_pointer_required): Likewise.
(frv_expand_fdpic_call): Likewise.
(frv_emit_movsi): Likewise.
* config/iq2000/iq2000.c (iq2000_expand_prologue): Use
cfun->returns_pcc_struct instead of
current_function_returns_pcc_struct.
* config/m32c/m32c.c (need_to_save): Use crtl->calls_eh_return
instead of cfun->calls_eh_return.
(m32c_pushm_popm): Likewise.
* config/xtensa/xtensa.h (cfun->calls_alloca): Remove bogus
"extern" declaration.
From-SVN: r134835
Richard Guenther [Wed, 30 Apr 2008 19:05:12 +0000 (19:05 +0000)]
re PR tree-optimization/21636 (Missed ccp optimization)
2008-04-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/21636
* tree-ssa-ccp.c (ccp_fold): Handle &p->x with p being a
constant address.
(evaluate_stmt): Print the likely value.
(ccp_visit_stmt): Avoid excessive vertical spacing.
* gcc.dg/tree-ssa/ssa-ccp-19.c: New testcase.
From-SVN: r134834
Rafael Avila de Espindola [Wed, 30 Apr 2008 17:21:55 +0000 (17:21 +0000)]
builtins.c (fold_call_expr): Return realret.
2008-04-30 Rafael Espindola <espindola@google.com>
* builtins.c (fold_call_expr): Return realret.
* tree-ssa-threadedge.c
(record_temporary_equivalences_from_stmts_at_dest): Ignore calls to
__builtin_object_size.
From-SVN: r134833
Seongbae Park [Wed, 30 Apr 2008 17:17:03 +0000 (17:17 +0000)]
gcc.c (wrapper_string): New variable.
2008-04-30 Seongbae Park <seongbae.park@gmail.com>
* gcc.c (wrapper_string): New variable.
(insert_wrapper): New function.
(execute): New option -wrapper.
* doc/invoke.texi (Overall Options): New driver option -wrapper.
From-SVN: r134832
Thomas Koenig [Wed, 30 Apr 2008 16:56:01 +0000 (16:56 +0000)]
re PR fortran/35993 (wrong answer for all array intrinsics with scalar mask)
2008-04-30 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/35993
* ifunction.m4 (SCALAR_ARRAY_FUNCTION): Use correct
implementation for multi-dimensional return arrays when
the mask is .false.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.
2008-04-30 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/35993
* gfortran.dg/intrinsic_product_1.f90: New test case.
From-SVN: r134830
Ralf Wildenhues [Wed, 30 Apr 2008 16:43:08 +0000 (16:43 +0000)]
Makefile.am (install-headers): Cope with empty parallel_headers.
libstdc++-v3/
* include/Makefile.am (install-headers): Cope with empty
parallel_headers.
* include/Makefile.in: Regenerate.
From-SVN: r134829
Nathan Froyd [Wed, 30 Apr 2008 16:10:21 +0000 (16:10 +0000)]
t-ppccomm: Add build rules for new files.
libgcc/
* config/rs6000/t-ppccomm: Add build rules for new files.
(LIB2ADD_ST): New variable.
gcc/
* config/rs6000/crtresgpr.asm, config/rs6000/crtresxgpr.asm,
config/rs6000/crtsavgpr.asm, config/rs6000/crtresfpr.asm,
config/rs6000/crtresxfpr.asm, config/rs6000/crtsavfpr.asm: Break out
from...
* config/rs6000/crtsavres.asm: ...here. Remove unneeded file.
* config/rs6000/e500crtres32gpr.asm,
config/rs6000/e500crtres64gpr.asm
config/rs6000/e500crtres64gprctr.asm,
config/rs6000/e500crtrest32gpr.asm
config/rs6000/e500crtrest64gpr.asm,
config/rs6000/e500crtresx32gpr.asm
config/rs6000/e500crtresx64gpr.asm,
config/rs6000/e500crtsav32gpr.asm
config/rs6000/e500crtsav64gpr.asm,
config/rs6000/e500crtsav64gprctr.asm
config/rs6000/e500crtsavg32gpr.asm,
config/rs6000/e500crtsavg64gpr.asm
config/rs6000/e500crtsavg64gprctr.asm: New files.
* config/rs6000/t-ppccomm: Add build rules for new files.
(LIB2FUNCS_STATIC_EXTRA): Add new files.
* config/rs6000/t-netbsd: Add build rules for new files.
(LIB2FUNCS_STATIC_EXTRA): New variable.
* config/rs6000/sysv4.h (ENDFILE_SPEC): Don't include crtsavres.o
(CRTSAVRES_DEFAULT_SPEC): Likewise.
* config/rs6000/netbsd.h (ENDFILE_SPEC): Likewise.
From-SVN: r134828
H.J. Lu [Wed, 30 Apr 2008 15:40:14 +0000 (15:40 +0000)]
i386.c (ix86_builtin_type): Add FLOAT128_FTYPE_FLOAT128_FLOAT128...
2008-04-30 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_builtin_type): Add
FLOAT128_FTYPE_FLOAT128_FLOAT128, V16QI_FTYPE_V16QI_V16QI,
V16QI_FTYPE_V8HI_V8HI, V8QI_FTYPE_V8QI_V8QI,
V8QI_FTYPE_V4HI_V4HI, V8HI_FTYPE_V8HI_V8HI,
V8HI_FTYPE_V16QI_V16QI, V8HI_FTYPE_V4SI_V4SI,
V4SI_FTYPE_V4SI_V4SI, V4SI_FTYPE_V8HI_V8HI,
V4SI_FTYPE_V4SF_V4SF, V4SI_FTYPE_V2DF_V2DF,
V4HI_FTYPE_V4HI_V4HI, V4HI_FTYPE_V8QI_V8QI,
V4HI_FTYPE_V2SI_V2SI, V4SF_FTYPE_V4SF_V4SF,
V4SF_FTYPE_V4SF_V4SF_SWAP, V4SF_FTYPE_V4SF_V2SI,
V4SF_FTYPE_V4SF_V2DF, V4SF_FTYPE_V4SF_DI,
V4SF_FTYPE_V4SF_SI, V2DI_FTYPE_V2DI_V2DI,
V2DI_FTYPE_V16QI_V16QI, V2DI_FTYPE_V4SI_V4SI,
V2DI_FTYPE_V2DF_V2DF, V2SI_FTYPE_V2SI_V2SI,
V2SI_FTYPE_V4HI_V4HI, V2SI_FTYPE_V2SF_V2SF,
V2DF_FTYPE_V2DF_V2DF, V2DF_FTYPE_V2DF_V2DF_SWAP,
V2DF_FTYPE_V2DF_V4SF, V2DF_FTYPE_V2DF_DI,
V2DF_FTYPE_V2DF_SI, V2SF_FTYPE_V2SF_V2SF,
V1DI_FTYPE_V1DI_V1DI, V1DI_FTYPE_V8QI_V8QI and
V1DI_FTYPE_V2SI_V2SI.
(bdesc_2arg): Moved to ...
(bdesc_args): Here.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Updated. Take a pointer
to const struct builtin_description. Handle comparison
builtin functions.
(ix86_expand_sse_compare): Take a new argument for swapping
operands.
(ix86_expand_builtin): Updated.
* config/i386/sse.md (ssse3_pmaddubswv8hi3): Renamed to ...
(ssse3_pmaddubsw128): This.
(ssse3_pmaddubswv4hi3): Renamed to ...
(ssse3_pmaddubsw): This.
* doc/extend.texi (__builtin_ia32_packsswb128): Correct
prototype.
(__builtin_ia32_packssdw128): Likewise.
)__builtin_ia32_packuswb128): Likewise.
(__builtin_ia32_pmaddubsw): Likewise.
(__builtin_ia32_pmaddubsw128): Likewise.
From-SVN: r134827
Richard Guenther [Wed, 30 Apr 2008 15:06:16 +0000 (15:06 +0000)]
re PR tree-optimization/14847 ([tree-ssa] combine "if (a & 1) goto there" and "if (a & 4) goto there")
2008-04-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/14847
* tree-ssa-ifcombine.c (get_name_for_bit_test): New helper function.
(recognize_bits_test): Use it.
(recognize_single_bit_test): Likewise.
* gcc.dg/tree-ssa/ssa-ifcombine-6.c: New testcase.
From-SVN: r134825
Jakub Jelinek [Wed, 30 Apr 2008 14:24:18 +0000 (16:24 +0200)]
re PR c++/35986 (ICE with ambiguous template functions)
PR c++/35986
* pt.c (more_specialized_fn): Stop the loop even if there are no
arguments before ellipsis.
* g++.dg/overload/template4.C: New test.
From-SVN: r134823
Martin Jambor [Wed, 30 Apr 2008 14:21:32 +0000 (16:21 +0200)]
MAINTAINERS: (Write After Approval): Add myself.
2008-04-30 Martin Jambor <mjambor@suse.cz>
* MAINTAINERS: (Write After Approval): Add myself.
From-SVN: r134822
Martin Jambor [Wed, 30 Apr 2008 12:35:19 +0000 (14:35 +0200)]
ChangeLog: Added entries I forgot in my previous commit.
2008-04-30 Martin Jambor <mjambor@suse.cz>
* gcc/ChangeLog: Added entries I forgot in my previous commit.
From-SVN: r134821
Kai Tietz [Wed, 30 Apr 2008 12:34:13 +0000 (12:34 +0000)]
chmod_1.f90: Disable for x86_64-*-mingw*.
2008-04-30 Kai Tietz <kai.tietz@onevision.com>
* gfortran.dg/chmod_1.f90: Disable for x86_64-*-mingw*.
* gfortran.dg/chmod_2.f90: Likewise.
* gfortran.dg/chmod_3.f90: Likewise.
* gfortran.dg/open_errors.f90: Likewise.
From-SVN: r134820
Samuel Tardieu [Wed, 30 Apr 2008 10:46:17 +0000 (10:46 +0000)]
Makefile.in: Adapt sh4-linux target.
gcc/ada/
* Makefile.in: Adapt sh4-linux target.
From-SVN: r134819
Martin Jambor [Wed, 30 Apr 2008 10:01:59 +0000 (12:01 +0200)]
ipa-cp.c (ipcp_init_stage): Calls ipa_set_called_with_variable_arg instead of setting number of formal...
2008-04-30 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (ipcp_init_stage): Calls ipa_set_called_with_variable_arg
instead of setting number of formal parameters to zero.
(ipcp_init_stage): Do not set the number of actual parameters to zero
either.
(ipcp_propagate_stage): Explicitly skipping all calls to nodes
which are called with variable number of arguments.
(ipcp_insert_stage): Explicitely skipping all nodes which are
called with variable number of arguments.
(ipcp_callsite_param_print): Skipps callsites to nodes with varaible
number of parameters.
* ipa-prop.h (struct ipa_node_params): Added flag
called_with_var_arguments
(ipa_set_param_count): Added. Changed sole setter to use it.
(ipa_get_param_count): Added. All readers of param_count
converted to use it instead.
(ipa_set_called_with_variable_arg): Added.
(ipa_is_called_with_var_arguments): Added.
(ipa_get_ith_param): Added. All readers of param_decls converted
to use it instead.
(ipa_set_cs_argument_count): Added, sole writer to argument_count
changed to use it.
(ipa_get_cs_argument_count): Added, all readers of argument_count
changed to cal it.
(ipa_get_ith_jump_func): Added. Accessors of jump values changed
to use it.
* ipa-prop.h (struct ipcp_formal): Renamed to ipcp_lattice
(struct ipcp_lattice): Renamed cval_type to type
(struct ipa_node_params): ipcp_cval renamed to ipcp_lattices
* ipa-cp.c (ipcp_cval_get_cvalue): Changed return value to tree
(ipcp_cval_set_cvalue): Changed type of parameter value to tree
(ipcp_insert_stage): Changed the type of variable cvalue to tree
(ipcp_replace_map_create): Changed the type of parameter cvalue to tree
(build_const_val): Changed the type of parameter cvalue to tree
(ipcp_propagate_const): Changed the type of parameter cvalue to tree
(ipcp_method_cval_set_cvalue_type): Renamed parameter cval_type1 to type
* ipa-prop.h (struct ipcp_formal): Replaced cvalue with tree called
constant
* ipa-prop.c (ipa_methodlist_init): Renamed to ipa_init_func_list
(ipa_methodlist_not_empty): Removed, the sole user now checks directly
(ipa_add_method): Renamed to ipa_push_func_to_list
(ipa_remove_method): Renamed to ipa_pop_func_from_list
(ipa_callsite_param_count): Removed.
(ipa_callsite_param_count_set): Removed.
(ipa_callsite_param): Removed.
(ipa_callsite_callee): Removed.
(ipa_callsite_compute_param): Renamed to ipa_compute_jump_functions
(ipa_callsite_compute_count): Renamed to ipa_count_arguments
(ipa_method_formal_count): Removed.
(ipa_method_formal_count_set): Removed.
(ipa_method_get_tree): Removed.
(ipa_method_tree_map_create): Removed.
(ipa_method_compute_tree_map): Renamed to ipa_create_param_decls_array
(ipa_create_param_decls_array): Creates the array itself
(ipa_create_param_decls_array): Temporary variable info instead of
a few dereferences.
(ipa_method_formal_compute_count): Renamed to ipa_count_formal_params
(ipa_method_compute_modify): Renamed to ipa_detect_param_modifications
(get_type): Removed.
(ipa_jf_get_info_type): Removed.
(ipa_node_create): Renamed to ipa_create_node_params
(ipa_free): Renamed to ipa_free_all_node_params
(ipa_nodes_create): Renamed to ipa_create_all_node_params
(ipa_edges_create): Renamed to ipa_create_all_edge_args
(ipa_edges_free): Renamed to ipa_free_all_edge_args
(ipa_nodes_free): Integrated into ipa_free_all_node_params and removed
(ipa_free_all_node_params): Deallocation to jump_functions moved to
ipa_free_all_edge_args
(ipa_method_tree_print): Renamed to ipa_print_all_tree_maps
(ipa_method_modify_print): Renamed to ipa_print_all_params_modified
(ipa_create_methodlist_node): Removed.
(ipa_methodlist_method): Removed.
(ipa_methodlist_method_set): Removed.
(ipa_methodlist_next_method): Removed.
(ipa_methodlist_next_method_set): Removed.
(ipa_method_is_modified): Removed.
(ipa_method_modify_create): Removed.
(ipa_method_modify_init): Temporary variable info instead of a few
dereferences.
(ipa_detect_param_modifications): Temporary variable info instead of
a few dereferences.
(ipa_compute_jump_functions): Temporary variable info instead of
a few dereferences.
(ipa_method_modify_set): Removed.
(ipa_method_tree_map): Renamed to ipa_get_param_decl_index
(ipa_get_param_decl_index): Now accepts struct ipa_node_params rather
than craph_node as the first parameter.
(ipa_method_modify_stmt): Renamed to ipa_check_stmt_modifications
(ipa_method_modify_init): Removed.
(ipa_compute_jump_functions): Added a temp variable instead of
repeatadly dereferencing the cgraph_edge.aux pointer
(ipa_callsite_param_set_type): Removed.
(ipa_compute_jump_functions): i renamed to index and moved to
an inner block
(ipa_callsite_param_set_info_type_formal): Removed.
(ipa_callsite_param_set_info_type): Removed.
(ipa_callsite_param_map_create): Removed.
(ipa_callsite_tree): Removed.
(ipa_callsite_caller): Removed.
(ipa_pop_func_from_list): return_method removed to return_func
* ipa-prop.h (enum cvalue_type): Renamed to ipa_lattice_type,
prefixed all values with IPA_. Changed all users.
(enum jump_func_type): Rnamed UNKNOWN_IPATYPE to IPA_UNKNOWN,
CONST_IPATYPE to IPA_CONST, CONST_IPATYPE_REF to IPA_CONST_REF
and FORMAL_IPATYPE IPA_PASS_THROUGH.
(union parameter_info): Renamed to jump_func_value.
(union jump_func_value): Renamed value to constant
(struct ipa_jump_func): Renamed info_type to value
(struct ipa_node): Renamed to ipa_node_params
(struct ipa_node_params): Renamed ipa_arg_num to param_count
(struct ipa_node_params): Renamed ipa_param_tree to param_decls
(struct ipa_node_params): Renamed ipa_mod to modified_flags
(struct ipa_edge): Renamed to ipa_edge_args
(struct ipa_edge_args): Renamed ipa_param_num to argument_count
(struct ipa_edge_args): Renamed ipa_param_map to jump_functions
(struct ipa_methodlist): Renamed to ipa_func_list
(struct ipa_func_list): method_p renamed to node, next_method
renamed to next
(ipa_methodlist_p): Removed, switched all users to struct pointer
(IS_VALID_TREE_MAP_INDEX): Renamed to IS_VALID_JUMP_FUNC_INDEX
From-SVN: r134818
Nathan Sidwell [Wed, 30 Apr 2008 08:32:56 +0000 (08:32 +0000)]
* gcc.dg/tls/section-2.c: Restrict to vxworks.
From-SVN: r134817
Alan Modra [Wed, 30 Apr 2008 05:19:11 +0000 (05:19 +0000)]
rs6000.c (ALWAYS_RESTORE_ALTIVEC_BEFORE_POP): Define.
* config/rs6000/rs6000.c (ALWAYS_RESTORE_ALTIVEC_BEFORE_POP): Define.
(rs6000_emit_epilogue): Use backchain to restore only when we
have a large frame. Make use of frame pointer to restore if we
have one. Handle ALWAYS_RESTORE_ALTIVEC_BEFORE_POP.
From-SVN: r134816
GCC Administrator [Wed, 30 Apr 2008 00:18:21 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r134814
Samuel Tardieu [Tue, 29 Apr 2008 21:43:39 +0000 (21:43 +0000)]
[multiple changes]
2008-04-29 Ed Schonberg <schonberg@adacore.com>
gcc/ada/
PR ada/35792
* sem_ch3.adb (Find_Type_Name): Refuse completion of an incomplete
tagged type by an untagged protected or task type.
2008-04-29 Samuel Tardieu <sam@rfc1149.net>
gcc/testsuite/
PR ada/35792
* gnat.dg/specs/tag2.ads: New.
From-SVN: r134810
Paolo Bonzini [Tue, 29 Apr 2008 20:10:18 +0000 (20:10 +0000)]
avr.md (*sbrx_branch, [...]): Add mode to zero_extract.
* config/avr/avr.md (*sbrx_branch, *sbix_branch, *sbix_branch_tmp):
Add mode to zero_extract.
(sign bit tests peepholes): (Ditto.).
From-SVN: r134809
H.J. Lu [Tue, 29 Apr 2008 19:48:21 +0000 (19:48 +0000)]
i386.c (ix86_builtins): Replace Prescott New Instructions in comments with SSE3.
2008-04-29 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_builtins): Replace Prescott New
Instructions in comments with SSE3.
(ix86_builtin_type): This. Add FLOAT128_FTYPE_FLOAT128,
INT64_FTYPE_V4SF, INT64_FTYPE_V2DF, INT_FTYPE_V16QI,
INT_FTYPE_V8QI, INT_FTYPE_V4SF, INT_FTYPE_V2DF,
V16QI_FTYPE_V16QI, V8HI_FTYPE_V8HI, V8HI_FTYPE_V16QI,
V8QI_FTYPE_V8QI, V4SI_FTYPE_V4SI, V4SI_FTYPE_V16QI,
V4SI_FTYPE_V4SF, V4SI_FTYPE_V8HI, V4SI_FTYPE_V2DF,
V4HI_FTYPE_V4HI, V4SF_FTYPE_V4SF, V4SF_FTYPE_V4SI,
V4SF_FTYPE_V2DF, V2DI_FTYPE_V2DI, V2DI_FTYPE_V16QI,
V2DI_FTYPE_V8HI, V2DI_FTYPE_V4SI, V2DF_FTYPE_V2DF,
V2DF_FTYPE_V4SI, V2DF_FTYPE_V4SF, V2DF_FTYPE_V2SI,
V2SI_FTYPE_V2SI, V2SI_FTYPE_V4SF, V2SI_FTYPE_V2SF,
V2SI_FTYPE_V2DF, V2SF_FTYPE_V2SF and V2SF_FTYPE_V2SI.
(bdesc_sse_args): Renamed to ...
(bdesc_args): This. Add IX86_BUILTIN_PF2ID, IX86_BUILTIN_PFRCP,
IX86_BUILTIN_PFRSQRT, IX86_BUILTIN_PI2FD, IX86_BUILTIN_PF2IW,
IX86_BUILTIN_PSWAPDSI, IX86_BUILTIN_PSWAPDSF and
IX86_BUILTIN_FABSQ.
(bdesc_1arg): Moved to ...
(bdesc_args): Here.
(ix86_init_mmx_sse_builtins): Updated. Replace Prescott New
Instructions in comments with SSE3.
(ix86_expand_sse_operands_builtin): Renamed to ...
(ix86_expand_args_builtin): This. Updated.
(ix86_expand_unop1_builtin): Update comments.
(ix86_expand_builtin): Updated.
From-SVN: r134807
Benjamin Kosnik [Tue, 29 Apr 2008 19:43:29 +0000 (19:43 +0000)]
c++config: Remove space between '#' and 'undef' for _GLIBCXX_LONG_DOUBLE_COMPAT.
2008-04-29 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Remove space between '#' and 'undef' for
_GLIBCXX_LONG_DOUBLE_COMPAT.
From-SVN: r134805
Richard Guenther [Tue, 29 Apr 2008 16:01:36 +0000 (16:01 +0000)]
re PR tree-optimization/36078 (gfortran fails to build cpu2006/465.tonto)
2008-04-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36078
* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely):
Update virtual SSA form after cleaning up the CFG.
* gfortran.fortran-torture/compile/pr36078.f90: New testcase.
From-SVN: r134799
Richard Guenther [Tue, 29 Apr 2008 15:59:43 +0000 (15:59 +0000)]
re PR tree-optimization/15255 ([tree-ssa] a * 2 + a * 2 is not converted to a * 4)
2008-04-29 Richard Guenther <rguenther@suse.de>
PR middle-end/15255
* fold-const.c (fold_binary): Fold (A + A) * C to A * 2*C.
* gcc.dg/fold-plusmult.c: New testcase.
From-SVN: r134798
Richard Guenther [Tue, 29 Apr 2008 15:56:12 +0000 (15:56 +0000)]
tree-ssa-alias.c (finalize_ref_all_pointers): Remove.
2008-04-29 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (finalize_ref_all_pointers): Remove.
(compute_may_aliases): Do not call finalize_ref_all_pointers.
(compute_flow_insensitive_aliasing): Do not treat
PTR_IS_REF_ALL pointers special.
(get_smt_for): Likewise.
(may_alias_p): Re-structure.
(is_escape_site): A ref-all pointer conversion is not an escape site.
* tree-ssa-structalias.c (find_what_p_points_to): Do not treat
PTR_IS_REF_ALL pointers special.
* tree-ssa-structalias.h (struct alias_info): Remove
ref_all_symbol_mem_tag field.
(PTR_IS_REF_ALL): Remove.
From-SVN: r134797
Joseph Myers [Tue, 29 Apr 2008 15:30:56 +0000 (16:30 +0100)]
Makefile.am (install-html, [...]): Add dummy targets.
* Makefile.am (install-html, install-pdf): Add dummy targets.
* Makefile.in: Regenerate.
* doc/Makefile.am (install-html, install-pdf): Remove.
* doc/Makefile.in: Regenerate.
From-SVN: r134795
Richard Guenther [Tue, 29 Apr 2008 13:52:53 +0000 (13:52 +0000)]
re PR middle-end/36077 (Expressions result is wrong)
2008-04-29 Richard Guenther <rguenther@suse.de>
PR middle-end/36077
* fold-const.c (extract_muldiv_1): In combining division constants
make sure to never overflow.
* gcc.c-torture/execute/pr36077.c: New testcase.
From-SVN: r134792
Kai Tietz [Tue, 29 Apr 2008 11:10:32 +0000 (11:10 +0000)]
sync-2.c: Set dg-options "-ansi".
2008-04-29 Kai Tietz <kai.tietz@onevision.com>
* testsuite/gcc.dg/sync-2.c: Set dg-options "-ansi".
From-SVN: r134791
Nick Clifton [Tue, 29 Apr 2008 10:41:30 +0000 (10:41 +0000)]
* doc/tm.texi (RETURN_ADDR_RTX): Fix typo.
From-SVN: r134790
Jakub Jelinek [Tue, 29 Apr 2008 08:58:20 +0000 (10:58 +0200)]
re PR c++/35650 (Can't bind ref-to-function through using-decl. in namespace)
PR c++/35650
* parser.c (cp_parser_lookup_name): Look through single function
OVERLOAD.
* g++.dg/init/ref17.C: New test.
From-SVN: r134788
Jakub Jelinek [Tue, 29 Apr 2008 08:54:45 +0000 (10:54 +0200)]
re PR c++/35987 (ICE with invalid if-condition)
PR c++/35987
* typeck.c (cp_build_modify_expr) <case PREINCREMENT_EXPR>: Don't build
COMPOUND_EXPR if the second argument would be error_mark_node.
* g++.dg/other/error28.C: New test.
From-SVN: r134786
Benjamin Kosnik [Tue, 29 Apr 2008 05:45:00 +0000 (05:45 +0000)]
c++config: Move os_defines and cpu_defines after namespace definitions and base macros.
2008-04-28 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Move os_defines and cpu_defines after
namespace definitions and base macros.
From-SVN: r134779
Benjamin Kosnik [Tue, 29 Apr 2008 04:40:08 +0000 (04:40 +0000)]
re PR libstdc++/35887 (stl parallel includes installed for --disable-libgomp)
2008-04-28 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/35887
* acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Revert back to just
checking for omp.h.
* configure: Regenerate.
From-SVN: r134776
GCC Administrator [Tue, 29 Apr 2008 00:17:55 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r134774
Ralf Wildenhues [Mon, 28 Apr 2008 22:27:22 +0000 (22:27 +0000)]
re PR bootstrap/35169 (SIGSEGV for stack growth failure while building 4.2.3)
gcc/
PR bootstrap/35169
* optc-gen.awk: Work around HP-UX/IA awk bug.
From-SVN: r134768
Eric Botcazou [Mon, 28 Apr 2008 21:15:41 +0000 (21:15 +0000)]
re PR ada/36007 (verify_gimple failed)
PR ada/36007
* decl.c (gnat_to_gnu_entity) <object>: Do not promote alignment
of aliased objects with an unconstrained nominal subtype.
Cap the promotion to the effective alignment of the word mode.
Co-Authored-By: Tristan Gingold <gingold@adacore.com>
From-SVN: r134766
Ralf Wildenhues [Mon, 28 Apr 2008 21:09:21 +0000 (21:09 +0000)]
gcc/ada/
* Make-lang.in (ada.tags, check-acats, ada/treeprs.ads)
(ada/einfo.h, ada/sinfo.h, ada/nmake.adb, ada/nmake.ads):
Use '&&' instead of ';'.
From-SVN: r134765
Jason Merrill [Mon, 28 Apr 2008 20:43:27 +0000 (16:43 -0400)]
re PR c++/57 ([DR 325] GCC can't parse a non-parenthesized comma in a template-id within a default argument)
PR c++/57
* parser.c (cp_parser_parameter_declaration): Handle < ambiguity
in default arguments.
Co-Authored-By: Liu Guanwei <liu_gw@163.com>
From-SVN: r134762
Danny Smith [Mon, 28 Apr 2008 20:13:59 +0000 (20:13 +0000)]
cygming-crtend.c (register_frame_ctor): Revert my last commit.
* config/i386/cygming-crtend.c (register_frame_ctor): Revert my
last commit.
From-SVN: r134761
Uros Bizjak [Mon, 28 Apr 2008 17:49:51 +0000 (19:49 +0200)]
re PR target/36073 (ICE with -ffast-math and -mfpmath=sse,387)
PR target/36073
* config/i386/i386.md
(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit):
Change operand 1 predicate to nonimmediate_operand.
testsuite/ChangeLog:
PR target/36073
* gcc.target/i386/pr36073.c: New test.
From-SVN: r134757
Gabriele Svelto [Mon, 28 Apr 2008 13:15:14 +0000 (13:15 +0000)]
Add myself to MAINTAINERS.
From-SVN: r134755
Jakub Jelinek [Mon, 28 Apr 2008 09:45:26 +0000 (11:45 +0200)]
re PR debug/36060 (Too big stack requirements of cc1plus during GC)
PR debug/36060
* dwarf2out.c (struct die_struct): Mark as chain_circular through
die_sub field.
* gengtype.c (walk_type, write_func_for_structure): Handle
chain_circular.
* doc/gty.texi: Document chain_circular.
From-SVN: r134750
Richard Guenther [Mon, 28 Apr 2008 09:22:28 +0000 (09:22 +0000)]
re PR tree-optimization/34223 (missed optimization - complete unrolling pass before the vectorizer)
2008-04-28 Richard Guenther <rguenther@suse.de>
PR testsuite/34223
* gcc.dg/vect/vect-118.c: Rename to ...
* gcc.dg/vect/O3-vect-pr34223.c: ... this.
From-SVN: r134747
Richard Guenther [Mon, 28 Apr 2008 09:09:19 +0000 (09:09 +0000)]
re PR tree-optimization/36066 (ICE with -O1 -finline-small-functions -ftree-vrp -funsafe-loop-optimizations)
2008-04-28 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36066
* tree-vrp.c (execute_vrp): Cleanup the CFG only after finalizing
SCEV and loop.
* gcc.dg/torture/pr36066.c: New testcase.
From-SVN: r134745
Uros Bizjak [Mon, 28 Apr 2008 07:52:01 +0000 (09:52 +0200)]
re PR target/36064 (could not split insn with -O1 -march=nocona -m32)
PR target/36064
* config/i386/i386.md (floatdi<X87MODEF:mode>2_i387_with_xmm splitters):
Use match_scratch instead of match_operand for operands 3 and 4.
testsuite/ChangeLog:
PR target/36064
* gcc.target/i386/pr36064.c: New test.
From-SVN: r134744
Uros Bizjak [Mon, 28 Apr 2008 07:42:12 +0000 (09:42 +0200)]
re PR testsuite/36056 (g++.dg/ext/vector14.C doesn't work for ia32)
PR testsuite/36056
* g++.dg/ext/vector14.C: Add -msse for 32bit x86 targets.
From-SVN: r134743
GCC Administrator [Mon, 28 Apr 2008 00:17:40 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r134734
Richard Guenther [Sun, 27 Apr 2008 16:27:08 +0000 (16:27 +0000)]
re PR tree-optimization/18754 (unrolling happens too late/SRA does not happen late enough)
2008-04-27 Richard Guenther <rguenther@suse.de>
PR tree-optimization/18754
PR tree-optimization/34223
* tree-pass.h (pass_complete_unrolli): Declare.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Print
loop size before and after unconditionally of UL_NO_GROWTH in effect.
Rewrite loop into loop closed SSA form if it is not already.
(tree_unroll_loops_completely): Re-structure to iterate over
innermost loops with intermediate CFG cleanups.
Unroll outermost loops only if requested or the code does not grow
doing so.
* tree-ssa-loop.c (gate_tree_vectorize): Don't shortcut if no
loops are available.
(tree_vectorize): Instead do so here.
(tree_complete_unroll): Also unroll outermost loops.
(tree_complete_unroll_inner): New function.
(gate_tree_complete_unroll_inner): Likewise.
(pass_complete_unrolli): New pass.
* tree-ssa-loop-manip.c (find_uses_to_rename_use): Only record
uses outside of the loop.
(tree_duplicate_loop_to_header_edge): Only verify loop-closed SSA
form if it is available.
* tree-flow.h (tree_unroll_loops_completely): Add extra parameter.
* passes.c (init_optimization_passes): Schedule complete inner
loop unrolling pass before the first CCP pass after final inlining.
* gcc.dg/tree-ssa/loop-36.c: New testcase.
* gcc.dg/tree-ssa/loop-37.c: Likewise.
* gcc.dg/vect/vect-118.c: Likewise.
* gcc.dg/Wunreachable-8.c: XFAIL bogus warning.
* gcc.dg/vect/vect-66.c: Increase loop trip count.
* gcc.dg/vect/no-section-anchors-vect-66.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-69.c: Likewise.
* gcc.dg/vect/vect-76.c: Likewise.
* gcc.dg/vect/vect-outer-6.c: Likewise.
* gcc.dg/vect/vect-outer-1.c: Likewise.
* gcc.dg/vect/vect-outer-1a.c: Likewise.
* gcc.dg/vect/vect-11a.c: Likewise.
* gcc.dg/vect/vect-shift-1.c: Likewise.
* gcc.target/i386/vectorize1.c: Likewise.
From-SVN: r134730
Nathan Sidwell [Sun, 27 Apr 2008 15:35:19 +0000 (15:35 +0000)]
targhooks.h (default_emutls_var_fields, [...]): Declare.
* targhooks.h (default_emutls_var_fields,
default_emutls_var_init): Declare.
* tree.h (DECL_THREAD_LOCAL): Compare against TLS_MODEL_REAL.
* target.h (struct gcc_target): Add struct emutls member.
* target-def.h (TARGET_EMUTLS_GET_ADDRESS,
TARGET_EMUTLS_REGISTER_COMMON, TARGET_EMUTLS_VAR_SECTION,
TARGET_EMUTLS_TMPL_SECTION, TARGET_EMUTLS_VAR_PREFIX,
TARGET_EMUTLS_TMPL_PREFIX, TARGET_EMUTLS_VAR_FIELDS,
TARGET_EMUTLS_VAR_INIT, TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS,
TARGET_EMUTLS_VAR_ALIGN_FIXED, TARGET_EMUTLS): New.
(TARGET_INITIALIZER): Add TARGET_EMUTLS.
* builtins.def (BUILT_IN_EMUTLS_GET_ADDRESS,
BUILT_IN_EMUTLS_REGISTER_COMMON): Get name from targetm structure.
* dwarf2out.c (loc_descriptor_from_tree_1): Check if emutls can
emit debug information.
* coretypes.h (tls_model): Add TLS_MODEL_EMULATED, TLS_MODEL_REAL.
* varasm.c: Include targhooks.h.
(emutls_object_section, emutls_tmpl_section): New.
(EMUTLS_VAR_PREFIX, EMUTLS_TMPL_PREFIX): Remove.
(EMUTLS_SEPARATOR): New.
(prefix_name): New.
(get_emutls_object_name): New.
(default_emutls_var_fields): New, broken out of ...
(get_emutls_object_type): ... here. Adjust to use target hooks.
(get_emutls_init_templ_addr): Adjust to use target hooks.
(emutls_decl): Adjust to use target hooks.
(emutls_finish): Likewise.
(default_emutls_var_init): New, broken out of ...
(assemble_variable): ... here. Adjust to use target hooks.
* output.h (enum section_category): Add SECCAT_EMUTLS_VAR,
SECCAT_EMUTLS_TMPL.
* c-common.c (handle_section_attribute): Prevent overriding
sections for emulated tls with special sections.
* config/i386/i386.c (x86_64_elf_select_section): Add
SECCAT_EMUTLS_VAR and SECCAT_EMUTLS_TMPL.
(x86_64_elf_unique_section): Likewise.
* config/vxworks.c: Include tree.h.
(vxworks_emutls_var_fields, vxworks_emutls_var_init): New.
(vxworks_override_options): Set TLS scheme.
* gcc/doc/tm.texi (Emulated TLS): New node.
gcc/testsuite/
* gcc.dg/tls/section-2.c: New.
* gcc.dg/tls/emutls-1.c: New.
* lib/target-supports.exp (check_effective_target_tls_native):
Exclude vxworks.
From-SVN: r134729
GCC Administrator [Sun, 27 Apr 2008 00:18:13 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r134721
H.J. Lu [Sat, 26 Apr 2008 19:14:46 +0000 (12:14 -0700)]
re PR testsuite/36053 (ERROR: tcl error sourcing gcc/gcc/testsuite/gcc.dg/dg.exp)
2008-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/36053
* gcc.dg/large-size-array-2.c: Fix x86_64-*-mingw* check.
* gcc.dg/large-size-array-4.c: Likewise.
From-SVN: r134716
Simon Baldwin [Sat, 26 Apr 2008 16:59:38 +0000 (16:59 +0000)]
re PR c++/35652 (offset warning should be given in the front-end)
PR c/35652
* builtins.c (c_strlen): Suppressed multiple warnings that can occur
with propagated string constants.
From-SVN: r134714
Uros Bizjak [Sat, 26 Apr 2008 13:43:13 +0000 (15:43 +0200)]
i386.md (fix_trunc<mode>_i387_fisttp_with_temp): Use 'X' constraint for operand 2 when operand 0 is memory operand.
* config/i386/i386.md (fix_trunc<mode>_i387_fisttp_with_temp): Use 'X'
constraint for operand 2 when operand 0 is memory operand.
(fix_truncdi_i387_with_temp): : Use 'X' constraint for operand 4 when
operand 0 is memory operand.
(fix_trunc<mode>_i387_with_temp): Ditto.
(*floatsi<mode>2_vector_mixed_with_temp): Use 'X' constraint for
operand 2 when operand 1 is memory operand.
(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_with_temp): Ditto.
(*floatsi<mode>2_vector_sse_with_temp): Ditto.
(*float<SSEMODEI24:mode><MODEF:mode>2_sse_with_temp): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_i387_with_temp): Ditto.
(floatdi<X87MODEF:mode>2_i387_with_xmm): Use 'X' constraint for
operands 2,3 and 4 when operand 1 is memory operand.
(fistdi2_with_temp): Use 'X' constraint for operand 2 when operand 0
is memory operand.
(fistdi2_floor_with_temp): Ditto.
(fist<mode>2_floor_with_temp): Ditto.
(fistdi2_ceil_with_temp): Ditto.
(fist<mode>2_ceil_with_temp): Ditto.
(*truncdfsf_fast_mixed): Merge alternatives 0 and 1.
From-SVN: r134697
George Helffrich [Sat, 26 Apr 2008 09:46:01 +0000 (09:46 +0000)]
re PR fortran/35892 (gfortran lost memory blocks)
2008-04-26 George Helffrich <george@gcc.gnu.org>
PR fortran/35892
PR fortran/35154
* fortran/trans-common.c (create_common): Add decl to function
chain (if inside one) to preserve identifier scope in debug output.
* testsuite/gfortran.dg/debug/pr35154-stabs.f: New test case for
.stabs functionality.
* testsuite/gfortran.dg/debug/pr35154-dwarf2.f: New test case for
DWARF functionality.
From-SVN: r134696
Richard Sandiford [Sat, 26 Apr 2008 07:40:04 +0000 (07:40 +0000)]
mips.md (UNSPEC_COMPARE_AND_SWAP_12): New unspec_volitile.
gcc/
2008-04-23 David Daney <ddaney@avtrex.com>
* config/mips/mips.md (UNSPEC_COMPARE_AND_SWAP_12): New
unspec_volitile.
(UNSPEC_SYNC_OLD_OP, UNSPEC_SYNC_NEW_OP, UNSPEC_SYNC_EXCHANGE,
UNSPEC_MEMORY_BARRIER, UNSPEC_SET_GOT_VERSION,
UNSPEC_UPDATE_GOT_VERSION): Renumber.
(sync_compare_and_swap<mode>): New expand for QI and HI modes.
(compare_and_swap_12): New insn.
* config/mips/mips-protos.h (mips_expand_compare_and_swap_12): Declare.
* config/mips/mips.c (mips_force_binary): New function.
(mips_emit_int_order_test, mips_expand_synci_loop): Use it.
(mips_expand_compare_and_swap_12): New function.
* config/mips/mips.h (MIPS_COMPARE_AND_SWAP_12): New macro.
gcc/testsuite/
* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: Expect
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 and
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 to be defined.
* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Likewise.
From-SVN: r134695
Benjamin Kosnik [Sat, 26 Apr 2008 02:21:37 +0000 (02:21 +0000)]
re PR libstdc++/35922 (std::unordered_map missing in debug mode)
2008-04-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/35922
* include/std/unordered_map: Include debug/unordered_map if
_GLIBCXX_DEBUG.
* testsuite/23_containers/unordered_map/requirements/debug.cc: Move...
* testsuite/23_containers/unordered_map/requirements/
debug_container.cc: ...here.
* testsuite/23_containers/unordered_map/requirements/debug_mode.cc: New.
* testsuite/23_containers/unordered_set/requirements/debug.cc: Move...
* testsuite/23_containers/unordered_set/requirements/
debug_container.cc: ...here.
* testsuite/23_containers/unordered_set/requirements/debug_mode.cc: New.
From-SVN: r134693
Kai Tietz [Sat, 26 Apr 2008 00:44:18 +0000 (02:44 +0200)]
Revert my patch for mingw32.
From-SVN: r134692
Kai Tietz [Sat, 26 Apr 2008 00:31:18 +0000 (00:31 +0000)]
mingw32.h (SUBTARGET_INIT_BUILTINS): New.
2008-04-25 Kai Tietz <kai.tietz@onevision.com>
* config/i386/mingw32.h (SUBTARGET_INIT_BUILTINS): New.
* config/i386/i386.c (ix86_init_builtins): Use of
SUBTARGET_INIT_BUILTINS.
Add include of c-common.h for builtin.
From-SVN: r134691
GCC Administrator [Sat, 26 Apr 2008 00:17:41 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r134689
Kai Tietz [Sat, 26 Apr 2008 00:16:36 +0000 (02:16 +0200)]
Fixed second typo.
From-SVN: r134686
Kai Tietz [Sat, 26 Apr 2008 00:06:28 +0000 (02:06 +0200)]
fixincl.c (fix_with_system): Fixed typo.
2008-04-25 Kai Tietz <kai.tietz@onevision.com>
* fixincl.c (fix_with_system): Fixed typo.
From-SVN: r134684
Kai Tietz [Fri, 25 Apr 2008 23:25:26 +0000 (23:25 +0000)]
mingw32.h (SUBTARGET_INIT_BUILTINS): New.
2008-04-25 Kai Tietz <kai.tietz@onevision.com>
* config/i386/mingw32.h (SUBTARGET_INIT_BUILTINS): New.
* config/i386/i386.c (ix86_init_builtins): Use of
SUBTARGET_INIT_BUILTINS.
From-SVN: r134683
Jan Hubicka [Fri, 25 Apr 2008 23:14:40 +0000 (01:14 +0200)]
re PR testsuite/35843 (-fdump-rtl-expand does not exist anymore)
PR testsuite/35843
* cfgexpand.c (pass_expand): Turn into RTL pass.
* passes.c (execute_one_pass): Do pass typechecking after execution.
* tree-pass.h (pass_expand): Turn into RTL pass.
* function.h (struct rtl_data): Move here fields
accesses_prior_frames, calls_eh_return, saves_all_registers,
has_nonlocal_goto, has_asm_statement, is_thunk,
all_throwers_are_sibcalls, limit_stack, profile, uses_const_pool,
uses_pic_offset_table, uses_eh_lsda, tail_call_emit,
arg_pointer_save_area_init from struct function; turn into bool.
(struct function): Move
calls_eh_return, saves_all_registers, has_nonlocal_goto,
has_asm_statement, is_thunk, all_throwers_are_sibcalls, limit_stack,
profile, uses_const_pool, uses_pic_offset_table, uses_eh_lsda,
tail_call_emit, arg_pointer_save_area_init
into struct rtl_data. Remove recursive_call_emit and gimplified flags.
(current_function_returns_struct, current_function_returns_pcc_struct,
current_function_calls_setjmp, current_function_calls_alloca,
current_function_accesses_prior_frames,
current_function_calls_eh_return, current_function_is_thunk,
current_function_stdarg, current_function_profile,
current_function_limit_stack, current_function_uses_pic_offset_table,
current_function_uses_const_pool, current_function_has_nonlocal_label,
current_function_saves_all_registers,
current_function_has_nonlocal_goto,
current_function_has_asm_statement): Remove accesor macros.
* ra-conflict.c (global_conflicts): Update.
* tree-tailcall.c (suitable_for_tail_opt_p): Update.
(suitable_for_tail_call_opt_p): Update.
* builtins.c (expand_builtin_return_addr): Update.
(expand_builtin_setjmp_setup): Update.
(expand_builtin_nonlocal_goto): Update.
* final.c (final_start_function): Update.
(profile_function): Update.
(leaf_function_p): Update.
(only_leaf_regs_used): Update.
* df-scan.c (df_get_exit_block_use_set): Update.
* dojump.c (clear_pending_stack_adjust): Update.
* tree-stdarg.c (gate_optimize_stdarg): Update.
* gimple-low.c (lower_function_body): Update.
* global.c (compute_regsets): Update.
(global_alloc): Update.
* dwarf2out.c (dwarf2out_begin_prologue): Update.
* expr.c (expand_assignment): Update.
* dse.c (dse_step0): Update.
(dse_step1): Update.
* c-decl.c (store_parm_decls): Update.
* local-alloc.c (combine_regs): Update.
(find_free_reg): Update.
* function.c (assign_parms_augmented_arg_list): Update.
(assign_parm_find_data_types): Update.
(assign_parms): Update.
(allocate_struct_function): Update.
(expand_function_start): Update.
(expand_function_end): Update.
(get_arg_pointer_save_area): Update.
(thread_prologue_and_epilogue_insns): Update.
(rest_of_match_asm_constraints): Update.
* stor-layout.c (variable_size): Update.
* gcse.c (gcse_main): Update.
(bypass_jumps): Update.
* gimplify.c (gimplify_function_tree): Update.
* calls.c (emit_call_1): Update.
(expand_call): Update.
* bt-load.c (compute_defs_uses_and_gen): Update.
* except.c (sjlj_assign_call_site_values): Update.
(sjlj_emit_function_enter): Update.
(can_throw_external): Update.
(set_nothrow_function_flags): Update.
(expand_builtin_unwind_init): Update.
(expand_eh_return): Update.
(convert_to_eh_region_ranges): Update.
(output_function_exception_table): Update.
* emit-rtl.c (gen_tmp_stack_mem): Update.
* cfgexpand.c (expand_used_vars): Update.
(tree_expand_cfg): Update.
* cfgcleanup.c (rest_of_handle_jump): Update.
* explow.c (allocate_dynamic_stack_space): Update.
* varasm.c (assemble_start_function): Update.
(force_const_mem): Update.
(mark_constant_pool): Update.
* tree-optimize.c (tree_rest_of_compilation): Update.
* stack-ptr-mod.c (notice_stack_pointer_modification): Update.
* tree-cfg.c (notice_special_calls): Update.
(is_ctrl_altering_stmt): Update.
(tree_can_make_abnormal_goto): Update.
(tree_purge_dead_abnormal_call_edges): Update.
* config/alpha/predicates.md: Update.
* config/alpha/alpha.c (alpha_sa_mask): Update.
(alpha_sa_size): Update.
(alpha_does_function_need_gp): Update.
(alpha_expand_prologue): Update.
(alpha_start_function): Update.
(alpha_output_function_end_prologue): Update.
(alpha_expand_epilogue): Update.
* config/frv/frv.c (frv_stack_info): Update.
(frv_expand_epilogue): Update.
* config/s390/s390.c (s390_regs_ever_clobbered): Update.
(s390_register_info): Update.
(s390_frame_info): Update.
(s390_init_frame_layout): Update.
(s390_can_eliminate): Update.
(save_gprs): Update.
* config/spu/spu.c (spu_split_immediate): Update.
(need_to_save_reg): Update.
(spu_expand_prologue): Update.
(spu_expand_epilogue): Update.
* config/sparc/sparc.md: Update.
* config/sparc/sparc.c (eligible_for_return_delay): Update.
(sparc_tls_got): Update.
(legitimize_pic_address): Update.
(sparc_emit_call_insn): Update.
(sparc_expand_prologue): Update.
(output_return): Update.
(print_operand): Update.
(sparc_function_ok_for_sibcall): Update.
* config/sparc/sparc.h (EXIT_IGNORE_STACK): Update.
* config/m32r/m32r.md: Update.
* config/m32r/m32r.c (MUST_SAVE_RETURN_ADDR): Update.
(m32r_compute_frame_size): Update.
(m32r_expand_prologue): Update.
(m32r_expand_epilogue): Update.
(m32r_legitimize_pic_address): Update.
* config/m32r/m32r.h (FRAME_POINTER_REQUIRED): Update.
* config/i386/linux.h (SUBTARGET_FRAME_POINTER_REQUIRED): Update.
* config/i386/i386.c (ix86_frame_pointer_required): Update.
(gen_push): Update.
(ix86_save_reg): Update.
(ix86_compute_frame_layout): Update.
(ix86_expand_prologue): Update.
(ix86_expand_epilogue): Update.
* config/sh/sh.c (output_stack_adjust): Update.
(calc_live_regs): Update.
(sh5_schedule_saves): Update.
(sh_expand_prologue): Update.
(sh_expand_epilogue): Update.
(sh_setup_incoming_varargs): Update.
(sh_allocate_initial_value): Update.
(sh_get_pr_initial_val): Update.
* config/sh/sh.h (SHMEDIA_REGS_STACK_ADJUST): Update.
* config/sh/sh.md (label:): Update.
* config/avr/avr.c (out_movhi_mr_r): Update.
* config/crx/crx.h (enum): Update.
* config/xtensa/xtensa.h (along): Update.
* config/stormy16/stormy16.c Update.
(xstormy16_compute_stack_layout): Update.
* config/fr30/fr30.c (MUST_SAVE_RETURN_POINTER): Update.
(fr30_expand_prologue): Update.
* config/cris/cris.c (cris_conditional_register_usage): Update.
(cris_reg_saved_in_regsave_area): Update.
(cris_initial_frame_pointer_offset): Update.
(cris_simple_epilogue): Update.
(cris_expand_prologue): Update.
(cris_expand_epilogue): Update.
(cris_expand_pic_call_address): Update.
(cris_asm_output_symbol_ref): Update.
(cris_asm_output_label_ref): Update.
* config/cris/cris.md Update.
* config/iq2000/iq2000.c (compute_frame_size): Update.
(iq2000_expand_epilogue): Update.
* config/mt/mt.h (save_direction): Update.
* config/mn10300/mn10300.c (mn10300_function_value): Update.
* config/ia64/ia64.c (ia64_compute_frame_size): Update.
(ia64_secondary_reload_class): Update.
* config/m68k/m68k.c (m68k_save_reg): Update.
(m68k_expand_prologue): Update.
(m68k_expand_epilogue): Update.
(legitimize_pic_address): Update.
* config/rs6000/rs6000.c (rs6000_got_register): Update.
(first_reg_to_save): Update.
(first_altivec_reg_to_save): Update.
(compute_vrsave_mask): Update.
(compute_save_world_info): Update.
(rs6000_stack_info): Update.
(spe_func_has_64bit_regs_p): Update.
(rs6000_ra_ever_killed): Update.
(rs6000_emit_eh_reg_restore): Update.
(rs6000_emit_allocate_stack): Update.
(rs6000_emit_prologue): Update.
(rs6000_emit_epilogue): Update.
(rs6000_output_function_epilogue): Update.
(output_profile_hook): Update.
(rs6000_elf_declare_function_name): Update.
* config/rs6000/rs6000.h (rs6000_args): Update.
* config/rs6000/rs6000.md: Update.
* config/mcore/mcore.c (mcore_expand_prolog): Update.
* config/arc/arc.c (arc_output_function_epilogue): Update.
* config/arc/arc.h (FRAME_POINTER_REQUIRED): Update.
* config/darwin.c (machopic_function_base_name): Update.
* config/score/score3.c (score3_compute_frame_size): Update.
(rpush): Update.
(rpop): Update.
(score3_epilogue): Update.
* config/score/score7.c (score7_compute_frame_size): Update.
(score7_prologue): Update.
(score7_epilogue): Update.
* config/score/score.h (FRAME_POINTER_REQUIRED): Update.
* config/arm/linux-elf.h (SUBTARGET_FRAME_POINTER_REQUIRED): Update.
* config/arm/arm.c (use_return_insn): Update.
(require_pic_register): Update.
(arm_load_pic_register): Update.
(arm_compute_save_reg0_reg12_mask): Update.
(arm_compute_save_reg_mask): Update.
(thumb1_compute_save_reg_mask): Update.
(output_return_instruction): Update.
(arm_output_function_prologue): Update.
(arm_output_epilogue): Update.
(arm_get_frame_offsets): Update.
(arm_expand_prologue): Update.
(thumb_pushpop): Update.
(thumb_exit): Update.
(thumb1_expand_prologue): Update.
(thumb1_expand_epilogue): Update.
(arm_unwind_emit): Update.
(arm_output_fn_unwind): Update.
* config/arm/arm.h (FRAME_POINTER_REQUIRED): Update.
* config/arm/arm.md: Update.
* config/pa/pa.md: Update.
* config/pa/pa.c (legitimize_pic_address): Update.
(compute_frame_size): Update.
(hppa_expand_prologue): Update.
(hppa_expand_epilogue): Update.
(borx_reg_operand): Update.
* config/pa/pa.h (FRAME_POINTER_REQUIRED): Update.
(HARD_REGNO_RENAME_OK): Update.
* config/mips/mips.c (mips_global_pointer): Update.
(mips_save_reg_p): Update.
(mips_compute_frame_info): Update.
(mips_frame_pointer_required): Update.
(mips_expand_prologue): Update.
(mips_expand_epilogue): Update.
(mips_can_use_return_insn): Update.
(mips_reorg_process_insns): Update.
* config/v850/v850.c (compute_register_save_size): Update.
* config/mmix/mmix.h (FRAME_POINTER_REQUIRED): Update.
* config/mmix/mmix.c (along): Update.
(mmix_expand_epilogue): Update.
* config/bfin/bfin.c (legitimize_pic_address): Update.
(must_save_p): Update.
(stack_frame_needed_p): Update.
(add_to_reg): Update.
(bfin_expand_prologue): Update.
* stmt.c (expand_asm_operands): Update.
* reload1.c (reload): Update.
(init_elim_table): Update.
From-SVN: r134682
Tobias Burnus [Fri, 25 Apr 2008 21:14:49 +0000 (23:14 +0200)]
re PR fortran/35156 ([patch] Deprecate -M<dir>)
2008-04-25 Tobias Burnus <burnus@net-b.de>
Daniel Franke <franke.daniel@gmail.com>
PR fortran/35156
* gfortranspec.c (lang_specific_driver): Deprecate
-M option; fix ICE when "-M" is last argument and
make "-M<dir>" work.
* options.c (gfc_handle_module_path_options):
Use -J instead of -M in error messages.
* invoke.texi: Mark -M as depecated.
Co-Authored-By: Daniel Franke <franke.daniel@gmail.com>
From-SVN: r134680
Kai Tietz [Fri, 25 Apr 2008 20:45:10 +0000 (22:45 +0200)]
fixincl.c (fix_with_system): Cast pointer difference to long.
2008-04-25 Kai Tietz <kai.tietz@onvision.com>
* fixincl.c (fix_with_system): Cast pointer difference to long.
* fixlib.c (make_raw_shell_str): Cast compare to avoid sign warning.
From-SVN: r134679
Tobias Burnus [Fri, 25 Apr 2008 20:11:21 +0000 (22:11 +0200)]
array_constructor_23.f: Change REAL(10) into kind > 8.
2008-04-25 Tobias Burnus <burnus@net-b.de>
* gfortran/array_constructor_23.f: Change REAL(10) into kind > 8.
* gfortran/array_constructor_24.f: New; REAL(8) version of the test.
From-SVN: r134678
Thomas Koenig [Fri, 25 Apr 2008 20:11:19 +0000 (20:11 +0000)]
re PR fortran/35960 (run time abort with assignment of RESHAPEd zero sized array)
2008-04-25 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/35960
* m4/reshape.m4: Fix typo in last commit.
* generated/reshape_i4.c: Regererated.
* generated/reshape_i8.c: Regenerated.
* generated/reshape_i16.c: Regenerated.
* generated/reshape_r4.c: Regenerated.
* generated/reshape_r8.c: Regenerated.
* generated/reshape_r10.c: Regenerated.
* generated/reshape_r16.c: Regenerated.
* generated/reshape_c4.c: Regenerated.
* generated/reshape_c8.c: Regenerated.
* generated/reshape_c10.c: Regenerated.
* generated/reshape_c16.c: Regenerated.
From-SVN: r134677
Benjamin Kosnik [Fri, 25 Apr 2008 18:37:22 +0000 (18:37 +0000)]
re PR libstdc++/35887 (stl parallel includes installed for --disable-libgomp)
2008-04-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/35887
* acinclude.m4: (GLIBCXX_ENABLE_PARALLEL): Check for thread support.
* configure.ac: Re-order compiler macros.
* configure: Regenerated.
From-SVN: r134675
Bob Wilson [Fri, 25 Apr 2008 18:20:02 +0000 (18:20 +0000)]
* optabs.c (expand_float): Fix REG_EQUAL for UNSIGNED_FLOAT libcall.
From-SVN: r134673
H.J. Lu [Fri, 25 Apr 2008 12:37:41 +0000 (12:37 +0000)]
sse.md (mov<mode>): Replace SSEMODEI with SSEMODE.
2008-04-25 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (mov<mode>): Replace SSEMODEI with
SSEMODE.
(*mov<mode>_internal): Likewise. Support V4SF and V2DF.
(mov<mode>): Removed.
(*movv4sf_internal): Likewise.
(*movv2df_internal): Likewise.
From-SVN: r134664
Uros Bizjak [Fri, 25 Apr 2008 12:35:45 +0000 (14:35 +0200)]
* ChangeLog: Fix whitespace.
From-SVN: r134663
Pompapathi V Gadad [Fri, 25 Apr 2008 11:49:27 +0000 (17:19 +0530)]
config.gcc (crx-*-elf): Remove deprecation.
2008-04-25 Pompapathi V Gadad <Pompapathi.V.Gadad@nsc.com>
* config.gcc (crx-*-elf): Remove deprecation.
From-SVN: r134662
Pompapathi V Gadad [Fri, 25 Apr 2008 10:57:58 +0000 (16:27 +0530)]
MAINTAINERS (crx): Add myself.
2008-04-25 Pompapathi V Gadad <Pompapathi.V.Gadad@nsc.com>
* MAINTAINERS (crx): Add myself.
From-SVN: r134660
Kai Tietz [Fri, 25 Apr 2008 08:40:10 +0000 (08:40 +0000)]
array-quals-1.c: Add xfail for x86_64-*-mingw*.
2008-04-25 Kai Tietz <kai.tietz@onevision.com>
* gcc.dg/array-quals-1.c: Add xfail for x86_64-*-mingw*.
* gcc.dg/builtins-12.c: Add dg-options "-ansi".
* gcc.dg/builtins-13.c: Likewise.
* gcc.dg/pr25682.c: Likewise.
* gcc.dg/pr33694.c: Likewise.
* gcc.dg/c90-const-expr-2.c: Add check for _WIN64 define.
* gcc.dg/c99-const-expr-2.c: Likewise.
* gcc.dg/ia64-sync-1.c: Add typedef of size_t, for prototype.
* gcc.dg/ia64-sync-2.c: Likewise.
* gcc.dg/ia64-sync-3.c: Likewise
* gcc.dg/large-size-array.c: Add check for _WIN64 define.
* gcc.dg/large-size-array-3.c: Likewise.
* gcc.dg/large-size-array-2.c: Add x86_64-*-mingw* for ignore error
check.
* gcc.dg/large-size-array-4.c: Likewise.
* gcc.dg/max-1.c: Replace use of long by ssize_t.
From-SVN: r134659
Danny Smith [Fri, 25 Apr 2008 04:59:15 +0000 (04:59 +0000)]
cygming-crtend.c (register_frame_ctor): Register __gcc_deregister_frame with atexit.
* config/i386/cygming-crtend.c (register_frame_ctor): Register
__gcc_deregister_frame with atexit.
(deregister_frame_dtor): Remove.
From-SVN: r134656
GCC Administrator [Fri, 25 Apr 2008 00:17:59 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r134654
Benjamin Kosnik [Thu, 24 Apr 2008 23:30:10 +0000 (23:30 +0000)]
re PR libstdc++/35887 (stl parallel includes installed for --disable-libgomp)
2008-04-24 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/35887
* configure.ac: Add default argument to GLIBCXX_ENABLE_PARALLEL.
Move atomic warnings to GLIBCXX_ENABLE_ATOMIC_BUILTINS.
* acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Check for --disable-libgomp.
(GLIBCXX_ENABLE_ATOMIC_BUILTINS): Add warning information.
* configure: Regenerate.
* include/Makefile.am (parallel_headers): Make conditional on
ENABLE_PARALLEL.
* include/Makefile.in: Regenerate.
From-SVN: r134649
Steve Ellcey [Thu, 24 Apr 2008 22:35:36 +0000 (22:35 +0000)]
* gcc.dg/lower-subreg-1.c: Skip IA64 platform.
From-SVN: r134648
Steve Ellcey [Thu, 24 Apr 2008 21:31:02 +0000 (21:31 +0000)]
* gcc.dg/vect/slp-15.c: Fix scan when vect_int_mult is false.
From-SVN: r134647
Nathan Froyd [Thu, 24 Apr 2008 18:00:56 +0000 (18:00 +0000)]
fix date typo
From-SVN: r134645
Nathan Froyd [Thu, 24 Apr 2008 17:58:47 +0000 (17:58 +0000)]
rs6000.opt (mspe): Remove Var property.
* config/rs6000/rs6000.opt (mspe): Remove Var property.
(misel): Likewise.
* config/rs6000/rs6000.h (rs6000_spe): Declare.
(rs6000_isel): Likewise.
* config/rs6000/rs6000.c (rs6000_spe): New variable.
(rs6000_isel): New variable.
(rs6000_handle_option): Handle OPT_mspe and OPT_misel.
Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
From-SVN: r134643
Paolo Carlini [Thu, 24 Apr 2008 17:03:13 +0000 (17:03 +0000)]
re PR libstdc++/35969 (GLIBCXX_DEBUG: list::merge triggers bad assert)
2008-04-24 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/35969
* include/debug/list (merge): Use _M_transfer_iter, consistently
with the splice members.
* testsuite/23_containers/list/operations/35969.cc: New.
* testsuite/23_containers/list/operators: Rename to
testsuite/23_containers/list/operations.
From-SVN: r134642
Steve Ellcey [Thu, 24 Apr 2008 16:37:05 +0000 (16:37 +0000)]
re PR testsuite/36035 (FAIL: gcc.dg/vect/vect-vfa-slp.c)
PR testsuite/36035
* gcc.dg/vect/vect-vfa-slp.c: Remove bad check.
From-SVN: r134641
Jakub Jelinek [Thu, 24 Apr 2008 16:29:40 +0000 (18:29 +0200)]
re PR c++/35758 (vector_size attribute lost in function arguments for templates)
PR c++/35758
* c-common.c (handle_vector_size_attribute): Call
lang_hooks.types.reconstruct_complex_type instead of
reconstruct_complex_type.
* config/rs6000/rs6000.c (rs6000_handle_altivec_attribute): Likewise.
* config/spu/spu.c (spu_handle_vector_attribute): Likewise.
* langhooks.h (struct lang_hooks_for_types): Add
reconstruct_complex_type hook.
* langhooks-def.h (LANG_HOOKS_RECONSTRUCT_COMPLEX_TYPE): Define.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add it.
* cp-tree.h (cp_reconstruct_complex_type): New prototype.
* cp-objcp-common.h (LANG_HOOKS_RECONSTRUCT_COMPLEX_TYPE): Define.
* decl2.c (is_late_template_attribute): Only make vector_size
late tmpl attribute if argument is type or value dependent.
(cp_reconstruct_complex_type): New function.
* g++.dg/ext/vector14.C: New test.
From-SVN: r134639
Jakub Jelinek [Thu, 24 Apr 2008 16:23:05 +0000 (18:23 +0200)]
* gcc.dg/pr36017.c: Run on all targets, remove -lm from dg-options.
From-SVN: r134637
Richard Guenther [Thu, 24 Apr 2008 16:18:46 +0000 (16:18 +0000)]
c-common.h (check_builtin_function_arguments): Declare.
2008-04-24 Richard Guenther <rguenther@suse.de>
* c-common.h (check_builtin_function_arguments): Declare.
* c-common.c (validate_nargs): New function.
(check_builtin_function_arguments): Likewise.
* c-typeck.c (build_function_call): Call
check_builtin_function_arguments.
* builtins.c (fold_builtin_classify): Remove error reporting code.
(fold_builtin_unordered_cmp): Likewise.
(fold_builtin_1): Likewise.
(fold_builtin_n): Likewise.
cp/
* typeck.c (cp_build_function_call): Call
check_builtin_function_arguments.
* gcc.dg/builtin-constant_p-1.c: New testcase.
* gcc.dg/builtin-errors.c: Adjust expected error.
From-SVN: r134635
Jakub Jelinek [Thu, 24 Apr 2008 16:08:11 +0000 (18:08 +0200)]
re PR tree-optimization/36008 (Function produces wrong results when inlined.)
PR tree-optimization/36008
* fold-const.c (try_move_mult_to_index): If s == NULL, divide
the original op1, rather than delta by step.
* gcc.c-torture/execute/
20080424-1.c: New test.
From-SVN: r134634
Antoniu Pop [Thu, 24 Apr 2008 15:23:51 +0000 (16:23 +0100)]
tree-parloops.c (take_address_of, [...]): Make them work on a region of code delimited by two edges in the CFG.
2008-04-22 Antoniu Pop <antoniu.pop@gmail.com>
Sebastian Pop <sebastian.pop@amd.com>
* tree-parloops.c (take_address_of, eliminate_local_variables_1,
eliminate_local_variables_stmt, eliminate_local_variables,
separate_decls_in_loop_name, separate_decls_in_loop_stmt,
separate_decls_in_loop, gen_parallel_loop): Make them work on a region
of code delimited by two edges in the CFG.
(separate_decls_in_loop_name): Renamed separate_decls_in_region_name.
(separate_decls_in_loop_stmt): Renamed separate_decls_in_region_stmt.
(separate_decls_in_loop): Renamed separate_decls_in_region. Isolate
the case of parallelisation of reductions.
(expr_invariant_in_region_p): New.
* tree-flow.h (gather_blocks_in_sese_region): Declared.
* tree-cfg.c (gather_blocks_in_sese_region): Extern.
Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>
From-SVN: r134632