Paul Thomas [Sun, 9 Dec 2007 09:17:24 +0000 (09:17 +0000)]
re PR fortran/32129 (ICE: Procedure call with array-section-actual to scalar dummy)
2007-12-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32129
* dump-parse-tree.c (gfc_show_expr_n): New function for
debugging.
* gfortran.h : Add prototype for gfc_show_expr_n.
* expr.c (simplify_constructor): Copy the constructor
expression and try to simplify that. If success, replace the
original. Otherwise discard the copy, keep going through
the structure and return success.
PR fortran/31487
* decl.c (build_struct): Pad out default initializers with
spaces to the component character length.
2007-12-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32129
* gfortran.dg/derived_comp_array_ref_6.f90: New test.
* gfortran.dg/derived_comp_array_ref_7.f90: New test.
PR fortran/31487
* gfortran.dg/char_component_initializer_1.f90: New test.
From-SVN: r130719
GCC Administrator [Sun, 9 Dec 2007 00:17:26 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130716
Tobias Burnus [Sat, 8 Dec 2007 21:46:56 +0000 (22:46 +0100)]
re PR fortran/34342 (BOZ extensions not diagnosed as such with -std=f95)
2007-12-08 Tobias Burnus <burnus@net-b.de>
PR fortran/34342
PR fortran/34345
PR fortran/18026
PR fortran/29471
* gfortran.texi (BOZ literal constants): Improve documentation
and adapt for BOZ changes.
* Make-lang.ini (resolve.o): Add target-memory.h dependency.
* gfortran.h (gfc_expr): Add is_boz flag.
* expr.c: Include target-memory.h.
(gfc_check_assign): Support transferring BOZ for real/cmlx.
* resolve.c: Include target-memory.h
(resolve_ordinary_assign): Support transferring BOZ for real/cmlx.
* target-memory.c (gfc_convert_boz): New function.
* target-memory.c (gfc_convert_boz): Add prototype.
* primary.c (match_boz_constant): Set is_boz, enable F95 error
also without -pedantic, and allow for Fortran 2003 BOZ.
(match_real_constant): Fix comment.
* simplify.c
* (simplify_cmplx,gfc_simplify_dble,gfc_simplify_float,
gfc_simplify_real): Support Fortran 2003 BOZ.
2007-12-08 Tobias Burnus <burnus@net-b.de>
PR fortran/34342
PR fortran/34345
PR fortran/18026
PR fortran/29471
* gfortran.dg/boz_8.f90: New.
* gfortran.dg/boz_9.f90: New.
* gfortran.dg/boz_10.f90: New.
* gfortran.dg/boz_7.f90: Update dg-warning.
* gfortran.dg/pr16433.f: Add dg-error.
* gfortan.dg/ibits.f90: Update dg-warning.
* gfortran.dg/unf_io_convert_1.f90: Update/delete dg-warning.
* gfortran.dg/unf_io_convert_2.f90: Ditto.
From-SVN: r130713
Jakub Jelinek [Sat, 8 Dec 2007 21:00:06 +0000 (22:00 +0100)]
re PR fortran/34359 (ICE in December 6 version of gfortran when compiling a file with two routines that contain INCLUDE statements)
PR fortran/34359
* gfortran.h (gfc_file): Remove sibling and down fields.
* scanner.c (file_changes, file_changes_cur, file_changes_count,
file_changes_allocated): New variables.
(add_file_change, report_file_change): New functions.
(change_file): Remove.
(gfc_start_source_files, gfc_end_source_files): Call
report_file_change instead of change_file.
(gfc_advance_line): Call report_file_change instead of change_file,
call it even if lb->file == lb->next->file.
(get_file): Revert last changes.
(preprocessor_line): Call add_file_change when entering or leaving
a file.
(load_file): Likewise. Set file_change[...].lb for all newly added
file changes.
* gfortran.dg/include_1.f90: New test.
* gfortran.dg/include_1.inc: New.
* gfortran.dg/include_2.f90: New test.
From-SVN: r130712
David Daney [Sat, 8 Dec 2007 19:57:40 +0000 (19:57 +0000)]
n32.S (ffi_call_N32): Replace dadd with ADDU...
2007-12-08 David Daney <ddaney@avtrex.com>
* src/mips/n32.S (ffi_call_N32): Replace dadd with ADDU, dsub with
SUBU, add with ADDU and use smaller code sequences.
From-SVN: r130711
Paul de Weerd [Sat, 8 Dec 2007 19:26:33 +0000 (20:26 +0100)]
200x-xx-xx Paul de Weerd <weerd@weirdnet.nl>
gcc/testsuite/
200x-xx-xx Paul de Weerd <weerd@weirdnet.nl>
* gcc.c-torture/compile/
20011130-2.c: Fix typo.
From-SVN: r130710
Andreas Tobler [Sat, 8 Dec 2007 19:23:58 +0000 (19:23 +0000)]
configure.host: Add bits for i?86-*-darwin9 and x86_64-*-darwin9.
2007-12-08 Andreas Tobler <a.tobler@schweiz.org>
* configure.host: Add bits for i?86-*-darwin9 and x86_64-*-darwin9.
* configure.ac: Add darwin-signal.h to x86_64-*-darwin9 and
i?86-*darwin9.
* configure.in: Regenerate.
* darwin.cc: Add definitions for Darwin specific functions for 64-bit.
(darwin_java_register_dyld_add_image_hook): Use this specific
functions.
* Makefile.am (gij_LDFLAGS): Add extra_gij_ldflags for Darwin9.
* Makefile.in: Regenerate.
* include/Makefile.in: Likewise.
* gcj/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* testsuite/lib/libjava.exp (libjava_arguments): Add allow_stack_execute
for *-*-darwin9*.
From-SVN: r130709
Tobias Burnus [Sat, 8 Dec 2007 15:51:52 +0000 (16:51 +0100)]
re PR fortran/34319 (I/O: Support "NaN", "Infinity" and "INF" as input)
2007-12-08 Tobias Burnus <burnus@net-b.de>
PR fortran/34319
* io/list_read.c (parse_real, read_real): Support NaN/Infinity.
2007-12-08 Tobias Burnus <burnus@net-b.de>
PR fortran/34319
* gfortran.dg/nan_3.f90: New.
From-SVN: r130708
Richard Guenther [Sat, 8 Dec 2007 14:51:59 +0000 (14:51 +0000)]
re PR tree-optimization/34391 (Vectorizer does not fix up alias information correctly)
2007-12-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34391
* tree-vect-transform.c (vect_setup_realignment): Mark new
symbols for renaming.
From-SVN: r130707
Bill Maddox [Sat, 8 Dec 2007 03:02:10 +0000 (03:02 +0000)]
Add myself to MAINTAINERS file.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r130704
GCC Administrator [Sat, 8 Dec 2007 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130702
David Daney [Fri, 7 Dec 2007 23:21:04 +0000 (23:21 +0000)]
ffi.c (ffi_prep_cif_machdep): Handle long double return type.
2007-12-07 David Daney <ddaney@avtrex.com>
* src/mips/ffi.c (ffi_prep_cif_machdep): Handle long double return
type.
From-SVN: r130699
Bob Wilson [Fri, 7 Dec 2007 23:02:46 +0000 (23:02 +0000)]
xtensa.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
* config/xtensa/xtensa.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
(ASM_OUTPUT_DWARF_PCREL): Define.
From-SVN: r130697
Samuel Tardieu [Fri, 7 Dec 2007 22:23:39 +0000 (22:23 +0000)]
Fix wrong PR number in approved submitters comment (in ada/ChangeLog):
PR ada/34261 -> PR ada/34361.
Corresponds to commit 130695.
From-SVN: r130696
Ludovic Brenta [Fri, 7 Dec 2007 22:19:22 +0000 (22:19 +0000)]
re PR target/34261 (Directed rounding doesn't work on MacOS X)
2007-12-07 Ludovic Brenta <ludovic@ludovic-brenta.org>
gcc/ada/
PR ada/34261
* mlib-tgt.adb, mlib-tgt.ads: Fix comments at the top to reflect
the new implementation of target-specific calls.
From-SVN: r130695
Jakub Jelinek [Fri, 7 Dec 2007 20:12:10 +0000 (21:12 +0100)]
* g++.old-deja/g++.mike/empty.C: Remove 2 xfails.
From-SVN: r130694
Richard Guenther [Fri, 7 Dec 2007 19:11:31 +0000 (19:11 +0000)]
re PR middle-end/34382 (-fforce-addr completely broken)
2007-12-07 Richard Guenther <rguenther@suse.de>
PR middle-end/34382
* opts.c (common_handle_option): Handle OPT_fforce_addr.
From-SVN: r130693
Samuel Tardieu [Fri, 7 Dec 2007 18:03:20 +0000 (18:03 +0000)]
re PR ada/21346 (Ada.Directories.Compose raises exception if Containing_Directory is empty string)
gcc/ada/
PR ada/21346
* a-direct.adb (Compose): Containing_Directory can be an empty string.
gcc/testsuite/
PR ada/21346
* gnat.dg/compose.adb: New test.
From-SVN: r130692
Aldy Hernandez [Fri, 7 Dec 2007 16:49:33 +0000 (16:49 +0000)]
+ * m32c.h (LEGITIMIZE_ADDRESS): Use WIN instead of win.
+ * m32c.h (LEGITIMIZE_ADDRESS): Use WIN instead of win.
+ (LEGITIMIZE_RELOAD_ADDRESS): Same.
From-SVN: r130691
Olivier Hainque [Fri, 7 Dec 2007 15:52:43 +0000 (15:52 +0000)]
decl.c (gnat_to_gnu_entity): When computing the designated full view...
2007-12-07 Olivier Hainque <hainque@adacore.com>
ada/
* decl.c (gnat_to_gnu_entity) <case E_Access_Type>: When computing
the designated full view, only follow a second level Full_View link
for Non_Limited_Views of from_limited_with references.
testsuite/
* gnat.dg/tamdt*.ad?: Support for ...
* gnat.dg/test_tamdt.adb: New test.
From-SVN: r130679
Olivier Hainque [Fri, 7 Dec 2007 15:33:48 +0000 (15:33 +0000)]
unc_memops.ads: Comment out the alloc/free/realloc exports and document how these can be exercised.
2007-12-07 Olivier Hainque <hainque@adacore.com>
testsuite/
* gnat.dg/unc_memops.ads: Comment out the alloc/free/realloc
exports and document how these can be exercised.
From-SVN: r130678
Samuel Tardieu [Fri, 7 Dec 2007 14:37:36 +0000 (14:37 +0000)]
sem_ch3.adb (Analyze_Object_Declaration): Signal an error when an access to constant is used to initialize an access value.
gcc/ada/
* sem_ch3.adb (Analyze_Object_Declaration): Signal an error
when an access to constant is used to initialize an access
value.
gcc/testsuite/
* gnat.dg/specs/access_constant_decl.ads: New test.
From-SVN: r130677
Samuel Tardieu [Fri, 7 Dec 2007 14:35:22 +0000 (14:35 +0000)]
re PR ada/15805 (Illegal program not detected, allows writing through access to constant)
gcc/ada/
PR ada/15805
* sem_ch6.adb (Process_Formals): Prevent an access type formal
to be initialized with an access to constant object.
gcc/testsuite/
PR ada/15805
* gnat.dg/specs/access_constants.ads: New test.
From-SVN: r130676
Samuel Tardieu [Fri, 7 Dec 2007 14:31:48 +0000 (14:31 +0000)]
re PR ada/29157 (gnattools fail on cross compilation - Makefile bug?)
gcc/
PR ada/29157
* doc/install.texi: Explain how to check for a clean environment when
building GNAT.
From-SVN: r130675
Olivier Hainque [Fri, 7 Dec 2007 10:50:23 +0000 (10:50 +0000)]
re PR ada/34173 (FAIL: gnat.dg/release_unc_maxalign.adb execution test)
2007-12-07 Olivier Hainque <hainque@adacore.com>
PR ada/34173
* decl.c (gnat_to_gnu_entity) <case E_Array_Type>: When setting
the alignment on the GCC XUA array type, set TYPE_USER_ALIGN if
this is from an alignment clause on the GNAT entity.
* utils.c (create_field_decl): Rewrite the computation of DECL_ALIGN
to distinguish the case where we set it from the type's alignment.
When so, propagate TYPE_USER_ALIGN into DECL_USER_ALIGN to indicate
whether this alignment was set from an explicit alignment clause.
From-SVN: r130673
Richard Guenther [Fri, 7 Dec 2007 10:39:14 +0000 (10:39 +0000)]
tree-profile.c (gcov_type_tmp_var): New global variable.
2007-12-07 Richard Guenther <rguenther@suse.de>
* tree-profile.c (gcov_type_tmp_var): New global variable.
(tree_gen_edge_profiler): Use a single shared variable decl per
function for edge counter incrementing.
(tree_profiling): Re-set the shared variable.
From-SVN: r130672
Bob Wilson [Fri, 7 Dec 2007 05:14:44 +0000 (05:14 +0000)]
* config/xtensa/xtensa.c (xtensa_va_start): Add prototype.
From-SVN: r130671
GCC Administrator [Fri, 7 Dec 2007 00:17:32 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130668
Eric Botcazou [Thu, 6 Dec 2007 22:39:58 +0000 (22:39 +0000)]
decl.c (make_packable_type): Revert last change.
* decl.c (make_packable_type): Revert last change.
(gnat_to_gnu_field): Avoid setting size and position multiple times.
* utils.c (finish_record_type): Retrieve the real name of the type.
From-SVN: r130665
David Daney [Thu, 6 Dec 2007 22:02:22 +0000 (22:02 +0000)]
ffi.h.in (FFI_SIZEOF_JAVA_RAW): Define if not already defined.
2007-12-06 David Daney <ddaney@avtrex.com>
* include/ffi.h.in (FFI_SIZEOF_JAVA_RAW): Define if not already
defined.
(ffi_java_raw): New typedef.
(ffi_java_raw_call, ffi_java_ptrarray_to_raw,
ffi_java_raw_to_ptrarray): Change parameter types from ffi_raw to
ffi_java_raw.
(ffi_java_raw_closure) : Same.
(ffi_prep_java_raw_closure, ffi_prep_java_raw_closure_loc): Change
parameter types.
* src/java_raw_api.c (ffi_java_raw_size): Replace FFI_SIZEOF_ARG with
FFI_SIZEOF_JAVA_RAW.
(ffi_java_raw_to_ptrarray): Change type of raw to ffi_java_raw.
Replace FFI_SIZEOF_ARG with FFI_SIZEOF_JAVA_RAW. Use
sizeof(ffi_java_raw) for alignment calculations.
(ffi_java_ptrarray_to_raw): Same.
(ffi_java_rvalue_to_raw): Add special handling for FFI_TYPE_POINTER
if FFI_SIZEOF_JAVA_RAW == 4.
(ffi_java_raw_to_rvalue): Same.
(ffi_java_raw_call): Change type of raw to ffi_java_raw.
(ffi_java_translate_args): Same.
(ffi_prep_java_raw_closure_loc, ffi_prep_java_raw_closure): Change
parameter types.
* src/mips/ffitarget.h (FFI_SIZEOF_JAVA_RAW): Define for N32 ABI.
2007-12-06 David Daney <ddaney@avtrex.com>
* interpret.cc: Replace ffi_raw with INTERP_FFI_RAW_TYPE throughout.
(ncode_closure, ffi_closure_fun): Define versions for
non-FFI_NATIVE_RAW_API case.
* include/java-interp.h (INTERP_FFI_RAW_TYPE): Define and use to
replace ffi_raw throughout.
* jni.cc, interpret-run.cc: Replace ffi_raw with INTERP_FFI_RAW_TYPE
throughout.
From-SVN: r130660
Sebastian Pop [Thu, 6 Dec 2007 19:32:21 +0000 (19:32 +0000)]
ltrans-7.f90: New.
2007-12-06 Sebastian Pop <sebastian.pop@amd.com>
* gfortran.dg/ltrans-7.f90: New.
From-SVN: r130658
Andreas Tobler [Thu, 6 Dec 2007 19:23:05 +0000 (19:23 +0000)]
jni.exp (gcj_jni_get_cxxflags_invocation): Make the testsuite multilib aware for Darwin.
2007-12-06 Andreas Tobler <a.tobler@schweiz.org>
* testsuite/libjava.jni/jni.exp (gcj_jni_get_cxxflags_invocation): Make
the testsuite multilib aware for Darwin.
From-SVN: r130657
Tom Tromey [Thu, 6 Dec 2007 18:56:26 +0000 (18:56 +0000)]
re PR c/29172 (--combine can't handle #pragma once)
gcc
PR c/29172:
* c-opts.c (c_common_parse_file): Call cpp_clear_file_cache.
libcpp
PR c/29172:
* internal.h (struct cpp_reader) <file_hash_entries>: Changed
type.
<file_hash_entries_allocated, file_hash_entries_used>: Removed.
* files.c (FILE_HASH_POOL_SIZE): New macro.
(struct file_hash_entry_pool): New.
(destroy_all_cpp_files): New function.
(allocate_file_hash_entries): Allocate a file_hash_entry_pool.
(new_file_hash_entry): Update.
(free_file_hash_entries): New function.
(_cpp_cleanup_files): Call free_file_hash_entries and
destroy_all_cpp_files.
(cpp_clear_file_cache): New function.
* include/cpplib.h (cpp_clear_file_cache): Declare.
From-SVN: r130656
David Daney [Thu, 6 Dec 2007 18:23:16 +0000 (18:23 +0000)]
n32.S (ffi_closure_N32): Use 64-bit add instruction on pointer values.
2007-12-06 David Daney <ddaney@avtrex.com>
* src/mips/n32.S (ffi_closure_N32): Use 64-bit add instruction on
pointer values.
From-SVN: r130655
Richard Sandiford [Thu, 6 Dec 2007 17:54:59 +0000 (17:54 +0000)]
Fix last commit.
From-SVN: r130654
Richard Sandiford [Thu, 6 Dec 2007 17:48:43 +0000 (17:48 +0000)]
mips.c (mips_function_ok_for_sibcall): Use targetm.binds_local_p instead of DECL_EXTERNAL.
gcc/
* config/mips/mips.c (mips_function_ok_for_sibcall): Use
targetm.binds_local_p instead of DECL_EXTERNAL.
From-SVN: r130653
Richard Sandiford [Thu, 6 Dec 2007 17:42:48 +0000 (17:42 +0000)]
mt-sde (CFLAGS_FOR_TARGET, [...]): Use +=, not =.
config/
* mt-sde (CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Use +=, not =.
* mt-mips-elfoabi: Likewise.
From-SVN: r130652
Harsha Jagasia [Thu, 6 Dec 2007 16:18:55 +0000 (16:18 +0000)]
tree-vectorizer.c (slpeel_add_loop_guard): Gimplify the condition.
2007-12-05 Harsha Jagasia <harsha.jagasia@amd.com>
* tree-vectorizer.c (slpeel_add_loop_guard): Gimplify the condition.
(set_prologue_iterations): New. Set the prologue iterations to total
number of scalar iterations if the cost model check indicates that
scalar code should be generated.
(slpeel_tree_peel_loop_to_edge): Add a new parameter and code for
generating the cost condition for epilog. Call
set_prologue_iterations to generate cost condition for prolog.
(new_loop_vec_info): Initialize LOOP_VINFO_NITERS_UNCHANGED.
* tree-vectorizer.h (LOOP_VINFO_NITERS_UNCHANGED): New.
(slpeel_tree_peel_loop_to_edge): Update declaration.
(set_prologue_iterations): New declaration.
* tree-vect-analyze.c (vect_analyze_loop_form): Update
LOOP_VINFO_NITERS_UNCHANGED.
* tree-vect-transform.c
(vect_estimate_min_profitable_iters): Add new parameter and
code to check if run time cost model test is needed.
Remove code that adds builtin vectorization cost to scalar
outside cost for the run time cost model test. If run time
cost model test is needed add the appropriate guard cost to
the scalar outside cost. The guard cost depends on whether
the guard is generated at versioning or at prolog generation
or at epilog generation. Change cost model equation to include
scalar outside cost.
(conservative_cost_threshold): New. Return the less conservative
profitability threshold between the cost model threshold and the
user defined vectorization threshold.
(vect_do_peeling_for_loop_bound): Call conservative_cost_threshold.
(vect_do_peeling_for_alignment): Same.
(vect_loop_versioning): Same.
(vect_create_cond_for_align_checks): ANDs the cost model condition
with the alignment condition.
(vect_transform_loop): Call loop versioning only when there is a
misalignment or an aliasing problem.
From-SVN: r130651
Jakub Jelinek [Thu, 6 Dec 2007 13:25:37 +0000 (14:25 +0100)]
re PR middle-end/20983 (varargs functions force va_list variable to stack unnecessarily)
PR middle-end/20983
* tree-ssa-ccp.c (optimize_stdarg_builtin): New function.
(execute_fold_all_builtins): Call it for BUILT_IN_VA_START,
BUILT_IN_VA_COPY and BUILT_IN_VA_END.
* target.h (struct ggc_target): Add expand_builtin_va_start
hook.
* target-def.h (TARGET_EXPAND_BUILTIN_VA_START): Define.
(TARGET_INITIALIZER): Add it.
* builtins.c (expand_builtin_va_start): Use
targetm.expand_builtin_va_start hook instead of
EXPAND_BUILTIN_VA_START macro.
* alpha/alpha.c (alpha_va_start): Made static.
(override_options): Clear targetm.expand_builtin_va_start if
TARGET_UNICOSMK.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* alpha/unicosmk.h (EXPAND_BUILTIN_VA_START): Remove.
* alpha/alpha.h (EXPAND_BUILTIN_VA_START): Remove.
* alpha/alpha-protos.h (alpha_va_start): Remove prototype.
* xtensa/xtensa.h (EXPAND_BUILTIN_VA_START): Remove.
* xtensa/xtensa.c (TARGET_EXPAND_BUILTIN_VA_START): Define.
(xtensa_va_start): Made static.
* xtensa/xtensa-protos.h (xtensa_va_start): Remove prototype.
* pa/pa-protos.h (hppa_va_start): Remove prototype.
* pa/pa.h (EXPAND_BUILTIN_VA_START): Remove.
* pa/pa.c (hppa_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* frv/frv.c (frv_expand_builtin_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* frv/frv-protos.h (frv_expand_builtin_va_start): Remove prototype.
* frv/frv.h (EXPAND_BUILTIN_VA_START): Remove.
* i386/i386.c (override_options): Clear
targetm.expand_builtin_va_start if -m32 or 64-bit MS ABI.
(ix86_va_start): Made static.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* i386/i386.h (EXPAND_BUILTIN_VA_START): Remove.
* i386/i386-protos.h (ix86_va_start, ix86_va_arg): Remove prototypes.
* iq2000/iq2000-protos.h (iq2000_va_start): Remove prototype.
* iq2000/iq2000.h (EXPAND_BUILTIN_VA_START): Remove.
* iq2000/iq2000.c (iq2000_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* rs6000/rs6000-protos.h (rs6000_va_start): Remove prototype.
* rs6000/rs6000.c (rs6000_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
(rs6000_override_options): Clear targetm.expand_builtin_va_start if
DEFAULT_ABI != ABI_V4.
* rs6000/rs6000.h (EXPAND_BUILTIN_VA_START): Remove.
* spu/spu.c (spu_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* spu/spu.h (EXPAND_BUILTIN_VA_START): Remove.
* spu/spu-protos.h spu_va_start): Remove prototype.
* stormy16/stormy16.h (EXPAND_BUILTIN_VA_START): Remove.
* stormy16/stormy16-protos.h (xstormy16_expand_builtin_va_start):
Remove prototype.
* stormy16/stormy16.c (xstormy16_expand_builtin_va_start): Made
static.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* s390/s390-protos.h (s390_va_start): Remove prototype.
* s390/s390.c (s390_va_start): Made static.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* s390/s390.h (EXPAND_BUILTIN_VA_START): Remove.
* mn10300/mn10300.h (EXPAND_BUILTIN_VA_START): Remove.
* mn10300/mn10300-protos.h (mn10300_va_start): Remove prototype.
* mn10300/mn10300.c (mn10300_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* arc/arc.c (arc_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* arc/arc.h (EXPAND_BUILTIN_VA_START): Remove.
* arc/arc-protos.h (arc_va_start): Remove prototype.
* mt/mt-protos.h (mt_va_start): Remove prototype.
* sparc/sparc.c (sparc_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* sparc/sparc-protos.h (sparc_va_start): Remove prototype.
* sparc/sparc.h (EXPAND_BUILTIN_VA_START): Remove.
* sh/sh.c (sh_va_start): Made static, add prototype.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
* sh/sh-protos.h (sh_va_start): Remove prototype.
* sh/sh.h (EXPAND_BUILTIN_VA_START): Remove.
* mips/mips-protos.h (mips_va_start): Remove prototype.
* mips/mips.h (EXPAND_BUILTIN_VA_START): Remove.
* mips/mips.c (mips_va_start): Made static.
(TARGET_EXPAND_BUILTIN_VA_START): Define.
From-SVN: r130650
Uros Bizjak [Thu, 6 Dec 2007 10:35:44 +0000 (11:35 +0100)]
tree-ssa-loop.c (gate_tree_parallelize_loops): Return true when "flag_tree_parallelize_loops > 1".
* tree-ssa-loop.c (gate_tree_parallelize_loops): Return true when
"flag_tree_parallelize_loops > 1".
From-SVN: r130648
Jakub Jelinek [Thu, 6 Dec 2007 10:06:38 +0000 (11:06 +0100)]
[multiple changes]
2007-12-06 Zdenek Dvorak <ook@ucw.cz>
Dorit Nuzman <dorit@il.ibm.com>
Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/34005
* tree-gimple.c (is_gimple_formal_tmp_rhs): Add a case for COND_EXPR.
* gimplify.c (gimplify_ctx): Add a new member allow_rhs_cond_expr.
(gimplify_pure_cond_expr): New function.
(generic_expr_could_trap_p): New function.
(gimplify_cond_expr): Call gimplify_pure_cond_expr.
(force_gimple_operand): Initialize new field allow_rhs_cond_expr.
2007-12-06 Martin Michlmayr <tbm@cyrius.com>
Dorit Nuzman <dorit@il.ibm.com>
PR tree-optimization/34005
* gcc.dg/vect/pr34005.c: New test.
From-SVN: r130647
Andreas Krebbel [Thu, 6 Dec 2007 09:59:06 +0000 (09:59 +0000)]
s390.c (s390_emit_stack_tie): New function.
2007-12-06 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_emit_stack_tie): New function.
(s390_emit_prologue): Emit a stack tie when writing to the
f8-f15 stack slots.
* config/s390/s390.md ("stack_tie"): New insn definition.
From-SVN: r130646
Jakub Jelinek [Thu, 6 Dec 2007 09:33:26 +0000 (10:33 +0100)]
re PR c++/34336 (4.2.2 internal error in stabilize_expr)
PR c++/34336
* tree.c (stabilize_call, stabilize_init): Do nothing if
processing_template_decl.
* g++.dg/template/new8.C: New test.
From-SVN: r130645
Tobias Burnus [Thu, 6 Dec 2007 09:23:00 +0000 (10:23 +0100)]
re PR fortran/34333 (if(nan == nan) wrongly returns TRUE, when nan is a parameter)
2007-12-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34333
* primary.c (match_boz_constant): Add gfc_notify_std
* diagnostics.
2007-12-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34333
* gfortran.dg/boz_7.f90: New.
* gfortran.dg/int_1.f90: Disable -pedantic option.
* gfortran.dg/boz_1.f90: Ditto.
* gfortran.dg/boz_3.f90: Ditto.
* gfortran.dg/pr16433.f: Accomodate for new BOZ warning.
* gfortran.dg/ibits.f90: Ditto.
* gfortran.dg/unf_io_convert_1.f90: Ditto.
* gfortran.dg/unf_io_convert_2.f90: Ditto.
From-SVN: r130644
Paul Thomas [Thu, 6 Dec 2007 06:13:59 +0000 (06:13 +0000)]
re PR fortran/34335 (valid code rejected when reordering USE statements)
2007-12-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34335
* module.c (find_symbol): Do not return symtrees with unique
names, which shows that they are private.
2007-12-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34335
* gfortran.dg/used_types_19.f90: New test.
From-SVN: r130643
Paul Thomas [Thu, 6 Dec 2007 06:11:01 +0000 (06:11 +0000)]
re PR target/34435 (SSE2 intrinsics - emmintrin with optimisations off and type conversion error)
2007-12-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34435
* module.c (find_symbol): Do not return symtrees with unique
names, which shows that they are private.
2007-12-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34435
* gfortran.dg/used_types_19.f90: New test.
From-SVN: r130642
Kaz Kojima [Thu, 6 Dec 2007 05:18:29 +0000 (05:18 +0000)]
nan_2.f90: Add -mieee for sh.
* gfortran.dg/nan_2.f90: Add -mieee for sh.
* gfortran.dg/nearest_2.f90: Likewise.
* gfortran.dg/nearest_3.f90: Likewise.
From-SVN: r130641
Ben Elliston [Thu, 6 Dec 2007 03:47:35 +0000 (03:47 +0000)]
SERVICE: Remove.
* SERVICE: Remove.
* doc/sourcebuild.texi (Miscellaneous Docs): Remove SERVICE item.
From-SVN: r130640
GCC Administrator [Thu, 6 Dec 2007 00:17:27 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130638
Jakub Jelinek [Wed, 5 Dec 2007 22:24:08 +0000 (23:24 +0100)]
re PR middle-end/34337 (Internal error while building gtkwhiteboardc.c from pidgin 2.3.0)
PR middle-end/34337
* fold-const.c (fold_binary) <case BIT_IOR_EXPR>: Don't minimize
number of bits set in C1 if a mode mask for some mode can be used
instead.
* gcc.c-torture/execute/
20071205-1.c: New test.
From-SVN: r130635
Kaz Kojima [Wed, 5 Dec 2007 21:55:55 +0000 (21:55 +0000)]
module_nan.f90: Add -mieee for sh.
* gfortran.dg/module_nan.f90: Add -mieee for sh.
* gfortran.dg/real_const_3.f90: Likewise.
From-SVN: r130634
Bernhard Fischer [Wed, 5 Dec 2007 21:55:10 +0000 (22:55 +0100)]
varasm.c (merge_weak, [...]): Commentary typo fixes.
2007-12-05 Bernhard Fischer <aldot@gcc.gnu.org>
* varasm.c (merge_weak, weak_finish, assemble_alias): Commentary typo
fixes.
From-SVN: r130633
Richard Guenther [Wed, 5 Dec 2007 21:45:15 +0000 (21:45 +0000)]
re PR tree-optimization/34138 (verify_ssa failed (found real variable when subvariables should have appeared))
2007-12-05 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34138
* tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
Do not forward propagate addresses if that changes volatileness of
the pointed-to type.
* gcc.c-torture/compile/pr34138.c: New testcase.
From-SVN: r130632
Jakub Jelinek [Wed, 5 Dec 2007 19:50:56 +0000 (20:50 +0100)]
re PR debug/33739 (Failure of gfortran.dg/literal_character_constant_1_*.F with -m64 -g on Darwin)
PR debug/33739
* gfortran.h (gfc_file): Remove included_by field, add sibling and
down.
(gfc_start_source_files, gfc_end_source_files): New prototypes.
* parse.c (gfc_parse_file): Call gfc_start_source_files and
gfc_end_source_files instead of calling the debugging hooks directly.
* error.c (show_locus): Use up field instead of included_by.
* scanner.c (change_file, gfc_start_source_files,
gfc_end_source_files): New functions.
(gfc_advance_line): Call change_file instead of calling debug hooks
directly.
(get_file): Set up rather than included_by. Initialize down and
sibling.
(preprocessor_line, load_file): Don't set up field here.
* gfortran.dg/debug_2.f: New test.
From-SVN: r130629
Paolo Carlini [Wed, 5 Dec 2007 19:09:11 +0000 (19:09 +0000)]
hashtable_policy.h (_Prime_rehash_policy:: _S_n_primes): Add.
2007-12-05 Paolo Carlini <pcarlini@suse.de>
* include/tr1_impl/hashtable_policy.h (_Prime_rehash_policy::
_S_n_primes): Add.
(_Prime_rehash_policy::_M_next_bkt, _M_bkt_for_elements,
_M_need_rehash): Adjust.
From-SVN: r130628
Thomas Fitzsimmons [Wed, 5 Dec 2007 18:04:44 +0000 (18:04 +0000)]
2007-12-05 Thomas Fitzsimmons <fitzsim@redhat.com>
* gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java,
native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c
(isWindowUnderMouse): New method.
* include/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.h:
Regenerate.
* gnu/java/awt/peer/gtk/GtkComponentPeer.java
(getLocationOnScreen): Move WindowPeer section to...
* gnu/java/awt/peer/gtk/GtkWindowPeer.java (getLocationOnScreen):
New method.
* gnu/java/awt/peer/gtk/GtkMouseInfoPeer.java
(isWindowUnderMouse): Implement.
* java/awt/Component.java (getMousePosition): New method.
(getMousePositionHelper): Likewise.
(mouseOverComponent): Likewise.
* java/awt/Container.java (getMousePosition): New method.
(mouseOverComponent): Likewise.
* classpath/lib/java/awt/Component.class,
classpath/lib/java/awt/Component$BltBufferStrategy.class,
classpath/lib/java/awt/Container$GfxPaintAllVisitor.class,
classpath/lib/java/awt/Component$AccessibleAWTComponent
$AccessibleAWTFocusHandler.class,
classpath/lib/java/awt/Component$FlipBufferStrategy.class,
classpath/lib/java/awt/Container$GfxVisitor.class,
classpath/lib/java/awt/Component$AccessibleAWTComponent
$AccessibleAWTComponentHandler.class,
classpath/lib/java/awt/Container$AccessibleAWTContainer
$AccessibleContainerHandler.class,
classpath/lib/java/awt/Container.class,
classpath/lib/java/awt/Container$AccessibleAWTContainer.class,
classpath/lib/java/awt/Container$GfxPrintAllVisitor.class,
classpath/lib/java/awt/Component$AccessibleAWTComponent.class,
classpath/lib/java/awt/Container$GfxPaintVisitor.class,
classpath/lib/java/awt/Container$GfxPrintVisitor.class,
classpath/lib/java/awt/Component$HeavyweightInLightweightListener.class,
classpath/lib/gnu/java/awt/peer/gtk/GtkComponentPeer.class,
classpath/lib/gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.class,
classpath/lib/gnu/java/awt/peer/gtk/GtkMouseInfoPeer.class,
classpath/lib/gnu/java/awt/peer/gtk/GtkWindowPeer.class,
classpath/lib/gnu/java/awt/peer/gtk/GtkComponentPeer
$RepaintTimerTask.class:
Regenerate.
2007-12-05 Thomas Fitzsimmons <fitzsim@redhat.com>
* gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.h: Regenerate.
* gnu/java/awt/peer/gtk/GtkWindowPeer.h: Likewise.
* java/awt/Component.h: Likewise.
* java/awt/Container.h: Likewise.
From-SVN: r130627
Eric Botcazou [Wed, 5 Dec 2007 17:00:07 +0000 (17:00 +0000)]
trans.c (lvalue_required_p): Take base node directly instead of its parent.
* trans.c (lvalue_required_p): Take base node directly instead
of its parent. Rename second parameter to 'gnu_type'.
<N_Indexed_Component>: Return 0 if the node isn't the prefix.
<N_Slice>: Likewise.
(Identifier_to_gnu): Rename parent_requires_lvalue to require_lvalue.
Adjust calls to lvalue_required_p.
From-SVN: r130626
Uros Bizjak [Wed, 5 Dec 2007 16:01:22 +0000 (17:01 +0100)]
re PR rtl-optimization/34312 (spill failure with -O2 -fPIC -march=pentium-m on i386)
PR target/34312
* config/i386/i386.c (ix86_function_regparm): Also check for fixed
registers when checking that regparm registers are available.
Lower regparm value due to fixed registers usage in addition to
global regs usage.
testsuite/ChangeLog:
PR target/34312
* gcc.target/i386/pr34312.c: New test.
From-SVN: r130625
Bechir Zalila [Wed, 5 Dec 2007 14:34:48 +0000 (14:34 +0000)]
re PR ada/34284 (Missing dynamic library support for GNAT 4.3.0 on x86-*-Darwin8)
2007-12-05 Bechir Zalila <bechir.zalila@gmail.com>
gnattools/
PR ada/34284
* configure.ac: Added a missing switch case for *86-*-darwin*
when defining the value of TOOLS_TARGET_PAIRS.
* configure: Regenerated.
From-SVN: r130624
Tobias Burnus [Wed, 5 Dec 2007 13:42:32 +0000 (14:42 +0100)]
re PR fortran/34333 (if(nan == nan) wrongly returns TRUE, when nan is a parameter)
2007-12-05 Tobias Burnus <burnus@net-b.de>
PR fortran/34333
* arith.h (gfc_compare_expr): Add operator argument, needed
for compare_real.
* arith.c (gfc_arith_init_1): Use mpfr_min instead of
* mpfr_cmp/set
to account for NaN.
(compare_real): New function, as mpfr_cmp but takes NaN into
account.
(gfc_compare_expr): Use compare_real.
(compare_complex): Take NaN into account.
(gfc_arith_eq,gfc_arith_ne,gfc_arith_gt,gfc_arith_ge,gfc_arith_lt,
gfc_arith_le): Pass operator to gfc_compare_expr.
* resolve.c (compare_cases,resolve_select): Pass operator
to gfc_compare_expr.
* simplify.c (simplify_min_max): Take NaN into account.
2007-12-05 Tobias Burnus <burnus@net-b.de>
PR fortran/34333
* gfortran.dg/nan_2.f90: New.
From-SVN: r130623
Bernhard Fischer [Wed, 5 Dec 2007 12:47:22 +0000 (13:47 +0100)]
sparseset.c: Include config.h and system.h before sparseset.h.
2007-11-27 Bernhard Fischer <aldot@gcc.gnu.org>
* sparseset.c: Include config.h and system.h before sparseset.h.
* sparseset.h: Remove inclusion of system.h.
From-SVN: r130622
Richard Sandiford [Wed, 5 Dec 2007 10:53:51 +0000 (10:53 +0000)]
Fix last entry v2.
From-SVN: r130621
Richard Sandiford [Wed, 5 Dec 2007 10:51:05 +0000 (10:51 +0000)]
Fix last entry.
From-SVN: r130620
Jakub Jelinek [Wed, 5 Dec 2007 10:45:21 +0000 (11:45 +0100)]
re PR c++/34271 (ICE in invalid initialization of static template member)
PR c++/34271
* semantics.c (finish_decltype_type): For SCOPE_REF issue an
error instead of assertion failure.
* parser.c (cp_parser_decltype): If closing paren is not found,
return error_mark_node.
* g++.dg/cpp0x/decltype9.C: New test.
* g++.dg/cpp0x/decltype10.C: New test.
From-SVN: r130619
Jakub Jelinek [Wed, 5 Dec 2007 09:33:42 +0000 (10:33 +0100)]
200x-xx-xx Jakub Jelinek <jakub@redhat.com> Richard Sandiford <rsandifo@nildram.co.uk>
gcc/
200x-xx-xx Jakub Jelinek <jakub@redhat.com>
Richard Sandiford <rsandifo@nildram.co.uk>
* optabs.c (clear_insn_codes): New function.
(new_optab): Delete.
(init_optab, init_optabv): Don't call new_optab.
(init_convert_optab): Don't clear the insn codes.
(init_optabs): Call clear_insn_codes.
Co-Authored-By: Richard Sandiford <rsandifo@nildram.co.uk>
From-SVN: r130618
Samuel Tardieu [Wed, 5 Dec 2007 09:25:38 +0000 (09:25 +0000)]
re PR ada/21489 (Wrong code generated for legal program, RM 6.4.1(13), 9.5.1(3), 9.5.3(8))
gcc/ada/
PR ada/21489
* exp_ch9.adb (Build_Simple_Entry_Call): Initialize OUT access type
parameters of an entry call.
gcc/testsuite/
PR ada/21489
* gnat.dg/rm_6_4_1_13.adb: New test.
From-SVN: r130617
Ben Elliston [Wed, 5 Dec 2007 03:28:46 +0000 (03:28 +0000)]
* config.sub, config.guess: Update from upstream sources.
From-SVN: r130616
Joseph Myers [Wed, 5 Dec 2007 01:48:45 +0000 (01:48 +0000)]
* vi.po: Update.
From-SVN: r130615
GCC Administrator [Wed, 5 Dec 2007 00:17:00 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130613
Jakub Jelinek [Tue, 4 Dec 2007 22:01:04 +0000 (23:01 +0100)]
omp-low.c (optimize_omp_library_calls): New function.
* omp-low.c (optimize_omp_library_calls): New function.
(expand_omp_parallel): Call it if optimizing.
* omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
From-SVN: r130610
Jakub Jelinek [Tue, 4 Dec 2007 21:55:32 +0000 (22:55 +0100)]
re PR middle-end/34134 (ICE when using __builtin_stack_restore)
PR middle-end/34134
* stmt.c (expand_stack_restore): Call expand_normal on var to get
rtx for it instead of assuming it will be a VAR_DECL.
* gcc.c-torture/compile/
20071117-1.c: New test.
From-SVN: r130609
Douglas Gregor [Tue, 4 Dec 2007 21:12:41 +0000 (21:12 +0000)]
re PR c++/34101 (ICE with argument deduction of variadic template function)
2007-12-04 Douglas Gregor <doug.gregor@gmail.com>
PR c++/34101
* name-lookup.c (arg_assoc_template_arg): Recurse on argument
packs.
(arg_assoc_type): We don't need to handle TYPE_ARGUMENT_PACK here,
since arg_assoc_template_arg will deal with them (better).
2007-12-04 Douglas Gregor <doug.gregor@gmail.com>
PR c++/34101
* g++.dg/cpp0x/variadic-ttp.C: New.
From-SVN: r130608
Manuel López-Ibáñez [Tue, 4 Dec 2007 21:10:09 +0000 (21:10 +0000)]
c-parser (c_parser_statement_after_labels): Move error from here...
2007-12-04 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* c-parser (c_parser_statement_after_labels): Move error from here...
(c_parser_label): ... to here. Check that the declaration is not
actually just another label.
testsuite/
* gcc.dg/parse-decl-after-if.c: New.
* gcc.dg/
20031223-1.c: Adjust.
From-SVN: r130606
Douglas Gregor [Tue, 4 Dec 2007 20:49:08 +0000 (20:49 +0000)]
re PR c++/33509 (tsubst_pack_expansion assumed to return TREE_VEC)
2007-12-04 Douglas Gregor <doug.gregor@gmail.com>
PR c++/33509
* pt.c (tsubst_exception_specification): Handle substitutions into
member templates, where tsubst_pack_expansion returns a
TYPE_PACK_EXPANSION.
2007-12-04 Douglas Gregor <doug.gregor@gmail.com>
PR c++/33509
* g++.dg/cpp0x/variadic-throw.C: New.
From-SVN: r130605
Douglas Gregor [Tue, 4 Dec 2007 19:27:14 +0000 (19:27 +0000)]
re PR c++/33091 ([c++0x] ICE using remove_reference on variadic param pack)
2007-12-04 Douglas Gregor <doug.gregor@gmail.com>
PR c++/33091
* pt.c (unify_pack_expansion): If we didn't deduce any actual
bindings for the template parameter pack, don't try to keep the
empty deduced arguments.
(unify): If a parameter is a template-id whose template argument
list contains a pack expansion that is not at the end, then we
cannot unify against that template-id.
2007-12-04 Douglas Gregor <doug.gregor@gmail.com>
PR c++/33091
* g++.dg/cpp0x/variadic-unify.C: New.
From-SVN: r130604
Richard Guenther [Tue, 4 Dec 2007 17:20:34 +0000 (17:20 +0000)]
re PR middle-end/34334 (ICE in vuses_compare, at tree-vn.c:118)
2007-12-04 Richard Guenther <rguenther@suse.de>
PR middle-end/34334
PR middle-end/34222
* tree-ssa-operands.c (get_addr_dereference_operands): If we
fall back to using the SMTs aliases, make sure to add virtual
operands for the SMT itself.
(create_ssa_artificial_load_stmt): Fix typo. Make sure to also
clear the loaded and stored symbols bitmaps.
* gcc.c-torture/compile/pr34334.c: New testcase.
* g++.dg/torture/pr34222.C: New testcase.
From-SVN: r130602
Jakub Jelinek [Tue, 4 Dec 2007 14:55:40 +0000 (15:55 +0100)]
20071202-1.c: New test.
* gcc.c-torture/execute/
20071202-1.c: New test.
* gcc.dg/tree-ssa/pr34146-2.c: New test.
From-SVN: r130601
Tobias Burnus [Tue, 4 Dec 2007 10:32:04 +0000 (11:32 +0100)]
re PR fortran/34318 (Modules: Infinity/NaN parameters read as 0.0)
2007-12-04 Tobias Burnus <burnus@net-b.de>
PR fortran/34318
* module.c (mio_gmp_real): Properly write NaN and Infinity.
2007-12-04 Tobias Burnus <burnus@net-b.de>
PR fortran/34318
* gfortran.dg/module_nan.f90: New.
From-SVN: r130600
Richard Sandiford [Tue, 4 Dec 2007 10:16:17 +0000 (10:16 +0000)]
target-supports.exp (get_compiler_messages): Replace with...
gcc/testsuite/
* lib/target-supports.exp (get_compiler_messages): Replace with...
(check_compile): ...this new procedure. Handle TYPE == executable.
Use comments in the source to determine the correct extension.
Return a pair containing the compiler output and the output filename.
Don't delete the file here.
(check_no_compiler_messages_nocache): New procedure.
(check_no_compiler_messages): Use it.
(check_no_messages_and_pattern_nocache): New procedure.
(check_no_messages_and_pattern): Use it.
(check_runtime_nocache, check_runtime): New procedures.
(check_effective_target_tls): Use check_no_compiler_messages.
(check_effective_target_tls_native): Use check_no_messages_and_pattern.
(check_effective_target_tls_runtime): Use check_runtime.
(check_effective_target_fstack_protector): Likewise.
(check_iconv_available): Use check_runtime_nocache.
(check_effective_target_fortran_large_real): Use
check_no_compiler_messages.
(check_effective_target_fortran_large_int): Likewise.
(check_effective_target_static_libgfortran): Likewise.
(check_750cl_hw_available): Use check_cached_effective_target
and check_runtime_nocache.
(check_vmx_hw_available): Likewise.
(check_effective_target_broken_cplxf_arg): Likewise.
(check_alpha_max_hw_available): Use check_runtime.
(check_function_available): Use check_no_compiler_messages.
(check_cxa_atexit_available): Use check_cached_effective_target
and check_runtime_nocache.
(check_effective_target_dfp_nocache): Use
check_no_compiler_messages_nocache.
(check_effective_target_dfprt_nocache): Use check_runtime_nocache.
(check_effective_target_dfp): Use check_cached_effective_target.
(check_effective_target_dfprt): Likewise.
(check_effective_target_arm_neon_hw): Use check_runtime.
(check_effective_target_ultrasparc_hw): Likewise.
(check_effective_target_c99_runtime): Use
check_no_compiler_messages_nocache.
From-SVN: r130599
Ben Elliston [Tue, 4 Dec 2007 03:17:14 +0000 (03:17 +0000)]
* config/spu/spu.h (ASM_FORMAT_PRIVATE_NAME): Remove; use default.
From-SVN: r130598
Ben Elliston [Tue, 4 Dec 2007 03:14:14 +0000 (03:14 +0000)]
* doc/tm.texi (Exception Handling): Mention unwind-dw2-xtensa.c.
From-SVN: r130597
GCC Administrator [Tue, 4 Dec 2007 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130595
Paolo Carlini [Mon, 3 Dec 2007 23:20:22 +0000 (23:20 +0000)]
hashtable.cc (__prime_list): Use __SIZEOF_LONG__.
2007-12-03 Paolo Carlini <pcarlini@suse.de>
* src/hashtable.cc (__prime_list): Use __SIZEOF_LONG__.
From-SVN: r130592
Steven Bosscher [Mon, 3 Dec 2007 23:09:23 +0000 (23:09 +0000)]
re PR middle-end/33713 (can't find a register in class 'GENERAL_REGS' while reloading 'asm')
PR33713
* doc/invoke.texi: Remove -fforce-addr documentation.
* expr.c (emit_move_insn): Remove use of flag_force_addr.
(expand_expr_real_1): Same.
(do_tablejump): Same.
Call memory_address instead of memory_address_noforce.
* expr.h (memory_address_noforce): Remove prototype.
* explow.c (memory_address): Remove support for flag_force_addr.
(validize_mem): Same.
(memory_address_noforce): Remove.
* common.opt: Add dummy documentation for -fforce-addr.
* combine.c (can_combine_p): Remove -fforce-addr comment.
* config/cris/cris.h (OPTIMIZATION_OPTIONS): Remove set of
flag_force_addr.
* config/m68k/m68k.h (PIC_CASE_VECTOR_ADDRESS): Remove comment
relating to memory_address_noforce.
* testsuite/gcc.c-torture/compile/
20050802-1.c: Remove.
* testsuite/gcc.c-torture/compile/
20011113-1.c: Remove.
From-SVN: r130591
Jakub Jelinek [Mon, 3 Dec 2007 23:06:55 +0000 (00:06 +0100)]
omp-low.c (lookup_decl_in_outer_ctx): Allow calling this with !ctx->is_nested.
* omp-low.c (lookup_decl_in_outer_ctx): Allow calling this
with !ctx->is_nested.
(maybe_lookup_decl_in_outer_ctx): Look up in outer contexts
even if !ctx->is_nested.
(lower_copyprivate_clauses, lower_send_clauses,
lower_send_shared_vars): Call lookup_decl_in_outer_ctx
unconditionally.
* testsuite/libgomp.c/private-1.c: New test.
From-SVN: r130590
Jakub Jelinek [Mon, 3 Dec 2007 22:38:28 +0000 (23:38 +0100)]
re PR middle-end/29749 (Missing byte swap optimizations)
PR middle-end/29749
* fold-const.c (fold_binary) <case BIT_AND_EXPR>: Optimize
(X << C1) & C2 into (X << C1) & (C2 | ((1 << C1) - 1))
and (X >> C1) & C2 into (X >> C1) & (C2 | ~((type) -1 >> C1)).
(fold_binary) <case LSHIFT_EXPR, case RSHIFT_EXPR>: Optimize
(X & C2) << C1 into (X << C1) & (C2 << C1) and
(X & C2) >> C1 into (X >> C1) & (C2 >> C1) if that allows further
optimizations.
* gcc.dg/fold-rotate-1.c: New test.
From-SVN: r130589
Jakub Jelinek [Mon, 3 Dec 2007 22:35:39 +0000 (23:35 +0100)]
re PR tree-optimization/33453 (ICE in build2_stat, at tree.c:3110 with -ftree-parallelize-loops=4 -ftree-vectorize)
PR tree-optimization/33453
* tree-data-ref.c (split_constant_offset): Use POINTER_PLUS_EXPR
for pointer addition.
* tree-parloops.c (canonicalize_loop_ivs): Likewise.
(separate_decls_in_loop_name): Copy DECL_GIMPLE_REG_P from var to
var_copy.
* gcc.c-torture/compile/
20071203-1.c: New test.
From-SVN: r130588
Tom Tromey [Mon, 3 Dec 2007 21:04:47 +0000 (21:04 +0000)]
( 5)
From-SVN: r130586
Paolo Carlini [Mon, 3 Dec 2007 17:22:44 +0000 (17:22 +0000)]
hashtable.cc: New.
2007-12-03 Paolo Carlini <pcarlini@suse.de>
* src/hashtable.cc: New.
* src/hashtable_c++0x.cc: Likewise.
* src/Makefile.am: Add.
* src/Makefile.in: Regenerate.
* include/tr1_impl/hashtable_policy.h (struct _Primes): Remove.
(_Prime_rehash_policy::_M_next_bkt, _M_bkt_for_elements,
_M_need_rehash): Adjust.
* config/abi/pre/gnu.ver: Update exports.
* src/hash.cc: Minor tweak.
From-SVN: r130585
Bernd Schmidt [Mon, 3 Dec 2007 16:34:26 +0000 (16:34 +0000)]
Fix date in ChangeLog.
From-SVN: r130584
Bernd Schmidt [Mon, 3 Dec 2007 16:29:18 +0000 (16:29 +0000)]
bfin.h (TARGET_CPU_CPP_BUILTINS): Define __FDPIC__ as necessary.
* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __FDPIC__ as
necessary.
From-SVN: r130583
Robert Dewar [Mon, 3 Dec 2007 16:01:57 +0000 (16:01 +0000)]
re PR ada/34287 (Simple Ada bug [Barnes' Silly])
2007-12-03 Robert Dewar <dewar@adacore.com>
Samuel Tardieu <sam@rfc1149.net>
gcc/ada/
PR ada/34287
* sem_util.adb (Safe_To_Capture_Value): Do not capture values
of variables declared in a library-level package.
gcc/testsuite/gnat.dg/
PR ada/34287
* check_elaboration_code.adb: New test.
* bug_elaboration_code.ads, bug_elaboration_code.adb: New support
files.
Co-Authored-By: Samuel Tardieu <sam@rfc1149.net>
From-SVN: r130582
Paolo Carlini [Mon, 3 Dec 2007 13:12:51 +0000 (13:12 +0000)]
unordered_map (operator==(const unordered_map&, const unordered_map&), [...]): Remove.
2007-12-03 Paolo Carlini <pcarlini@suse.de>
* include/debug/unordered_map (operator==(const unordered_map&,
const unordered_map&), operator!=(const unordered_map&,
const unordered_map&), operator==(const unordered_multimap&,
const unordered_multimap&), operator!=(const unordered_multimap&,
const unordered_multimap&)): Remove.
(unordered_map<>::unordered_map(unordered_map&&),
operator=(unordered_map&&), clear, _M_invalidate_all,
unordered_multimap<>::unordered_multimap(unordered_multimap&&),
operator=(unordered_map&&), clear, _M_invalidate_all,
swap(unordered_map<>&&, unordered_map<>&), swap(unordered_map<>&,
unordered_map<>&&), swap(unordered_multimap<>&&,
unordered_multimap<>&), swap(unordered_multimap<>&,
unordered_multimap<>&&)): Add.
* include/debug/unordered_set (operator==(const unordered_set&,
const unordered_set&), operator!=(const unordered_set&,
const unordered_set&), operator==(const unordered_multiset&,
const unordered_multiset&), operator!=(const unordered_multiset&,
const unordered_multiset&)): Remove.
(unordered_set<>::unordered_set(unordered_set&&),
operator=(unordered_set&&), clear, _M_invalidate_all,
unordered_multiset<>::unordered_multiset(unordered_multiset&&),
operator=(unordered_set&&), clear, _M_invalidate_all,
swap(unordered_set<>&&, unordered_set<>&), swap(unordered_set<>&,
unordered_set<>&&), swap(unordered_multiset<>&&,
unordered_multiset<>&), swap(unordered_multiset<>&,
unordered_multiset<>&&)): Add.
* include/debug/safe_association.h (_Safe_association<>::
_Safe_association(_Safe_association&&)): Add.
(_Safe_association<>::clear, _M_invalidate_all): Remove.
From-SVN: r130581
Razya Ladelsky [Mon, 3 Dec 2007 11:16:36 +0000 (11:16 +0000)]
invoke.texi (fipa-cp, [...]): Add documentation.
2007-12-03 Razya Ladelsky <razya@il.ibm.com>
* doc/invoke.texi (fipa-cp, fipa-matrix-reorg): Add documentation.
From-SVN: r130580
Jakub Jelinek [Mon, 3 Dec 2007 10:45:53 +0000 (11:45 +0100)]
re PR middle-end/34317 (-fno-tree-store-copy-prop causes an ICE)
PR middle-end/34317
* opts.c (common_handle_option): Handle OPT_ftree_store_copy_prop.
* common.opt (ftree-store-copy-prop): Use the same help text as for
other nop switches.
From-SVN: r130579
GCC Administrator [Mon, 3 Dec 2007 00:17:43 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130577
Jerry DeLisle [Sun, 2 Dec 2007 23:17:16 +0000 (23:17 +0000)]
re PR libfortran/33985 (access="stream",form="unformatted" doesn't buffer)
2007-12-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/33985
* io/transfer.c (read_block, read_block_direct, write_block, write_buf):
Don't seek if file position is already there for STREAM I/O.
(finalize_transfer): For STREAM I/O don't flush unless the file position
has moved past the start position before the transfer.
Co-Authored-By: Thomas Koenig <tkoenig@gcc.gnu.org>
From-SVN: r130574
Paolo Carlini [Sun, 2 Dec 2007 19:47:18 +0000 (19:47 +0000)]
re PR c++/34061 (ICE with template-template parameters and inheritance)
/cp
2007-12-02 Paolo Carlini <pcarlini@suse.de>
PR c++/34061
* pt.c (current_template_args): Use error_operand_p.
/testsuite
2007-12-02 Paolo Carlini <pcarlini@suse.de>
PR c++/34061
* g++.dg/cpp0x/pr34061.C: New.
From-SVN: r130573
Samuel Tardieu [Sun, 2 Dec 2007 18:29:04 +0000 (18:29 +0000)]
Makefile.in: Add support for sh4-linux.
gcc/ada/
* Makefile.in: Add support for sh4-linux.
* system-linux-sh4.ads: New file.
From-SVN: r130572
Samuel Tardieu [Sun, 2 Dec 2007 18:27:53 +0000 (18:27 +0000)]
clean.adb (Clean_Library_Directory): Use Empty_String'Access intead of Empty_String'Unchecked_Access.
gcc/ada/
* clean.adb (Clean_Library_Directory): Use Empty_String'Access intead
of Empty_String'Unchecked_Access.
From-SVN: r130571