Commit Graph

65735 Commits

Author SHA1 Message Date
Tom Tromey
adfec6a67b re PR java/19921 (wrong argument count for invokeInterface with new multidimensional array)
gcc/java:
	PR java/19921:
	* jcf-write.c (generate_bytecode_insns) <CALL_EXPR>: Note the
	stack effect of multianewarray.

libjava:
	For PR java/19929:
	* testsuite/libjava.lang/PR19929.out: New file.
	* testsuite/libjava.lang/PR19929.java: New file.

From-SVN: r95041
2005-02-14 20:04:36 +00:00
Diego Novillo
9a06c1cb10 re PR tree-optimization/19853 (incorrect vops after exposing a new global variable)
PR tree-optimization/19853
	* tree-dfa.c (add_referenced_var): Always examine DECL_INITIAL.


testsuite/ChangeLog

	PR tree-optimization/19853
	* gcc.c-torture/compile/pr19853.c: New test.

From-SVN: r95040
2005-02-14 14:46:08 -05:00
Nathan Sidwell
f769035f7c re PR c++/19608 (ICE after friend function definition in local class)
cp:
	PR c++/19608
	* parser.c (cp_parser_late_parsing_for_member): Use
	current_function_decl as scope to push to and from.
testsuite:
	PR c++/19608
	* g++.dg/parse/local-class1.C: New.

From-SVN: r95036
2005-02-14 17:50:58 +00:00
Jason Merrill
6a720599bb re-apply fold_indirect_ref patch
From-SVN: r95024
2005-02-14 11:07:16 -05:00
Kazu Hirata
0c86d70907 passes.c (rest_of_handle_loop_optimize): Remove calls to delete_dead_jumptables and cleanup_cfg.
* passes.c (rest_of_handle_loop_optimize): Remove calls to
	delete_dead_jumptables and cleanup_cfg.

From-SVN: r95019
2005-02-14 15:13:24 +00:00
Ulrich Weigand
e88d55cd88 reload.c (find_reloads): Swap address_reloaded flags when swapping commutative operands.
* reload.c (find_reloads): Swap address_reloaded flags when
	swapping commutative operands.

From-SVN: r95018
2005-02-14 15:07:05 +00:00
Andrew Haley
891df09c56 re PR java/19907 (Incorrect code generated for ManifestElement.java)
2005-02-14  Andrew Haley  <aph@redhat.com>

        PR java/19907
        * expr.c (expand_byte_code): Call promote_arguments().
        (promote_arguments): New function.
        * decl.c (check_local_unnamed_variable): Remve special case for
        new verifier.
        (find_local_variable): Promote all boolean types to int
        when searching for local variable decls.

From-SVN: r95015
2005-02-14 14:58:22 +00:00
Anthony Green
d633cfe524 re PR libgcj/18116 (JNI uses dot instead of slash as the package separator)
2005-02-14  Anthony Green  <green@redhat.com>

        PR libgcj/18116
        * testsuite/libjava.jni/PR18116.c: New file.
        * testsuite/libjava.jni/PR18116.java: New file.
        * testsuite/libjava.jni/PR18116.out: New file.

From-SVN: r95014
2005-02-14 14:57:37 +00:00
Sebastian Pop
92d2b330de lambda-code.c (lambda_loopnest_to_gcc_loopnest, [...]): Use standard_iv_increment_position for computing the bsi position for create_iv.
* lambda-code.c (lambda_loopnest_to_gcc_loopnest, perfect_nestify):
	Use standard_iv_increment_position for computing the bsi position
	for create_iv.
	* tree-ssa-loop-manip.c (create_iv): Add a comment on how to compute
	the bsi position.

From-SVN: r95013
2005-02-14 14:54:37 +00:00
Kazu Hirata
31c3e63157 directives.c, [...]: Update copyright.
* directives.c, files.c, init.c, internal.h, macro.c, pch.c,
	traditional.c: Update copyright.

From-SVN: r95012
2005-02-14 14:43:56 +00:00
Anthony Green
f1b2b25ccf jni.cc (nathash_add): Don't strdup the method signature.
2005-02-13  Anthony Green  <green@redhat.com>

        * jni.cc (nathash_add): Don't strdup the method signature.
        (_Jv_JNI_RegisterNatives): Convert the slashes to dots in the
        method signature.
        Update copyright.

From-SVN: r95010
2005-02-14 13:51:29 +00:00
Nathan Sidwell
4230cec2f9 re PR c++/19884 (ICE on explicit instantiation of a non-template constructor)
cp:
	PR c++/19884
	* pt.c (check_explicit_specialization): Make sure namespace
	binding lookup found an overloaded function.
	(lookup_template_function): Just assert FNS is an overloaded
	function.

	PR c++/19895
	* decl.c (grokdeclarator): Check for error mark node in ptrmem
	construction.
