ctice [Thu, 31 Mar 2005 19:38:44 +0000 (19:38 +0000)]
Committing ChangeLog that goes with hot/cold partitioning fix I checked
in earlier today (I forgot to check in the ChangeLog at the time and only
just noticed).
amylaar [Thu, 31 Mar 2005 16:38:25 +0000 (16:38 +0000)]
* postreload-gcse.c: Include target.h.
(gcse_after_reload_main): Return early if we cannot modify jumps.
* Makefile.in (postreload-gcse.o): Depend on $(TARGET_H).
fxcoudert [Thu, 31 Mar 2005 15:30:06 +0000 (15:30 +0000)]
PR libfortran/20660
* io/inquire.c (inquire_via_unit): Non-opened units should still be
reported by an INQUIRE statement as existing.
* io/transfer.c (data_transfer_init): Never accept negative units.
PR libfortran/20660
* gfortran.dg/negative_unit.f: New test.
ian [Thu, 31 Mar 2005 14:53:17 +0000 (14:53 +0000)]
* collect2.c (lderrout): New variable.
(collect_exit): Dump ldout to stdout. Dump and unlink lderrout,
if it is set, to stderr.
(handler): Unlink lderrout if it is set.
(dump_file): Add "to" parameter. Change all callers.
(main): Initialize lderrout.
(collect_execute): Add errname parameter. Change all callers.
Rename redir parameter to outname. Never pass
PEX_STDERR_TO_STDOUT to pex_run.
* collect2.h (collect_execute, dump_file): Update declarations.
* tlink.c (tlink_execute): Add errname parameter. Change all
callers.
(do_tlink): Check lderrout as well as ldout.
amylaar [Thu, 31 Mar 2005 13:02:36 +0000 (13:02 +0000)]
Fix fallout from PR middle-end/15700:
* gcc.c-torture/compile/20011119-1.c: Take
__USER_LABEL_PREFIX__ into account.
* gcc.c-torture/compile/20011119-2.c: Likewise.
amodra [Wed, 30 Mar 2005 23:46:28 +0000 (23:46 +0000)]
* config.gcc (cpu_is_64bit): Set for 64-bit powerpc cpus.
(powerpc64-*-linux*): Use it. Rearrange tm_file assignment.
(powerpc-*-linux*): Build a biarch compiler when --enable-targets
is given with "powerpc64*" or "all", or when --with-cpu chooses
a 64-bit cpu.
wilson [Wed, 30 Mar 2005 23:08:17 +0000 (23:08 +0000)]
Emit DW_AT_ranges for inlined subroutines that contain disjoint blocks.
PR debug/20268
* dwarf2out.c (add_high_low_attributes): New function, extracted from
gen_lexical_block_die.
(gen_lexical_block_die, gen_inlined_subroutine_die): Call it.
hubicka [Wed, 30 Mar 2005 22:28:02 +0000 (22:28 +0000)]
2005-03-31 Jan Hubicka <jh@suse.cz>
2004-11-02 Jan Hubicka <jh@suse.cz>
* cgraph.c (cgraph_varpool_node_name): New function.
(dump_cgraph_varpool_node): New function.
(dump_varpool): New function.
* cgraphunit.c (cgraph_optimize): Dump varpool.
2004-10-16 Jan Hubicka <jh@suse.cz>
* cgraph.c (decide_is_variable_needed): New function.
(cgraph_varpool_finalize_decl): Use it.
* cgraphunit.c (cgraph_optimize): Assemble_pending_decls when not doing
unit-at-a-time.
* final.c (output_addr_const): Do not call mark_referenced.
* passes.c (rest_of_decl_compilation): ifdef out DECL_RTL_SET_P hack;
always go via cgraph.
* toplev.c (wrapup_global_declarations): Kill non-unit-at-a-time code.
(check_global_declarations): Ifdef out code clearing DECL_RTL.
* tree-optimize.c (execute_inline): Mark functions called.
* i386.c (output_pic_addr_const): Do not call mark_decl_referenced.
2004-10-11 Jan Hubicka <jh@suse.cz>
* cgraph.c (cgraph_varpool_first_unanalyzed_node): New global voriable
(cgraph_varpool_last_needed_node): New static variable.
(enqueue_needed_varpool_node): Break out from ...; add items to the
end of queue; update first pointers.
(cgraph_varpool_mark_needed_node): ... here.
(cgraph_varpool_finalize_decl): Use enqueue_needed_varpool_node.
(cgraph_varpool_assemble_pending_decls): Move to cgraphunit.c
* cgraph.h (cgraph_varpool_node): Add analyzed field.
(cgraph_varpool_first_unanalyzed_node): Declare.
* cgraphunit.c: Include output.h.
(cgraph_varpool_analyze_pending_decls): New function.
(cgraph_varpool_assemble_pending_decls): Move from cgraph.c; bail out
for errors, analyze pending decls.
(cgraph_finalize_compilation_unit): Only analyze decls.
(cgraph_optimize): Assemble the decls after expanding.
dberlin [Wed, 30 Mar 2005 22:10:47 +0000 (22:10 +0000)]
2005-03-30 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-alias.c (compute_flow_insensitive_aliasing): Make sure
subvars get marked properly in tags for grouping.
(add_pointed_to_var): Mark only actual pointed to
variables/subvars in addresses needed.
(create_overlap_variables_for): Clear call clobbered on original
variable.
* tree-ssa-operands.c (get_asm_expr_operands): Don't let regular
addresable vars with subvars into list.
* tree-ssa.c (verify_ssa_name): Verify original is not used where
subvar should be.
rth [Wed, 30 Mar 2005 22:07:51 +0000 (22:07 +0000)]
* cgraph.h (struct cgraph_node): Add alias.
* varasm.c (assemble_alias): Set it.
* cgraphunit.c (cgraph_assemble_pending_functions): Check it and
avoid calling cgraph_expand_function.
sje [Wed, 30 Mar 2005 21:49:19 +0000 (21:49 +0000)]
* src/ia64/ffitarget.h (ffi_arg) ADD DI attribute.
(ffi_sarg) Ditto.
* src/ia64/unix.S (ffi_closure_unix): Extend gp
to 64 bits in ILP32 mode.
Load 64 bits even for short data.
jsm28 [Wed, 30 Mar 2005 19:56:39 +0000 (19:56 +0000)]
PR c/772
PR c/17913
* c-tree.h (C_DECL_UNJUMPABLE_STMT_EXPR,
C_DECL_UNDEFINABLE_STMT_EXPR, struct c_label_list, struct
c_label_context, label_context_stack): New.
* c-decl.c (define_label): Check for jumps into statement
expressions. Add label to list of defined labels.
(start_function): Push context on label_context_stack.
(finish_function): Pop context from label_context_stack.
* c-typeck.c (label_context_stack): New.
(c_finish_goto_label): Check for jumps into statement
expressions. Add label to list of jumped to labels.
(struct c_switch): Add blocked_stmt_expr.
(c_start_case): Initialize it.
(do_case): Check it.
(c_finish_case): Verify !blocked_stmt_expr.
(c_begin_stmt_expr): Push context on label_context_stack.
Increment blocked_stmt_expr. Mark labels jumped to from outside
as undefinable.
(c_finish_stmt_expr): December blocked_stmt_expr. Mark labels
defined in the statement expression and no longer jumpable to.
Mark labels jumped to from just outside the statement expression
as again definable. Pop context from label_context_stack.
* doc/extend.texi (Statement Exprs): Update.
objc:
* objc-act.c (objc_start_function): Push context on
label_context_stack.
amylaar [Wed, 30 Mar 2005 12:25:24 +0000 (12:25 +0000)]
(See http://gcc.gnu.org/ml/gcc/2004-12/msg00319.html for discussion.)
* config/mh-mingw32: Delete.
* configure.in: Don't use it.
* configure: Regenerate.
bonzini [Wed, 30 Mar 2005 08:23:06 +0000 (08:23 +0000)]
2005-02-28 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (bfd, opcodes, libstdc++-v3, libmudflap): Set lib_path.
* Makefile.tpl (SET_LIB_PATH, REALLY_SET_LIB_PATH): Remove.
(HOST_EXPORTS, STAGE_HOST_EXPORTS, TARGET_EXPORTS): Set $(RPATH_ENVVAR).
(HOST_LIB_PATH): Generate from Makefile.def.
(TARGET_LIB_PATH): Likewise.
(Old bootstrap targets): Include TARGET_LIB_PATH into RPATH_ENVVAR.
* Makefile.in: Regenerate.
* configure.in (set_lib_path, SET_LIB_PATH, SET_GCC_LIB_PATH): Remove.
(RPATH_ENVVAR): Include Darwin case.
* configure: Regenerate.
config:
2005-02-28 Paolo Bonzini <bonzini@gnu.org>
* config/gcc-lib-path.m4: Remove.
gcc:
2005-02-28 Paolo Bonzini <bonzini@gnu.org>
* gcc/aclocal.m4: Do not include config/gcc-lib-path.m4.
* gcc/Makefile.in: Do not @set_gcc_lib_path@.
* gcc/configure.ac (TL_AC_GNU_MAKE_GCC_LIB_PATH): Remove.
* gcc/configure: Regenerate.
bonzini [Wed, 30 Mar 2005 08:18:08 +0000 (08:18 +0000)]
2005-03-31 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (bfd, opcodes, libstdc++-v3, libmudflap): Set lib_path.
* Makefile.tpl (SET_LIB_PATH, REALLY_SET_LIB_PATH): Remove.
(HOST_EXPORTS, STAGE_HOST_EXPORTS, TARGET_EXPORTS): Set $(RPATH_ENVVAR).
(HOST_LIB_PATH): Generate from Makefile.def.
(TARGET_LIB_PATH): Likewise.
(Old bootstrap targets): Include TARGET_LIB_PATH into RPATH_ENVVAR.
* Makefile.in: Regenerate.
* configure.in (set_lib_path, SET_LIB_PATH, SET_GCC_LIB_PATH): Remove.
(RPATH_ENVVAR): Include Darwin case.
* configure: Regenerate.
config:
2005-03-31 Paolo Bonzini <bonzini@gnu.org>
* config/gcc-lib-path.m4: Remove.
gcc:
2005-03-31 Paolo Bonzini <bonzini@gnu.org>
* gcc/aclocal.m4: Do not include config/gcc-lib-path.m4.
* gcc/Makefile.in: Do not @set_gcc_lib_path@.
* gcc/configure.ac (TL_AC_GNU_MAKE_GCC_LIB_PATH): Remove.
* gcc/configure: Regenerate.
rsandifo [Wed, 30 Mar 2005 06:26:20 +0000 (06:26 +0000)]
* doc/options.texi: Document the new MaskExists flag.
* opth-gen.awk: Don't output MASK and TARGET macros for Mask(...)
if the option has the MaskExists flag.
rsandifo [Wed, 30 Mar 2005 06:24:35 +0000 (06:24 +0000)]
* opt-functions.awk (flag_set_p, test_flag): New functions.
(switch_flags): Use them.
* opth-gen.awk: Use flag_set_p to check for flags.
* optc-gen.awk: Likewise. Use opt_args to check for Init(...) flags.
rth [Wed, 30 Mar 2005 01:35:15 +0000 (01:35 +0000)]
PR c/20519
* c-decl.c (c_finish_incomplete_decl): Update complete_array_type call.
(build_compound_literal): Likewise. Propagate decl type into the
initializer.
(finish_decl): Likewise. Use new return value from complete_array_type
for zero sized arrays.
(complete_array_type): Move ...
* c-common.c (complete_array_type): ... here. Change first argument
to pointer-to-type-node. Consistently use sizetype for the index
except for zero sized arrays. Detect zero sized arrays for pedantic
mode diagnostics. Create a new type node instead of modifying the
old node in place.
* c-tree.h (complete_array_type): Move decl ...
* c-common.h (complete_array_type): ... here.
cp/
* decl.c (cp_complete_array_type): Rename from complete_array_type.
Use the new complete_array_type in c-common.c. Update all callers.
* cp-tree.h (cp_complete_array_type): Update to match.
tromey [Tue, 29 Mar 2005 20:10:21 +0000 (20:10 +0000)]
2005-03-26 Chris Burdess <dog@gnu.org>
* gnu/xml/dom/DomNode.java (notifyNode): grow listener array as
required.
2005-03-13 Michael Koch <konqueror@gmx.de>
* gnu/xml/aelfred2/XmlParser.java: Fixed typo.
2005-03-11 Chris Burdess <dog@gnu.org>
* gnu/xml/aelfred2/SAXDriver.java: Corrected bug handling URI
warnings.
2005-02-27 Chris Burdess <dog@gnu.org>
* gnu/xml/aelfred2/JAXPFactory.java,
gnu/xml/aelfred2/SAXDriver.java,
gnu/xml/aelfred2/XmlParser.java,
gnu/xml/aelfred2/XmlReader.java: Applied GNU Classpath source code
formatting conventions. Replaced arrays of Object with struct-like
classes for easier maintainability. Made SAXDriver.stringInterning
package private to allow access from XmlParser inside the loop without
a method call overhead.
2005-03-11 Chris Burdess <dog@gnu.org>
* gnu/xml/aelfred2/SAXDriver.java: Corrected bug handling URI
warnings.
ian [Tue, 29 Mar 2005 19:39:35 +0000 (19:39 +0000)]
PR bootstrap/14316
* collect2.c: Never include <vfork.h>.
(VFORK_STRING, vfork): Don't define.
(pid): Remove global variable.
(handler): Call raise instead of kill (getpid(), ...).
(collect_wait): Add pex parameter. Change all callers. Use
pex_get_status rather than pwait.
(do_wait): Add pex parameter. Change all callers.
(collect_execute): Return struct pex_obj * rather than void. Use
pex routines rather than pexecute.
(fork_execute): Get pex_obj from collect_execute, and pass it to
do_wait.
(scan_prog_file): Use pex routines rather than pipe/vfork/exec.
Only declare quit_handler if SIGQUIT is defined.
(scan_libraries): Likewise.
* collect2.h (collect_execute): Update declaration.
(collect_wait): Update declaration.
* tlink.c (tlink_execute): Get pex_obj from collect_execute, and
pass it to collect_wait.
charlet [Tue, 29 Mar 2005 16:22:15 +0000 (16:22 +0000)]
2005-03-29 Robert Dewar <dewar@adacore.com>
* xtreeprs.adb, xnmake.adb: Use Stream_IO instead of Text_IO to
guarantee Unix style line terminators for the output files, even when
running on windows.
charlet [Tue, 29 Mar 2005 16:21:32 +0000 (16:21 +0000)]
2005-03-29 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Set_Formal_Mode): If the subtype has a non_null
indicator, indicate that the formal can never be null.
(Process_Formals): If a formal has a non_null indicator, insert the
resulting subtype immediately before the enclosing subprogram decl,
and not at the beginning of the corresponding declarative part, to
prevent access before elaboration (Ada2005).
charlet [Tue, 29 Mar 2005 16:20:30 +0000 (16:20 +0000)]
2005-03-29 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Analyze_Selected_Component): Do not generate an actual
subtype if code is being pre-analyzed, to prevent un-expanded
references to protected formals, among others.
(Analyze_Explicit_Dereference): If the overloaded prefix includes some
interpretation that can be a call, include the result of the call as a
possible interpretation of the dereference.
* sem_ch5.adb (Process_Bounds): Determine type of range by
pre-analyzing a copy of the original range, and then analyze the range
with the expected type.
* sem_res.adb (Check_Parameterless_Call): For an explicit dereference
with an overloaded prefix where not all interpretations yield an
access to subprogram, do not rewrite node as a call.
(Resolve_Explicit_Dereference): Recognize the previous case and rewrite
the node as a call once the context identifies the interpretation of
the prefix whose call yields the context type.
(Valid_Conversion): For the case of a conversion between
local access-to-subprogram types, check subtype conformance using
Check_Subtype_Conformant instead of Subtype_Conformant, to have a more
detailed error message.
charlet [Tue, 29 Mar 2005 16:19:33 +0000 (16:19 +0000)]
2005-03-29 Thomas Quinot <quinot@adacore.com>
* sem_cat.adb (Validate_Remote_Types_Type_Conversion): Perform check to
forbid conversion of a local access-to-subprogram type to a remote one.
* sem_util.adb (Wrong_Type): For a record type that is the expanded
equivalent type for a remote access-to-subprogram type, go back to the
original RAS entity when displaying an error message, so the casing is
the original source casing.
charlet [Tue, 29 Mar 2005 16:18:31 +0000 (16:18 +0000)]
2005-03-29 Vincent Celier <celier@adacore.com>
* prj.ads, prj.adb: (Project_Data): Add new component Display_Name
* prj-part.adb (Parse_Single_Project): Set the location of a project
on its defining identifier, rather than on the reserved word "project".
* prj-proc.adb (Expression): Adapt to the fact that default of external
references may be string expressions, not always literal strings.
(Recursive_Process): Set Display_Name equal to Name
when Location is No_Location, that is when there is no actual file.
Get the Display_Name of the project from the source, when it is not a
virtual project.
(Process): Use the Display_Name in error messages
* prj-strt.adb (External_Reference): Allow default to be string
expressions, not only literal strings.