Commit Graph

70828 Commits

Author SHA1 Message Date
Richard Sandiford ec25720ba3 re PR fortran/12840 ([4.0 only] Unable to find scalarization loop specifier)
PR fortran/12840
	* trans.h (gfor_fndecl_internal_realloc): Declare.
	(gfor_fndecl_internal_realloc64): Declare.
	* trans-decl.c (gfor_fndecl_internal_realloc): New variable.
	(gfor_fndecl_internal_realloc64): New variable.
	(gfc_build_builtin_function_decls): Initialize them.
	* trans-array.h (gfc_trans_allocate_temp_array): Add a fourth argument.
	* trans-array.c (gfc_trans_allocate_array_storage): Add an argument
	to say whether the array can grow later.  Don't allocate the array
	on the stack if so.  Don't call malloc for zero-sized arrays.
	(gfc_trans_allocate_temp_array): Add a similar argument here.
	Pass it along to gfc_trans_allocate_array_storage.
	(gfc_get_iteration_count, gfc_grow_array): New functions.
	(gfc_iterator_has_dynamic_bounds): New function.
	(gfc_get_array_constructor_element_size): New function.
	(gfc_get_array_constructor_size): New function.
	(gfc_trans_array_ctor_element): Replace pointer argument with
	a descriptor tree.
	(gfc_trans_array_constructor_subarray): Likewise.  Take an extra
	argument to say whether the variable-sized part of the constructor
	must be allocated using realloc.  Grow the array when this
	argument is true.
	(gfc_trans_array_constructor_value): Likewise.
	(gfc_get_array_cons_size): Delete.
	(gfc_trans_array_constructor): If the loop bound has not been set,
	split the allocation into a static part and a dynamic part.  Set
	loop->to to the bounds for static part before allocating the
	temporary.  Adjust call to gfc_trans_array_constructor_value.
	(gfc_conv_loop_setup): Allow any constructor to determine the
	loop bounds.  Check whether the constructor has a dynamic size
	and prefer to use something else if so.  Expect the loop bound
	to be set later.  Adjust call to gfc_trans_allocate_temp_array.
	* trans-expr.c (gfc_conv_function_call): Adjust another call here.

From-SVN: r104073
2005-09-09 06:00:40 +00:00
Josh Conner 84bb243df1 re PR c++/23180 (Segfault on const initializer with bogus pointer arithmetics)
PR c++/23180
        * g++.dg/init/pr23180-1.C: New test.
        * g++.dg/init/pr23180-2.C: New test.

From-SVN: r104070
2005-09-09 01:39:36 +00:00
Josh Conner d047a20198 re PR c++/23180 (Segfault on const initializer with bogus pointer arithmetics)
PR c++/23180
        * expr.c (expand_expr_addr_expr_1): Don't invoke
        expand_simple_binop for EXPAND_INITIALIZER.

From-SVN: r104069
2005-09-09 01:37:29 +00:00
Richard Henderson db5f8b93fe re PR debug/23190 (debug info omitted for uninitialized variables (stabs))
PR debug/23190
        * toplev.c (wrapup_global_declaration_1): Split out ...
        (wrapup_global_declaration_2): ... from ...
        (wrapup_global_declarations): ... here.  Return bool.
        (check_global_declaration_1): Split out ...
        (check_global_declarations): from here.
        (emit_debug_global_declarations): New.
        * toplev.h (wrapup_global_declaration_1, wrapup_global_declaration_2,
        check_global_declaration_1, emit_debug_global_declarations): Declare.
        * c-decl.c (c_write_global_declarations_1): Don't create a vector
        of decls.  Call wrapup_global_declaration_1,
        wrapup_global_declaration_2, check_global_declaration_1 directly.
        (c_write_global_declarations_2): New.
        (ext_block): New.
        (c_write_global_declarations): Call c_write_global_declarations_2.
        * langhooks.c (write_global_declarations): Call
        emit_debug_global_declarations.
        * cgraphunit.c (cgraph_varpool_remove_unreferenced_decls): Don't
        remove decls that have DECL_RTL_SET_P.
        * passes.c (rest_of_decl_compilation): Invoke
        cgraph_varpool_finalize_decl for all but functions.