testsuite:
	PR c++/19895
	* g++.dg/parse/ptrmem3.C: New.

	PR c++/19884
	* g++.old-deja/g++.oliva/template6.C: Add another case.
	* g++.dg/template/explicit6.C: New.

From-SVN: r95009
2005-02-14 13:45:42 +00:00
Alexandre Oliva
d1fc3bbd80 re PR c++/17816 (duplicate definition of pure virtual function not diagnosed)
gcc/cp/ChangeLog:
PR c++/17816
* decl.c (redeclaration_error_message): Report redefinition of
pure virtual function.
gcc/testsuite/ChangeLog:
PR c++/17816
* g++.dg/other/redecl2.C: New.

From-SVN: r95008
2005-02-14 12:01:15 +00:00
Zdenek Dvorak
af9ecd0ca0 re PR rtl-optimization/17428 (internal compiler error: in spill_failure, at reload1.c:1880 (-fspeculative-prefetching))
PR target/17428
	* cfgrtl.c (safe_insert_insn_on_edge): Avoid extending life range of hard
	registers.
	* value-prof.c (insn_prefetch_values_to_profile): Only scan normal insns.

	* value-prof.c (rtl_find_values_to_profile): Do not look for values to
	profile in libcalls.

From-SVN: r95007
2005-02-14 11:37:52 +00:00
Razya Ladelsky
09950393c3 add myself to MAINTAINERS file
From-SVN: r95006
2005-02-14 11:21:09 +00:00
Nathan Sidwell
12a669d1e1 re PR c++/19891 (Covariant returns are broken)
cp:
	PR c++/19891
	* class.c (build_simple_base_path): Build the component_ref
	directly.
	(update_vtable_entry_for_fn): Walk the covariant's binfo chain
	rather than using lookup_base.
	* search.c (dfs_walk_once): Add non-recursive assert check.
	* typeck.c (build_class_member_access_expr): It is possible for
	the member type to be both const and volatile.
testsuite:
	PR c++/19891
	* g++.dg/abi/covariant4.C: New.

From-SVN: r95005
2005-02-14 09:36:35 +00:00
Nathan Sidwell
90bb1c1f15 bitmap.h (bitmap_and_compl_into): Return bool.
* bitmap.h (bitmap_and_compl_into): Return bool.
	* bitmap.c (bitmap_and_compl_into): Return changed flag.

From-SVN: r95004
2005-02-14 09:24:41 +00:00
Paolo Bonzini
be0f1e5478 re PR bootstrap/19818 (GCC 4.0 cannot bootstrap itself)
include:
2005-02-08  Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/19818
	* ansidecl.h (PARAMS): Guard from redefinition.

libcpp:
2005-02-08  Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/19818
	* configure.ac: Check for declaration of basename and getopt.
	* config.in: Regenerate.
	* configure: Regenerate.
	* internal.h (ustrcspn): New.
	* macro.c (create_iso_definition): Fix allocation of memory.
	(padding_token): Add cast to remove const-ness.
	* pch.c (cpp_read_state): Use ustrcspn.

From-SVN: r95003
2005-02-14 08:52:24 +00:00
James A. Morrison
623049aa3c re PR tree-optimization/19944 (cris-elf testsuite failures: gcc.dg/pr15784-1.c, gcc.dg/pr15784-2.c)
2005-02-13  James A. Morrison  <phython@gcc.gnu.org>

       PR tree-optimization/19944
       * fold-const.c (fold): Re-add ABS_EXPR folding.

From-SVN: r95002
2005-02-14 02:27:18 +00:00
GCC Administrator
d9099901ad Daily bump.
From-SVN: r94999
2005-02-14 00:16:51 +00:00
David Edelsohn
de17c25fde re PR target/19019 (GCC ldouble format incompatibility with XLC long double)
PR target/19019
        * config/rs6000/aix.h ({TARGET,MASK}_XL_CALL): Rename to
        {TARGET,MASK}_XL_COMPAT.
        (SUBTARGET_SWITCHES): Rename xl-call to xl-compat.  Use
        MASK_XL_COMPAT.
        * config/rs6000/beos.h ({TARGET,MASK}_XL_CALL): Remove.
        * config/rs6000/rs6000.c (function_arg): Change TARGET_XL_CALL to
        TARGET_XL_COMPAT.
        (rs6000_arg_partial_bytes): Same.
        (rs6000_generate_compare): Generate PARALLEL for compare if TFmode
        and XL compatibility enabled.
        * config/rs6000/rs6000.h (TARGET_XL_CALL): Rename to TARGET_XL_COMPAT.
        * config/rs6000/rs6000.md (cmptf_internal1): Add !TARGET_XL_COMPAT
        test to final condition.
        (cmptf_internal2): New.
        * doc/invoke.texi (RS/6000 Subtarget Options): Change xl-call to
        xl-compat.  Add TFmode information to description.

