François-Xavier Coudert [Mon, 3 Mar 2008 23:46:20 +0000 (23:46 +0000)]
re PR fortran/33197 (Fortran 2008: math functions)
PR fortran/33197
gcc/fortran/
* intrinsic.c (add_functions): Modify intrinsics ACOSH, ASINH,
ATANH, ERF, ERFC and GAMMA. Add intrinsics BESSEL_{J,Y}{0,1,N},
ERFC_SCALED, LOG_GAMMA and HYPOT.
* intrinsic.h (gfc_check_hypot, gfc_simplify_hypot,
gfc_resolve_hypot): New prototypes.
* mathbuiltins.def: Add HYPOT builtin. Make complex versions of
ACOSH, ASINH and ATANH available.
* gfortran.h (GFC_ISYM_ERFC_SCALED, GFC_ISYM_HYPOT): New values.
* lang.opt: Add -std=f2008 option.
* libgfortran.h: Define GFC_STD_F2008.
* lang-specs.h: Add .f08 and .F08 file suffixes.
* iresolve.c (gfc_resolve_hypot): New function.
* parse.c (parse_contained): Allow empty CONTAINS for Fortran 2008.
* check.c (gfc_check_hypot): New function.
* trans-intrinsic.c (gfc_intrinsic_map): Define ERFC_SCALE builtin.
* options.c (set_default_std_flags): Allow Fortran 2008 by default.
(form_from_filename): Add .f08 suffix.
(gfc_handle_option): Handle -std=f2008 option.
* simplify.c (gfc_simplify_hypot): New function.
* gfortran.texi: Document Fortran 2008 status and file extensions.
* intrinsic.texi: Document new BESSEL_{J,Y}{0,1,N} intrinsics,
as well as HYPOT and ERFC_SCALED. Update documentation of ERF,
ERFC, GAMMA, LGAMMA, ASINH, ACOSH and ATANH.
* invoke.texi: Document the new -std=f2008 option.
libgomp/
* testsuite/libgomp.fortran/fortran.exp: Add .f08 and
.F08 file suffixes.
gcc/testsuite/
* gfortran.dg/gomp/gomp.exp: Add .f08 and .F08 file suffixes.
* gfortran.dg/dg.exp: Likewise.
* gfortran.dg/vect/vect.exp: Likewise.
* gfortran.fortran-torture/execute/execute.exp: Likewise.
* gfortran.fortran-torture/compile/compile.exp: Likewise.
* gfortran.dg/gamma_1.f90: Also check log_gamma.
* gfortran.dg/invalid_contains_1.f90: Remove warning about
empty CONTAINS.
* gfortran.dg/gamma_2.f90: Add a few error messages.
* gfortran.dg/invalid_contains_2.f90: Remove warning about
empty CONTAINS.
* gfortran.dg/gamma_3.f90: Adjust error message.
* gfortran.dg/gamma_4.f90: Test for log_gamma instead of lgamma.
* gfortran.dg/bind_c_usage_9.f03: Adjust error messages.
* gfortran.dg/bessel_1.f90: New test.
* gfortran.dg/recursive_check_3.f90: Remove warnings.
* gfortran.dg/besxy.f90: Also check for new F2008 intrinsics.
* gfortran.dg/derived_function_interface_1.f90: Remove warning.
* gfortran.dg/contains_empty_1.f03: New test.
* gfortran.dg/erfc_scaled_1.f90: New test.
* gfortran.dg/hypot_1.f90: New test.
* gfortran.dg/contains_empty_2.f03: New test.
libgfortran/
* intrinsics/erfc_scaled_inc.c: New file.
* intrinsics/erfc_scaled.c: New file.
* gfortran.map (GFORTRAN_1.0): Add _gfortran_erfc_scaled_r*.
* Makefile.am: Add intrinsics/erfc_scaled.c.
* config.h.in: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
From-SVN: r132846
Peter O'Gorman [Mon, 3 Mar 2008 22:35:13 +0000 (22:35 +0000)]
re PR libgomp/33131 (libgomp/env.c:60: warning: implicit declaration of function 'strncasecmp')
2008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
PR libgomp/33131
* configure.ac: Add ACX_HEADER_STRING.
* env.c: Include strings.h.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
From-SVN: r132844
Matthias Klose [Mon, 3 Mar 2008 21:57:02 +0000 (21:57 +0000)]
Main.class, [...]: Regenerate.
2008-03-03 Matthias Klose <doko@ubuntu.com>
* classpath/tools/classes/gnu/classpath/tools/orbd/Main.class,
classpath/lib/gnu/java/locale/LocaleData.class
classpath/lib/gnu/java/rmi/registry/RegistryImpl.class
classpath/lib/gnu/gcj/convert/Convert.class
classpath/lib/gnu/gcj/tools/gcj_dbtool/Main.class: Regenerate.
From-SVN: r132843
Stan Shebs [Mon, 3 Mar 2008 20:34:54 +0000 (20:34 +0000)]
Don't need to list myself in write after approval section
From-SVN: r132841
Stan Shebs [Mon, 3 Mar 2008 16:25:55 +0000 (16:25 +0000)]
MAINTAINERS (Write After Approval): Add myself back.
2008-03-03 Stan Shebs <stanshebs@earthlink.net>
* MAINTAINERS (Write After Approval): Add myself back.
(darwin port): Add myself as a maintainer.
(objective-c/c++): Add myself as a maintainer.
From-SVN: r132839
Jan Hubicka [Mon, 3 Mar 2008 16:20:31 +0000 (17:20 +0100)]
re PR c++/35262 (FAIL: abi_check)
PR c++/35262
* ipa-inline.c (cgraph_decide_inlining_of_small_function): Be more
aggressive on inlining cold calls.
From-SVN: r132838
Paul Brook [Mon, 3 Mar 2008 14:30:48 +0000 (14:30 +0000)]
config.gcc: Add arm/t-arm-softfp and soft-fp/t-softfp to arm configs.
2008-03-03 Paul Brook <paul@codesourcery.com>
gcc/
* config.gcc: Add arm/t-arm-softfp and soft-fp/t-softfp to arm
configs. Add new --with-arch options.
* config/arm/t-arm-softfp: New file.
* config/arm/elf.h: Disable soft-fp routines on everything except
ARMv6-M.
* config/arm/ieee754-df.S: Rename L_* to L_arm_*.
* config/arm/ieee754-sf.S: Ditto.
* config/arm/t-arm-elf: Ditto.
* config/arm/arm.c (FL_FOR_ARCH6M): Define.
(all_architectures): Add armv6-m.
(arm_output_mi_thunk): Add TARGET_THUMB1_ONLY thunks.
* config/arm/lib1funcs.asm: Add __ARM_ARCH_6M__ conditionals.
Include bpabi-v6m.S.
* config/arm/arm.h (TARGET_THUMB1_ONLY): Define.
(ARM_DECLARE_FUNCTION_NAME): Handle Thumb-1 only thunks.
* config/arm/sfp-machine.h: New file.
* config/arm/bpabi-v6m.S: New file.
* config/arm/arm-cores.def: Add cortex-m1.
* config/arm/arm-tune.md: Regenerate.
* config/arm/libunwind.S: Add ARMv6-M implementation.
* config/arm/bpabi.h: Add renames for soft-float routines.
* doc/invoke.texi: Document -mcpu=cortex-m1 and -march=armv6-m.
From-SVN: r132837
Richard Guenther [Mon, 3 Mar 2008 11:57:15 +0000 (11:57 +0000)]
tree-ssa-sccvn.c (visit_reference_op_store): Do not insert struct copies into the expression table.
2008-03-03 Richard Guenther <rguenther@suse.de>
* tree-ssa-sccvn.c (visit_reference_op_store): Do not insert
struct copies into the expression table.
(simplify_unary_expression): Handle VIEW_CONVERT_EXPR.
(try_to_simplify): Likewise.
* fold-const.c (fold_unary): Fold VIEW_CONVERT_EXPR of
integral and pointer arguments which do not change the
precision to NOP_EXPRs.
* tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): Adjust
VIEW_CONVERT_EXPR case.
From-SVN: r132836
Sebastian Pop [Mon, 3 Mar 2008 11:51:36 +0000 (11:51 +0000)]
tree-scalar-evolution.c (instantiate_parameters_1): An SSA_NAME defined in a loop at depth 0 is invariant.
* tree-scalar-evolution.c (instantiate_parameters_1): An SSA_NAME
defined in a loop at depth 0 is invariant.
* tree-chrec.c (evolution_function_is_invariant_rec_p): Ditto.
* tree-ssa-loop-ivopts.c (expr_invariant_in_loop_p): Should never
be called at loop depth 0.
From-SVN: r132835
Uros Bizjak [Mon, 3 Mar 2008 07:27:55 +0000 (08:27 +0100)]
builtin-apply-mmx.c: Do not XFAIL on Darwin.
* gcc.target/i386/builtin-apply-mmx.c: Do not XFAIL on Darwin.
From-SVN: r132832
Volker Reichelt [Mon, 3 Mar 2008 07:14:35 +0000 (07:14 +0000)]
MAINTAINERS (Write After Approval): Update my email address.
* MAINTAINERS (Write After Approval): Update my email address.
From-SVN: r132831
GCC Administrator [Mon, 3 Mar 2008 00:17:54 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r132828
Jakub Jelinek [Sun, 2 Mar 2008 22:50:02 +0000 (23:50 +0100)]
re PR driver/35420 (--version copyright date vs. 2008)
PR driver/35420
* gcc.c (process_command): Update copyright notice dates.
* gcov.c (print_version): Likewise.
* gcov-dump.c (print_version): Likewise.
* mips-tfile.c (main): Likewise.
* mips-tdump.c (main): Likewise.
* jcf-dump.c (version): Update copyright notice dates.
* gfortranspec.c (lang_specific_driver): Update copyright notice
dates.
* mf-runtime.c (__mf_usage): Update copyright notice dates.
* gnu/gcj/convert/Convert.java (version): Update copyright notice
dates.
* gnu/gcj/tools/gcj_dbtool/Main.java (main): Likewise.
* gnu/java/rmi/registry/RegistryImpl.java (version): Update
copyright notice dates.
* tools/gnu/classpath/tools/orbd/Main.java (run): Likewise.
From-SVN: r132823
Ralf Wildenhues [Sun, 2 Mar 2008 22:39:38 +0000 (22:39 +0000)]
gnatfind.adb, [...]: Fix argument parsing typos.
gcc/ada
* gnatfind.adb, gnatxref.adb: Fix argument parsing typos.
* s-auxdec-empty.adb, s-auxdec.adb: Fix typos in copyright
statement.
* a-ngcoar.adb, a-ngrear.adb, g-awk.adb, g-debpoo.adb,
gprep.adb, make.adb, makegpr.adb, par-ch6.adb, prj-nmsc.adb,
sem_attr.adb, sem_ch4.adb, sem_ch8.adb: Fix typos in ada source
code output strings.
* sem_type.adb, system-vms-ia64.ads, system-vms.ads,
system-vms_64.ads: Fix typos in ada source code comments.
* sinfo-cn.adb: Remove incomplete sentence.
From-SVN: r132822
Ralf Wildenhues [Sun, 2 Mar 2008 22:36:35 +0000 (22:36 +0000)]
re PR ada/15479 (Ada manual problems)
gcc/ada
PR documentation/15479
* gnat_rm.texi, gnat_ugn.texi: Avoid standalone `non' word.
From-SVN: r132821
Jakub Jelinek [Sun, 2 Mar 2008 22:06:32 +0000 (23:06 +0100)]
re PR target/35401 (libstdc++ linked to system /usr/lib/libgcc_s.1.dylib not new gcc4.3 libgcc_s.1.dylib)
PR target/35401
* config/t-slibgcc-darwin: Make install-leaf dependent on
install-darwin-libgcc-stubs instead of install.
From-SVN: r132819
Manuel López-Ibáñez [Sun, 2 Mar 2008 15:45:29 +0000 (15:45 +0000)]
re PR c++/24924 (front end and preprocessor pedantic_errors settings should agree)
2008-03-02 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 24924
* c-common.c (flag_permissive): Delete.
(constant_expression_warnings): Check flags first.
(constant_expression_error): New.
* c-common.h (flag_permissive): Delete.
(constant_expression_error): Declare.
* flags.h (flag_permissive): Declare. Update description.
* diagnostic.c (pedwarn): Update.
(permerror): New.
* diagnostic.h: (pedantic_error_kind): Rename as pedantic_warning_kind.
(permissive_error_kind): New.
* toplev.c (flag_permissive): Define. Update description.
* toplev.h (permissive_error_kind): Declare.
* c-errors.c (pedwarn_c99): Use pedantic_warning_kind.
(pedwarn_c90): Use pedantic_warning_kind.
* c-opts.c (c_common_post_options): flag_permissive does not affect
flag_pedantic_errors.
cp/
* class.c (finish_struct_anon): Use permerror instead of pedwarn.
(check_field_decls): Likewise.
(note_name_declared_in_class): Likewise.
* call.c (build_new_op): Likewise.
(convert_like_real): Likewise.
(build_over_call): Likewise.
* lex.c (unqualified_fn_lookup_error): Likewise.
* parser.c (cp_parser_template_id): Likewise.
* cvt.c (warn_ref_binding): Likewise.
(convert_to_reference): Likewise.
(ocp_convert): Likewise.
(convert_to_void): Use error instead of pedwarn.
* error.c (cp_cpp_error): Use pedantic_warning_kind.
* decl.c (compute_array_index_type): Use constant_expression_error.
testsuite/
* g++.dg/cpp/string-2.C: This is a warning now.
* g++.dg/cpp/pedantic-errors.C: -pedantic-errors is not enabled by
default, so add it.
From-SVN: r132817
Hans-Peter Nilsson [Sun, 2 Mar 2008 13:59:10 +0000 (13:59 +0000)]
shared_ptr_neg.cc, [...]: Mark changed error message prelude...
* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc,
testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr_neg.cc:
Mark changed error message prelude, adding "in file included from",
using dg-excess-errors.
From-SVN: r132816
Joseph Myers [Sun, 2 Mar 2008 13:11:19 +0000 (13:11 +0000)]
libgcc2.c (__addvSI3, [...]): Use unsigned arithmetic.
* libgcc2.c (__addvSI3, __addvsi3, __addvDI3, __subvSI3,
__subvsi3, __subvDI3, __negvSI2, __negvsi2, __negvDI2, __absvSI2,
__absvsi2, __absvDI2): Use unsigned arithmetic.
From-SVN: r132815
Andi Kleen [Sun, 2 Mar 2008 12:09:08 +0000 (12:09 +0000)]
struct-equiv.c: Remove file.
2008-03-02 Andi Kleen <ak@suse.de>
Richard Guenther <rguenther@suse.de>
* struct-equiv.c: Remove file.
* cfg_cleanup.c (condjump_equiv_p): Remove.
* Makefile.in (OBJS-common): Remove struct-equiv.o.
(struct-equiv.o): Remove rule.
* basic-block.h (struct_equiv_checkpoint, STRUCT_EQUIV_*,
insns_match_p, struct_equiv_block_eq, struct_equiv_init,
rtx_equiv_p, condjump_equiv_p): Remove prototypes.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r132814
GCC Administrator [Sun, 2 Mar 2008 00:17:41 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r132812
Francois-Xavier Coudert [Sat, 1 Mar 2008 22:15:31 +0000 (22:15 +0000)]
re PR libfortran/35355 (CPU_TIME gives wrong values on mingw)
2008-03-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR libfortran/35355
* intrinsics/time_1.h (__time_1): Fix calculation of user_usec
for mingw.
From-SVN: r132808
Douglas Gregor [Sat, 1 Mar 2008 21:39:38 +0000 (21:39 +0000)]
parser.c (cp_lexer_next_token_is_decl_specifier_keyword): Note that auto is either a storage class or a simple type specifier...
2008-03-01 Douglas Gregor <doug.gregor@gmail.com>
* parser.c (cp_lexer_next_token_is_decl_specifier_keyword): Note
that auto is either a storage class or a simple type specifier,
depending on the dialect.
(cp_parser_decl_specifier_seq): Complain about `auto' as a storage
specifier in C++98 mode, error in C++0x mode (since we don't
support auto as a type specifier, yet).
(cp_parser_storage_class_specifier_opt): Don't treat `auto' as a
storage specifier in C++0x mode.
(cp_parser_simple_type_specifier): Parse `auto' as a
simple-type-specifier, but error because we don't support it yet.
2008-03-01 Douglas Gregor <doug.gregor@gmail.com>
* g++.dg/cpp0x/auto1.C: New.
From-SVN: r132806
Jakub Jelinek [Sat, 1 Mar 2008 19:17:28 +0000 (20:17 +0100)]
baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
Likewise.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
From-SVN: r132805
Jakub Jelinek [Sat, 1 Mar 2008 19:15:17 +0000 (20:15 +0100)]
gnu.ver: Remove _ZNKSt3tr14hashIgEclEg@@GLIBCXX_3.4.10 and...
* config/abi/pre/gnu.ver: Remove
_ZNKSt3tr14hashIgEclEg@@GLIBCXX_3.4.10 and
_ZNKSt4hashIgEclEg@@GLIBCXX_3.4.10 export.
* config/os/gnu-linux/ldbl-extra.ver: Export
_ZNKSt3tr14hashIgEclEg@@GLIBCXX_LDBL_3.4.10
and _ZNKSt4hashIgEclEg@@GLIBCXX_LDBL_3.4.10.
* src/hash.cc: Only define long double hash specialization if
_GLIBCXX_LONG_DOUBLE_COMPAT_IMPL is defined.
* src/compatibility-ldbl.cc: Include "hash.cc".
(_GLIBCXX_LONG_DOUBLE_COMPAT_IMPL): Define.
(_ZNKSt4hashIeEclEe): New alias.
* testsuite/util/testsuite_abi.cc (check_version): Support
GLIBCXX_LDBL_3.4.10.
From-SVN: r132804
Alexandre Oliva [Sat, 1 Mar 2008 18:22:52 +0000 (18:22 +0000)]
ifcvt.c (noce_process_if_block): Try to handle only the then block if the else block exists but isn't suitable.
* ifcvt.c (noce_process_if_block): Try to handle only the then
block if the else block exists but isn't suitable.
From-SVN: r132803
Janne Blomqvist [Sat, 1 Mar 2008 17:12:52 +0000 (19:12 +0200)]
re PR libfortran/35063 (Clean up use of destroy_unit_mutex())
2008-03-01 Janne Blomqvist <jb@gcc.gnu.org>
PR gcc/35063
* gthr-posix.h (__gthread_mutex_destroy): Remove extra declarations.
* gthr-posix95.h (__gthread_mutex_destroy): Likewise. Note this fixes
regression from previous patch.
From-SVN: r132802
Francois-Xavier Coudert [Sat, 1 Mar 2008 12:19:04 +0000 (12:19 +0000)]
re PR fortran/34770 (Incorrect array indexing through pointer when array does not start at 1)
PR fortran/34770
* gfortran.dg/pointer_1.f90: New test.
From-SVN: r132801
Janne Blomqvist [Sat, 1 Mar 2008 10:46:31 +0000 (12:46 +0200)]
re PR libfortran/35063 (Clean up use of destroy_unit_mutex())
gcc:
2008-03-01 Janne Blomqvist <jb@gcc.gnu.org>
PR gcc/35063
* gthr.h: Add __gthread_mutex_destroy as a function that must be
implemented.
* gthr-vxworks.h (__gthread_mutex_destroy): Null implementation.
* gthr-single.h (__gthread_mutex_destroy): Likewise.
* gthr-rtems.h (__gthread_mutex_destroy): Likewise.
* gthr-mipssde.h (__gthread_mutex_destroy): Likewise.
* gthr-nks.h (__gthread_mutex_destroy): Likewise.
* gthr-solaris.h (__gthread_mutex_destroy): Call mutex_destroy.
* gthr-win32.h (__GTHREAD_MUTEX_DESTROY_FUNCTION): Remove.
(__gthread_mutex_destroy_function): Rename to
__gthread_mutex_destroy.
* gthr-dce.h (__gthread_mutex_destroy): Call
pthread_mutex_destroy.
* gthr-tpf.h (__gthread_mutex_destroy): Likewise.
* gthr-posix.h (__gthread_mutex_destroy): Likewise.
* gthr-posix95.h (__gthread_mutex_destroy): Likewise.
libgfortran:
2008-03-01 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/35063
* io/unit.c (destroy_unit_mutex): Call __gthread_mutex_destroy
instead of macro kludge.
From-SVN: r132800
Alexandre Oliva [Sat, 1 Mar 2008 03:36:43 +0000 (03:36 +0000)]
df-scan.c (df_ref_chain_change_bb): Simplify.
* df-scan.c (df_ref_chain_change_bb): Simplify.
(df_insn_change_bb): Add new_bb argument. Simplify. Call
set_block_for_insn if there's any change.
* df.h ((df_insn_change_bb): Fix prototype.
* cfgrtl.c (update_bb_for_insn_chain): Pass bb to
df_insn_change_bb, don't call set_block_for_insn.
* emit-rtl.c (reorder_insns): Likewise.
* haifa-sched.c (move_insn): Likewise.
From-SVN: r132795
Alexandre Oliva [Sat, 1 Mar 2008 03:35:50 +0000 (03:35 +0000)]
* rtlanal.c (loc_mentioned_in_p): Test XVECEXPs correctly.
From-SVN: r132794
Alexandre Oliva [Sat, 1 Mar 2008 03:34:33 +0000 (03:34 +0000)]
tree-flow-inline.h (next_readonly_imm_use): Return NULL_USE_OPERAND_P after the end.
* tree-flow-inline.h (next_readonly_imm_use): Return
NULL_USE_OPERAND_P after the end.
From-SVN: r132793
Richard Guenther [Sat, 1 Mar 2008 00:27:26 +0000 (00:27 +0000)]
re PR middle-end/35411 (internal compiler error: in set_ssa_val_to, at tree-ssa-sccvn.c:1075)
2008-03-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/35411
* tree-sra.c (sra_build_assignment): Split conversion to
final type to a separate statement if we are not assigning
to a register.
From-SVN: r132791
GCC Administrator [Sat, 1 Mar 2008 00:18:22 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r132789
Jerry DeLisle [Fri, 29 Feb 2008 22:50:25 +0000 (22:50 +0000)]
re PR fortran/35059 (Seg fault when max constructor limit reached)
2008-02-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/35059
* expr.c (find_array_element): Modify traversing the constructor to
avoid trying to access NULL memory pointed to by next for the
last element. (find_array_section): Exit while loop if cons->next is
NULL.
* trans-expr.c (gfc_conv_scalar_char_value): Initialize gfc_typespec.
(gfc_conv_function_call): Same.
* decl.c (gfc_match_implicit): Same.
* trans-intrinsic.c (gfc_conv_intrinsic_sr_kind): Same.
From-SVN: r132782
Francois-Xavier Coudert [Fri, 29 Feb 2008 22:01:22 +0000 (23:01 +0100)]
fold-const.c (fold_convertible_p): Correct the logic to follow that in fold_convert().
* fold-const.c (fold_convertible_p): Correct the logic to follow
that in fold_convert().
From-SVN: r132780
Douglas Gregor [Fri, 29 Feb 2008 21:41:38 +0000 (21:41 +0000)]
re PR c++/35315 (ICE with attribute transparent_union)
2008-02-29 Douglas Gregor <doug.gregor@gmail.com>
PR c++/35315
* tree-inline.c (build_duplicate_type): When we make a
duplicate type, make it unique in the canonical types system.
2008-02-29 Douglas Gregor <doug.gregor@gmail.com>
PR c++/35315
* g++.dg/ext/attrib32.C: Add another test case.
From-SVN: r132779
Manuel López-Ibáñez [Fri, 29 Feb 2008 21:38:00 +0000 (21:38 +0000)]
parser.c (cp_parser_nonclass_name): New.
2008-02-29 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
cp/
* parser.c (cp_parser_nonclass_name): New.
(cp_parser_pseudo_destructor_name): Use it instead of
cp_parser_type_name.
(cp_parser_type_name): Move code to cp_parser_nonclass_name.
From-SVN: r132778
Tom Tromey [Fri, 29 Feb 2008 20:09:05 +0000 (20:09 +0000)]
toplev.c (input_file_stack, [...]): Remove.
gcc
* toplev.c (input_file_stack, input_file_stack_tick, fs_p,
input_file_stack_history, input_file_stack_restored): Remove.
(push_srcloc, pop_srcloc, restore_input_file_stack): Likewise.
* input.h (struct file_stack): Remove.
(push_srcloc, pop_srcloc, restore_input_file_stack): Likewise.
(input_file_stack, input_file_stack_tick, INPUT_FILE_STACK_BITS):
Likewise.
* diagnostic.h (struct diagnostic_context) <last_module>: Change
type.
(diagnostic_last_module_changed): Add 'map' argument.
(diagnostic_set_last_function): Likewise.
* diagnostic.c (undiagnostic_report_current_module): Iterate using
line map, not input_file_stack.
* c-lex.c (fe_file_change): Don't use push_srcloc or pop_srcloc.
gcc/cp
* parser.c (struct cp_token) <input_file_stack_index>: Remove.
(cp_lexer_get_preprocessor_token): Update.
(cp_lexer_set_source_position_from_token): Don't call
restore_input_file_stack.
* lex.c (cxx_init): Don't use push_srcloc or pop_srcloc.
gcc/testsuite
* g++.dg/warn/pragma-system_header2.C: Ignore "included from"
line.
From-SVN: r132775
Paul Brook [Fri, 29 Feb 2008 18:57:29 +0000 (18:57 +0000)]
arm.md (arm_addsi3): Add r/k/n alternative.
2008-02-29 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.md (arm_addsi3): Add r/k/n alternative.
From-SVN: r132774
Paul Brook [Fri, 29 Feb 2008 18:20:29 +0000 (18:20 +0000)]
ieee754-df.S (muldf3): Use RET macros.
2008-02-29 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/ieee754-df.S (muldf3): Use RET macros.
From-SVN: r132772
Richard Guenther [Fri, 29 Feb 2008 14:01:09 +0000 (14:01 +0000)]
tree-ssa-pre.c (get_sccvn_value): Create missing VNs via vn_lookup_or_add.
2008-02-29 Richard Guenther <rguenther@suse.de>
* tree-ssa-pre.c (get_sccvn_value): Create missing VNs via
vn_lookup_or_add.
* tree-ssa-sccnv.c (visit_reference_op_store): Use the rhs
value for comparing for a store match.
(simplify_unary_expression): Do nothing for SSA_NAMEs.
(try_to_simplify): Do not do a full-blown reference lookup.
From-SVN: r132768
Tom Tromey [Fri, 29 Feb 2008 12:55:06 +0000 (12:55 +0000)]
expr.c (expand_byte_code): Set DECL_FUNCTION_LAST_LINE on method.
* expr.c (expand_byte_code): Set DECL_FUNCTION_LAST_LINE on
method.
* java-tree.h (struct lang_decl_func): Remove obsolete comment.
From-SVN: r132767
Kaz Kojima [Fri, 29 Feb 2008 12:46:19 +0000 (12:46 +0000)]
sh.c (sh_scalar_mode_supported_p): New function.
* config/sh/sh.c (sh_scalar_mode_supported_p): New function.
(TARGET_SCALAR_MODE_SUPPORTED_P): Define.
* config/sh/sh.h (OVERRIDE_OPTIONS): Don't warn for profiling.
From-SVN: r132766
Sebastian Pop [Fri, 29 Feb 2008 12:41:14 +0000 (12:41 +0000)]
tree-loop-linear.c (try_interchange_loops): Compare memory access strides against cache sizes.
* tree-loop-linear.c (try_interchange_loops): Compare memory access
strides against cache sizes.
* testsuite/gcc.dg/tree-ssa/ltrans-8.c: Increase the size of strides
to make the interchange profitable.
From-SVN: r132765
Kaz Kojima [Fri, 29 Feb 2008 12:37:34 +0000 (12:37 +0000)]
sh.c (sh_secondary_reload): Handle loading a float constant to fpul.
* config/sh/sh.c (sh_secondary_reload): Handle loading a float
constant to fpul.
From-SVN: r132764
GCC Administrator [Fri, 29 Feb 2008 00:17:35 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r132761
Daniel Franke [Thu, 28 Feb 2008 20:22:55 +0000 (15:22 -0500)]
re PR fortran/31463 ([patch] inconsistent warnings if function return value is not set)
gcc/fortran:
2008-02-28 Daniel Franke <franke.daniel@gmail.com>
PR fortran/31463
PR fortran/33950
PR fortran/34296
* lang.opt: Added -Wreturn-type.
* options.c (gfc_handle_option): Recognize -Wreturn-type.
* trans-decl.c (gfc_trans_deferred_vars): Emit warnings for funtions
where the result value is not set.
(gfc_generate_function_code): Likewise.
(generate_local_decl): Emit warnings for funtions whose RESULT
variable is not set.
gcc/testsuite:
2008-02-28 Daniel Franke <franke.daniel@gmail.com>
PR fortran/31463
PR fortran/33950
PR fortran/34296
* gfortran.dg/arrayio_11.f90: Fixed test.
* gfortran.dg/arrayio_12.f90: Likewise.
* gfortran.dg/module_read_1.f90: Added warning-directives.
* gfortran.dg/pr32242.f90: Likewise.
* gfortran.dg/result_in_spec_3.f90: Likewise.
* gfortran.dg/use_12.f90: Likewise.
* gfortran.dg/warn_function_without_result.f90 : New test.
From-SVN: r132756
Richard Sandiford [Thu, 28 Feb 2008 20:02:09 +0000 (20:02 +0000)]
simplify-rtx.c (simplify_unary_operation_1): Extend the handling of SUBREG_PROMOTED_VAR_P to cope with cases where the...
gcc/
* simplify-rtx.c (simplify_unary_operation_1): Extend the handling
of SUBREG_PROMOTED_VAR_P to cope with cases where the extended value
is smaller than the original promoted value.
(simplify_subreg): If OP is a SUBREG, try to preserve its
SUBREG_PROMOTED_VAR_P information.
From-SVN: r132755
Francois-Xavier Coudert [Thu, 28 Feb 2008 15:42:21 +0000 (15:42 +0000)]
re PR fortran/34868 (ICE with -ff2c for function returning a complex number)
PR fortran/34868
* trans-expr.c (gfc_conv_variable): Don't build indirect
references when explicit interface is mandated.
* resolve.c (resolve_formal_arglist): Set attr.always_explicit
on the result symbol as well as the procedure symbol.
* gfortran.dg/f2c_9.f90: New test.
From-SVN: r132751
Steven Bosscher [Thu, 28 Feb 2008 15:39:33 +0000 (15:39 +0000)]
tree-ssa-sccvn (vn_ssa_aux_obstack): New obstack.
2008-02-28 Steven Bosscher <stevenb.gcc@gmail.com>
* tree-ssa-sccvn (vn_ssa_aux_obstack): New obstack.
(VN_INFO_GET): Allocate new objects on the obstack.
(init_scc_vn): Initialize the obstack. Use XDELETE instead of free
for rpo_numbers_temp, for consistency.
(free_scc_vn): Free the obstack.
From-SVN: r132750
Sebastian Pop [Thu, 28 Feb 2008 12:37:24 +0000 (12:37 +0000)]
invoke.texi: Document -ftree-loop-distribution.
* doc/invoke.texi: Document -ftree-loop-distribution.
* tree-loop-distribution.c: New.
* tree-pass.h (pass_loop_distribution): New.
* graphds.h (struct graph): Add htab_t indices.
* timevar.def (TV_TREE_LOOP_DISTRIBUTION): New.
* tree-vectorizer.c (rename_variables_in_loop): Extern.
(slpeel_tree_duplicate_loop_to_edge_cfg): Init PENDING_STMT to NULL.
* tree-vectorizer.h (tree_duplicate_loop_on_edge): Declared.
* tree-data-ref.c (debug_data_dependence_relations): New.
(dump_data_dependence_relation): Also print data references.
(free_data_ref): Extern.
(same_access_functions): Moved...
(find_vertex_for_stmt): Renamed rdg_vertex_for_stmt.
(dump_rdg_vertex, debug_rdg_vertex, dump_rdg_component,
debug_rdg_component, dump_rdg, debug_rdg, dot_rdg_1, dot_rdg,
struct rdg_vertex_info, rdg_vertex_for_stmt): New.
(create_rdg_edge_for_ddr, create_rdg_vertices): Cleaned up.
(stmts_from_loop): Skip LABEL_EXPR.
(hash_stmt_vertex_info, eq_stmt_vertex_info, hash_stmt_vertex_del): New.
(build_rdg): Initialize rdg->indices htab.
(free_rdg, stores_from_loop, ref_base_address,
rdg_defs_used_in_other_loops_p, have_similar_memory_accesses,
have_similar_memory_accesses_1, ref_base_address_1,
remove_similar_memory_refs): New.
* tree-data-ref.h: Depend on tree-chrec.h.
(debug_data_dependence_relations, free_data_ref): Declared.
(same_access_functions): ... here.
(ddr_is_anti_dependent, ddrs_have_anti_deps, ddr_dependence_level): New.
(struct rdg_vertex): Add has_mem_write and has_mem_reads.
(RDGV_HAS_MEM_WRITE, RDGV_HAS_MEM_READS, RDG_STMT,
RDG_MEM_WRITE_STMT, RDG_MEM_READS_STMT): New.
(dump_rdg_vertex, debug_rdg_vertex, dump_rdg_component,
debug_rdg_component, dump_rdg, debug_rdg, dot_rdg,
rdg_vertex_for_stmt): Declared.
(struct rdg_edge): Add level.
(RDGE_LEVEL): New.
(free_rdg, stores_from_loop, remove_similar_memory_refs,
rdg_defs_used_in_other_loops_p, have_similar_memory_accesses): Declared.
(rdg_has_similar_memory_accesses): New.
* tree-vect-analyze.c: Remove unused static decls.
* lambda.h (dependence_level): New.
* common.opt (ftree-loop-distribution): New.
* tree-flow.h (mark_virtual_ops_in_bb,
slpeel_tree_duplicate_loop_to_edge_cfg,
rename_variables_in_loop): Declared.
* Makefile.in (TREE_DATA_REF_H): Depend on tree-chrec.h.
(OBJS-common): Add tree-loop-distribution.o.
(tree-loop-distribution.o): New rule.
* tree-cfg.c (mark_virtual_ops_in_bb): New.
(mark_virtual_ops_in_region): Use mark_virtual_ops_in_bb.
* passes.c (init_optimization_passes): Schedule pass_loop_distribution.
* testsuite/gcc.dg/tree-ssa/ldist-{1..12}.c: New.
From-SVN: r132745
Joseph Myers [Thu, 28 Feb 2008 12:34:51 +0000 (12:34 +0000)]
re PR target/33963 (Dllimport attribute wrongly accepted on typedefs)
PR target/33963
* tree.c (handle_dll_attribute): Disallow TYPE_DECLs for types
other than structures and unions.
From-SVN: r132744
Richard Guenther [Thu, 28 Feb 2008 09:56:54 +0000 (09:56 +0000)]
revert: tree-flow.h (uid_decl_map_hash, [...]): Move ...
2008-02-28 Richard Guenther <rguenther@suse.de>
Revert:
2008-02-26 Richard Guenther <rguenther@suse.de>
* tree-flow.h (uid_decl_map_hash, uid_decl_map_eq): Move ...
* tree.h (uid_decl_map_hash, uid_decl_map_eq): ... here.
(lookup_decl_from_uid): Declare.
(remove_decl_from_map): Likewise.
* tree-ssa.c (uid_decl_map_eq, uid_decl_map_hash): Move ...
* tree.c (uid_decl_map_eq, uid_decl_map_hash): ... here.
(decl_for_uid_map): New global hashtable mapping DECL_UID
to the decl tree.
(init_ttree): Allocate it.
(insert_decl_to_uid_decl_map): New helper function.
(make_node_stat): Insert new decls into the map.
(copy_node_stat): Likewise.
(lookup_decl_from_uid): New function.
(remove_decl_from_map): Likewise.
(print_decl_for_uid_map_statistics): New helper.
(dump_tree_statistics): Call it.
cp/
* decl.c (duplicate_decls): Remove decl from global mapping
before ggc_freeing it.
* tree-flow.h (struct gimple_df): Make referenced_vars a bitmap.
(referenced_var_iterator): Adjust.
(FOR_EACH_REFERENCED_VAR): Adjust.
(FOR_EACH_REFERENCED_VAR_IN_BITMAP): New iterator.
(num_referenced_vars): Adjust.
* tree-flow-inline.h (gimple_referenced_vars): Adjust.
(first_referenced_var): Remove.
(end_referenced_vars_p): Likewise.
(next_referenced_var): Likewise.
(referenced_var_iterator_set): New helper function.
* tree-dfa.c (referenced_var_lookup): Adjust.
(referenced_var_check_and_insert): Likewise.
(remove_referenced_var): Likewise.
* tree-ssa.c (verify_flow_insensitive_alias_info): Use
FOR_EACH_REFERENCED_VAR_IN_BITMAP.
(verify_call_clobbering): Likewise.
(verify_memory_partitions): Likewise.
(init_tree_ssa): Allocate bitmap instead of hashtable for
referenced_vars.
(delete_tree_ssa): Adjust.
* tree-ssa-alias.c (mark_aliases_call_clobbered): Use
FOR_EACH_REFERENCED_VAR_IN_BITMAP.
(compute_tag_properties): Likewise.
(set_initial_properties): Likewise.
(find_partition_for): Likewise.
(update_reference_counts): Likewise.
(dump_may_aliases_for): Likewise.
* tree-ssa-operands.c (add_virtual_operand): Likewise.
(add_call_clobber_ops): Likewise.
(add_call_read_ops): Likewise.
(get_asm_expr_operands): Likewise.
* tree-into-ssa.c (dump_decl_set): Likewise.
(update_ssa): Likewise.
* tree-sra.c (scan_function): Likewise.
(decide_instantiations): Likewise.
(scalarize_parms): Likewise.
* tree-ssa-alias-warnings.c (build_reference_table): Likewise.
(dsa_named_for): Likewise.
* tree-ssa-structalias.c (update_alias_info): Likewise.
(merge_smts_into): Likewise.
From-SVN: r132740
Uros Bizjak [Thu, 28 Feb 2008 09:39:13 +0000 (10:39 +0100)]
pr34351.c: Compile for x86 targets only.
* gcc.dg/pr34351.c: Compile for x86 targets only. Use %ebx register.
From-SVN: r132738
David Daney [Thu, 28 Feb 2008 06:52:59 +0000 (06:52 +0000)]
* HACKING: Correct typo in find command.
From-SVN: r132736
GCC Administrator [Thu, 28 Feb 2008 00:17:55 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r132734
Francois-Xavier Coudert [Wed, 27 Feb 2008 22:32:56 +0000 (23:32 +0100)]
* gfortran.dg/large_real_kind_3.F90: Reverse previous commit.
From-SVN: r132730
Ralf Wildenhues [Wed, 27 Feb 2008 21:42:23 +0000 (21:42 +0000)]
re PR preprocessor/35379 (-MT generates a target string too long over two lines)
libcpp:
PR preprocessor/35379
* mkdeps.c (deps_write): Ensure the first target always appears
in the first column, without leading backslash newline. Avoid
some more extra whitespace.
From-SVN: r132727
David Daney [Wed, 27 Feb 2008 18:53:02 +0000 (18:53 +0000)]
natPlainSocketImplPosix.cc (bind): Remove check for null host.
* gnu/java/net/natPlainSocketImplPosix.cc (bind): Remove check for
null host.
From-SVN: r132726
David Daney [Wed, 27 Feb 2008 18:04:49 +0000 (18:04 +0000)]
re PR target/34409 (MIPS: Non-optimal DWARF frame data)
PR target/34409
* config/mips/iris.h (MIPS_DEBUGGING_INFO): Define.
* config/mips/openbsd.h (MIPS_DEBUGGING_INFO): Same.
* config/mips/sde.h (MIPS_DEBUGGING_INFO): Remove undef.
* config/mips/vxworks.h (MIPS_DEBUGGING_INFO): Same.
* config/mips/mips.h (MIPS_DEBUGGING_INFO): Remove define.
From-SVN: r132725
Uros Bizjak [Wed, 27 Feb 2008 17:29:58 +0000 (18:29 +0100)]
re PR target/25477 (builtin functions should use $LDBL128 suffix on darwin when appropriate)
PR target/25477
* config/darwin-ppc-ldouble-patch.def (BUILT_IN_NANL): Add.
(BUILT_IN_NEXTTOWARD): Remove.
(BUILT_IN_NEXTTOWARDF): Ditto.
* config/darwin.c (darwin_patch_builtin): Use ACONCAT instead of
alloca/strcpy/strcat. Remove commented-out code. Fix whitespace.
From-SVN: r132723
Tom Tromey [Wed, 27 Feb 2008 15:49:19 +0000 (15:49 +0000)]
tree-dump.c (dequeue_and_dump): Check DECL_SAVED_TREE, not DECL_LANG_SPECIFIC, when dumping body.
* tree-dump.c (dequeue_and_dump) <FUNCTION_DECL>: Check
DECL_SAVED_TREE, not DECL_LANG_SPECIFIC, when dumping body.
From-SVN: r132722
Jan Beulich [Wed, 27 Feb 2008 15:03:58 +0000 (15:03 +0000)]
mmx-1.c: Add -Werror-implicit-function-declaration to dg-options.
gcc/testsuite/
2008-02-27 Jan Beulich <jbeulich@novell.com>
* gcc.target/i386/mmx-1.c: Add
-Werror-implicit-function-declaration to dg-options.
* gcc.target/i386/mmx-2.c: Likewise.
* gcc.target/i386/sse-13.c: Likewise.
* gcc.target/i386/sse-14.c: Likewise.
From-SVN: r132721
Jan Beulich [Wed, 27 Feb 2008 14:59:50 +0000 (14:59 +0000)]
c-decl.c (merge_decls): Use DECL_USER_ALIGN() on olddecl to update the respective field on newdecl.
gcc/
2008-02-27 Jan Beulich <jbeulich@novell.com>
* c-decl.c (merge_decls): Use DECL_USER_ALIGN() on olddecl to
update the respective field on newdecl.
From-SVN: r132719
Francois-Xavier Coudert [Wed, 27 Feb 2008 14:32:02 +0000 (14:32 +0000)]
re PR fortran/33387 (Fortran front-end should translate intrinsics by calling C99 function instead of libgfortran functions)
PR fortran/33387
* trans.h: Remove prototypes for gfor_fndecl_math_exponent4,
gfor_fndecl_math_exponent8, gfor_fndecl_math_exponent10 and
gfor_fndecl_math_exponent16.
* f95-lang.c (build_builtin_fntypes): Add new function types.
(gfc_init_builtin_functions): Add new builtins for nextafter,
frexp, ldexp, fabs, scalbn and inf.
* iresolve.c (gfc_resolve_rrspacing): Don't add hidden arguments.
(gfc_resolve_scale): Don't convert type of second argument.
(gfc_resolve_set_exponent): Likewise.
(gfc_resolve_size): Don't add hidden arguments.
* trans-decl.c: Remove gfor_fndecl_math_exponent4,
gfor_fndecl_math_exponent8, gfor_fndecl_math_exponent10 and
gfor_fndecl_math_exponent16.
* trans-intrinsic.c (gfc_intrinsic_map): Remove intrinsics
for scalbn, fraction, nearest, rrspacing, set_exponent and
spacing.
(gfc_conv_intrinsic_exponent): Directly call frexp.
(gfc_conv_intrinsic_fraction, gfc_conv_intrinsic_nearest,
gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_rrspacing,
gfc_conv_intrinsic_scale, gfc_conv_intrinsic_set_exponent): New
functions.
(gfc_conv_intrinsic_function): Use the new functions above.
From-SVN: r132713
Revital Eres [Wed, 27 Feb 2008 13:27:56 +0000 (13:27 +0000)]
Fix PR rtl-optimization/34999
From-SVN: r132711
Richard Guenther [Wed, 27 Feb 2008 13:17:17 +0000 (13:17 +0000)]
re PR tree-optimization/25290 (PHI-OPT could be rewritten so that is uses fold)
2008-02-27 Richard Guenther <rguenther@suse.de>
PR middle-end/25290
* fold-const.c (fold_unary): Return the correct argument,
converted to the result type.
* gcc.c-torture/execute/pr35390.c: New testcase.
From-SVN: r132710
Arnaud Charlet [Wed, 27 Feb 2008 13:07:30 +0000 (14:07 +0100)]
Minor reformatting.
From-SVN: r132709
Samuel Tardieu [Wed, 27 Feb 2008 12:12:14 +0000 (12:12 +0000)]
re PR ada/22255 (Reset on shared file causes Use_Error.)
gcc/ada/
PR ada/22255
* s-fileio.adb (Reset): Do not raise Use_Error if mode isn't changed.
gcc/testsuite/
PR ada/22255
* gnat.dg/test_direct_io.adb: New file.
From-SVN: r132708
Samuel Tardieu [Wed, 27 Feb 2008 11:53:55 +0000 (11:53 +0000)]
re PR ada/34799 ([Ada] Assertion fails when no component clause is given for generic record member)
gcc/ada/
PR ada/34799
* sem_ch13.adb (Analyze_Record_Representation_Clause): Check
that underlying type is present.
gcc/testsuite/
PR ada/34799
* gnat.dg/specs/pr34799.ads: New test.
From-SVN: r132707
Richard Guenther [Wed, 27 Feb 2008 09:50:04 +0000 (09:50 +0000)]
re PR middle-end/34971 (bitfield rotates are folded and expanded wrong)
2008-02-27 Richard Guenther <rguenther@suse.de>
PR middle-end/34971
* expr.c (expand_expr_real_1): Assert on rotates that operate
on partial modes.
* fold-const.c (fold_binary): Use the types precision, not the
bitsize of the mode if folding rotate expressions. Build rotates
only for full modes.
* gcc.c-torture/execute/pr34971.c: New testcase.
From-SVN: r132706
Jakub Jelinek [Wed, 27 Feb 2008 09:09:05 +0000 (10:09 +0100)]
re PR c++/35368 (With #pragma visibility, `vtable for __cxxabiv1::__class_type_info' is emitted as a hidden-visibility relocation)
PR c++/35368
* rtti.c: Include c-pragma.h.
(push_abi_namespace, pop_abi_namespace): New functions.
(build_dynamic_cast_1, tinfo_base_init, get_pseudo_ti_index,
create_tinfo_types, emit_support_tinfos): Use them.
* Make-lang.in (cp/rtti.o): Depend on $(C_PRAGMA_H).
* g++.dg/ext/visibility/typeinfo2.C: New test.
* g++.dg/ext/visibility/typeinfo3.C: New test.
From-SVN: r132704
Jakub Jelinek [Wed, 27 Feb 2008 08:51:22 +0000 (09:51 +0100)]
c-ppoutput.c (scan_translation_unit): Handle CPP_PRAGMA and CPP_PRAGMA_EOL.
* c-ppoutput.c (scan_translation_unit): Handle CPP_PRAGMA
and CPP_PRAGMA_EOL.
* c-pragma.c (pragma_ns_name): New typedef.
(registered_pp_pragmas): New variable.
(c_pp_lookup_pragma): New function.
(c_register_pragma_1): If flag_preprocess_only, do nothing
for non-expanded pragmas, for expanded ones push pragma's
namespace and name into registered_pp_pragmas vector.
(c_invoke_pragma_handler): Register OpenMP pragmas even when
flag_preprocess_only, don't register GCC pch_preprocess
pragma if flag_preprocess_only.
* c-opts.c (c_common_init): Call init_pragma even if
flag_preprocess_only.
* c-pragma.c (c_pp_lookup_pragma): New prototype.
* config/darwin.h (DARWIN_REGISTER_TARGET_PRAGMAS): Don't call
cpp_register_pragma if flag_preprocess_only.
* gcc.dg/gomp/preprocess-1.c: New test.
From-SVN: r132703
GCC Administrator [Wed, 27 Feb 2008 00:17:49 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r132698
Joseph Myers [Tue, 26 Feb 2008 23:41:35 +0000 (23:41 +0000)]
* gcc.dg/bf-ms-attrib.c (main): Return 0.
From-SVN: r132692
Joseph Myers [Tue, 26 Feb 2008 23:40:46 +0000 (23:40 +0000)]
mmx-4.c (dump64_64): Use printf %I64 on MinGW.
* gcc.target/i386/mmx-4.c (dump64_64): Use printf %I64 on MinGW.
* gcc.target/i386/sse-6.c (dump128_64): Likewise.
From-SVN: r132691
Ralf Wildenhues [Tue, 26 Feb 2008 22:41:16 +0000 (22:41 +0000)]
re PR c/28800 (warning "ISO C forbids an empty source file" could be improved)
gcc/:
PR c/28800
* c-parser.c (c_parser_translation_unit): Warn for empty
translation unit, not empty source file.
gcc/testsuite/:
PR c/28800
* gcc.dg/empty-source-2.c: Adjust for warning message.
* gcc.dg/empty-source-3.c: Likewise.
* gcc.dg/pack-test-2.c: Adjust comment.
* gcc.dg/pragma-ep-2.c: Likewise.
* gcc.dg/pragma-re-2.c: Likewise.
* gcc.dg/va-arg-2.c: Likewise.
From-SVN: r132690
Tobias Burnus [Tue, 26 Feb 2008 22:33:35 +0000 (23:33 +0100)]
re PR fortran/35033 (Valid ASSIGNMENT(=) rejected)
2008-02-26 Tobias Burnus <burnus@net-b.de>
PR fortran/35033
* interface.c (check_operator_interface): Show better line for
* error
messages; fix constrains for user-defined assignment operators.
(gfc_extend_assign): Fix constrains for user-defined assignment
operators.
2008-02-26 Tobias Burnus <burnus@net-b.de>
PR fortran/35033
* gfortran.dg/assignment_2.f90: New.
From-SVN: r132689
Paul Brook [Tue, 26 Feb 2008 22:21:08 +0000 (22:21 +0000)]
arm.c (thumb_set_frame_pointer): Ensure SP is first operand for Thumb-2.
2008-02-26 Paul Brook <paul@codesourcery.com>
* config/arm/arm.c (thumb_set_frame_pointer): Ensure SP is first
operand for Thumb-2.
* config/arm/arm.h (reg_class): Add CORE_REGS.
(REG_CLASS_NAMES, REG_CLASS_CONTENTS): Ditto.
(BASE_REG_CLASS): Use CORE_REGS.
(PREFERRED_RELOAD_CLASS): Add STACK_REG.
(REGNO_MODE_OK_FOR_REG_BASE_P): Use REGNO_MODE_OK_FOR_BASE_P.
(REGNO_OK_FOR_INDEX_P): Exclude SP.
(ARM_REG_OK_FOR_INDEX_P): Always define. Use
ARM_REGNO_OK_FOR_INDEX_P.
(ARM_PRINT_OPERAND_ADDRESS): Swap operands for [reg, sp].
* config/arm/arm.md (arm_addsi3, thumb1_addsi3, arm_subsi3_insn,
arm_movsi_insn, thumb1_movsi_insni, stack_tie): Add "k" alternatives.
(ldm/stm peepholes): Ditto.
* config/arm/thumb2.md (thumb2_movdi): Add "k" alternatives.
* config/arm/vfp.md (arm_movsi_vfp, thumb2_movsi_vfp): Ditto.
* config/arm/iwmmxt.md (iwmmxt_movsi_insn): Ditto.
* config/arm/constraints.md: Enable "k" constraint on ARM.
From-SVN: r132687
Ben Elliston [Tue, 26 Feb 2008 20:10:40 +0000 (20:10 +0000)]
rs6000.c: Annotate cache line size field in all instances of struct processor_costs.
* config/rs6000/rs6000.c: Annotate cache line size field in all
instances of struct processor_costs.
From-SVN: r132685
David Edelsohn [Tue, 26 Feb 2008 19:21:21 +0000 (19:21 +0000)]
dbgcnt.def (cfg_cleanup, [...]): New counters.
* dbgcnt.def (cfg_cleanup, cprop1, cprop2, dce_fast, dce_ud, dse1,
dse2, gcse, if_conversion, if_after_combine, if_after_reload,
jump_bypass): New counters.
* cfgcleanup.c (cleanup_cfg): Add dbg_cnt.
* dce.c (gate_ud_dce): Same.
(gate_fast_dce): Same.
* dse.c (gate_dse1): New function.
(gate_dse2): New function.
(gate_dse): Merge results of new gate functions.
* gcse.c (gcse_main): Bracket cprop1 and cprop2 with dbg_cnt.
(gate_handle_jump_bypass): Add dbg_cnt.
(gate_handle_gcse): Add dbg_cnt.
* ifcvt.c (gate_handle_if_conversion): Same.
(gate_handle_if_after_combine): Same.
(gate_handle_if_after_reload): Same.
* Makefile.in: Add DBGCNT_H to cfgcleanup.o and ifcvt.o.
From-SVN: r132684
Edmar Wienskoski [Tue, 26 Feb 2008 19:14:00 +0000 (19:14 +0000)]
rs6000.c (processor_costs): Update e300 cache line sizes.
2008-02-26 Edmar Wienskoski <edmar@freescale.com>
* config/rs6000/rs6000.c (processor_costs): Update e300 cache
line sizes.
* doc/invoke.texi: Add e300c2 and e300c3 to list of cpus.
From-SVN: r132683
H.J. Lu [Tue, 26 Feb 2008 18:43:25 +0000 (10:43 -0800)]
Add missing ChangeLog entries.
From-SVN: r132682
Jason Merrill [Tue, 26 Feb 2008 18:09:02 +0000 (13:09 -0500)]
re PR c++/35315 (ICE with attribute transparent_union)
PR c++/35315
* attribs.c (decl_attributes): Leave ATTR_FLAG_TYPE_IN_PLACE
alone if it's the naming decl for the type's main variant.
* cp/decl.c (grokdeclarator): Allow a typedef of an unnamed struct
to name the struct for linkage purposes even if it has attributes.
(start_decl): In that case, set ATTR_FLAG_TYPE_IN_PLACE.
From-SVN: r132681
Richard Sandiford [Tue, 26 Feb 2008 16:52:00 +0000 (16:52 +0000)]
nest-align-1.x: Delete.
gcc/testsuite/
* gcc.c-torture/execute/nest-align-1.x: Delete.
From-SVN: r132680
Tom Tromey [Tue, 26 Feb 2008 16:05:24 +0000 (16:05 +0000)]
system.h (USE_MAPPED_LOCATION): Poison.
gcc
* system.h (USE_MAPPED_LOCATION): Poison.
* Makefile.in (GTFILES): Put CPP_ID_DATA_H first.
* tree-cfg.c (make_cond_expr_edges): Remove old location code.
(make_goto_expr_edges): Likewise.
(remove_bb): Likewise.
(execute_warn_function_return): Likewise.
* basic-block.h (struct edge_def) <goto_locus>: Change type to
location_t.
* c-common.c (fname_decl): Remove old location code.
* tree-vect-transform.c (vect_finish_stmt_generation): Remove old
location code.
* rtl.h (ASM_OPERANDS_SOURCE_LOCATION): Remove old-location
variant.
(ASM_INPUT_SOURCE_LOCATION): Likewise.
(gen_rtx_ASM_INPUT): Likewise.
(gen_rtx_ASM_INPUT_loc): Likewise.
(get_rtx_asm_OPERANDS): Remove.
* cfglayout.c (insn_locators_alloc): Remove old location code.
(set_curr_insn_source_location): Likewise.
(curr_insn_locator): Likewise.
* print-tree.c (print_node): Remove old location code.
* tree-mudflap.c (mf_varname_tree): Remove old location code.
(mf_file_function_line_tree): Remove test of USE_MAPPED_LOCATION.
* cfgexpand.c (expand_gimple_cond_expr): Don't use
location_from_locus.
(construct_exit_block): Remove old location code.
* emit-rtl.c (force_next_line_note): Remove old location code.
* profile.c (branch_prob): Remove old location code.
* tree-vectorizer.h (LOC, UNKNOWN_LOC, EXPR_LOC, LOC_FILE,
LOC_LINE): Remove old-location variants.
* langhooks.c (lhd_print_error_function): Remove old location
code.
* configure, config.in: Rebuilt.
* configure.ac (--enable-mapped-location): Remove.
* c-decl.c (c_init_decl_processing): Remove old location code.
(finish_function): Likewise.
* recog.c (decode_asm_operands): Remove old location code.
* c-pch.c (c_common_read_pch): Remove old location code.
* rtl.def (ASM_INPUT, ASM_OPERANDS): Remove old location
variants.
* gimple-low.c (lower_function_body): Remove old location code.
* toplev.c (unknown_location): Remove.
(push_srcloc): Remove old-location variant.
(process_options): Remove old location code.
(lang_dependent_init): Likewise.
* input.h (UNKNOWN_LOCATION): Move definition.
(location_t): Undeprecate.
(source_locus): Remove.
(location_from_locus): Remove.
(struct location_s): Remove.
Remove all old-location code.
(input_line, input_filename): Remove.
* final.c (final_scan_insn): Remove old location code.
* diagnostic.c (diagnostic_build_prefix): Remove
USE_MAPPED_LOCATION test.
* tree.h (gimple_stmt) <locus>: Now a location_t.
(tree_exp) <locus>: Likewise.
(DECL_IS_BUILTIN): Remove old-location variant.
(annotate_with_file_line, annotate_with_locus): Likewise.
(expr_locus, set_expr_locus): Update.
* tree.c (build1_stat): Remove old location code.
(last_annotated_node): Remove.
(annotate_with_file_line): Remove old-location variant.
(annotate_with_locus): Likewise.
(expr_location): Remove old location code.
(set_expr_location): Likewise.
(expr_has_location): Likewise.
(expr_locus): Likewise.
(set_expr_locus): Likewise.
(expr_filename): Don't use location_from_locus.
(expr_lineno): Likewise.
* rtl-error.c (location_for_asm): Remove old location code.
* c-lex.c (cb_line_change): Remove old location code.
(fe_file_change): Likewise.
(cb_def_pragma): Likewise.
(c_lex_with_flags): Likewise.
* gengtype.c (do_typedef): Don't special-case location types.
(define_location_structures): Remove.
(main): Don't call define_location_structures.
* tree-pretty-print.c (dump_implicit_edges): Remove old location
code.
gcc/ada
* misc.c (internal_error_function): Remove test of
USE_MAPPED_LOCATION.
* trans.c (gigi): Remove test of USE_MAPPED_LOCATION.
(Sloc_to_locus): Remove old location code.
gcc/cp
* parser.c (eof_token): Remove old location code.
(check_empty_body): Remove test of USE_MAPPED_LOCATION.
* decl2.c (generate_ctor_or_dtor_function): Remove old location
code.
(cp_write_global_declarations): Likewise.
* lex.c (cxx_init): Remove old location code.
(handle_pragma_implementation): Remove test of
USE_MAPPED_LOCATION.
* pt.c (tsubst): Remove old location code.
* error.c (cp_print_error_function): Remove test of
USE_MAPPED_LOCATION.
* decl.c (pop_label): Remove old location code.
(finish_function): Likewise.
gcc/fortran
* trans-io.c (set_error_locus): Remove old location code.
* trans-decl.c (gfc_set_decl_location): Remove old location code.
* f95-lang.c (gfc_init): Remove test of USE_MAPPED_LOCATION.
* scanner.c (gfc_gobble_whitespace): Remove old location code.
(get_file): Likewise.
(preprocessor_line): Likewise.
(load_file): Likewise.
(gfc_new_file): Likewise.
* trans.c (gfc_trans_runtime_check): Remove old location code.
(gfc_get_backend_locus): Likewise.
(gfc_set_backend_locus): Likewise.
* data.c (gfc_assign_data_value): Remove old location code.
* error.c (show_locus): Remove old location code.
* gfortran.h (gfc_linebuf): Remove old location code.
(gfc_linebuf_linenum): Remove old-location variant.
gcc/java
* lang.c (java_post_options): Remove conditional.
* expr.c (expand_byte_code): Remove old location code.
* jcf-parse.c (set_source_filename): Remove old location code.
(give_name_to_class): Likewise.
(jcf_parse): Likewise.
(duplicate_class_warning): Likewise.
(parse_class_file): Likewise.
(java_parse_file): Likewise.
* decl.c (finish_method): Remove old location code.
* class.c (push_class): Remove old location code.
gcc/objc
* objc-act.c (objc_init): Remove old location code.
gcc/treelang
* tree1.c (treelang_init): Remove old location code.
(treelang_parse_file): Likewise.
* lex.l (LINEMAP_POSITION_FOR_COLUMN): Remove.
(update_lineno_charno): Remove old location code.
From-SVN: r132679
Manuel López-Ibáñez [Tue, 26 Feb 2008 14:16:13 +0000 (14:16 +0000)]
re PR tree-optimization/26264 (Extraneous warning with __builtin_stdarg_start and optimization)
2008-02-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 26264
* builtins.def (BUILT_IN_STDARG_START): Remove.
* builtins.c (expand_builtin): Remove BUILT_IN_STDARG_START.
* tree-stdarg.c (execute_optimize_stdarg): Likewise.
* tree-inline.c (inline_forbidden_p_1): Likewise.
cp/
* call.c (magic_varargs_p): Remove BUILT_IN_STDARG_START.
testsuite/
*
20021023-1.c: Use __builtin_va_start instead of
__builtin_stdarg_start.
* pr17301-1.c: Likewise.
* pr17301-2.c: Likewise.
From-SVN: r132677
Richard Guenther [Tue, 26 Feb 2008 14:05:42 +0000 (14:05 +0000)]
tree-flow.h (uid_decl_map_hash, [...]): Move ...
2008-02-26 Richard Guenther <rguenther@suse.de>
* tree-flow.h (uid_decl_map_hash, uid_decl_map_eq): Move ...
* tree.h (uid_decl_map_hash, uid_decl_map_eq): ... here.
(lookup_decl_from_uid): Declare.
(remove_decl_from_map): Likewise.
* tree-ssa.c (uid_decl_map_eq, uid_decl_map_hash): Move ...
* tree.c (uid_decl_map_eq, uid_decl_map_hash): ... here.
(decl_for_uid_map): New global hashtable mapping DECL_UID
to the decl tree.
(init_ttree): Allocate it.
(insert_decl_to_uid_decl_map): New helper function.
(make_node_stat): Insert new decls into the map.
(copy_node_stat): Likewise.
(lookup_decl_from_uid): New function.
(remove_decl_from_map): Likewise.
(print_decl_for_uid_map_statistics): New helper.
(dump_tree_statistics): Call it.
cp/
* decl.c (duplicate_decls): Remove decl from global mapping
before ggc_freeing it.
* tree-flow.h (struct gimple_df): Make referenced_vars a bitmap.
(referenced_var_iterator): Adjust.
(FOR_EACH_REFERENCED_VAR): Adjust.
(FOR_EACH_REFERENCED_VAR_IN_BITMAP): New iterator.
(num_referenced_vars): Adjust.
* tree-flow-inline.h (gimple_referenced_vars): Adjust.
(first_referenced_var): Remove.
(end_referenced_vars_p): Likewise.
(next_referenced_var): Likewise.
(referenced_var_iterator_set): New helper function.
* tree-dfa.c (referenced_var_lookup): Adjust.
(referenced_var_check_and_insert): Likewise.
(remove_referenced_var): Likewise.
* tree-ssa.c (verify_flow_insensitive_alias_info): Use
FOR_EACH_REFERENCED_VAR_IN_BITMAP.
(verify_call_clobbering): Likewise.
(verify_memory_partitions): Likewise.
(init_tree_ssa): Allocate bitmap instead of hashtable for
referenced_vars.
(delete_tree_ssa): Adjust.
* tree-ssa-alias.c (mark_aliases_call_clobbered): Use
FOR_EACH_REFERENCED_VAR_IN_BITMAP.
(compute_tag_properties): Likewise.
(set_initial_properties): Likewise.
(find_partition_for): Likewise.
(update_reference_counts): Likewise.
(dump_may_aliases_for): Likewise.
* tree-ssa-operands.c (add_virtual_operand): Likewise.
(add_call_clobber_ops): Likewise.
(add_call_read_ops): Likewise.
(get_asm_expr_operands): Likewise.
* tree-into-ssa.c (dump_decl_set): Likewise.
(update_ssa): Likewise.
* tree-sra.c (scan_function): Likewise.
(decide_instantiations): Likewise.
(scalarize_parms): Likewise.
* tree-ssa-alias-warnings.c (build_reference_table): Likewise.
(dsa_named_for): Likewise.
* tree-ssa-structalias.c (update_alias_info): Likewise.
(merge_smts_into): Likewise.
From-SVN: r132676
Manuel López-Ibáñez [Tue, 26 Feb 2008 14:04:09 +0000 (14:04 +0000)]
re PR c/34351 (Please get us the "volatile register" warning back)
2008-02-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 34351
* doc/invoke.texi (-Wall): Add -Wvolatile-register-var.
* c-opts.c (c_common_handle_option): Wall enables
Wvolatile-register-var.
* common.opt: Move Wvolatile-register-var to...
* c.opt: ...here.
testsuite/
* gcc.dg/pr34351.c: New.
From-SVN: r132675
Manuel López-Ibáñez [Tue, 26 Feb 2008 14:01:02 +0000 (14:01 +0000)]
common.opt (Wlarger-than=): New.
2008-02-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* common.opt (Wlarger-than=): New.
* doc/invoke.texi (Warning Options): Replace -Wlarger-than- with
-Wlarger-than=.
* opts.c (common_handle_option): Handle -Wlarger-than=.
* optc-gen.awk: Likewise.
* opth-gen.awk: Likewise.
* stor-layout.c (layout_decl): Use -Wlarger-than= for warning.
* tree-optimize.c (tree_rest_of_compilation): Likewise.
testsuite/
* gcc.dg/Wlarger-than2.c: New.
From-SVN: r132674
Thiemo Seufer [Tue, 26 Feb 2008 11:41:01 +0000 (11:41 +0000)]
Makefile.in ($(srcdir)/config.in): Depend on configure.ac.
From-SVN: r132670
Paolo Carlini [Tue, 26 Feb 2008 10:09:43 +0000 (10:09 +0000)]
re PR c++/35323 (ICE calling functions with fixed-point type parameter)
/cp
2008-02-26 Paolo Carlini <pcarlini@suse.de>
PR c++/35323
* name-lookup.c (arg_assoc_type): Handle FIXED_POINT_TYPE.
/testsuite
2008-02-26 Paolo Carlini <pcarlini@suse.de>
PR c++/35323
* g++.dg/lookup/crash7.C: New.
From-SVN: r132669
Kaz Kojima [Tue, 26 Feb 2008 01:53:08 +0000 (01:53 +0000)]
nest-align-1.c: Use the largest alignment.
* gcc.c-torture/execute/nest-align-1.c: Use the largest alignment.
From-SVN: r132665
Joseph Myers [Tue, 26 Feb 2008 01:38:34 +0000 (01:38 +0000)]
* gcc.target/i386/pr25993.c: Skip on *-*-mingw*.
From-SVN: r132663
Joseph Myers [Tue, 26 Feb 2008 01:03:50 +0000 (01:03 +0000)]
* gcc.dg/debug/dwarf2/aranges-fnsec-1.c: Add -w to dg-options.
From-SVN: r132661
GCC Administrator [Tue, 26 Feb 2008 00:17:44 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r132659
Joseph Myers [Tue, 26 Feb 2008 00:13:01 +0000 (00:13 +0000)]
builtins-config.h: Disable C99 runtime testing for Windows.
* gcc.dg/builtins-config.h: Disable C99 runtime testing for
Windows.
From-SVN: r132652
Joseph Myers [Tue, 26 Feb 2008 00:12:03 +0000 (00:12 +0000)]
target-supports.exp (check_profiling_available): Report -p unavailable on *-*-mingw*.
* lib/target-supports.exp (check_profiling_available): Report -p
unavailable on *-*-mingw*.
From-SVN: r132651
Joseph Myers [Tue, 26 Feb 2008 00:11:06 +0000 (00:11 +0000)]
target-supports.exp (check_effective_target_pthread_h): New.
* lib/target-supports.exp (check_effective_target_pthread_h): New.
* gcc.dg/pthread-init-1.c, gcc.dg/pthread-init-2.c: Use
dg-require-effective-target pthread_h.
From-SVN: r132650