PR libfortran/31286
PR libfortran/31296
* intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
* intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
array structures we pass to unpack_internal.
From-SVN: r123944
* tree-vect-analyze.c (process_use): New function.
(vect_mark_stmts_to_be_vectorized): Factor out code to process_use.
Check phis in all bbs.
* tree-vectorizer.c (vect_is_simple_use): Remove a no longer relavant
assert.
From-SVN: r123943
2007-04-17 Joseph Myers <joseph@codesourcery.com>
Richard Sandiford <richard@codesourcery.com>
* lib/target-supports.exp (check_profiling_available): Return 0
for uClibc with -p or -pg.
Co-Authored-By: Richard Sandiford <richard@codesourcery.com>
From-SVN: r123938
2007-04-17 Francis Kung <fkung@redhat.com>
PR classpath/31311
* gnu/java/awt/peer/gtk/ComponentGraphics.java
(dispose): Removed method.
(disposeSurface): Removed method.
* gnu_java_awt_peer_gtk_ComponentGraphics.h: Regenerated.
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
(Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface): Removed.
(Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState): Destroy surface
after it is used to create a cairo context.
From-SVN: r123928
* trans-types.h (gfc_packed): New enum.
(gfc_get_nodesc_array_type): Change prototype to use new enum.
* trans-types.c (gfc_get_nodesc_array): Use gfc_packed for
argument packed. Adapt all references to values accordingly.
(gfc_sym_type): Use enum values in call to gfc_get_nodesc_array.
(gfc_get_derived_type): Likewise.
* trans-array.c (gfc_build_constant_array_constructor): Likewise.
* trans-expr.c (gfc_get_interface_mapping_charlen): Changed packed
argument to type gfc_packed.
(gfc_add_interface_mapping): Use enum values in call to
gfc_get_interface_mapping.
* trans-decl.c (gfc_build_dummy_array_decl): Adapt to use enum
values when determining packing.
From-SVN: r123924
* trans-decl.c (gfc_finish_decl): Remove unused second argument
'init'. Simplify code accordingly. Remove calls to
gfc_fatal_error in favor of gcc_assert.
(create_function_arglist): Remove second argument from calls to
gfc_finish-decl.
(gfc_trans_dummy_character): Likewise.
From-SVN: r123917
* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): Force TDmode
regnos into even/odd register pairs.
* config/rs6000/rs6000.h [SLOW_UNALIGNED_ACCESS]: Treat DDmode and
TDmode similar to the other floating point modes.
[SECONDARY_MEMORY_NEEDED]: Treat DDmode similar to DFmode.
* config/rs6000/dfp.md (negdd2, absdd2, negtd2, abstd2): New
define_expand's.
(negdd2_fpr, absdd2_fpr, nabsdd2_fpr, negtd2_fpr, abstd2_fpr,
nabstd2_fpr, movdd_hardfloat64_mfpgpr): New define_insn's.
(movdd_hardfloat64): Use TARGET_MFPGPR.
From-SVN: r123916
* gcc.misc-tests/linkage.exp: Do not run on remote hosts.
* lib/compat.exp (compat-run): Use file_on_host, not remote_file
build.
(compat-execute): Likewise.
* lib/copy-file.exp (gcc_copy_files): Use remote_download to copy
files to remote hosts.
* lib/c-ctorture.exp (c-torture-compile): Likewise.
(c-torture-execute): Likewise.
* lib/dg-pch.exp (dg-pch): Use file_on_host, not remote_file build
or plain file. Use remote_upload and remote_download to copy
files about.
* lib/scanasm.exp (dg-scan): Upload the file from the remote host
before scanning it.
From-SVN: r123914
* tree-vectorizer.h (stmt_vec_info_type): Add enum value
induc_vec_info_type.
(vectorizable_induction): New function declaration.
* tree-vect-transform.c (get_initial_def_for_induction): No need to
check if already vectorized. Find first place in BB where new stmts
can be inserted. Takes only one argument.
(vectorizable_induction): New function.
(vect_transform_stmt): Add case for induc_vec_info_type to call
vectorizable_induction.
(vect_transform_loop): Consider phis for vectorization.
* tree-vect-analyze.c (vect_determine_vectorization_factor): Simplify
condition.
(analyze_operations): Call vectorizable_induction when analyzing phis.
Fix comment.
(vect_mark_stmts_to_be_vectorized): Remove redundant checks.
(vect_mark_relevant): Include phis in relevance analysis.
(vect_mark_stmts_to_be_vectorize): Likewise.
* tree-vect-patterns.c (widened_name_p): Remove obsolete asserts.
From-SVN: r123910
./: * doc/invoke.texi (Debugging Options): Add documentation for the
-femit-struct-debug options -femit-struct-debug-baseonly,
-femit-struct-debug-reduced, and
-femit-struct-debug-detailed[=...].
* c-opts.c (c_common_handle_option): Add
OPT_femit_struct_debug_baseonly, OPT_femit_struct_debug_reduced,
and OPT_femit_struct_debug_detailed_.
* c.opt: Add specifications for
-femit-struct-debug-baseonly, -femit-struct-debug-reduced,
and -femit-struct-debug-detailed[=...].
* opts.c (set_struct_debug_option): Parse the
-femit-struct-debug-... options.
* opts.c (matches_main_base, main_input_basename,
main_input_baselength, base_of_path, matches_main_base): Add
variables and functions to compare header base name to compilation
unit base name.
* opts.c (should_emit_struct_debug): Add to determine to emit a
structure based on the option.
(dump_struct_debug) Also disabled function to debug this
function.
* opts.c (handle_options): Save the base name of the
compilation unit.
* langhooks-def.h (LANG_HOOKS_GENERIC_TYPE_P): Define.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add.
This hook indicates if a type is generic. Set it by default
to "never generic".
* langhooks.h (struct lang_hooks_for_types): Add a new hook
to determine if a struct type is generic or not.
* cp/cp-tree.h (class_tmpl_impl_spec_p): Declare a C++ hook.
* cp/tree.c (class_tmpl_impl_spec_p): Implement the C++ hook.
* cp/cp-lang.c (LANG_HOOKS_GENERIC_TYPE_P): Override null C hook
with live C++ hook.
* flags.h (enum debug_info_usage): Add an enumeration to describe
a program's use of a structure type.
* dwarf2out.c (gen_struct_or_union_type_die): Add a new parameter
to indicate the program's usage of the type. Filter structs based
on the -femit-struct-debug-... specification.
(gen_type_die): Split into two routines, gen_type_die and
gen_type_die_with_usage. gen_type_die is now a wrapper
that assumes direct usage.
(gen_type_die_with_usage): Replace calls to gen_type_die
with gen_type_die_with_usage adding the program usage of
the referenced type.
(dwarf2out_imported_module_or_decl): Suppress struct debug
information using should_emit_struct_debug when appropriate.
testsuite/:
* g++.dg/other/fesd-any.C: Test -femit-struct-debug-detailed=any.
* g++.dg/other/fesd-any.h: Test -femit-struct-debug-detailed=any.
* g++.dg/other/fesd-baseonly.C: Test -femit-struct-debug-baseonly.
* g++.dg/other/fesd-baseonly.h: Test -femit-struct-debug-baseonly.
* g++.dg/other/fesd-none.C: Test -femit-struct-debug-detailed=none.
* g++.dg/other/fesd-none.h: Test -femit-struct-debug-detailed=none.
* g++.dg/other/fesd-reduced.C: Test -femit-struct-debug-reduced.
* g++.dg/other/fesd-reduced.h: Test -femit-struct-debug-reduced.
* g++.dg/other/fesd-sys.C: Test -femit-struct-debug-detailed=sys.
* g++.dg/other/fesd-sys.h: Test -femit-struct-debug-detailed=sys.
* g++.dg/other/fesd.h: Common to -femit-struct-debug-... tests.
* gcc.dg/fesd-any.c: Test -femit-struct-debug-detailed=any.
* gcc.dg/fesd-any.h: Test -femit-struct-debug-detailed=any.
* gcc.dg/fesd-baseonly.c: Test -femit-struct-debug-baseonly.
* gcc.dg/fesd-baseonly.h: Test -femit-struct-debug-baseonly.
* gcc.dg/fesd-none.c: Test -femit-struct-debug-detailed=none.
* gcc.dg/fesd-none.h: Test -femit-struct-debug-detailed=none.
* gcc.dg/fesd-reduced.c: Test -femit-struct-debug-reduced.
* gcc.dg/fesd-reduced.h: Test -femit-struct-debug-reduced.
* gcc.dg/fesd-sys.c: Test -femit-struct-debug-detailed=sys.
* gcc.dg/fesd-sys.h: Test -femit-struct-debug-detailed=sys.
* gcc.dg/fesd.h: Common to -femit-struct-debug-... tests.
From-SVN: r123909
./: PR tree-optimization/31522
* tree-vrp.c (vr_phi_edge_counts): New static variable.
(vrp_initialize): Allocate vr_phi_edge_counts.
(vrp_visit_phi_node): Don't push to infinity if we saw a new
executable edge. Drop test for all constants.
(vrp_finalize): Free vrp_phi_edge_counts.
testsuite/:
PR tree-optimization/31522
* gcc.dg/Wstrict-overflow-16.c: New test.
From-SVN: r123908
PR fortran/31144
fortran/
* decl.c (gfc_sym_mangled_identifier): Use capital letters in name
mangling.
(gfc_sym_mangled_function_id): Likewise.
testsuite/
* gfortran.dg/module_naming_1.f90: New.
From-SVN: r123904
2007-04-16 Matthias Klose <doko@debian.org>
* configure.tgt (i[456]86-*-linux*): Only add ia32 specific
flags if not building with -m64.
* testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
flag for i?86-*-* targets, if current target matches -m64.
From-SVN: r123887
* config/m68k/m68k.h (LONG_DOUBLE_TYPE_SIZE): Change to 64 on
TARGET_FIDOA.
(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Change to 64 if __mfido__ is
defined.
From-SVN: r123884
gcc/ChangeLog:
2007-04-16 Seongbae Park <seongbae.park@gmail.com>
PR c++/29365
* cp/decl2.c (constrain_class_visibility):
Do not warn about the use of anonymous namespace in the main input file.
gcc/testsuite/ChangeLog:
2007-04-16 Seongbae Park <seongbae.park@gmail.com>
PR c++/29365
Testcase for c++ anonymous namespace warning
* g++.dg/warn/anonymous-namespace-1.C: New test
* g++.dg/warn/anonymous-namespace-1.h: New test
From-SVN: r123879
2007-04-16 Andrew Haley <aph@redhat.com>
* java/io/ObjectInputStream.java: (parseContent): Call (String,
Object) version of dumpElementln.
(dumpElementln(String, Object)): New method.
* java/io/ObjectOutputStream.java (writeObject): Call (String,
Object) version of dumpElementln.
(dumpElementln(String, Object)): New method.
From-SVN: r123875
PR middle-end/28071
* sched-int.h (struct deps): Split field 'pending_lists_length' into
'pending_read_list_length' and 'pending_write_list_length'. Update
comment.
* sched-deps.c (add_insn_mem_dependence): Change signature. Update
to handle two length counters instead of one. Update all uses.
(flush_pending_lists, sched_analyze_1, init_deps): Update to handle
two length counters instead of one.
* sched-rgn.c (propagate_deps): Update to handle two length counters
instead of one.
From-SVN: r123874
* javax/management/ObjectName.java:
(parse(String)): Catch multiple wildcards,
initialise with an empty string (so null isn't
appended), and emit comma even when wildcard
ends the list.
(checkComponents()): Catch newlines.
(quote(String)): Handle newlines and quotes
correctly.
From-SVN: r123873
2007-04-16 Andrew Haley <aph@redhat.com>
* gnu/gcj/runtime/BootClassLoader.java (getBootURLLoader): New
method.
(bootGetResource): Use getBootURLLoader() to load resources.
(bootGetResources): Likewise.
* java/lang/reflect/natMethod.cc (Method::invoke): In invoke also
check that the method's declaring class is accessible.
From-SVN: r123867
2007-04-16 H.J. Lu <hongjiu.lu@intel.com>
PR target/31582
* config/i386/i386.c (ix86_expand_vec_set_builtin): Make a
copy of source, pass it to ix86_expand_vector_set and return
it as target.
From-SVN: r123866