From-SVN: r94991
2005-02-13 16:31:35 -05:00
Andrew Pinski
4fa0972f8e re PR ada/19942 (Stage 2 compilation of ali.adb causes GNAT bug box)
2005-02-13  Andrew Pinski  <pinskia@physics.uc.edu>

        PR ada/19942
        * utils.c (gnat_type_for_mode): Return null instead of ICE because we asked
        for an unknown mode.

From-SVN: r94989
2005-02-13 12:08:29 -08:00
Kazu Hirata
e04369acfe * flags.h, read-rtl.c, tree-ssa-live.h: Update copyright.
From-SVN: r94988
2005-02-13 19:05:03 +00:00
Jason Merrill
6b708a6bcd temporarily revert last changes
From-SVN: r94987
2005-02-13 12:10:47 -05:00
James A. Morrison
9e188dca09 treetree.c (tree_lang_type_for_mode): Return NULL_TREE for all non scalar integer types.
2005-02-13  James A. Morrison  <phython@gcc.gnu.org>

       * treetree.c (tree_lang_type_for_mode): Return NULL_TREE for all non
       scalar integer types.

From-SVN: r94986
2005-02-13 16:26:11 +00:00
Tobias Schlüter
1ac262625d trans-stmt.c (generate_loop_for_temp_to_lhs, [...]): Remove if whose condition is always true.
* trans-stmt.c (generate_loop_for_temp_to_lhs,
generate_loop_for_rhs_to_temp): Remove if whose condition is
always true.

From-SVN: r94985
2005-02-13 16:32:45 +01:00
Frank Ch. Eigler
81d8d0fa90 * typo fix
From-SVN: r94984
2005-02-13 12:58:28 +00:00
Frank Ch. Eigler
478cc36ff6 re PR libmudflap/19319 (Mudflap produce many violations on simple, correct c++ program)
2005-02-13  Frank Ch. Eigler  <fche@redhat.com>

	PR mudflap/19319
	* testsuite/libmudflap.c++/pass55-frag.c: New test.

From-SVN: r94983
2005-02-13 12:49:34 +00:00
Richard Guenther
ae63a1cc46 re PR libstdc++/11706 (std::pow(T, int) implementation pessimizes code)
2005-02-13  Richard Guenther  <rguenth@gcc.gnu.org>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/11706
	* include/c_std/std_cmath.h (pow): Use __builtin_powi[lf]
	for integer overloads.

	* testsuite/26_numerics/cmath/powi.cc: New.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r94982
2005-02-13 10:25:02 +00:00
Jason Merrill
b8b3c655b0 cp-demangle.c (__cxa_demangle): Change resolution of ambiguous arguments.
* cp-demangle.c (__cxa_demangle): Change resolution of ambiguous
        arguments.

From-SVN: r94980
2005-02-13 01:58:20 -05:00
Jason Merrill
38116e3d1d re PR libmudflap/19319 (Mudflap produce many violations on simple, correct c++ program)
PR mudflap/19319
        * gimplify.c (gimplify_modify_expr_rhs) [CALL_EXPR]: Make return
        slot explicit.

        PR c++/16405
        * fold-const.c (fold_indirect_ref_1): Split out from...
        (build_fold_indirect_ref): Here.
        (fold_indirect_ref): New fn.
        * tree.h: Declare it.
        * gimplify.c (gimplify_compound_lval): Call fold_indirect_ref.
        (gimplify_modify_expr_rhs): Likewise.
        (gimplify_expr): Likewise.

From-SVN: r94979
2005-02-13 01:43:58 -05:00
James A. Morrison
6f49fdcc5e pr15784-1.c, [...]: New tests.
2005-02-13  James A. Morrison  <phython@gcc.gnu.org>

       * gcc.dg/pr15784-1.c, gcc.dg/pr15784-2.c, gcc.dg/pr15784-3.c: New tests.

