gcc.git
20 years agortlanal.c (find_reg_note): Manually unswitch the loop.
Andrew Pinski [Fri, 2 Apr 2004 01:19:41 +0000 (01:19 +0000)]
rtlanal.c (find_reg_note): Manually unswitch the loop.

2004-04-01  Andrew Pinski  <pinskia@physics.uc.edu>

        * rtlanal.c (find_reg_note): Manually
        unswitch the loop.

From-SVN: r80347

20 years agogcc_update (files_and_dependencies): Remove gcc/ada/*.texi.
Kelley Cook [Fri, 2 Apr 2004 00:47:19 +0000 (00:47 +0000)]
gcc_update (files_and_dependencies): Remove gcc/ada/*.texi.

2004-04-01  Kelley Cook  <kcook@gcc.gnu.org>

* gcc_update (files_and_dependencies): Remove gcc/ada/*.texi.

From-SVN: r80345

20 years agoDaily bump.
GCC Administrator [Fri, 2 Apr 2004 00:17:18 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r80342

20 years agore PR target/14040 (ARM cross compiler: error: could not split insn)
Mark Mitchell [Thu, 1 Apr 2004 23:30:25 +0000 (23:30 +0000)]
re PR target/14040 (ARM cross compiler: error: could not split insn)

PR target/14040
* genemit.c (gen_split): Change prototype of generated code.
* genrecog.c (write_action): Adjust prototype for and calls to
gen_split_*.
* gensupport.c (struct queue_elem): Add split field.
(queue_pattern): Return a value.  Clear the split field.
(process_rtx): Maintain an association between an insn and the
split generated from it for a define_insn_and_split.
(process_one_cond_exec): Generate a new split for a
define_insn_and_split.
* config/arm/arm-protos.h (arm_split_constant): Add insn
parameter.
(emit_constant_insn): New function.
(arm_gen_constant): Use it.
* config/arm/arm.md: Adjust calls to arm_split_constant.

From-SVN: r80335

20 years agocgraph.c: Add overall comment.
Jan Hubicka [Thu, 1 Apr 2004 23:28:15 +0000 (01:28 +0200)]
cgraph.c: Add overall comment.

* cgraph.c: Add overall comment.
(cgraph_inline_hash): New global variable.
(cgraph_create_node): Break out from ...
(cgraph_node): ... here.
(cgraph_edge): New function.
(cgraph_create_edge): New CALL_EXPR argument; some sanity checking.
(cgraph_remove_edge): Accept edge, intead of source and destination.
(cgraph_redirect_edge_callee): New.
(cgraph_remove_node): Update all new datastructures.
(cgraph_record_call, cgraph_remove_call): Kill.
(dump_cgraph_node): Break out from ... ; dump new datastructures.
(dump_cgraph): ... here.
(cgraph_function_possibly_inlined_p): Use new hashtable.
(cgraph_clone_edge, cgraph_clone_node): New.
* cgraph.h: Include hashtab.h
(struct cgraph_global_info): Kill cloned_times, inline_once, will_be_output
fields, add inlined_to pointer.
(cgraph_node): Add pointer to next_clone.
(cgraph_remove_edge, cgraph_create_edge): Update prototype.
(cgraph_remove_call, cgraph_record_call): Kill.
(cgraph_inline_hash): Declare.
(dump_cgraph_node, cgraph_edge, cg4raph_clone_edge, cgraph_clone_node,
cgraph_redirect_edge_callee): Declare.
(cgraph_create_edges, cgraph_inline_p): Update prorotype.
(cgraph_preserve_function_body_p, verify_cgraph, verify_cgraph_node,
cgraph_mark_inline_edge, cgraph_clone_inlined_nodes): Declare.
* cgraphunit.c: Add overall comment.
(cgraph_optimize_function): Kill.
(cgraph_assemble_pending_functions): Do not assemble inline clones.
(cgraph_finalize_function): Update call of cgraph_remove_node
(record_call_1): Record call sites.
(cgraph_create_edges): Accept node instead of decl argument.
(error_found): New static variable.
(verify_cgraph_node_1, verify_cgraph_node, verify_cgraph): New functions.
(cgraph_analyze_function): Update for new datastructures.
(cgraph_finalize_compilation_unit): Plug memory leak.
(cgraph_optimize_function): Kill.
(cgraph_expand_function): Do not use cgraph_optimize_function.
(INLINED_TIMES, SET_INLINED_TIMES, cgraph_inlined_into,
cgraph_inlined_callees): Kill.
(cgraph_remove_unreachable_nodes): Verify cgraph; update handling of
clones.
(estimate_growth): Simplify.
(cgraph_clone_inlined_nodes): New function.
(cgraph_mark_inline_edge): Re-implement.
(cgraph_mark_inline): Likewise.
(cgraph_check_inline_limits): Simplify.
(cgraph_recursive_inlining_p): New.
(update_callee_keys): Break out from ...
(cgraph_decide_inlining_of_small_functions): ... here; simplify.
(cgraph_decide_inlining, cgraph_decide_inlining_incrementally):
Likewise.
(cgraph_expand_all_functions):  Remove inline clones from the ordered
list.
(cgraph_preserve_function_body_p): New predicate.
(cgraph_optimize): Verify cgraph.
* function.h (struct function): Add fields saved_tree/saved_args.
* timevar.def (TV_CGRAPH_VERIFY): Use verifier.
* toplev.c (rest_of_compilation): Do not free cfun.
* tree-inline.c: Include function.h
(struct inline_data): Add saving_p field; replace decl/current_decl by
node/current_node.
(insert_decl_map): New function.
(copy_body_r): Handle saving; update cgraph datastructure.
(copy_body): Handle recursive inlining.
(initialize_inlined_parameters): Likewise.
(expand_call_inline): Propagate node attributes; update cgraph.
(optimize_inline_calls): Verify that datastructure still match.
(save_body): New function.
* tree-inline.h (save_body): New.
* tree-optimize.c (tree_rest_of_compilation): preserve function body; do inlining.
* langhooks-def.c (LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): New.
* langhooks.c (lang_hooks): Add update_decl_after_saving.

* cp-lang. (LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): Define.
* cp-tree.h (cp_update_decl_after_saving): Declare.
* tree.c (cp_update_decl_after_saving): Define.

* Make-lang.in (com.o): Add dependnecy on function.h
* com.c: Include function.h
(finish_function): Clear DECL_STRUCT_FUNCTION.

* utils.c: Include function.h
(end_subprog_body): Clear DECL_STRUCT_FUNCTION.

From-SVN: r80334

20 years agore PR c++/14803 (Spurious warnings on conversion of pointers to member functions)
Mark Mitchell [Thu, 1 Apr 2004 23:14:55 +0000 (23:14 +0000)]
re PR c++/14803 (Spurious warnings on conversion of pointers to member functions)

PR c++/14803
* typeck.c (get_delta_difference): Call fold before returning the
value.

PR c++/14803
* g++.dg/inherit/ptrmem1.C: New test.

From-SVN: r80331

20 years agore PR target/14702 (wrong definitions of instructions mmx_pshufw, sse2_pshufd, sse2_p...
Serge Belyshev [Thu, 1 Apr 2004 22:45:25 +0000 (22:45 +0000)]
re PR target/14702 (wrong definitions of instructions mmx_pshufw, sse2_pshufd, sse2_pshuflw, sse2_pshufhw)

        PR target/14702
        * config/i386/i386.md: fix source operand constraints in
        mmx_pshufw, sse2_pshufd, sse2_pshuflw, sse2_pshufhw

From-SVN: r80330

20 years ago* fold-const.c (folda): Preserve types of comparisons.
Waldek Hebisch [Thu, 1 Apr 2004 22:30:09 +0000 (00:30 +0200)]
* fold-const.c (folda): Preserve types of comparisons.

From-SVN: r80327

20 years agomt_allocator.h (__mt_alloc<>::_S_initialize): Streamline the second half...
Paolo Carlini [Thu, 1 Apr 2004 21:47:59 +0000 (21:47 +0000)]
mt_allocator.h (__mt_alloc<>::_S_initialize): Streamline the second half...

2004-04-01  Paolo Carlini  <pcarlini@suse.de>

* include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
Streamline the second half, wrapping it in a single
'#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
conditionals inside loops.

From-SVN: r80323

20 years agore PR c++/14804 ([unit-at-a-time] initializing const data with reinterpret_cast-ed...
Richard Henderson [Thu, 1 Apr 2004 20:45:02 +0000 (12:45 -0800)]
re PR c++/14804 ([unit-at-a-time] initializing const data with reinterpret_cast-ed pointer-to-member function crashes)

        PR c++/14804
        * decl.c (cp_finish_decl): Preserve TREE_READONLY more often.
        * typeck2.c (split_nonconstant_init): Clear TREE_READONLY.

From-SVN: r80318

20 years agotoplev.c (backend_init): Move init_optimization_passes call ...
Richard Henderson [Thu, 1 Apr 2004 20:23:34 +0000 (12:23 -0800)]
toplev.c (backend_init): Move init_optimization_passes call ...

        * toplev.c (backend_init): Move init_optimization_passes call ...
        (lang_dependent_init): ... here.

From-SVN: r80317

20 years agore PR c++/14810 (tree check failures with invalid code involving templates)
Mark Mitchell [Thu, 1 Apr 2004 20:02:07 +0000 (20:02 +0000)]
re PR c++/14810 (tree check failures with invalid code involving templates)

PR c++/14810
* name-lookup.c (maybe_push_cleanup_level): Robustify.

From-SVN: r80315

20 years ago2004-04-01 Michael Koch <konqueror@gmx.de>
Michael Koch [Thu, 1 Apr 2004 19:15:05 +0000 (19:15 +0000)]
2004-04-01  Michael Koch  <konqueror@gmx.de>

* java/lang/SecurityManager.java
(checkAwtEventQueueAccess): Implemented.

From-SVN: r80314

20 years agore PR ada/14150 (Ada documentation out of date)
Arnaud Charlet [Thu, 1 Apr 2004 17:25:04 +0000 (19:25 +0200)]
re PR ada/14150 (Ada documentation out of date)

PR ada/14150
* Make-lang.in: Clean up generation of documentation

* gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version

* xgnatug.adb: Removed, replaced by xgnatugn.adb

* xgnatugn.adb: Replaces xgnatug.adb

* gnat_ug.texi: Removed, replaced by gnat_ugn.texi

* gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version

* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Removed.

From-SVN: r80308

20 years agoresolve.cc (_Jv_ResolvePoolEntry): Put field name in exception.
Gary Benson [Thu, 1 Apr 2004 17:07:03 +0000 (17:07 +0000)]
resolve.cc (_Jv_ResolvePoolEntry): Put field name in exception.

2004-04-01  Gary Benson  <gbenson@redhat.com>

* resolve.cc (_Jv_ResolvePoolEntry): Put field name in exception.
(_Jv_SearchMethodInClass): Likewise.

From-SVN: r80305

20 years agogcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with -lgcc --as-needed -lgcc_s...
Alan Modra [Thu, 1 Apr 2004 16:45:34 +0000 (16:45 +0000)]
gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with -lgcc --as-needed -lgcc_s --no-as-needed by default.

* gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with
-lgcc --as-needed -lgcc_s --no-as-needed by default.
* configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed.
* configure: Rebuilt.
* config.in: Rebuilt.
* Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT).
(stage2-start, stage3-start, stage4-start): Likewise.
(stageprofile-start, stagefeedback-start): Likewise.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r80302

20 years agosparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
Jakub Jelinek [Thu, 1 Apr 2004 16:05:22 +0000 (18:05 +0200)]
sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.

* config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
* config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
* config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
* config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
(SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
* config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
* config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
* config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
* config/sparc/t-linux: Removed.

From-SVN: r80295

20 years agore PR c++/14755 (miscompilation in bitfielded signed integers)
Jakub Jelinek [Thu, 1 Apr 2004 15:50:11 +0000 (17:50 +0200)]
re PR c++/14755 (miscompilation in bitfielded signed integers)

PR c++/14755
* fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
"bitfld++ == const" to "++bitfld == const + incr" transformations.

* gcc.c-torture/execute/20040331-1.c: New test.
* gcc.dg/20040331-1.c: New test.

From-SVN: r80294

20 years agoexpr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.
Richard Kenner [Thu, 1 Apr 2004 13:41:37 +0000 (13:41 +0000)]
expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.

* expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.
* stor-layout.c (layout_decl): Likewise.
* tree.c (get_narrower): Likewise and also use BIT_FIELD_REF_UNSIGNED.
* fold-const.c (make_bit_field_ref): Use BIT_FIELD_REF_UNSIGNED.
* print-tree.c (print_node): Handle various used of unsigned_flag.
* tree.def (BIT_FIELD_REF): Update comment.
* tree.h (TREE_UNSIGNED): Deleted.
(DECL_UNSIGNED, BIT_FIELD_REF_UNSIGNED): New macros.

* cp/class.c (VTT_TOP_LEVEL_P): Use unsigned_flag directly.

* f/com.c (ffe_truthvalue_conversion, case COMPONENT_REF):
Use DECL_UNSIGNED and integer_onep.

From-SVN: r80293

20 years ago* utils2.c: Update copyright notice.
Arnaud Charlet [Thu, 1 Apr 2004 10:11:27 +0000 (12:11 +0200)]
* utils2.c: Update copyright notice.

From-SVN: r80291

20 years ago[multiple changes]
Arnaud Charlet [Thu, 1 Apr 2004 10:04:40 +0000 (12:04 +0200)]
[multiple changes]

2004-04-01  Robert Dewar  <dewar@gnat.com>

* checks.adb: Minor reformatting throughout
Note that prev checkin added RM reference to alignment warning

2004-04-01  Ed Schonberg  <schonberg@gnat.com>

* exp_aggr.adb (Get_Component_Val): Treat a string literal as
non-static when building aggregate for bit-packed array.

* exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
function call that is itself the actual in a procedure call, build
temporary for it.

* exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
a string literal, create a temporary for it, constant folding only
handles scalars here.

2004-04-01  Vincent Celier  <celier@gnat.com>

* ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
Error_Msg_SP): New empty procedures to instantiate the Scanner.
(Style, Scanner): Instantiations of Styleg and Scng to be able to scan
tokens.
(Accumulate_Checksum, Initialize_Checksum): Remove procedures.
(Get_File_Checksum): Use the instantiated scanner to scan all the tokens
and get the checksum.

* make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
already in the Q.
Increase the Marking_Label at the end of the Multiple_Main_Loop,
instead of at the beginning.

* osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
directly.
(Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
on VMS.

* osint.ads (Multi_Unit_Index_Character): New Character global variable

* osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
not '~' directly.

* par.adb: Remove test on file name to detect language defined units.
Add test on unit name, after parsing, to detect language defined units
that are not compiled with -gnatg (except System.RPC and its children)

* par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
following units without style checking.

* switch-c.adb: Change -gnatC to -gnateI

* usage.adb: Document new switch -gnateInnn

* scng.adb (Accumulate_Token_Checksum): New procedure
(Scan): Call Accumulate_Token_Checksum after each identifier, reserved
word or literal number.
(Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
numbers.

2004-04-01  Thomas Quinot  <quinot@act-europe.fr>

* a-tasatt.adb,
g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
5vtpopde.adb: Add missing 'constant' keywords.

2004-04-01  Javier Miranda  <miranda@gnat.com>

* par-ch4.adb: (P_Allocator): Code cleanup

* sem_ch3.adb (Access_Definition): Properly set the null-excluding
attribute.

* sinfo.ads: Complete documentation of previous change

2004-04-01  GNAT Script  <nobody@gnat.com>

* Make-lang.in: Makefile automatically updated

2004-04-01  Pascal Obry  <obry@gnat.com>

* gnatlink.adb (Process_Binder_File): Remove duplicate linker options
only on VMS.  This special handling was done because an old GNU/ld bug
on Windows which has been fixed.

From-SVN: r80290

20 years agore PR libstdc++/14775 ([3.4 only] LFS tests missing)
Paolo Carlini [Thu, 1 Apr 2004 09:16:36 +0000 (09:16 +0000)]
re PR libstdc++/14775 ([3.4 only] LFS tests missing)

2004-04-01  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/14775
* acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
to _GLIBCXX_RES_LIMITS.
(GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
HAVE_LIMIT_*.
* testsuite/testsuite_hooks.h: Declare set_file_limit.
* testsuite/testsuite_hooks.cc: Define it, using getrlimit
and setrlimit(RLIMIT_FSIZE).
* testsuite/27_io/fpos/14775.cc: New.
* config.h.in: Regenerate.
* configure: Likewise.

From-SVN: r80289

20 years agobuiltins.c, [...]: Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.
Richard Kenner [Thu, 1 Apr 2004 03:50:43 +0000 (03:50 +0000)]
builtins.c, [...]: Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.

* builtins.c, c-aux-info.c, c-common.c, c-cppbuiltin.c, c-decl.c:
Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.
* c-format.c, c-opts.c, c-pretty-print.c, c-typeck.c: Likewise.
* calls.c, convert.c, dbxout.c, dojump.c, dwarf2out.c: Likewise.
* expmed.c, expr.c, fold-const.c, function.c, integrate.c: Likewise.
* optabs.c, sdbout.c, stmt.c, stor-layout.c, tree-dump.c: Likewise.
* tree.c, config/iq2000/iq2000.c, config/m32r/m32r.c: Likewise.
* config/mips/mips.c, config/rs6000/rs6000.c: Likewise.
* config/s390/s390.c, config/sparc/sparc.c, objc/objc-act.c: Likewise.
* stor-layout.c (layout_type, case COMPLEX_TYPE): Test for
REAL_TYPE, not INTEGER_TYPE.
(layout_type, case VECTOR_TYPE): Simplify code.
* tree.c (build_vector_type_for_mode): Remove dup unsigned setting.
* tree.h: Update comments.
(STRIP_NOPS): Use TYPE_UNSIGNED.
(TYPE_UNSIGNED): New macro.
(TYPE_TRAP_SIGNED): Remove now redundant check.
(SAVE_EXPR_NOPLACEHOLDER): Don't use TREE_UNSIGNED.

* cp/call.c (joust): Use TYPE_UNSIGNED, not TREE_UNSIGNED.
* cp/class.c (check_bitfield_decl): Likewise.
* cp/cvt.c (type_promotes_to): Likewise.
* cp/decl.c (finish_enum): Likewise.
* cp/mangle.c (write_builtin_type): Likewise.
* cp/semantics.c (finish_switch_cond, finish_unary_op_expr): Likewise.
* cp/typeck.c (type_after_usual_arithmetic_conversions): Likewise.
(build_binary_op): Likewise.

* f/com.c (ffecom_arrayref_): Use TYPE_UNSIGNED, not TREE_UNSIGNED.
(ffecom_expr_): Likewise.

* java/jcf-write.c (generate_bytecode_insns): Use TYPE_UNSIGNED.

* treelang/treetree.c (tree_lang_signed_or_unsigned_type):
Use TYPE_UNSIGNED, not TREE_UNSIGNED.

* ada/decl.c (gnat_to_gnu_entity, make_type_from_size):
Use TYPE_UNSIGNED, not TREE_UNSIGNED.
* ada/trans.c (tree_transform, convert_with_check): Likewise.
* ada/utils.c (gnat_signed_or_unsigned_type): Likewise.
(build_vms_descriptor, unchecked_convert): Likewise.
* ada/utils2.c (nonbinary_modular_operation): Likewise.

From-SVN: r80287

20 years agohashtab.c (htab_size): Move to top of file; mark inline.
Richard Henderson [Thu, 1 Apr 2004 01:40:43 +0000 (17:40 -0800)]
hashtab.c (htab_size): Move to top of file; mark inline.

        * hashtab.c (htab_size): Move to top of file; mark inline.
        (htab_elements): Likewise.
        (htab_mod, htab_mod_m2): New.
        (htab_delete): Refactor htab->size and htab->entries.
        (htab_empty): Likewise.
        (find_empty_slot_for_expand): Use htab_size, htab_mod, htab_mod_m2.
        (htab_find_with_hash, htab_find_slot_with_hash): Likewise.
        (htab_clear_slot): Use htab_size, htab_elements.
        (htab_traverse_noresize, htab_traverse): Likewise.

From-SVN: r80278

20 years ago* gcc.dg/arm-mmx-1.c: Add -mabi=iwmmxt to dg-options.
Paul Brook [Thu, 1 Apr 2004 00:56:55 +0000 (00:56 +0000)]
* gcc.dg/arm-mmx-1.c: Add -mabi=iwmmxt to dg-options.

From-SVN: r80265

20 years agoDaily bump.
GCC Administrator [Thu, 1 Apr 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r80262

20 years ago* function.c (put_var_into_stack): Properly set orig_reg for indirect.
Richard Kenner [Wed, 31 Mar 2004 18:13:50 +0000 (13:13 -0500)]
* function.c (put_var_into_stack): Properly set orig_reg for indirect.

From-SVN: r80254

20 years agot-darwin (LIB2FUNCS_STATIC_EXTRA): Add darwin-fpsave.asm, darwin-vecsave.asm, and...
Andrew Pinski [Wed, 31 Mar 2004 16:06:56 +0000 (16:06 +0000)]
t-darwin (LIB2FUNCS_STATIC_EXTRA): Add darwin-fpsave.asm, darwin-vecsave.asm, and darwin-world.asm.

2004-03-21  Andrew Pinski  <pinskia@physics.uc.edu>

        * config/rs6000/t-darwin (LIB2FUNCS_STATIC_EXTRA):
        Add darwin-fpsave.asm, darwin-vecsave.asm,
        and darwin-world.asm.
        (TARGET_LIBGCC2_CFLAGS): Add -Wa,-force_cpusubtype_ALL
        as the asm files contain altivec instructions.
        * config/rs6000/darwin-fpsave.asm: New file.
        * config/rs6000/darwin-vecsave.asm: New file.
        * config/rs6000/darwin-world.asm: New file.

From-SVN: r80251

20 years agogengtype-yacc.y (option, stringseq): Add missing terminating semicolon.
Zack Weinberg [Wed, 31 Mar 2004 14:45:58 +0000 (14:45 +0000)]
gengtype-yacc.y (option, stringseq): Add missing terminating semicolon.

* gengtype-yacc.y (option, stringseq): Add missing
terminating semicolon.

From-SVN: r80250

20 years agore PR java/14104 (java testsuite fails "linking simple")
Andrew Haley [Wed, 31 Mar 2004 13:36:06 +0000 (13:36 +0000)]
re PR java/14104 (java testsuite fails "linking simple")

2004-03-31  Andrew Haley  <aph@redhat.com>

        PR java/14104
        * jcf-io.c (opendir_in_zip): Tidy up error handling.

From-SVN: r80248

20 years agoc_locale.cc (__convert_to_v(long double&)): In v3 uses of sscanf...
Paolo Carlini [Wed, 31 Mar 2004 09:13:10 +0000 (09:13 +0000)]
c_locale.cc (__convert_to_v(long double&)): In v3 uses of sscanf...

2004-03-31  Paolo Carlini  <pcarlini@suse.de>

* config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
In v3 uses of sscanf, the special floating-point numbers INF,
INFINITY, etc., cannot occur in input, therefore, if the latter
is too large, ERANGE is always stored in errno, no need of finitel.

From-SVN: r80247

20 years agotree.h (optimize_function): Kill prototype.
Jan Hubicka [Wed, 31 Mar 2004 08:41:26 +0000 (10:41 +0200)]
tree.h (optimize_function): Kill prototype.

* tree.h (optimize_function): Kill prototype.
* optimize.c (dump_function, optimize_function, dump_finction): Kill.
* semantics.c (expand_body): Kill.

From-SVN: r80246

20 years ago[multiple changes]
David Edelsohn [Wed, 31 Mar 2004 04:29:13 +0000 (23:29 -0500)]
[multiple changes]

2004-03-30  David Edelsohn  <edelsohn@gnu.org>

        * config/rs6000/rs6000.md (tls_gd_32, tls_gd_64,
        tls_ld_32, tls_ld_64, tls_dtprel_32, tls_dtprel_64,
        tls_dtprel_ha_32, tls_dtprel_ha_64,
        tls_dtprel_lo_32, tls_dtprel_lo_64,
        tls_got_dtprel_64, tls_tprel_32, tls_tprel_64,
        tls_tprel_ha_32, tls_tprel_ha_64,
        tls_tprel_lo_32, tls_tprel_lo_64,
        tls_got_tprel_32, tls_got_tprel_64,
        tls_tls_32, tls_tls_64): Replace register_operand with
        gpc_reg_operand.

2004-03-30  Mostafa Hagog  <mustafa@il.ibm.com>

        * config/rs6000/rs6000.md (*ctrsi_internal1, *ctrsi_internal2,
        *ctrdi_internal1, *ctrdi_internal2, *ctrsi_internal3,
        *ctrsi_internal4, *ctrdi_internal3, *ctrdi_internal4,
        *ctrsi_internal5, *ctrsi_internal6, *ctrdi_internal5,
        *ctrdi_internal6): Replace register_operand with
        nonimmediate_operand.

From-SVN: r80114

20 years agoDaily bump.
GCC Administrator [Wed, 31 Mar 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r80104

20 years agore PR c++/14724 (Destructor not called on backwards goto past initialization)
Mark Mitchell [Tue, 30 Mar 2004 23:45:00 +0000 (23:45 +0000)]
re PR c++/14724 (Destructor not called on backwards goto past initialization)

PR c++/14724
* decl.c (start_decl_1): Do not decide whether or not to create a
new cleanup level until after the type has been completed.

PR c++/14763
* pt.c (tsubst_default_argument): Clear current_function_decl.

PR c++/14724
* g++.dg/init/goto1.C: New test.

PR c++/14763
* g++.dg/template/defarg4.C: New test.

From-SVN: r80101

20 years agore PR libstdc++/14783 (Warning in std::set constructor at bits/stl_tree.h:403)
Benjamin Kosnik [Tue, 30 Mar 2004 21:04:19 +0000 (21:04 +0000)]
re PR libstdc++/14783 (Warning in std::set constructor at bits/stl_tree.h:403)

2004-03-30  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/14783
* include/bits/stl_tree.h: Adjust initialization list order.

From-SVN: r80095

20 years agoReassociate multiply expression with an adjacent non-multiply expression.
Fariborz Jahanian [Tue, 30 Mar 2004 20:00:23 +0000 (20:00 +0000)]
Reassociate multiply expression with an adjacent non-multiply expression.

Reviewed by Roger Sayle.

From-SVN: r80093

20 years ago* hashtab.h, splay-tree.h: Use new shorter form of GTY markers.
Zack Weinberg [Tue, 30 Mar 2004 19:23:16 +0000 (19:23 +0000)]
* hashtab.h, splay-tree.h: Use new shorter form of GTY markers.

From-SVN: r80092

20 years agogengtype.c (create_option): New function.
Zack Weinberg [Tue, 30 Mar 2004 19:19:06 +0000 (19:19 +0000)]
gengtype.c (create_option): New function.

* gengtype.c (create_option): New function.
* gengtype.h: Prototype it.
* gengtype-yacc.y (stringseq): New rule.
(option): Use create_option.  Add new bare ID production.  Use
stringseq, not STRING directly.

* alias.c, bitmap.c, c-decl.c, cgraph.h, cpplib.h, cselib.h
* dwarf2out.c, emit-rtl.c, function.h, lists.c, tree.h
* varray.h, config/alpha/alpha.c, cp/name-lookup.c, cp/parser.c
* f/com.c, java/builtins.c, java/expr.c, java/jcf.h, java/parse.h:
Use new shorter form of GTY markers.

* doc/gty.texi: Rewrite.

From-SVN: r80091

20 years agodarwin.c (machopic_function_base_name): Remove current_name and getting the name...
Andrew Pinski [Tue, 30 Mar 2004 13:37:04 +0000 (13:37 +0000)]
darwin.c (machopic_function_base_name): Remove current_name and getting the name of the current function.

* config/darwin.c (machopic_function_base_name):
Remove current_name and getting the name of the
current function.

From-SVN: r80085

20 years ago(thumb_jump): Reduce the backward branch range...
Nick Clifton [Tue, 30 Mar 2004 10:31:31 +0000 (10:31 +0000)]
(thumb_jump): Reduce the backward branch range...

(thumb_jump): Reduce the backward branch range, and increase the forward branch
range, to allow for the fact that the PC will be off by 4.

From-SVN: r80083

20 years ago* .cvsignore: Add GPATH, GRTAGS, GSYMS and GTAGS (GNU GLOBAL)
Alan Modra [Tue, 30 Mar 2004 08:48:59 +0000 (08:48 +0000)]
* .cvsignore: Add GPATH, GRTAGS, GSYMS and GTAGS (GNU GLOBAL)

From-SVN: r80079

20 years ago* gcc.dg/altivec-11.c: Extend test for more valid cases.
Hartmut Penner [Tue, 30 Mar 2004 08:27:55 +0000 (08:27 +0000)]
* gcc.dg/altivec-11.c: Extend test for more valid cases.

From-SVN: r80078

20 years agors6000.c (output_vec_const_move): Find all cases of EASY_VECTOR_15_ADD_SELF.
Hartmut Penner [Tue, 30 Mar 2004 08:25:30 +0000 (08:25 +0000)]
rs6000.c (output_vec_const_move): Find all cases of EASY_VECTOR_15_ADD_SELF.

        * config/rs6000/rs6000.c (output_vec_const_move):
        Find all cases of EASY_VECTOR_15_ADD_SELF.
        (easy_vector_constant_add_self): Accept
        all vector constant loadable by vsplt* and vadd*.
        (easy_vector_same): Use easy_vector_splat_const.
        (easy_vector_const): Use easy_vector_splat_const.
        (easy_vector_splat_const): New function.
        (gen_easy_vector_constant_add_self): New function.

        * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self):
        New prototype.

        * config/rs6000/altivec.md (movv4si splitter): Change to
        emit move insn with halfed vector constant.
        (*movv8hi splitter): Likewise.
        (*movv16qi splitter): Likewise.

From-SVN: r80077

20 years agore PR target/11591 ([3.4 only] ICE in gcc.dg/altivec-5.c)
Hartmut Penner [Tue, 30 Mar 2004 06:43:51 +0000 (06:43 +0000)]
re PR target/11591 ([3.4 only] ICE in gcc.dg/altivec-5.c)

      PR 11591
      * config/rs6000/rs6000.c (rs6000_legitimate_address):
        Allow any offset to argument pointer in no-strict case.

From-SVN: r80075

20 years agoDaily bump.
GCC Administrator [Tue, 30 Mar 2004 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r80070

20 years agoUpdate comment to reflect test.
Loren J. Rittle [Mon, 29 Mar 2004 23:42:05 +0000 (23:42 +0000)]
Update comment to reflect test.

From-SVN: r80067

20 years agotoplev.c (backend_init): Add missing call to inint_optimization_passes.
Jan Hubicka [Mon, 29 Mar 2004 23:00:28 +0000 (01:00 +0200)]
toplev.c (backend_init): Add missing call to inint_optimization_passes.

* toplev.c (backend_init): Add missing call to inint_optimization_passes.
* passes.c (init_optimization_passes, finish_optimization_passes): Output cgraph
dump file in non-unit-at-a-time mode.

From-SVN: r80066

20 years agocris.h: Correct #ifdef to test for HAVE_AS_NO_MUL_BUG_ABORT_OPTION...
Hans-Peter Nilsson [Mon, 29 Mar 2004 20:40:29 +0000 (20:40 +0000)]
cris.h: Correct #ifdef to test for HAVE_AS_NO_MUL_BUG_ABORT_OPTION...

* config/cris/cris.h: Correct #ifdef to test for
HAVE_AS_NO_MUL_BUG_ABORT_OPTION, not
HAVE_AS_MUL_BUG_ABORT_OPTION.

From-SVN: r80065

20 years agoerror.c (dump_function_name): If T's DECL_LANG_SPECIFIC is null, just print the liter...
Zack Weinberg [Mon, 29 Mar 2004 17:01:59 +0000 (17:01 +0000)]
error.c (dump_function_name): If T's DECL_LANG_SPECIFIC is null, just print the literal name and return.

* error.c (dump_function_name): If T's DECL_LANG_SPECIFIC
is null, just print the literal name and return.

From-SVN: r80058

20 years agofunction.c (put_var_into_stack): If old RTL was ADDRESSOF, update the address inside...
Richard Kenner [Mon, 29 Mar 2004 14:48:45 +0000 (14:48 +0000)]
function.c (put_var_into_stack): If old RTL was ADDRESSOF, update the address inside the old RTL.

* function.c (put_var_into_stack): If old RTL was ADDRESSOF, update
the address inside the old RTL.

From-SVN: r80057

20 years ago[multiple changes]
Arnaud Charlet [Mon, 29 Mar 2004 12:03:27 +0000 (14:03 +0200)]
[multiple changes]

2004-03-29  Javier Miranda  <miranda@gnat.com>

* checks.adb (Null_Exclusion_Static_Checks): New subprogram
(Install_Null_Excluding_Check): Local subprogram that determines whether
an access node requires a runtime access check and if so inserts the
appropriate run-time check.
(Apply_Access_Check): Call Install_Null_Excluding check if required
(Apply_Constraint_Check): Call Install_Null_Excluding check if required

* checks.ads: (Null_Exclusion_Static_Checks): New subprogram

* einfo.ads: Fix typo in comment

* exp_ch3.adb (Build_Assignment): Generate conversion to the
null-excluding type to force the corresponding run-time check.
(Expand_N_Object_Declaration): Generate conversion to the null-excluding
type to force the corresponding run-time check.

* exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
the null-excluding type to force the corresponding run-time check.

* exp_ch6.adb (Expand_Call): Do not generate the run-time check in
case of access types unless they have the null-excluding attribute.

* sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
part.

* exp_util.ads: Fix typo in comment

* par.adb (P_Null_Exclusion): New subprogram
(P_Subtype_Indication): New formal that indicates if the null-excluding
part has been scanned-out and it was present

* par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231

* sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
(Aggregate_Constraint_Checks): Generate conversion to the null-excluding
type to force the corresponding run-time check
(Resolve_Aggregate): Propagate the null-excluding attribute to the array
components
(Resolve_Array_Aggregate): Carry out some static checks
(Resolve_Record_Aggregate.Get_Value): Carry out some static check

* sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
attribute must be set only if specified by means of the null-excluding
part. In addition, we must also propagate the access-constant attribute
if present.
(Access_Subprogram_Declaration, Access_Type_Declaration,
Analyze_Component_Declaration, Analyze_Object_Declaration,
Array_Type_Declaration, Process_Discriminants,
Analyze_Subtype_Declaration): Propagate the null-excluding attribute
and carry out some static checks.
(Build_Derived_Access_Type): Set the null-excluding attribute
(Derived_Type_Declaration, Process_Subtype): Carry out some static
checks.

* sem_ch4.adb (Analyze_Allocator): Carry out some static checks

* sem_ch5.adb (Analyze_Assignment): Carry out some static checks

* sem_ch6.adb (Process_Formals): Carry out some static checks.
(Set_Actual_Subtypes): Generate null-excluding subtype if the
null-excluding part was present; it is not required to be done here in
case of anonymous access types.
(Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
value.

* sem_res.adb (Resolve_Actuals): Carry out some static check
(Resolve_Null): Allow null in anonymous access

* sinfo.adb: New subprogram Null_Exclusion_Present
All_Present and Constant_Present available on access_definition nodes

* sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
object_declaration, derived_type_definition, component_definition,
discriminant_specification, access_to_object_definition,
access_function_definition, allocator, access_procedure_definition,
access_definition, parameter_specification, All_Present and
Constant_Present flags available on access_definition nodes.

2004-03-29  Robert Dewar  <dewar@gnat.com>

* fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
sem_prag.adb: Updates to handle multiple units/file

* par.adb: Change test for s-rpc to s-rp for detecting rpc and children

* par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
sem_util.adb: Minor reformatting

* sem_ch12.adb: Add comment for previous change

2004-03-29  Laurent Pautet  <pautet@act-europe.fr>

* osint.adb (Executable_Prefix): Set Exec_Name to the current
executable name when not initialized. Otherwise, use its current value.

* osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
initialize it to another executable name than the current one. This
allows to configure paths for an executable name (gnatmake) different
from the current one (gnatdist).

2004-03-29  Ed Schonberg  <schonberg@gnat.com>

* exp_ch6.adb (Expand_Call): A call to a function declared in the
current unit cannot be inlined if it appears in the body of a withed
unit, to avoid order of elaboration problems in gigi.

* exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
information for protected (wrapper) operation as well, to simplify gdb
use.

* sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
protected body, indicate that the entity for the generated spec comes
from source, to ensure that references are properly generated for it.
(Build_Body_To_Inline): Do not inline a function that returns a
controlled type.

* sem_prag.adb (Process_Convention): If subprogram is overloaded, only
apply convention to homonyms that are declared explicitly.

* sem_res.adb (Make_Call_Into_Operator): If the operation is a function
that renames an equality operator and the operands are overloaded,
resolve them with the declared formal types, before rewriting as an
operator.

2004-03-29  GNAT Script  <nobody@gnat.com>

* Make-lang.in: Makefile automatically updated

From-SVN: r80055

20 years agopthread7-rope.cc: Fix...
Paolo Carlini [Mon, 29 Mar 2004 09:54:15 +0000 (09:54 +0000)]
pthread7-rope.cc: Fix...

2004-03-29  Paolo Carlini  <pcarlini@suse.de>

* testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
on allocator behavior, the memory pointed by data2 may well be not
trashed.

From-SVN: r80051

20 years agoDaily bump.
GCC Administrator [Mon, 29 Mar 2004 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r80047

20 years ago* gcc.dg/doloop-1.c: Do not check for lack of "blt".
David Edelsohn [Sun, 28 Mar 2004 20:33:45 +0000 (20:33 +0000)]
* gcc.dg/doloop-1.c: Do not check for lack of "blt".

From-SVN: r80044

20 years agore PR c/14734 (Error recovery problem with undeclared array bounds)
Zack Weinberg [Sun, 28 Mar 2004 17:45:57 +0000 (17:45 +0000)]
re PR c/14734 (Error recovery problem with undeclared array bounds)

* c-decl.c: Verify that C_SIZEOF_STRUCT_LANG_IDENTIFIER is correct.
(struct c_binding, struct c_scope): Add chain_next
attributes to GTY markers.
(struct lang_identifier, struct lang_tree_node): Define
here...
* c-tree.h: ... not here.  No longer need to declare struct
c_binding either.  Do define C_SIZEOF_STRUCT_LANG_IDENTIFIER.
* c-lang.c, objc/objc-lang.c: Set LANG_HOOKS_IDENTIFIER_SIZE
to C_SIZEOF_STRUCT_LANG_IDENTIFIER.

PR 14734, 11944
* c-decl.c (get_parm_info): If error_mark_node is encountered
in the bindings chain, unbind and discard it; don't abort.
* testsuite/gcc.dg/noncompile/undeclared-2.c: New test.

From-SVN: r80042

20 years agore PR libstdc++/14245 ([3.4 only] problem with user-defined allocators in std::basic_...
Chavdar Botev [Sun, 28 Mar 2004 16:27:27 +0000 (16:27 +0000)]
re PR libstdc++/14245 ([3.4 only] problem with user-defined allocators in std::basic_string)

2004-03-28  Chavdar Botev  <cbotev@yahoo.com>

PR libstdc++/14245
* include/bits/basic_string.tcc
(basic_string::basic_string(const basic_string&)): Pass to
_Rep::_M_grab the actual allocator of the string being constructed
not the default constructed one.

From-SVN: r80041

20 years agoaltivec.md: (andvv16qi3...
Olga Golovanevsky [Sun, 28 Mar 2004 15:07:21 +0000 (15:07 +0000)]
altivec.md: (andvv16qi3...

* config/rs6000/altivec.md: (andvv16qi3, andv8hi3, one_cmplv16qi2,
        one_cmplv8hi2, one_cmplv4si2, iorv16qi3, iorv8hi3,): New modelling.

Co-Authored-By: Dorit Naishlos <dorit@il.ibm.com>
From-SVN: r80039

20 years agom68hc11-protos.h (m68hc11_page0_symbol_p): Declare.
Stephane Carrez [Sun, 28 Mar 2004 12:00:26 +0000 (14:00 +0200)]
m68hc11-protos.h (m68hc11_page0_symbol_p): Declare.

* config/m68hc11/m68hc11-protos.h (m68hc11_page0_symbol_p): Declare.

* config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute): New.
(m68hc11_attribute_table): New attribute "page0" to mark a global
variable as being allocated from within page0 section.
(m68hc11_encode_label): New function.
(m68hc11_strip_name_encoding): New function.
(m68hc11_page0_symbol_p): New function.
(m68hc11_indirect_p): Accept global variables marked in page0.
(m68hc11_encode_section_info): Lookup "page0" attribute.

* config/m68hc11/m68hc11.h (EXTRA_CONSTRAINT): 'R' constraint also
represents access to page0 variables.

* config/m68hc11/m68hc11.md ("*logicalsi3_zexthi"): Use gen_rtx_REG.
("*logicalsi3_silshl16_zext"): Likewise.
("*ashldi3_const32"): Likewise.
(peephole2 ashift): Likewise.

From-SVN: r80038

20 years agoc-tree.h (C_DECL_REGISTER): New.
Joseph Myers [Sun, 28 Mar 2004 00:31:41 +0000 (00:31 +0000)]
c-tree.h (C_DECL_REGISTER): New.

* c-tree.h (C_DECL_REGISTER): New.
* c-aux-info.c (gen_decl), c-decl.c (objc_mark_locals_volatile,
finish_decl, grokdeclarator, get_parm_info), c-typeck.c
(build_array_ref, c_mark_addressable): Set and use it.
* c-decl.c (grokdeclarator), c-typeck.c (c_mark_addressable):
Allow structures with volatile fields to be declared register.
Don't check TREE_ADDRESSABLE before warning about taking address
of register.
* c-decl.c (finish_decl): Don't allow structures with volatile
fields to be placed in named register.
* doc/trouble.texi: Remove reference to structures with volatile
fields in registers.

testsuite:
* gcc.dg/940409-1.c: Remove XFAIL.
* gcc.dg/reg-vol-struct-1.c: New test.

From-SVN: r80037

20 years agoDaily bump.
GCC Administrator [Sun, 28 Mar 2004 00:16:10 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r80034

20 years ago[multiple changes]
Benjamin Kosnik [Sat, 27 Mar 2004 16:21:21 +0000 (16:21 +0000)]
[multiple changes]

2004-03-27  Benjamin Kosnik  <bkoz@redhat.com>

libstdc++ PR/13598
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
(__enc_traits::_M_destroy): New.
(__enc_traits::~__enc_traits): Use it.
(__enc_traits::operator=): Use _M_destroy, _M_init.
(__enc_traits::__enc_traits): Same.

2004-03-27  Petur Runolfsson  <peturr02@ru.is>

* testsuite/ext/enc_filebuf/char/13598.cc: New.

From-SVN: r80027

20 years agofunction.c (thread_prologue_and_epilogue): Move NOTE_INSN_FUNCTION_END and NOTE_INSN_...
Ulrich Weigand [Sat, 27 Mar 2004 16:18:56 +0000 (16:18 +0000)]
function.c (thread_prologue_and_epilogue): Move NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes before the epilogue.

* function.c (thread_prologue_and_epilogue): Move
NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes
before the epilogue.

From-SVN: r80025

20 years agoexpr.c (store_constructor): Use gen_int_mode to correctly sign-extend CONST_INT value.
Ulrich Weigand [Sat, 27 Mar 2004 16:15:59 +0000 (16:15 +0000)]
expr.c (store_constructor): Use gen_int_mode to correctly sign-extend CONST_INT value.

* expr.c (store_constructor): Use gen_int_mode to correctly
sign-extend CONST_INT value.

From-SVN: r80022

20 years ago[multiple changes]
Paolo Carlini [Sat, 27 Mar 2004 10:15:49 +0000 (10:15 +0000)]
[multiple changes]

2004-03-27  Paolo Carlini  <pcarlini@suse.de>

* include/ext/mt_allocator.h: Uglify consistently names of
variables, members and classes; tidy.

2004-03-27  Dhruv Matani  <dhruvbird@gmx.net>

* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
Deallocation loop rewrote.

From-SVN: r80012

20 years agobuiltin-types.def (BT_WINT, [...]): New.
Kaveh R. Ghazi [Sat, 27 Mar 2004 05:29:40 +0000 (05:29 +0000)]
builtin-types.def (BT_WINT, [...]): New.

* builtin-types.def (BT_WINT, BT_FN_INT_WINT, BT_FN_WINT_WINT): New.
* builtins.def (DEF_C94_BUILTIN): New.  Add wctype builtins.
* doc/extend.texi: Likewise.
testsuite:
* gcc.dg/torture/builtin-wctype-1.c: New test.

From-SVN: r80011

20 years agogcc_release: Fix sanity check for argument of -p command-line options.
Gerald Pfeifer [Sat, 27 Mar 2004 01:20:45 +0000 (01:20 +0000)]
gcc_release: Fix sanity check for argument of -p command-line options.

* gcc_release: Fix sanity check for argument of -p command-line
options.  In snapshot mode, only generate diffs against the previous
snapshot if the user did not specify any old tarball explictly.

From-SVN: r80009

20 years agoDaily bump.
GCC Administrator [Sat, 27 Mar 2004 00:16:18 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r80006

20 years agoNumberFormat.java: Fix spelling of setCurrency method.
Peter Moon [Fri, 26 Mar 2004 20:25:00 +0000 (20:25 +0000)]
NumberFormat.java: Fix spelling of setCurrency method.

2004-03-26  Peter Moon  <peterm@miraculum.com>

* java/text/NumberFormat.java: Fix spelling of setCurrency
method.

From-SVN: r79994

20 years agore PR c++/13294 (namespace associations vs. specializations)
Jason Merrill [Fri, 26 Mar 2004 19:20:50 +0000 (14:20 -0500)]
re PR c++/13294 (namespace associations vs. specializations)

        PR c++/13294
        * pt.c (maybe_process_partial_specialization): Remember the
        context of a specialization.

From-SVN: r79992

20 years agoc-typeck.c (comptypes): Replace calls to TYPE_DOMAIN with TYPE_ORIG_SIZE_TYPE.
Diego Novillo [Fri, 26 Mar 2004 19:02:55 +0000 (19:02 +0000)]
c-typeck.c (comptypes): Replace calls to TYPE_DOMAIN with TYPE_ORIG_SIZE_TYPE.

* c-typeck.c (comptypes): Replace calls to TYPE_DOMAIN
  with TYPE_ORIG_SIZE_TYPE.

From-SVN: r79991

20 years agomt_allocator.h (__mt_alloc<>::allocate, [...]): Protect two instances of block->threa...
Paolo Carlini [Fri, 26 Mar 2004 16:56:09 +0000 (16:56 +0000)]
mt_allocator.h (__mt_alloc<>::allocate, [...]): Protect two instances of block->thread_id with __GTHREADS.

2004-03-26  Paolo Carlini  <pcarlini@suse.de>

* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
__mt_alloc<>::deallocate): Protect two instances of
block->thread_id with __GTHREADS.

From-SVN: r79986

20 years agore PR c/14219 (ICE with vector comparison)
Aldy Hernandez [Fri, 26 Mar 2004 11:45:19 +0000 (11:45 +0000)]
re PR c/14219 (ICE with vector comparison)

        PR 14219
        * c-typeck.c (build_binary_op): Do not allow comparisons of
        vectors.

From-SVN: r79982

20 years ago20001013-1.c: Run on 32-bit and 64-bit SPARC.
James A. Morrison [Fri, 26 Mar 2004 11:16:15 +0000 (11:16 +0000)]
20001013-1.c: Run on 32-bit and 64-bit SPARC.

* gcc.dg/20001013-1.c: Run on 32-bit and 64-bit SPARC.
* gcc.dg/20001101-1.c: Likewise.
* gcc.dg/20001102-1.c: Likewise.

From-SVN: r79981

20 years agoconfig.gcc: Remove sparc-tti-*.
James A. Morrison [Fri, 26 Mar 2004 11:13:48 +0000 (11:13 +0000)]
config.gcc: Remove sparc-tti-*.

* config.gcc: Remove sparc-tti-*.
* config/sparc/pbd.h: Delete.

* config/sparc/sol2.h: Remove note about Sun OS 4.x.
* config/sparc/aout.h: Likewise.

* config/sparc/sparc.h: Remove if 0'd code.
* config/sparc/sparc.md (call): Remove if 0'd code.
(call_value): Likewise.
(nonlocal_goto): Likewise.
(unimp_insn): Delete.

From-SVN: r79980

20 years agofold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like BIT_IOR_EXPR...
Roger Sayle [Fri, 26 Mar 2004 01:20:46 +0000 (01:20 +0000)]
fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like BIT_IOR_EXPR...

* fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like
BIT_IOR_EXPR; A^B is nonnegative when A and B are nonnegative.

* gcc.dg/compare8.c: Add an additional test for XOR.

From-SVN: r79979

20 years agore PR c/11527 (If an array "designated intializer" in a struct causes a segv.)
Richard Henderson [Fri, 26 Mar 2004 00:46:53 +0000 (16:46 -0800)]
re PR c/11527 (If an array  "designated intializer" in a struct causes a segv.)

        PR 11527
        * c-typeck.c (pop_init_level): Emit pending init elements earlier
        rather than later.
* gcc.dg/gnu89-init-3.c: New.

From-SVN: r79978

20 years ago[multiple changes]
Benjamin Kosnik [Fri, 26 Mar 2004 00:38:57 +0000 (00:38 +0000)]
[multiple changes]

2004-03-25  Gawain Bolton  <gp.bolton@computer.org>

* include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
default argument in constructors.
(_Rb_tree::_M_empty_initialize): Remove.

2004-03-25  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
* testsuite/23_containers/set/operators/1_neg.cc: Same.

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

* include/bits/cpp_type_traits.h: Changed __is_pod
completely. Now, it does not use any of the previous type_traits
to detect the pod types, and it also detects function pointers as
POD types.

* include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
which encapsulates the internal implementation of an rb_tree. Made
the allocator a base class of this class instead of the rb_tree,
which was not conforming. This _Rb_tree_impl class is also
specialized on whether the _Compare parameter is a POD type or
not. If so, then it maintains the comparison function as a data
member, otherwise it makes the _Compare parameter a base class of
itself. Also, _M_key_compare is now a function instead of a data
member, so that the above trick can work properly. Delegated the
initialization of the other data members to this newly created
class. Also, now other member functions of rb_tree must refer to
_M_key_compare as _M_impl._M_key_compare(). The other data members
(*) can be referenced to as _M_impl.(*), where
(*) includes _M_header, and _M_node_count.

From-SVN: r79977

20 years agoFix typo.
Kaveh Ghazi [Fri, 26 Mar 2004 00:30:07 +0000 (00:30 +0000)]
Fix typo.

From-SVN: r79976

20 years ago* builtins.c (fold_builtin): Fix error in last change.
Kaveh R. Ghazi [Fri, 26 Mar 2004 00:29:25 +0000 (00:29 +0000)]
* builtins.c (fold_builtin): Fix error in last change.

From-SVN: r79975

20 years agoDaily bump.
GCC Administrator [Fri, 26 Mar 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r79972

20 years agomt_allocator.h (__mt_alloc<>::tune): Add _M_min_bin, the size in bytes of the smalles...
Paolo Carlini [Thu, 25 Mar 2004 18:23:40 +0000 (18:23 +0000)]
mt_allocator.h (__mt_alloc<>::tune): Add _M_min_bin, the size in bytes of the smallest bin.

2004-03-25  Paolo Carlini  <pcarlini@suse.de>

* include/ext/mt_allocator.h (__mt_alloc<>::tune):
Add _M_min_bin, the size in bytes of the smallest bin.
(__mt_alloc<>::tune()): Tweak accordingly.
(__mt_alloc<>::tune(size_t, ...)): Likewise.
(__mt_alloc<>::block_record): Change to a union: members next
and thread_id are never used at the same time.
(__mt_alloc<>::allocate): Update consistently.
(__mt_alloc<>::deallocate): Likewise.
(__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
_S_bin_size for the configurable _M_min_size.

From-SVN: r79962

20 years ago* config/mips/mips.h: Formatting fix.
Richard Sandiford [Thu, 25 Mar 2004 18:13:01 +0000 (18:13 +0000)]
* config/mips/mips.h: Formatting fix.

From-SVN: r79961

20 years agobuiltins.def: Add ctype builtins.
Kaveh R. Ghazi [Thu, 25 Mar 2004 17:55:13 +0000 (17:55 +0000)]
builtins.def: Add ctype builtins.

* builtins.def: Add ctype builtins.
* doc/extend.texi: Likewise.
testsuite:
* gcc.dg/torture/builtin-ctype-1.c: New test.

From-SVN: r79960

20 years agobuiltins.c (fold_builtin): Add new builtin optimizations for sqrt and/or cbrt.
Kaveh R. Ghazi [Thu, 25 Mar 2004 17:51:17 +0000 (17:51 +0000)]
builtins.c (fold_builtin): Add new builtin optimizations for sqrt and/or cbrt.

* builtins.c (fold_builtin): Add new builtin optimizations for
sqrt and/or cbrt.
* fold-const.c (fold): Likewise.

testsuite:
* gcc.dg/torture/builtin-explog-1.c: Add new cases.
* gcc.dg/torture/builtin-math-1.c: Likewise.
* builtin-power-1.c: New test.

From-SVN: r79959

20 years agors6000.c (rs6000_always_hint): New variable.
David Edelsohn [Thu, 25 Mar 2004 17:43:24 +0000 (17:43 +0000)]
rs6000.c (rs6000_always_hint): New variable.

* config/rs6000/rs6000.c (rs6000_always_hint): New variable.
(rs6000_sched_groups): New variable.
(processor_target_table): Add power5.
(rs6000_override_options): Set rs6000_sched_insert_nops,
rs6000_sched_costly_dep and rs6000_sched_restricted_insns_priority
from rs6000_sched_groups.
(output_cbranch): Use rs6000_always_hint.
(rs6000_variable_issue): Use rs6000_sched_groups.
(rs6000_adjust_cost): Add CPU_POWER5.
(is_microcoded_insn): Use rs6000_sched_groups.
(is_dispatch_slot_restricted): Use rs6000_sched_groups.
Return 2 for POWER5 cracked instructions.
(is_cracked_insn): Use rs6000_sched_groups.
(is_branch_slot_insn): Use rs6000_sched_groups.
(rs6000_issue_rate): Add CPU_POWER5.
(rs6000_sched_finish): Use rs6000_sched_groups.
(rs6000_rtx_costs): Add PROCESSOR_POWER5.
* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER5.
(DEFAULT_SCHED_COSTLY_DEP): Delete.
(DEFAULT_RESTRICTED_INSNS_PRIORITY): Delete.
(DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Delete.
* config/rs6000/rs6000.md (define_attr "cpu"): Add power5.
* config/rs6000/power5.md: New file.
* doc/invoke.texi: Add power5 option.

From-SVN: r79958

20 years agostl_list.h: Created a _List_impl class and made it derive from the allocator...
Dhruv Matani [Thu, 25 Mar 2004 17:12:16 +0000 (17:12 +0000)]
stl_list.h: Created a _List_impl class and made it derive from the allocator...

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

* include/bits/stl_list.h: Created a _List_impl class and made it
derive from the allocator, instead of the list deriving from the
allocator class, which was not conformant. Changed all references
from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
as above (changed all references to the concerned variables).

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

* include/bits/stl_deque.h: Created a _Deque_impl class and made
it derive from the allocator, instead of the deque deriving from
the allocator class, which was not conformant. Changed all
references to the _M_start, _M_finish, _M_map, and _M_map_size to
_M_impl.*.
(_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
qualification in 2 places where it was missing.
(_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
above.
* include/bits/deque.tcc: Same as above (changed all references to
the concerned variables).

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

* include/bits/stl_vector.h: Created a _Vector_impl class and made
it derive from the allocator, instead of the _Vector_base class,
deriving from the allocator which was not conformant. Changed all
references to the _M_start, _M_finish, and _M_end_of_storage to
_M_impl.*.
* include/bits/vector.tcc: Same as above (changed all references
to the concerned variables).

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

* testsuite/23_containers/deque/cons/clear_allocator.cc: New.
* testsuite/23_containers/list/cons/clear_allocator.cc: New.
* testsuite/23_containers/vector/cons/clear_allocator.cc: New.

From-SVN: r79957

20 years agocfgrtl.c, [...]: Fix comment typos.
Kazu Hirata [Thu, 25 Mar 2004 17:04:45 +0000 (17:04 +0000)]
cfgrtl.c, [...]: Fix comment typos.

gcc/
* cfgrtl.c, dbxout.c, tree.def, config/darwin.h,
config/arm/arm.c, objc/objc-act.c: Fix comment typos.
* doc/invoke.texi: Fix a typo.

cp/
* cxx-pretty-print.c: Fix comment typos.

From-SVN: r79956

20 years agore PR middle-end/9707 (Unnecessary range test in switches with less than 4 cases)
Kazu Hirata [Thu, 25 Mar 2004 16:16:41 +0000 (16:16 +0000)]
re PR middle-end/9707 (Unnecessary range test in switches with less than 4 cases)

PR optimization/9707.
* stmt.c (emit_case_nodes): Emit equality comparisons instead
of recursing if both children are single-valued cases with no
children.

From-SVN: r79954

20 years ago[multiple changes]
Arnaud Charlet [Thu, 25 Mar 2004 15:59:29 +0000 (16:59 +0100)]
[multiple changes]

2004-03-25  Vasiliy Fofanov  <fofanov@act-europe.fr>

* memtrack.adb: Log realloc calls, which are treated as free followed
by alloc.

2004-03-25  Vincent Celier  <celier@gnat.com>

* prj-makr.adb (Process_Directories): Detect when a file contains
several units. Do not include such files in the config pragmas or
in the naming scheme.

* prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
Resolve links only when not in Trusted_Mode.
(Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
Do not resolve links for the display names.

* prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
resolve links when computing the display names.

2004-03-25  Thomas Quinot  <quinot@act-europe.fr>

* sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
attribute reference does not denote a subtype, it can be any
expression that has a classwide type, potentially after an implicit
dereference.  In particular, the prefix can be a view conversion for
a classwide type (for which Is_Object_Reference holds), but it can
also be a value conversion for an access-to-classwide type. In the
latter case, there is an implicit dereference, and the original node
for the prefix does not verify Is_Object_Reference.

* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
conversion of a discriminant-dependent component of a mutable object
is one itself.

2004-03-25  Ed Schonberg  <schonberg@gnat.com>

* freeze.adb (Freeze_Entity): When an inherited subprogram is
inherited, has convention C, and has unconstrained array parameters,
place the corresponding warning on the derived type declaration rather
than the original subprogram.

* sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
indication on renaming declaration, if formal has a box and actual
is absent.

* sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
determine whether to generate an implicit or explicit reference to
the renamed entity.

* sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
subprogram renaming comes from a defaulted formal subprogram in an
instance.

2004-03-25  Gary Dismukes  <dismukes@gnat.com>

* sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
value expressions to ensure that calls within a component definition
will be checked (since those are evaluated during the record type's
elaboration).

2004-03-25  Arnaud Charlet  <charlet@act-europe.fr>

* s-tpobop.adb: Code clean up:
(Requeue_Call): Extract from PO_Service_Entries to remove duplicated
code.
(PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.

2004-03-25  Jose Ruiz  <ruiz@act-europe.fr>

* Makefile.in: Clean up in the ravenscar run time.

From-SVN: r79953

20 years agoarm.c (vfp_print_multi): Remove.
Paul Brook [Thu, 25 Mar 2004 11:36:57 +0000 (11:36 +0000)]
arm.c (vfp_print_multi): Remove.

* config/arm/arm.c (vfp_print_multi): Remove.
(arm_output_fldmx): New function.
(vfp_emit_fstmx): Return block size, not insn. Add ARM10 VFPr1 bugfix.
(arm_expand_prologue): Update to match.
(arm_get_vfp_saved_size): New Function.
(arm_get_frame_offsets): Use it.
(arm_output_epilogue): Use new functions.

From-SVN: r79950

20 years agogcc_release (FTP_PATH): Use /var/ftp instead of ~ftp, and only set at a single place.
Gerald Pfeifer [Thu, 25 Mar 2004 10:57:50 +0000 (10:57 +0000)]
gcc_release (FTP_PATH): Use /var/ftp instead of ~ftp, and only set at a single place.

* gcc_release (FTP_PATH): Use /var/ftp instead of ~ftp, and
only set at a single place.

From-SVN: r79949

20 years agore PR java/14689 (jcf-path.c missing closedir)
Marcus Meissner [Thu, 25 Mar 2004 09:14:45 +0000 (09:14 +0000)]
re PR java/14689 (jcf-path.c missing closedir)

PR java/14689:
* jcf-path.c (jcf_path_extdirs_arg): Add missing closedir.

From-SVN: r79948

20 years agoMakefile.tpl (top level bootstrap support): Remove now-unneeded STRICT_WARN, WARN_CFL...
Nathanael Nerode [Thu, 25 Mar 2004 01:37:39 +0000 (01:37 +0000)]
Makefile.tpl (top level bootstrap support): Remove now-unneeded STRICT_WARN, WARN_CFLAGS flags passed down to make.

* Makefile.tpl (top level bootstrap support): Remove now-unneeded
STRICT_WARN, WARN_CFLAGS flags passed down to make.
* Makefile.in: Regenerate.

From-SVN: r79946

20 years agoalias.c (alias_invariant, [...]): Mark GTY.
Richard Henderson [Thu, 25 Mar 2004 00:58:57 +0000 (16:58 -0800)]
alias.c (alias_invariant, [...]): Mark GTY.

        * alias.c (alias_invariant, alias_invariant_size): Mark GTY.
        (reg_known_value, reg_known_value_size): Likewise; make static.
        (reg_known_equiv_p): Make static.
        (clear_reg_alias_info): Update for new indexing.
        (get_reg_known_value, set_reg_known_value): New.
        (get_reg_known_equiv_p, set_reg_known_equiv_p): New.
        (canon_rtx): Use them.
        (init_alias_analysis): Likewise.  Allocate reg_known_value with gc.
        Don't play queer offsetting games with reg_known_value and
        reg_known_equiv_p.
        (end_alias_analysis): Free reg_known_value with gc.
        * rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare.
        * sched-deps.c (reg_known_equiv_p, reg_known_value): Remove.
        (deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new
        functions instead.

From-SVN: r79945

20 years agoDaily bump.
GCC Administrator [Thu, 25 Mar 2004 00:16:17 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r79941

20 years agodwarf2asm.c, [...]: Update copyright.
Kazu Hirata [Wed, 24 Mar 2004 23:45:50 +0000 (23:45 +0000)]
dwarf2asm.c, [...]: Update copyright.

gcc/
* dwarf2asm.c, loop.h, pretty-print.c, pretty-print.h,
config/i386/mmintrin.h: Update copyright.

cp/
* cxx-pretty-print.c, cxx-pretty-print.h, decl.h, friend.c:
Update copyright.

From-SVN: r79938

20 years agoconfigure.ac: Add --enable-werror-always (for top level bootstrap support).
Nathanael Nerode [Wed, 24 Mar 2004 22:08:39 +0000 (22:08 +0000)]
configure.ac: Add --enable-werror-always (for top level bootstrap support).

(gcc)
* configure.ac: Add --enable-werror-always (for top level bootstrap
support).
* configure: Regenerate.

(top level)
* configure.in (top level bootstrap support): Rework --enable-werror
to set @stage2_werror_flag@.
* configure: Regenerate.
* Makefile.tpl (top level bootstrap support): Pass
@stage2_werror_flag@ down to configure in stages 2 and 3.
* Makefile.in: Regenerate.

From-SVN: r79935

20 years agomalloc_allocator.h: Fixed the construct function to call global placement new instead...
Dhruv Matani [Wed, 24 Mar 2004 21:40:01 +0000 (21:40 +0000)]
malloc_allocator.h: Fixed the construct function to call global placement new instead of assignment.

2004-03-24  Dhruv Matani  <dhruvbird@gmx.net>

* ext/malloc_allocator.h: Fixed the construct function to call
global placement new instead of assignment. Added a check after
the return from malloc to check whether returned pointer is NULL,
and if so, throw std::bad_alloc().
* ext/debug_allocator.h: Added a check in the deallocate function
to check whether the user has passed a NULL pointer or not.

From-SVN: r79934

20 years agoallocator.html: Add bitmap_allocator links.
Benjamin Kosnik [Wed, 24 Mar 2004 21:30:26 +0000 (21:30 +0000)]
allocator.html: Add bitmap_allocator links.

2004-03-24  Benjamin Kosnik  <bkoz@redhat.com>

* docs/html/20_util/allocator.html: Add bitmap_allocator links.

From-SVN: r79933