Age | Commit message (Collapse) | Author | Files | Lines |
|
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
|
|
PR c++/23180
* g++.dg/init/pr23180-1.C: New test.
* g++.dg/init/pr23180-2.C: New test.
From-SVN: r104070
|
|
PR c++/23180
* expr.c (expand_expr_addr_expr_1): Don't invoke
expand_simple_binop for EXPAND_INITIALIZER.
From-SVN: r104069
|
|
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-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 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
|
|
[[Split portion of a mixed commit.]]
From-SVN: r104056.2
|
|
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 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 Janne Blomqvist <jblomqvi@cc.hut.fi>
* gfortran.texi: Add section about implemented F2003 features.
From-SVN: r104043
|
|
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
|
|
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
|
|
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
|
|
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 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 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 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
|
|
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-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
|
|
* gcc.dg/intmax_t-1.c: Disable for xscale*-*-elf*.
From-SVN: r104022
|
|
[[Split portion of a mixed commit.]]
From-SVN: r104019.2
|
|
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
|
|
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 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
|
|
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
|
|
PR libfortran/23419
* io/write.c (extract_int): Use memcpy to access buffer.
(extract_uint): Ditto.
(extract_real): Ditto.
From-SVN: r104000
|
|
From-SVN: r103989
|
|
PR target/23747
* config/m32r.md (movmemsi_internal): Canonicalize order of operands in
PLUS component of template.
From-SVN: r103987
|
|
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
|
|
* 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
|
|
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 Richard Guenther <rguenther@suse.de>
* cp-gimplify.c (cp_gimplify_expr): Create empty CONSTRUCTOR
for EMPTY_CLASS_EXPR.
From-SVN: r103981
|
|
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
|
|
* ggc-page.c (ggc_push_context): Remove.
(ggc_pop_context): Likewise.
* ggc.h (ggc_push_context): Remove.
(ggc_pop_context): Likewise.
From-SVN: r103979
|
|
[[Split portion of a mixed commit.]]
From-SVN: r103975.2
|
|
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
|
|
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
|
|
* tree-ssa-phiopt.c (conditional_replacement): Construct proper SSA
form manually.
(abs_replacement): Likewise.
(pass_phiopt): Remove TODO_update_ssa.
From-SVN: r103970
|
|
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
|
|
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
|
|
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
|
|
PR rtl-optimization/23098
* gcc.target/i386/pr23098.c: Add dg-require-effective-target ilp32.
From-SVN: r103959
|
|
* 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
|
|
* 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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
execution on arm target)
PR libgcj/23662:
* include/private/gcconfig.h (LINUX_STACKBOTTOM): Use instead of
HEURISTIC1 on ARM.
From-SVN: r103946
|
|
* gcc.dg/vect/Os-vect-95.c: New test.
* gcc.dg/vect/vect-95.c: Same.
From-SVN: r103942
|