From-SVN: r94978
2005-02-13 06:41:01 +00:00
James A. Morrison
60a8fb5ea9 re PR tree-optimization/14303 ([tree-ssa] gcc.c-torture/execute/20020720-1.c is not fully folded)
2005-02-13  James A. Morrison  <phython@gcc.gnu.org>

       PR tree-optimization/14303
       PR tree-optimization/15784
       * fold-const.c (fold): Fold ABS_EXPR<x> >= 0 to true, when possible.
       Fold ABS_EXPR<x> < 0 to false.  Fold ABS_EXPR<x> == 0 to x == 0 and
       ABS_EXPR<x> != 0 to x != 0.

From-SVN: r94977
2005-02-13 06:21:35 +00:00
Kazu Hirata
ea24f64b78 passes.c (rest_of_handle_gcse): Remove dead assignments to tem and tem2.
* passes.c (rest_of_handle_gcse): Remove dead assignments to
	tem and tem2.

From-SVN: r94967
2005-02-13 03:58:21 +00:00
Kazu Hirata
6f9087d7fb passes.c (rest_of_handle_gcse): Don't run cse_main and delete_trivially_dead_insns too many times.
* passes.c (rest_of_handle_gcse): Don't run cse_main and
	delete_trivially_dead_insns too many times.

From-SVN: r94963
2005-02-13 03:49:53 +00:00
GCC Administrator
1da0802999 Daily bump.
From-SVN: r94949
2005-02-13 00:16:15 +00:00
Richard Henderson
bd0b34a882 utils.c (gnat_type_for_mode): Return NULL for COMPLEX modes...
* utils.c (gnat_type_for_mode): Return NULL for COMPLEX modes;
        validate SCALAR_INT_MODE_P before calling gnat_type_for_size.

From-SVN: r94946
2005-02-12 12:02:35 -08:00
Dorit Naishlos
c202a7f94f * gcc.dg/vect/vect-96.c: Fix typo.
From-SVN: r94945
2005-02-12 19:33:44 +00:00
Tobias Schlüter
1e6283cb21 symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
* symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
(gfc_use_derived): ... this function.

From-SVN: r94942
2005-02-12 16:44:01 +01:00
Kriang Lerdsuwanakij
d32707707a re PR c++/14479 (enum definition in template class with template methods causes error.)
PR c++/14479
	PR c++/19487
	* pt.c (maybe_check_template_type): Remove.
	* cp-tree.h (maybe_check_template_type): Remove prototype.
	* name-lookup.c (maybe_process_template_type_declaration): Don't
	use maybe_check_template_type.

	* g++.dg/template/enum5.C: New test.

From-SVN: r94941
2005-02-12 15:40:28 +00:00
Kazu Hirata
537677ba9d builtins.c, [...]: Update copyright.
* builtins.c, java-except.h, jcf-parse.c, jv-scan.c, lex.c,
	parse-scan.y: Update copyright.

From-SVN: r94940
2005-02-12 15:21:14 +00:00
Kazu Hirata
647eea9dd8 c-tree.h, [...]: Fix comment typos.
* c-tree.h, combine.c, expmed.c, flow.c, libgcc2.c,
	simplify-rtx.c, tree-ssa-live.h: Fix comment typos.  Follow
	spelling conventions.

From-SVN: r94939
2005-02-12 15:17:56 +00:00
Mark Wielaard
0008978072 Fixes bug libgcj/8170
Fixes bug libgcj/8170
       * java/lang/ClassLoader.java (loadClass): Don't rewrap
       ClassNotFoundException.
       * gnu/java/lang/MainThread.java (run): Chain NoClassDefFoundError.
       * gnu/gcj/runtime/NameFinder.java (remove_interpreter): Removed.
       (remove_internal): New field superceding remove_interpreter.
       (sanitizeStack): Remove all no-package classes starting with "_Jv_".
       Remove no-class methods starting with "_Jv_". And Replace null
       class or method names with the empty string. Stop at either the
       MainThread or a real Thread run() method.
       (newElement): Made static.
       * java/net/URLClassLoader.java (findClass): Throw
       ClassNotFoundExceptions including urls, plus parent using toString().
       (thisString): New field.
       (toString): New method.

From-SVN: r94935
2005-02-12 13:51:11 +00:00
Ira Rosen
8ad833acc4 tree-vectorizer.c (vect_get_base_and_offset): Remove.
* tree-vectorizer.c (vect_get_base_and_offset): Remove.
        (vect_is_simple_iv_evolution): Remove redundant parameter
        and step check.
        (vect_analyze_scalar_cycles): Call vect_is_simple_iv_evolution
        without last parameter.
        (vect_analyze_pointer_ref_access): Get access_fn as parameter.
        Return pointer step. Call vect_is_simple_iv_evolution without
        last parameter. Check only that the step is multiple of size
        type. Remove stmt_vinfo updates.
        (vect_get_memtag_and_dr): Remove.
        (vect_get_memtag): New function.
        (vect_address_analysis): New function.
        (vect_object_analysis): New function.
        (vect_analyze_data_refs): Call vect_object_analysis and
        vect_get_memtag. Update stmt_vinfo fields.

