1. 27 Mar, 2004 2 commits
  2. 26 Mar, 2004 13 commits
  3. 25 Mar, 2004 15 commits
    • mt_allocator.h (__mt_alloc<>::tune): Add _M_min_bin, the size in bytes of the smallest bin. · 90ceccd4
      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
      Paolo Carlini committed
    • * config/mips/mips.h: Formatting fix. · 0d63bf21
      From-SVN: r79961
      Richard Sandiford committed
    • builtins.def: Add ctype builtins. · 740e5b6f
      	* builtins.def: Add ctype builtins.
      	* doc/extend.texi: Likewise.
      testsuite:
      	* gcc.dg/torture/builtin-ctype-1.c: New test.
      
      From-SVN: r79960
      Kaveh R. Ghazi committed
    • builtins.c (fold_builtin): Add new builtin optimizations for sqrt and/or cbrt. · e19f6bde
      	* 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
      Kaveh R. Ghazi committed
    • rs6000.c (rs6000_always_hint): New variable. · ec507f2d
      	* 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
      David Edelsohn committed
    • stl_list.h: Created a _List_impl class and made it derive from the allocator... · 03f9ea44
      
      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
      Dhruv Matani committed
    • cfgrtl.c, [...]: Fix comment typos. · 666c27b9
      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
      Kazu Hirata committed
    • re PR middle-end/9707 (Unnecessary range test in switches with less than 4 cases) · 43a21dfc
      	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
      Kazu Hirata committed
    • [multiple changes] · 6d11af89
      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
      Arnaud Charlet committed
    • arm.c (vfp_print_multi): Remove. · 9728c9d1
      	* 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
      Paul Brook committed
    • gcc_release (FTP_PATH): Use /var/ftp instead of ~ftp, and only set at a single place. · 32f4b1ed
      	* gcc_release (FTP_PATH): Use /var/ftp instead of ~ftp, and
      	only set at a single place.
      
      From-SVN: r79949
      Gerald Pfeifer committed
    • re PR java/14689 (jcf-path.c missing closedir) · f6e9619a
      	PR java/14689:
      	* jcf-path.c (jcf_path_extdirs_arg): Add missing closedir.
      
      From-SVN: r79948
      Marcus Meissner committed
    • Makefile.tpl (top level bootstrap support): Remove now-unneeded STRICT_WARN,… · 7caf53cb
      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
      Nathanael Nerode committed
    • alias.c (alias_invariant, [...]): Mark GTY. · bb1acb3e
              * 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
      Richard Henderson committed
    • Daily bump. · bbcb76f2
      From-SVN: r79941
      GCC Administrator committed
  4. 24 Mar, 2004 10 commits
    • dwarf2asm.c, [...]: Update copyright. · ef335eb8
      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
      Kazu Hirata committed
    • configure.ac: Add --enable-werror-always (for top level bootstrap support). · 09a9c095
      (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
      Nathanael Nerode committed
    • malloc_allocator.h: Fixed the construct function to call global placement new… · 58c95921
      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
      Dhruv Matani committed
    • allocator.html: Add bitmap_allocator links. · 8367b9c1
      
      2004-03-24  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* docs/html/20_util/allocator.html: Add bitmap_allocator links.
      
      From-SVN: r79933
      Benjamin Kosnik committed
    • prune.exp (prune_gcc_output): Ignore errata warning from IA64 assembler. · d62c1a1f
      gcc/testsuite/:
      	* lib/prune.exp (prune_gcc_output): Ignore errata warning from
      	IA64 assembler.
      
      libstdc++-v3/:
      	* testsuite/lib/prune.exp (prune_g++_output): Ignore errata
      	warning from IA64 assembler.
      
      From-SVN: r79929
      Andreas Schwab committed
    • objc-act.c (objc_comptypes): Treat comparisons between 'Class' and '<class> *'… · f75963f5
      objc-act.c (objc_comptypes): Treat comparisons between 'Class' and '<class> *' as explicitly invalid.
      
      [gcc/ChangeLog]
      2004-03-24  Ziemowit Laski  <zlaski@apple.com>
      
              * objc/objc-act.c (objc_comptypes): Treat comparisons
              between 'Class' and '<class> *' as explicitly invalid.
      
      From-SVN: r79928
      Ziemowit Laski committed
    • invoke.texi (-frename-registers): Add enabled at -O3. · 8d3b3fb7
      	* doc/invoke.texi (-frename-registers: Add enabled at -O3.
      	(-fprofile-values): Add enabled with profile-{generate,use}.
      	(-fvpt): Same.
      	(-ftracer): Add enabled with profile-use.
      	(-funit-at-a-time): Add enabled at -O2,-O3.
      	(-funroll-loops): Add enabled with profile-use.
      	(-funswitch-loops): Add enabled with profile-use.  Remove duplicates.
      	(max-gcse-passes): Mention default.
      	(max-cse-path-length): Mention default.
      
      From-SVN: r79925
      David Edelsohn committed
    • bitmap_allocator.h: (_Bit_scan_forward) -> Made this function call __builtin_ctz instead of the... · 71f9a9d1
      
      2004-03-24  Dhruv Matani  <dhruvbird@gmx.net>
      
      	* include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
      	function call __builtin_ctz instead of the while loop.
      	(allocate) -> If condition has __builtin_expect.
      	(deallocate) -> Ditto.
      	Renamed a few left-over variables and typedefs according to the
      	C++STYLE mentioned in the documentation.
      	Protected calls to __gthread* by __gthread_active_p(), whose value
      	is cached in the local variable __threads_active.
      
      From-SVN: r79924
      Dhruv Matani committed
    • Makefile.in (STRICT2_WARN): Reorder. · 643d3bd2
      2004-03-24  Nathanael Nerode  <neroden@gcc.gnu.org>
      
      	* Makefile.in (STRICT2_WARN): Reorder.
      	* configure.ac: Check for -Wold-style-definition, and use it
      	in strict1_warn if it's available.
      	* configure: Regnerate.
      
      From-SVN: r79922
      Nathanael Nerode committed
    • config.gcc: Add --with-abi= · 5848830f
      	* config.gcc <arm>: Add --with-abi=
      	* config/arm/arm-protos.h (arm_get_frame_size, thumb_get_frame_size,
      	thumb_far_jump_used): Remove prototypes.
      	(arm_needs_doubleword_align): Add prototype.
      	(thumb_compute_initial_elimination_offset): Ditto.
      	* config/arm/arm.c (arm_get_frame_offsets): New function.
      	(use_return_insn, output_return_instruction, arm_output_epilogue,
      	arm_output_function_epilogue, arm_compute_initial_elimination_offset,
      	arm_expand_prologue, thumb_expand_epilogue): Use it.
      	(arm_abi, target_abi_name, all_arm_abis): New variables.
      	(arm_override_options): Set them.  Set structure padding for AAPCS.
      	(arm_return_in_memory): Update ABI check.
      	(arm_init_cumulative_args): Initialize can_split.
      	(arm_needs_doubleword_align): New function.
      	(arm_function_arg): Don't split args after pushing to stack. Handle
      	doubleword/even reg alignment.
      	(arm_va_arg): Handle all doubleword aligned args.
      	(add_minpoolforward ref, dump_minpool, push_minpool_fix): Align based
      	on ABI, not CPU.
      	(arm_compute_save_reg0_reg12_mask): Fix comment.
      	(thumb_get_frame_size, thumb_get_frame_size): Remove.
      	(thumb_jump_far_used_p): Remove superfluous argument.  Return save
      	value for alignment.
      	(thumb_unexpanded_epilogue, thumb_output_function_prologue): Change
      	to match.
      	(thumb_compute_initial_elimination_offset): New function.
      	(thumb_expand_prologue): Use arm_get_frame_offsets.  Remove
      	unneccessary rounding.
      	* config/arm/arm.h (target_abi_name): Declare.
      	(ARM_DOUBLEWORD_ALIGN, DOUBLEWORD_ALIGNMENT, TARGET_IWMMXT_ABI,
      	arm_abi_type, ARM_DEFAULT_ABI): Define.
      	(ARM_FLAG_ATPCS): Remove.
      	(TARGET_OPTIONS, OPTION_DEFAULT_SPECS): Add -mabi=.
      	(BIGGEST_ALIGNMENT, PREFERRED_STACK_BOUNDARY, STACK_BOUNDARY): Use it.
      	(ADJUST_FIELD_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT,
      	TYPE_NEEDS_IWMMXT_ALIGNMENT): Remove.
      	(LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P):
      	Contitionalize on ABI, not CPU.
      	(struct arm_stack_offsets): Define.
      	(struct machine_function): Add stack_offsets.  Remove frame_size.
      	(FUNCTION_ARG_PARTIAL_NREGS): Don't split if previous args have been
      	pushed.
      	(FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY): Handle general
      	doubleword alignment.
      	(THUMB_INITIAL_ELIMINATION_OFFSET,
      	ARM_INITIAL_ELIMINATION_OFFSET): Remove.
      	(INITIAL_ELIMINATION_OFFSET): Call functions directly.
      	* config/arm/arm.md (align_8): Enable for all targets.
      	* config/arm/netbsd-elf.h (TARGET_DEFAULT): Remove TARGET_ATPCS.
      	(ARM_DEFAULT_ABI): Define.
      	* doc/invoke.texi <ARM>: Document -mabi=. Update documentation for
      	-mstructure-size-boundary.
      
      From-SVN: r79921
      Paul Brook committed