- 03 Apr, 2004 4 commits
-
-
* fold-const.c (fold) <PLUS_EXPR>: Guard (-A)+B -> B-A transformation with reorder_operands_p. From-SVN: r80381
Roger Sayle committed -
From-SVN: r80380
Jan Hubicka committed -
2004-04-03 Paolo Carlini <pcarlini@suse.de> * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out some duplicated code. (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used in the single threaded case. * testsuite/performance/20_util/allocator/list_sort_search.cc: Reorder and renumber the tests consistently with the other testfiles. * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. From-SVN: r80375
Paolo Carlini committed -
From-SVN: r80366
GCC Administrator committed
-
- 02 Apr, 2004 10 commits
-
-
* g++.dg/README: Bring up to date with new subdirectories; remove duplicate subdirectory lines. From-SVN: r80363
Nathanael Nerode committed -
2004-04-02 Gabor Loki <loki@inf.u-szeged.hu> * opts.c (decode_options): Do function inlining with very small max-inline-insns-* parameters when optimizing for size. From-SVN: r80359
Gabor Loki committed -
mt_allocator.h (__mt_alloc<>::deallocate): Rearrange arithmetic to avoid computing two divisions at each deallocation. 2004-04-02 Paolo Carlini <pcarlini@suse.de> * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): Rearrange arithmetic to avoid computing two divisions at each deallocation. From-SVN: r80356
Paolo Carlini committed -
2004-04-02 Vladimir Makarov <vmakarov@redhat.com> * config/i386/i386.h (TARGET_NOCONA): New macro. (TARGET_CPU_CPP_BUILTINS): Add code for Nocona. (processor_type): Add PROCESSOR_NOCONA. * config/i386/i386.md (cpu): Add nocona to the attribute values. * config/i386/i386.c (nocona_cost): New variable. (m_NOCONA): New macro. (x86_push_memory, x86_movx, x86_cmove, x86_deep_branch, x86_branch_hints, x86_use_sahf, x86_single_stringop, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_decompose_lea, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_sse_load0_by_pxor, x86_ext_80387_constants, x86_four_jump_limit): (override_options): Add nocona_cost to processor_target_table. Set up PROCESSOR_NOCONA for Nocona entry in processor_alias_table. (incdec_operand): Prevent inc/dec generation for Nocona too. (ix86_issue_rate): Add PROCESSOR_NOCONA. From-SVN: r80353
Vladimir Makarov committed -
cp: PR c++/14007 * pt.c (check_cv_quals_for_unify): Correct logic for disallowed cv-qualifier unification. * tree.c (cp_build_qualified_type_real): Renable DR295 logic. testsuite: PR c++/14007 * g++.dg/template/unify5.C: New. * g++.dg/template/unify6.C: New. * g++.dg/template/qualttp20.C: Adjust. * g++.old-deja/g++.jason/report.C: Adjust. * g++.old-deja/g++.other/qual1.C: Adjust. From-SVN: r80351
Nathan Sidwell committed -
Update copyright notice. From-SVN: r80350
Arnaud Charlet committed -
* gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags. Replace ifinfo by ifnottex, to make makeinfo --html happy again. Add info directory entry and category. From-SVN: r80349
Arnaud Charlet committed -
2004-04-01 Andrew Pinski <pinskia@physics.uc.edu> * rtlanal.c (find_reg_note): Manually unswitch the loop. From-SVN: r80347
Andrew Pinski committed -
2004-04-01 Kelley Cook <kcook@gcc.gnu.org> * gcc_update (files_and_dependencies): Remove gcc/ada/*.texi. From-SVN: r80345
Kelley Cook committed -
From-SVN: r80342
GCC Administrator committed
-
- 01 Apr, 2004 23 commits
-
-
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
Mark Mitchell committed -
* 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
Jan Hubicka committed -
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
Mark Mitchell committed -
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
Serge Belyshev committed -
From-SVN: r80327
Waldek Hebisch committed -
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
Paolo Carlini committed -
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
Richard Henderson committed -
* toplev.c (backend_init): Move init_optimization_passes call ... (lang_dependent_init): ... here. From-SVN: r80317
Richard Henderson committed -
PR c++/14810 * name-lookup.c (maybe_push_cleanup_level): Robustify. From-SVN: r80315
Mark Mitchell committed -
* java/lang/SecurityManager.java (checkAwtEventQueueAccess): Implemented. From-SVN: r80314
Michael Koch committed -
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
Arnaud Charlet committed -
2004-04-01 Gary Benson <gbenson@redhat.com> * resolve.cc (_Jv_ResolvePoolEntry): Put field name in exception. (_Jv_SearchMethodInClass): Likewise. From-SVN: r80305
Gary Benson committed -
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
Alan Modra committed -
* 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
Jakub Jelinek committed -
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
Jakub Jelinek committed -
* 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
Richard Kenner committed -
From-SVN: r80291
Arnaud Charlet committed -
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
Arnaud Charlet committed -
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
Paolo Carlini committed -
* 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
Richard Kenner committed -
* 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
Richard Henderson committed -
From-SVN: r80265
Paul Brook committed -
From-SVN: r80262
GCC Administrator committed
-
- 31 Mar, 2004 3 commits
-
-
From-SVN: r80254
Richard Kenner committed -
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
Andrew Pinski committed -
* gengtype-yacc.y (option, stringseq): Add missing terminating semicolon. From-SVN: r80250
Zack Weinberg committed
-