From-SVN: r94934
2005-02-12 12:57:12 +00:00
Ira Rosen
e3a8a4eda9 tree-data-ref.c (array_base_name_differ_p): Check that the bases exist and are objects.
* tree-data-ref.c (array_base_name_differ_p): Check that the bases
        exist and are objects. Remove checks for pointer.
        * tree-vectorizer.c (vect_create_addr_base_for_vector_ref): Use
        STMT_VINFO_VECT_DR_BASE_ADDRESS instead of DR_BASE_NAME.
        (vect_create_data_ref_ptr): Likewise.
        (vect_base_addr_differ_p): New function.
        (vect_analyze_data_ref_dependence): Call vect_base_addr_differ_p.
        (vect_analyze_pointer_ref_access): Add output parameter - ptr_init.
        Don't set the DR_BASE_NAME field of data-ref.
        (vect_get_memtag_and_dr): Use ptr_init instead of DR_BASE_NAME.

From-SVN: r94932
2005-02-12 11:47:19 +00:00
Uros Bizjak
c94a75af08 optabs.h (enum optab_index): Add new OTI_ldexp.
* optabs.h (enum optab_index): Add new OTI_ldexp.
	(ldexp_optab): Define corresponding macro.
	* optabs.c (init_optabs): Initialize ldexp_optab.
	* genopinit.c (optabs): Implement ldexp_optab using ldexp?f3
	patterns.
	* builtins.c (expand_builtin_mathfn_2): Handle BUILT_IN_LDEXP{,F,L}
	using ldexp_optab.
	(expand_builtin): Expand BUILT_IN_LDEXP{,F,L} using
	expand_builtin_mathfn_2 if flag_unsafe_math_optimizations is set.

	* config/i386/i386.md (ldexpsf3, ldexpdf3, ldexpxf3): New expanders
	to implement ldexpf, ldexp and ldexpl built-ins as inline x87
	intrinsics.

testsuite:

	* gcc.dg/builtins-34.c: Also check ldexp*.

From-SVN: r94931
2005-02-12 12:34:24 +01:00
Ira Rosen
a5ae3ad628 tree-vectorizer.h (struct _stmt_vec_info): Rename a field: base to base_address.
2005-02-13  Ira Rosen  <irar@il.ibm.com>

        * tree-vectorizer.h (struct _stmt_vec_info): Rename a field: base
        to base_address.
        * tree-vectorizer.c (new_stmt_vec_info): Rename the above field of
        stmt_vec_info.
        (vect_get_base_and_offset): Always return an address.
        (vect_create_addr_base_for_vector_ref): Remove treatment for
        different data reference types.
        (vect_compute_data_ref_alignment): Rename base to base_address in
        stmt_vec_info. Get the object in order to force its alignment.
        (vect_get_memtag_and_dr): Rename base to base_address in
        stmt_vec_info. Extract the object for memtag analysis.

From-SVN: r94930
2005-02-12 10:24:40 +00:00
Hans-Peter Nilsson
6092c5db35 * gcc.dg/tree-ssa/20040703-1.c: Quote decimal dot.
From-SVN: r94929
2005-02-12 07:46:43 +00:00
Per Bothner
7b45aab422 re PR java/15543 ("jv-scan --complexity" segfaults)
PR java/15543
	* parse-scan.y (input_location): Remove variable.
	(main_input_filename): New - replaces input_filename, which isn't
	settable if USE_MAPPED_LOCATION.
	* lex.c (java_init_lex): Wrap some more places in #ifndef JC1-LITE,
	so we don't reference input_location or wfl_operator in that case.
	* jv-scan.c (expand_location): Remove - no longer used.
	(main): Set main_input_filename rather than input_filename.

From-SVN: r94928
2005-02-11 22:12:40 -08:00
Hans-Peter Nilsson
f4ddadddf9 re PR regression/19898 (cris-elf testsuite failure: gcc.c-torture/execute/strlen-1.c execution, -O2 and higher)
PR regression/19898.
	* config/cris/cris.c (cris_notice_update_cc): When testing if insn
	changes cc_status, use apply modified_in_p to part of cc_status
	and insn, not cris_reg_overlap_mentioned_p on SET_DEST of insn
	body.

From-SVN: r94914
2005-02-12 01:08:33 +00:00