cp/
        * decl.c (wrapup_globals_for_namespace): Call
        emit_debug_global_declarations.
        * decl2.c (cp_finish_file): Likewise.

From-SVN: r104065
2005-09-08 17:47:05 -07:00
Paul Thomas 41306174c8 19990905-0.f: Remove XFAIL...
2005-09-09  Paul Thomas  <pault@gcc.gnu.org>

	* gfortran.dg/g77/19990905-0.f: Remove XFAIL, rearrange
	equivalences and add comment to connect the test with
	the PR. - forgotten in previous.

From-SVN: r104061
2005-09-09 00:27:21 +00:00
Paul Thomas 30aabb86ef re PR fortran/18878 ([4.0 only] erronous error message on vaild USE statement)
2005-09-09  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/18878
	* module.c (find_use_name_n): Based on original
	find_use_name. Either counts number of use names for a
	given real name or returns use name n.
	(find_use_name, number_use_names): Interfaces to the
	function find_use_name_n.
	(read_module): Add the logic and calls to these functions,
	so that mutiple reuses of the same real name are loaded.

2005-09-09  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/22304
	PR fortran/23270
	PR fortran/18870
	PR fortran/16511
	PR fortran/17917
	* gfortran.h: Move definition of BLANK_COMMON_NAME from trans-
	common.c so that it is accessible to module.c. Add common_head
	field to gfc_symbol structure. Add field for the equivalence
	name AND new attr field, in_equivalence.
	* match.c (gfc_match_common, gfc_match_equivalence): In loops
	that flag common block equivalences, emit an error if the
	common blocks are different, using sym->common_head as the
	common block identifier. Ensure that symbols that are equivalence
	associated with a common block are marked as being in_common.
	* module.c (write_blank_common): New.
	(write_common): Use unmangled common block name.
	(load_equiv): New function ported from g95.
	(read_module): Call load_equiv.
	(write_equiv): New function ported from g95. Correct
	string referencing for gfc functions. Give module
	equivalences a unique name.
	(write_module): Call write_equiv and write_blank_common.
	* primary.c (match_variable) Old gfc_match_variable, made
	static and third argument provided to indicate if parent
	namespace to be visited or not.
	(gfc_match_variable) New. Interface to match_variable.
	(gfc_match_equiv_variable) New. Interface to match_variable.
	* trans-common.c (finish_equivalences): Provide the call
	to create_common with a gfc_common_header so that
	module equivalences are made external, rather than local.
	(find_equivalences): Ensure that all members in common block
	equivalences are marked as used. This prevents the subsequent
	call to this function from making local unions.
	* trans-decl.c (gfc_generate_function_code): Move the call to
	gfc_generate_contained_functions to after the call to
	gfc_trans_common so the use-associated, contained common
	blocks produce the correct references.
	(gfc_create_module_variable): Return for equivalenced symbols
	with existing backend declaration.

2005-09-09  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/18878
	* gfortran.dg/module_double_reuse.f90: New.

2005-09-09  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/23270
	PR fortran/22304
	PR fortran/18870
	PR fortran/17917
	PR fortran/16511
	* gfortran.dg/common_equivalence_1.f: New.
	* gfortran.dg/common_equivalence_2.f: New.
	* gfortran.dg/common_equivalence_3.f: New.
	* gfortran.dg/contained_equivalence_1.f90: New.
	* gfortran.dg/module_blank_common.f90: New.
	* gfortran.dg/module_commons_1.f90: New.
	* gfortran.dg/module_equivalence_1.f90: New.
	* gfortran.dg/nested_modules_1.f90: New.
	* gfortran.dg/g77/19990905-0.f: Remove XFAIL, rearrange
	equivalences and add comment to connect the test with
	the PR.

From-SVN: r104060
2005-09-09 00:23:09 +00:00
GCC Administrator 7afd4c375d Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104056.2
2005-09-09 00:17:06 +00:00
Tobias Schlüter 6d2ae4727d re PR fortran/23765 (segfault with syntactically wrong common declaration)
fortran/
	PR fortran/23765
	* match.c (gfc_match_common): Remove unnecessary / wrong special
	cases for end-of-statement.
