PR fortran/13415
* trans-common.c (calculate_length): Remove ...
(get_segment_info): Merge into here. Save field type.
(build_field): Use saved type.
(create_common, new_condition, new_segment, finish_equivalences):
Use new get_segment_info.
* trans-types.c: Update comment.
testsuite
* gfortran.dg/common_pointer_1.f90: New test.
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r84439
2004-07-09 Bryce McKinlay <mckinlay@redhat.com>
* java.util.Calendar.java (cache): New private static field. Cached
mappings of locales->calendar classes.
(ctorArgTypes): New private static field. Singleton argument for
calendar class constructor lookup.
(getInstance): Cache Locale->Calendar class mappings using HashMap.
Optimize by bypassing reflection instantiation for the
GregorianCalendar case.
From-SVN: r84438
2004-07-09 Bryce McKinlay <mckinlay@redhat.com>
* java/util/ResourceBundle.java (bundleCache): Renamed from
resourceBundleCache. Update comments.
(getObject): Don't catch MissingResourceException.
(getBundle(String)): Remove 'final'. Use system classloader if
getCallingClassLoader returned null.
(getBundle(String, Locale)): Likewise.
(BundleKey): New private class. HashMap key for bundle cache lookup.
(lookupKey): New. Singleton instance of BundleKey.
(nullEntry): New. Cache entry to represent failed lookups.
(getBundle(String, Locale, ClassLoader)): Re-written to use new
caching strategy, no-allocation lookup, and new tryBundle methods.
(tryBundle(String, ClassLoader)): New. Load a locale-qualified
bundle name using given classloader.
(tryBundle(String, Locale, ClassLoader, boolean): New. Qualify
baseName for given Locale and attempt to load bundle.
From-SVN: r84434
2004-07-10 Kelley Cook <kcook@gcc.gnu.org>
* flags.h: Delete redundant prototypes that are being generated
in options.h from common.opt.
* common.opt: Add in the expository comments formerly in flags.h.
From-SVN: r84432
* config/i386/i386.c (init_cumulative_args): Set mmx/sse registers
available for use only when TARGET_MMX/_SSE is set, and check for
variable argument function if any register count is non-zero.
(function_arg): Correctly suppress repeated warnings for passing SSE
vectors are arguments without SSE enabled.
(ix86_function_arg_boundary): Without SSE enabled, the use of what
would be SSE register modes does no longer influence the alignment.
From-SVN: r84431
2004-07-09 David S. Miller <davem@nuts.davemloft.net>
* config/sparc/sparc.c (*_costs): Scale instruction costs
by COSTS_N_INSNS.
(sparc_rtx_costs): Adjust as appropriate.
From-SVN: r84429
2004-07-09 Bryce McKinlay <mckinlay@redhat.com>
Fix or remove some bogus test cases.
* testsuite/libjava.compile/pr10459_2.java: Removed.
* testsuite/libjava.compile/pr10459.java: Test using its own method,
not Object.clone().
* testsuite/libjava.compile/inner_data.java: Test against its own
protected field.
From-SVN: r84420
2004-07-09 Andrew Pinski <apinski@apple.com>
* objc/objc-act.c (build_module_descriptor): Mark UOBJC_MODULES_decl as
always referenced.
(synth_forward_declarations): Likewise for UOBJC_CLASS_decl and
UOBJC_METACLASS_decl.
From-SVN: r84419
PR target/16364
* config/ia64/ia64.c (ia64_function_arg): For a single element HFA,
do return a parallel if hfa_mode == XFmode and mode == TImode.
* gcc.c-torture/compile/20040709-1.c: New.
From-SVN: r84416
2004-07-02 David S. Miller <davem@nuts.davemloft.net>
* config/sparc/sparc.h (processor_costs): Define.
(sparc_costs): Declare.
* config/sparc/sparc.c (cypress_costs, supersparc_costs,
hypersparc_costs, sparclet_costs, ultrasparc_costs,
ultrasparc3_costs): New.
(sparc_override_options): Set sparc_costs as appropriate.
(sparc_rtx_costs): Use sparc_costs instead of messy
conditionals.
From-SVN: r84414
* config/i386/i386.c (classify_argument): Treat V1xx modes the same as
their base modes. CTImode, TCmode, and XCmode must be passed in memory.
TFmode (__float128) must be is an SSE/SSEUP pair. V2SImode, V4HImode,
and V8QI are class SSE. All sufficiently small remaining vector modes
must be passed in one or two integer registers.
(ix86_libcall_value): TFmode must be returned in xmm0, XCmode must be
returned in memory.
(bdesc_2arg, ix86_init_mmx_sse_builtins): __builtin_ia32_pmuludq and
__builtin_ia32_pmuludq128 have non-uniform argument and return types
and must thus be handled explicitly.
* config/i386/i386.md (*movdi_1_rex64): Add cases for moving between
MMX and XMM regs.
(movv8qi_internal, movv4hi_internal, movv2si_internal,
movv2sf_internal): Permit moving between MMX and XMM registers (since
MMX areguments and return values are passed in XMM registers).
(sse2_umulsidi3): Correct type and mode.
From-SVN: r84410
2004-07-09 Zack Weinberg <zack@codesourcery.com>
Andrew Pinski <apinski@apple.com>
* c-opts.c (c_common_post_options): Force unit-at-a-time mode
on when we have more than one input file.
(c_common_parse_file): Restore loop over all input files.
Clarify diagnostic for -dy when YYDEBUG wasn't defined.
* c-decl.c (set_type_context): New function.
(pop_scope): Use it to set context of types. When we
encounter a TYPE_DECL, set the context of the attached type too.
(pop_file_scope): Don't call cpp_undef_all here.
(diagnose_mismatched_decls): Do not complain about a second
definition of an 'extern inline' function if it's not in the
same translation unit. Do not complain about inline
declaration after use if the use was in a different
translation unit.
(merge_decls): Don't clobber olddecl's DECL_CONTEXT.
(pushdecl): Do not put DECL_EXTERNAL, !TREE_PUBLIC decls in
the external scope.
(pushdecl_top_level): Likewise.
(grokdeclarator): Clarify what is going on with setting
DECL_EXTERNAL on function types, a little.
(c_write_global_declarations): Don't do anything if
-fsyntax-only or errors have been encountered.
testsuite:
* gcc.dg/noncompile/init-4.c: Remove bogus dg-error marker.
From-SVN: r84402
PR fortran/13201
* resolve.c (resolve_symbol): Verify that the shape of a
parameter array is not only explicit, but also constant.
* array.c (gfc_is_compile_time_shape): New function.
* gfortran.h (gfc_is_compile_time_shape): Add prototype.
From-SVN: r84400
2004-07-09 Michael Koch <konqueror@gmx.de>
* scripts/unicode-muncher.pl: Updated to version 2.1
from GNU classpath. Added some clarifications on where to find the
needed files from www.unicode.org.
* gnu/gcj/convert/UnicodeCharacterDatabase-3.0.0.html,
gnu/gcj/convert/UnicodeData-3.0.0.txt:
Removed, these can directly be downloaded from www.unicode.org if
needed.
* gnu/java/lang/CharData.java: Regenerated.
* include/java-chartables.h: Regenerated.
* Makefile.am (ordinary_java_source_files):
Removed gnu/java/lang/CharData.java.
* Makefile.in: Regenerated.
From-SVN: r84399
2004-07-09 Frank Ch. Eigler <fche@redhat.com>
Test case for g++/15861
* testsuite/libmudflap.c++/ctors-[12].cxx: New test case halves.
* testsuite/libmudflap.c++/ctors.exp: Driver.
* testsuite/libmudflap.c++/c++frags.exp: Elide redundant default.
Look only for *frag* test cases.
From-SVN: r84392
* class.c (make_class): Do not create binfo here.
(set_super_info): Create it here.
* java-tree.h (CLASS_HAS_SUPER): Cope with lack of a binfo.
From-SVN: r84388
2004-07-09 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
Paul Brook <paul@codesourcery.com>
* gfortran.dg/dg.exp: Use revised wilcard for suffixes, also allow
'.f95' and '.F95'.
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r84384
2004-07-09 Michael Koch <konqueror@gmx.de>
* java/io/ObjectInputStream.java (readFields): Use long datatype
when shifting byte values more then 24 bits left.
From-SVN: r84382
2004-07-09 Michael Koch <konqueror@gmx.de>
* java/util/zip/DeflaterOutputStream.java,
java/util/zip/GZIPInputStream.java,
java/util/zip/GZIPOutputStream.java,
java/util/zip/InflaterInputStream.java:
Reformatted. Added javadocs. Reordered all stuff.
Renamed variables to be more clear.
From-SVN: r84380
Fix PR tree-optimization/15555
* tree-dfa.c (dump_variable): If the variable is a pointer
SSA_NAME, also dump its points-to information.
* tree-flow.h (struct ptr_info_def): Add field
is_dereferenced.
(dump_points_to_info_for): Declare.
(debug_points_to_info_for): Declare.
* tree-optimize.c (init_tree_optimization_passes): Add a
second alias analysis pass after DOM2.
Move pass_del_pta to a later spot.
* tree-ssa-alias.c (compute_points_to_and_addr_escape): Do not
create a name tags when we find a dereferenced pointer. Just
mark the pointer dereferenced.
(collect_points_to_info_for): Move code to clear points-to
information to create_name_tags.
(create_name_tags): New function.
(compute_flow_sensitive_aliasing): Call it.
(setup_pointers_and_addressables): Mark type tags for renaming
here instead of ...
(create_memory_tag): ... here.
(merge_pointed_to_info): Do not merge PT_MALLOC attributes.
(dump_points_to_info_for): Declare extern.
(debug_points_to_info_for): New function.
From-SVN: r84378