testsuite/
	PR fortran/23765
	* gfortran.dg/common_6.f90: New test.

From-SVN: r104046
2005-09-08 23:55:59 +02:00
Thomas Fitzsimmons 9ff284256a re PR libgcj/23761 (java.library.path doesn't affect module loading path)
2005-09-08  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/23761
	* include/java-props.h (_Jv_Module_Load_Path): Declare variable.
	* java/lang/natRuntime.cc (init): Call lt_dlsetsearchpath after
	lt_dlinit.
	* gnu/classpath/natSystemProperties.cc (_Jv_Module_Load_Path):
	Define variable.
	(_Jv_SetDLLSearchPath): Do not call lt_dlsetsearchpath.  Set
	_Jv_Module_Load_Path.

From-SVN: r104044
2005-09-08 21:26:25 +00:00
Janne Blomqvist e014df900d gfortran.texi: Add section about implemented F2003 features.
2005-09-08  Janne Blomqvist  <jblomqvi@cc.hut.fi>

	* gfortran.texi: Add section about implemented F2003 features.

From-SVN: r104043
2005-09-08 21:42:59 +02:00
Mark Mitchell 024f1251b5 re PR c++/23691 (`mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression)
PR c++/23691
	* decl2.c (mark_used): Instantiate static data members initialized
	by constants, even in a template.

	PR c++/23691
	* g++.dg/template/static16.C: New test.

From-SVN: r104041
2005-09-08 18:56:42 +00:00
Richard Sandiford 0348d6fd85 re PR fortran/15326 ([4.0 only] ICE with assumed length character strings)
PR fortran/15326
	* trans-array.c (gfc_add_loop_ss_code): Set ss->string_length in
	the GFC_SS_FUNCTION case too.
	* trans-expr.c (gfc_conv_function_val): Allow symbols to be bound
	to function pointers as well as function decls.
	(gfc_interface_sym_mapping, gfc_interface_mapping): New structures.
	(gfc_init_interface_mapping, gfc_free_interface_mapping)
	(gfc_get_interface_mapping_charlen, gfc_get_interface_mapping_array)
	(gfc_set_interface_mapping_bounds, gfc_add_interface_mapping)
	(gfc_finish_interface_mapping, gfc_apply_interface_mapping_to_cons)
	(gfc_apply_interface_mapping_to_ref)
	(gfc_apply_interface_mapping_to_expr)
	(gfc_apply_interface_mapping): New functions.
	(gfc_conv_function_call): Evaluate the arguments before working
	out where the result should go.  Make the null pointer case provide
	the string length in parmse.string_length.  Cope with non-constant
	string lengths, using the above functions to evaluate such lengths.
	Use a temporary typespec; don't assign to sym->cl->backend_decl.
	Don't assign to se->string_length when returning a cached array
	descriptor.

From-SVN: r104040
2005-09-08 18:46:06 +00:00
Eric Botcazou 5c9186cec3 tree-vrp.c (extract_range_from_unary_expr): Do not set the range for the result of a conversion if...
* tree-vrp.c (extract_range_from_unary_expr): Do not set the range for
	the result of a conversion if the new min and max cannot be compared.

From-SVN: r104036
2005-09-08 16:37:20 +00:00
Richard Sandiford 068e733886 re PR fortran/19928 (Reference of constant derived type component causes failure)
PR fortran/19928
	* trans-array.c (gfc_conv_array_ref): Call gfc_advance_se_ss_chain
	after handling scalarized references.  Make "indexse" inherit from
	"se" when handling AR_ELEMENTs.
	(gfc_walk_variable_expr): Add GFC_SS_SCALAR entries for each
	substring or scalar reference that follows an array section.
	* trans-expr.c (gfc_conv_variable): When called from within a
	scalarization loop, start out with "ref" pointing to the scalarized
	part of the reference.  Don't call gfc_advance_se_ss_chain here.

From-SVN: r104035
2005-09-08 16:06:54 +00:00
Andreas Krebbel dcc9eb26a3 s390.c (s390_sr_alias_set): Variable removed.
2005-09-08  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (s390_sr_alias_set): Variable removed.
	(override_options): Setting s390_sr_alias_set removed.
	(save_fpr, save_gprs): Set alias set to vararg or frame.
	(restore_fpr, restore_gprs, s390_emit_prologue): Replace
	s390_sr_alias_set with get_frame_alias_set ().
	(s390_gimplify_va_arg): Replace s390_sr_alias_set with
	get_varargs_alias_set ().

From-SVN: r104034
2005-09-08 13:55:30 +00:00
Andrew Pinski d95036e3f8 re PR objc++/16816 (obj-c++ parser error with multi-colon selectors)
2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR obj-c++/16816
        * obj-c++.dg/selector-5.mm: New test.
        * obj-c++.dg/selector-6.mm: New test.
2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR obj-c++/16816
        * parser.c (cp_parser_objc_selector_expression): Treat CPP_SCOPE as
        two CPP_COLON.

From-SVN: r104033
2005-09-08 06:14:41 -07:00
Andrew Pinski 8f078c0837 re PR objc/20574 (weird error message after a parse error)
2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR objc/20574
        PR objc/19324
        * c-parser.c (c_parser_objc_method_definition): If the next
        token is not "{", error out and don't start the function.

2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR objc/20574
        PR objc/19324
        * objc.dg/error-1.m: New test.

From-SVN: r104032
2005-09-08 06:09:49 -07:00
Richard Sandiford 8aeca7fda0 re PR fortran/23373 ([4.0 only] Functions returning pointers with pointer argument)
PR fortran/23373
	* trans-expr.c (gfc_trans_pointer_assignment): Assign to a temporary
	descriptor if the rhs is not a null pointer or variable.

From-SVN: r104029
2005-09-08 09:20:07 +00:00
Jerry DeLisle 5e949d8329 re PR libfortran/23760 (gfortran incorrectly succeeds on record overflow)
2005-09-07  Jerry DeLisle  <jvdelisle@verizon.net>

	PR libfortran/23760
	* gfortran.dg/g77/1832.f: Remove long string in write statement
	to allow the test to pass on correct list directed output with
	prepended space.

From-SVN: r104027
2005-09-08 06:52:04 +00:00
James E Wilson 1da2e496b2 Fix xscale-elf gcc testsuite failure.
* gcc.dg/intmax_t-1.c: Disable for xscale*-*-elf*.

From-SVN: r104022
2005-09-07 17:30:48 -07:00
GCC Administrator 638993041d Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104019.2
2005-09-08 00:16:16 +00:00
Thomas Koenig 9b2032505c parameter+save.f90: Rename to
2005-09-07  Thomas Koenig  <Thomas.Koenig@online.de>

	* gfortran.dg/parameter+save.f90:  Rename to
	* gfortran.dg/parameter_save.f90: .. this.

From-SVN: r104011
2005-09-07 21:32:21 +00:00
Francois-Xavier Coudert 3c12752024 re PR libfortran/23262 ([mingw32] rewind truncates file)
PR libfortran/23262
	* acinclude.m4 (LIBGFOR_CHECK_CRLF): New check.
	* configure.ac: Use new check.
	* configure.in: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* io/transfer.c (next_record_w): Add case for CRLF as line
	terminator.
	* io/unix.c (tempfile, regular_file): Open files with
	O_BINARY on systems with CRLF.

From-SVN: r104009
2005-09-07 21:25:40 +00:00
Thomas Koenig 2a0abeaf55 re PR fortran/20848 (PARAMETER and SAVE attribute conflict)
2005-09-07  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/20848
	* symbol.c(check_conflict):  Add conflict for parameter/save,

2005-09-07  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/20848
	* gfortran.dg/parameter+save.f90:  New test case.

From-SVN: r104005
2005-09-07 21:08:24 +00:00
Andrew Pinski 0c924d5c66 tree-vrp.c (extract_range_from_expr): Move the check for non nullness after the check for gimple invariant.
2005-09-08  Andrew Pinski  <pinskia@physics.uc.edu>

        * tree-vrp.c (extract_range_from_expr): Move the check for non
        nullness after the check for gimple invariant.

From-SVN: r104002
2005-09-07 13:35:19 -07:00
Steve Ellcey 98cd8256af re PR libfortran/23419 (unformatted complex I/O with kind=10)
PR libfortran/23419
	* io/write.c (extract_int): Use memcpy to access buffer.
	(extract_uint): Ditto.
	(extract_real): Ditto.

From-SVN: r104000
2005-09-07 20:16:47 +00:00
Richard Kenner 9f36bc49f8 * tree.c (host_integerp, tree_low_cst): Correct function comment.
From-SVN: r103989
2005-09-07 08:39:03 -04:00
Kazuhiro Inaoka 085fd657f9 re PR target/23747 (ICE with -O2, -O3 execute/builtins/memcpy-chk.c)
PR target/23747
* config/m32r.md (movmemsi_internal): Canonicalize order of operands in
  PLUS component of template.

From-SVN: r103987
2005-09-07 11:57:47 +00:00
Andreas Krebbel b735f45d30 reload1.c (fixup_eh_region_note): Remove assertion.
2005-09-07  Andreas Krebbel  <krebbel1@de.ibm.com>

	* reload1.c (fixup_eh_region_note): Remove assertion.
	(fixup_abnormal_edges): Reverted removal of call to
	find_many_sub_basic_blocks made on 2005-08-31.

From-SVN: r103984
2005-09-07 07:52:48 +00:00
Richard Henderson 30e6f306d3 function.c (ARG_POINTER_CFA_OFFSET): Move ...
* function.c (ARG_POINTER_CFA_OFFSET): Move ...
        * defaults.h (ARG_POINTER_CFA_OFFSET): ... here.
        (INCOMING_FRAME_SP_OFFSET): Move from dwarf2out.c.
        * dwarf2out.c (struct cfa_loc): Change reg to unsigned int,
        rearrange for better packing.
        (INCOMING_FRAME_SP_OFFSET): Move to defaults.h.
        (lookup_cfa_1): Remove inline marker.
        (cfa_equal_p): Split out of ...
        (def_cfa_1): ... here.  Use INVALID_REGNUM.
        (build_cfa_loc): Handle !cfa->indirect.
        (frame_pointer_cfa_offset): New.
        (dbx_reg_number): Assert register elimination performed; do
        leaf register remapping.
        (reg_loc_descriptor): Avoid calling dbx_reg_number when unused.
        (eliminate_reg_to_offset): New.
        (based_loc_descr): Remove can_use_fbreg argument.  Use fbreg only
        for verifiably local stack frame addresses; re-base to CFA.
        (mem_loc_descriptor): Remove can_use_fbreg argument.
        (concat_loc_descriptor, loc_descriptor): Likewise.
        (containing_function_has_frame_base): Remove.
        (rtl_for_decl_location): Don't do register elimination or
        leaf register remapping here.
        (secname_for_decl): Split out from ..
        (add_location_or_const_value_attribute): ... here.
        (convert_cfa_to_loc_list): New.
        (compute_frame_pointer_to_cfa_displacement): New.
        (gen_subprogram_die): Use them.
        * tree.h (frame_base_decl): Remove.
        * var-tracking.c (frame_base_decl, frame_stack_adjust): Remove.
        (prologue_stack_adjust): Remove.
        (vt_stack_adjustments): Use INCOMING_FRAME_SP_OFFSET.
        (adjust_stack_reference): Re-base memories to arg_pointer_rtx.
        (set_frame_base_location): Remove.
        (compute_bb_dataflow, emit_notes_in_bb): Don't call it.
        (dump_attrs_list, dump_dataflow_set): Use string concatenation.
        (vt_add_function_parameters): Don't eliminate_regs.
        (vt_initialize): Don't create frame_base_decl.

From-SVN: r103983
2005-09-07 00:47:15 -07:00
Richard Sandiford d1d26ecf9f re PR fortran/19269 (transpose(reshape(...)) of character array segfaults.)
PR fortran/19269
	* simplify.c (gfc_simplify_transpose): Set the result's typespec from
	the source, not the first element of the return value.

From-SVN: r103982
2005-09-07 07:36:12 +00:00
Richard Guenther f7683d376f cp-gimplify.c (cp_gimplify_expr): Create empty CONSTRUCTOR for EMPTY_CLASS_EXPR.
2005-09-07  Richard Guenther  <rguenther@suse.de>

	* cp-gimplify.c (cp_gimplify_expr): Create empty CONSTRUCTOR
	for EMPTY_CLASS_EXPR.

From-SVN: r103981
2005-09-07 07:20:58 +00:00
Eric Botcazou ff8f80f202 install.texi (*-*-solaris2*): Clarify wording on the recommended version of GNU binutils for 4.x and later.
* doc/install.texi (*-*-solaris2*): Clarify wording on the recommended
	version of GNU binutils for 4.x and later.

From-SVN: r103980
2005-09-07 06:19:57 +00:00
Mark Mitchell 6f02b1dbf6 ggc-page.c (ggc_push_context): Remove.
* ggc-page.c (ggc_push_context): Remove.
	(ggc_pop_context): Likewise.
	* ggc.h (ggc_push_context): Remove.
	(ggc_pop_context): Likewise.

From-SVN: r103979
2005-09-07 03:50:08 +00:00
GCC Administrator 040c2e426f Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r103975.2
2005-09-07 00:16:46 +00:00
Saurabh Verma 3273516f25 re PR target/8973 ([arc-7-elf] the interupt handler does not return properly, uses j.d insted of j.d.f)
2005-09-06  Saurabh Verma  <saurabh.verma@codito.com>

        PR target/8973
        * config/arc/arc.c (arc_output_function_epilogue): Update flags while
        returning from an interrupt handler.

From-SVN: r103972
2005-09-06 15:29:45 -07:00
Saurabh Verma 006fa7d428 re PR target/8972 ([arc-7-elf] the c code ' x << i' causes infinite loop when i = 0)
2005-09-06  Saurabh Verma  <saurabh.verma@codito.com>

        PR target/8972
        * config/arc/arc.c (output_shift): Add check for loop count when
        optimizing.

From-SVN: r103971
2005-09-06 15:26:59 -07:00
Steven Bosscher 800dd123ee tree-ssa-phiopt.c (conditional_replacement): Construct proper SSA form manually.
* tree-ssa-phiopt.c (conditional_replacement): Construct proper SSA
	form manually.
	(abs_replacement): Likewise.
	(pass_phiopt): Remove TODO_update_ssa.

From-SVN: r103970
2005-09-06 22:06:29 +00:00
Jakub Jelinek 0c9b182b9f re PR c/23075 (Redundant / bogus warning)
PR c/23075
	* c-typeck.c (c_finish_return): Set TREE_NO_WARNING on RETURN_EXPR
	if "return with no value, in function returning non-void" warning
	has been issued.
  	* tree-cfg.c (execute_warn_function_return): Don't look at
	RETURN_EXPRs with TREE_NO_WARNING set.

	* typeck.c (check_return_expr): Add no_warning argument.  Set
	*no_warning to true if "return-statement with no value, in function
	returning" warning has been issued.
	* cp-tree.h (check_return_expr): Adjust prototype.
	* semantics.c (finish_return_stmt): Set TREE_NO_WARNING if
	check_return_expr set *no_warning to true.

	* gcc.dg/pr23075.c: New test.
	* g++.dg/warn/pr23075.C: New test.

From-SVN: r103967
2005-09-06 22:07:13 +02:00
Jakub Jelinek 73109af752 re PR target/22362 (static function calls and global register variables)
PR target/22362
	* config/i386/i386.c (ix86_function_regparm): Make sure automatic regparm
	for internal functions doesn't use registers used by global registers
	variables.  Use fewer register parameters if there are global register
	variables.

	* gcc.target/i386/pr22362.c: New test.

From-SVN: r103964
2005-09-06 21:57:57 +02:00
Olivier Hainque 60a23e2e02 re PR middle-end/14997 (ncurses build fails with Ada)
PR middle-end/14997
	* expr.c (expand_expr_real) <normal_inner_ref>: Force op0 to mem
	when we would be extracting outside its bit span (bitpos+bitsize
	larger than its mode), possible with some VIEW_CONVERT_EXPRs from
	Ada unchecked conversions.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r103963
2005-09-06 19:46:58 +00:00
Jakub Jelinek 29a153937a re PR rtl-optimization/23098 (store of 0.0 to float)
PR rtl-optimization/23098
	* gcc.target/i386/pr23098.c: Add dg-require-effective-target ilp32.

From-SVN: r103959
2005-09-06 21:38:58 +02:00
Jakub Jelinek 1b1cdbffce dwarf-char1.c: Further regex fixes.
* gcc.dg/debug/dwarf2/dwarf-char1.c: Further regex fixes.
	* gcc.dg/debug/dwarf2/dwarf-char2.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf-char3.c: Likewise.

From-SVN: r103957
2005-09-06 21:27:05 +02:00
Steven Bosscher dda243de44 tree-ssa-pre.c (try_look_through_load): New function.
* tree-ssa-pre.c (try_look_through_load): New function.
	(compute_avail): Use it to try to look through loads for some
	more useful expressions.

From-SVN: r103956
2005-09-06 18:51:26 +00:00
Saurabh Verma f5d1572a8a simplify-rtx.c (simplify_binary_operation_1): Correct the condition for detecting cases like (a&a) and (a^a).
* simplify-rtx.c (simplify_binary_operation_1): Correct the
	condition for detecting cases like (a&a) and (a^a).

From-SVN: r103955
2005-09-06 17:51:48 +00:00
Tom Tromey 852993e381 re PR libgcj/23739 (JNI: IsAssignableFrom reverses arguments)
PR libgcj/23739:
	* testsuite/libjava.jni/pr23739.c: New file.
	* testsuite/libjava.jni/pr23739.java: New file.
	* testsuite/libjava.jni/pr23739.out: New file.
	* jni.cc (_Jv_JNI_IsAssignableFrom): Reversed arguments.
	* java/lang/reflect/natMethod.cc (invoke): Updated.
	* java/lang/natClass.cc (isAssignableFrom): Updated.
	(isInstance): Likewise.
	(_Jv_IsAssignableFrom): Reversed arguments.
	(_Jv_IsInstanceOf): Updated.
	(_Jv_CheckCast): Likewise.
	(_Jv_CheckArrayStore): Likewise.
	(_Jv_IsAssignableFromSlow): Reversed arguments.
	(_Jv_InterfaceAssignableFrom): Likewise.
	* link.cc (verify_type_assertions): Updated.
	* prims.cc (_Jv_CheckAccess): Updated.

From-SVN: r103953
2005-09-06 16:01:31 +00:00
Andrew Pinski 3e248b8315 java-gimplify.c (java_gimplify_block): NULL out the old BLOCK's BLOCK_EXPR_BODY before returning the new BIND_EXPR.
2005-09-06  Andrew Pinski  <pinskia@physics.uc.edu>

        * java-gimplify.c (java_gimplify_block): NULL out the old BLOCK's
        BLOCK_EXPR_BODY before returning the new BIND_EXPR.

From-SVN: r103950
2005-09-06 08:22:34 -07:00
Mark Mitchell 5cc53d4ece re PR c++/9782 (constructor not called on higher-dimensional arrays of template types)
* cp-tree.h (rvalue): New function.
	* call.c (build_conditional_expr): Use it.
	* init.c (build_new_1): Likewise.
	* rtti.c (build_dynamic_cast_1): Likewise.
	* tree.c (rvalue): New function.
	* typeck.c (build_unary_op): Use it.
	(build_static_cast_1): Likewise.

	* g++.dg/expr/cast6.C: New test.

	PR c++/9782
	* init.c (build_new_1): Make sure the entire array type is
	complete, not just its element types.

	PR c++/9782
	* g++.dg/init/new15.C: New test.

From-SVN: r103947
2005-09-06 14:55:06 +00:00
Tom Tromey d102ae00ef re PR boehm-gc/23662 (Binaries generated by arm-linux-gcj segfault on execution on arm target)
PR libgcj/23662:
	* include/private/gcconfig.h (LINUX_STACKBOTTOM): Use instead of
	HEURISTIC1 on ARM.

From-SVN: r103946
2005-09-06 14:22:01 +00:00
Keith Besaw 6e8ed38e7d Os-vect-95.c: New test.
* gcc.dg/vect/Os-vect-95.c: New test.
        * gcc.dg/vect/vect-95.c: Same.

From-SVN: r103942
2005-09-06 11:09:01 +00:00