Commit Graph

57578 Commits

Author SHA1 Message Date
GCC Administrator
d9a91b5545 Daily bump.
From-SVN: r80469
2004-04-07 00:17:07 +00:00
Jakub Jelinek
e2af33815e i386-sse-8.c: Don't use -march=pentium3 on x86_64.
* gcc.dg/i386-sse-8.c: Don't use -march=pentium3 on x86_64.
	* gcc.dg/i386-local.c: Expect %edi, not %eax register on x86_64.
	* gcc.dg/20020103-1.c: Add -fno-asynchronous-unwind-tables to
	options.

From-SVN: r80464
2004-04-06 22:29:09 +02:00
Uros Bizjak
6c7cf1f021 builtins.c: Implement support for sincos function.
2004-04-06  Uros Bizjak  <uros@kss-loka.si>

	* builtins.c: Implement support for sincos function.
	(expand_builtin_mathfn): Remove BUILT_IN_SIN{,F,L} and
	BUILT_IN_COS{,F,L}.
	(expand_builtin_mathfn_3): New function.
	(expand_builtin): Expand BUILT_IN_SIN{,F,L} and
	BUILT_IN_COS{,F,L} using expand_builtin_mathfn_3 if
	flag_unsafe_math_optimization is set.

	* optabs.h (enum optab_index): Add new OTI_sincos.
	(sincos_optab): Define corresponding macro.

	* optabs.c (init_optabs): Initialize sincos_optab.
	(expand_twoval_unop): New function.

	* genopinit.c (optabs): Implement sincos_optab using sincos?f3
	patterns.

	* reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_SINCOS_COS
	and UNSPEC_SINCOS_SIN.

	* config/i386/i386.md (sincosdf3, sincossf3, *sincosextendsfdf3,
	sincosxf3): New patterns to implement sincos, sincosf and sincosl
	built-ins as inline x87 intrinsics. Define splits for
	sindf2, sinsf2, *sinextendsfdf2, sinxf2, cosdf2,
	cossf2, *cosextendsfdf2 and cosxf2 patterns from corresponding
	sincos patterns.
	(sindf2, sinsf2, sinxf2): Rename to *sindf2, *sinsf2, *sinxf2.
	(cosdf2, cossf2, cosxf2): Rename to *cosdf2, *cossf2, *cosxf2.

	(UNSPEC_SINCOS_SIN, UNPEC_SINCOS_COS): New unspecs to represent
	x87's unspec insn.

	* gcc.dg/builtins-36.c: New test.

From-SVN: r80463
2004-04-06 19:34:33 +00:00
Devang Patel
23bd1514c1 re PR target/14467 (Compiling on Mac OS X 10.1.5 broken)
PR 14467
     * config/darwin.h (LINK_COMMAND_SPEC): Use c++filt instead of c++filt3.

From-SVN: r80461
2004-04-06 11:44:14 -07:00
H.J. Lu
652466353b gcconfig.h (PREFETCH): Use __builtin_prefetch for gcc >= 3.0.
2004-04-06  H.J. Lu  <hongjiu.lu@intel.com>

	* include/private/gcconfig.h (PREFETCH): Use __builtin_prefetch
	for gcc >= 3.0.
	(PREFETCH_FOR_WRITE): Likewise.

From-SVN: r80459
2004-04-06 11:05:05 -07:00
David Edelsohn
bef1d7003f configure.in (powerpc-*-aix*): Remove target-libada from noconfigdirs.
* configure.in (powerpc-*-aix*): Remove target-libada from noconfigdirs.
        (rs6000-*-aix*): Same.
        * configure: Regenerate.

From-SVN: r80458
2004-04-06 13:16:54 -04:00
John David Anglin
c512449722 * doc/install.texi: Update HP-UX 11 installation procedure.
From-SVN: r80457
2004-04-06 16:46:27 +00:00
Paul Brook
5f3b79c570 * README.gcc: Remove obsolete contraint on testcases.
From-SVN: r80455
2004-04-06 15:28:20 +00:00
Paul Brook
485d61a797 * doc/sourcebuild.texi: Remove obsolete contraint on testcases.
From-SVN: r80454
2004-04-06 14:42:35 +00:00
Arnaud Charlet
3984e89a18 [multiple changes]
2004-04-06  Pascal Obry  <obry@gnat.com>

	* adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.

	* osint.adb (Program_Name): Do not look past a directory separator.

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

	* atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).

	* exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
	requirement for preserving a copy of the original assignment node.

	* sinfo.ads: Update comment (Original_Tree -> Original_Node).

2004-04-06  Olivier Hainque  <hainque@act-europe.fr>

	(__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
	when supported.

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

	* sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
	operator calls in functional notation, and apply
	Universal_Interpretation to operands, not to their type.

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

	* 5wdirval.adb: Minor reformatting

2004-04-06  Ed Falis  <falis@gnat.com>

	* gnat_rm.texi: Improve a reference to the GCC manual

From-SVN: r80453
2004-04-06 16:21:20 +02:00
Kaz Kojima
13ecc9e003 sh.c (prepare_move_operands): Use emit_call_insn when the TLS address is generated by a function call.
* config/sh/sh.c (prepare_move_operands): Use emit_call_insn
	when the TLS address is generated by a function call.
	* config/sh/sh.md (tls_global_dynamic): Use a call expression.
	(tls_local_dynamic): Likewise.

From-SVN: r80450
2004-04-06 05:58:44 +00:00
GCC Administrator
cb07f7bbd4 Daily bump.
From-SVN: r80444
2004-04-06 00:16:32 +00:00
Paul Brook
67c55b2293 re PR c++/2123 (Array initializer)
PR2123
	* g++.gd/expr/anew1.C: XFAIL and make reproducible.  Call abort on
	failure and exit(0) on success.
	* g++.gd/expr/anew2.C: Ditto.
	* g++.gd/expr/anew3.C: Ditto.
	* g++.gd/expr/anew4.C: Ditto.

From-SVN: r80440
2004-04-05 23:02:22 +00:00
Paolo Carlini
268d3b1832 mt_allocator.h (__mt_alloc<>::deallocate): The critical section is actually very small, only two assignments.
2004-04-05  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
	The critical section is actually very small, only two assignments.

From-SVN: r80439
2004-04-05 22:46:04 +00:00
Andrew Pinski
e0e4ac7fb4 tree.c (reconstruct_complex_type): Use TYPE_READONLY and TYPE_VOLATILE.
2004-04-05  Andrew Pinski  <pinskia@physics.uc.edu>

        * tree.c (reconstruct_complex_type): Use TYPE_READONLY
        and TYPE_VOLATILE.

From-SVN: r80438
2004-04-05 15:32:37 -07:00
Ranjit Mathew
54bcf05e52 * MAINTAINERS: Add myself to write-after-approval.
From-SVN: r80436
2004-04-05 19:39:20 +00:00
Caroline Tice
0855eab7a3 gcc.c (combine_flag): New global variable, for new driver option.
2004-04-05  Caroline Tice  <ctice@apple.com>

        * gcc.c (combine_flag): New global variable, for new driver option.
        (struct compiler): Add two new fields, to be used when
        combining multiple input files in a single pass (IMA).
        (default_compilers):  Add values for the new fields to all
        compiler entries. Modify the "@c" compiler entry for doing IMA
        properly with "-save-temps" and the "combine" flag.
        (option_map):  Add new driver option, "--combine", to tell driver
        to pass multiple input files to compiler at one time.
        (have_o_argbuf_index): New global variable.
        (store_arg): Modify to assign value to have_o_argbuf_index.
        (struct infile):  Add three new fields, to help with IMA.
        (display_help): Add help for new "combine" option.
        (process_command): Remove local variable have_o; add code to check
        for new "combine" option; remove assignment to combine_inputs.
        (do_spec_1):  Modify to deal with IMA better.
        (main): Make variable 'lang_n_infiles' local to entire function
        rather than to a single block.  Use flag combine_flag to
        determine whether to do IMA or not; Modify loop initializing
        infiles to deal properly with linker files.
        Add code for doing preprocessing in presence of
        IMA with "-save-temps" flag.  Modify "main" loop to handle
        multiple input files, in multiple languages, with or without
        preprocessing,  gracefully.
        * toplev.c (set_src_pwd): Modify to not complain if attempting to
        re-set it to same directory it's previously been set to (avoid
        irritating, meaningless warning messages when doing IMA with
        save-temps).
        * doc/invoke.texi: Add "-combine" to list of Overall Options;
        remove documentation about IMA that is no longer accurate; Add
        documentation explaining what "-combine" does.
        * ada/lang-specs.h: Add initialization values for new fields in
        "struct compiler".
        * cp/lang-specs.h: Likewise.
        * f/lang-specs.h: Likewise.
        * java/lang-specs.h: Likewise.
        * objc/lang-specs.h: Likewise.
        * treelang/lang-specs.h: Likewise.

Fix gcc driver to work properly with IMI.

From-SVN: r80435
2004-04-05 12:23:27 -07:00
David Edelsohn
26be75dbef rs6000.c (VTABLE_NAME_P): Add _ZTI to special symbol handling.
* config/rs6000/rs6000.c (VTABLE_NAME_P): Add _ZTI to special
	symbol handling.

Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>

From-SVN: r80434
2004-04-05 12:45:51 -04:00
Jakub Jelinek
fda935a2da PR optimization/13424 (hppa), bootstrap/14462, c/14828
PR optimization/13424 (hppa), bootstrap/14462, c/14828
	* pa.md: Use replace_equiv_address to retain the attributes of the
	memory operands used in the split and peephole2 patterns for optimizing
	the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.

Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>

From-SVN: r80433
2004-04-05 16:41:19 +00:00
Nathan Sidwell
355f774dec re PR c++/3518 (default conversion to pointer-to-function is applied to soon (related to DR295))
cp:
	PR c++/3518
	* pt.c (check_cv_quals_for_unify): Ignore bogus CV quals at outer
	level.
testsuite:
	PR c++/3518
	* g++.dg/template/unify7.C: New.

From-SVN: r80432
2004-04-05 15:52:12 +00:00
Arnaud Charlet
30c2010625 [multiple changes]
2004-04-05  Vincent Celier  <celier@gnat.com>

	* adaint.h, adaint.c: Add function __gnat_named_file_length

	* impunit.adb: Add Ada.Directories to the list

	* Makefile.in: Add VMS and Windows versions of
	Ada.Directories.Validity package body.

	* Makefile.rtl: Add a-direct and a-dirval

	* mlib-tgt.ads: Minor comment update.

	* a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
	a-direct.ads, a-direct.adb: New files.

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

	PR ada/13620
	* make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
	just to the compiler.

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

	* a-except.adb (Exception_Name_Simple): Make sure lower bound of
	returned string is 1.

	* ali-util.adb: Use proper specific form for Warnings (Off, entity)

	* eval_fat.ads: Minor reformatting

	* g-curexc.ads: Document that lower bound of returned string values
	is always one.

	* gnatlink.adb: Add ??? comment for previous change
	(need to document why this is VMS specific)

	* s-stoele.ads: Minor reformatting

	* tbuild.ads: Minor reformatting throughout (new function specs)

	* par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
	after WITH.

	* scng.adb: Minor reformatting

2004-04-05  Geert Bosch  <bosch@gnat.com>

	* eval_fat.adb (Machine): Remove unnecessary suppression of warning.
	(Leading_Part): Still perform truncation to machine number if the
	specified radix_digits is greater or equal to machine_mantissa.

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

	* par-ch3.adb: Complete documentation of previous change
	Correct wrong syntax documentation of the OBJECT_DECLARATION rule
	(aliased must appear before constant).

	* par-ch4.adb: Complete documentation of previous change.

	* par-ch6.adb: Complete documentation of previous change.

	* sinfo.ads: Fix typo in commment.

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

	* sem_ch3.adb (Inherit_Components): If derived type is private and has
	stored discriminants, use its discriminants to constrain parent type,
	as is done for non-private derived record types.

	* sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
	Ada 2005 AI-310: an abstract non-dispatching operation is not a
	candidate interpretation in an overloaded call.

	* tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
	expression is Null and target type is not an access type (e.g. a
	non-private address type).

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

	* exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
	statement whose right-hand side is an inlined call, save a copy of the
	original assignment subtree to preserve enough consistency for
	Analyze_Assignment to proceed.

	* sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
	complete assignment subtree which is now unnecessary, as the expansion
	of inlined call has been improved to preserve a consistent assignment
	tree.  Note_Possible_Modification must be called only
	after checks have been applied, or else unnecessary checks will
	be generated.

	* sem_util.adb (Note_Possible_Modification): Reorganise the handling
	of explicit dereferences that do not Come_From_Source:
	 - be selective on cases where we must go back to the dereferenced
	   pointer (an assignment to an implicit dereference must not be
	   recorded as modifying the pointer);
	 - do not rely on Original_Node being present (Analyze_Assignment
	   calls Note_Possible_Modification on a copied tree).

	* sem_warn.adb (Check_References): When an unset reference to a pointer
	that is never assigned is encountered, prefer '<pointer> may be null'
	warning over '<pointer> is never assigned a value'.

2004-04-05  Ramon Fernandez  <fernandez@gnat.com>

	* tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
	the ABI.

2004-04-05  Olivier Hainque  <hainque@act-europe.fr>

	* 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
	libexc. We currently don't reference anything in this library and
	linking it in triggers linker warnings we don't want to see.

	* init.c: Update comments.

From-SVN: r80431
2004-04-05 16:57:42 +02:00
Richard Kenner
4f976745b7 c-decl.c (build_compound_literal): Use TYPE_READONLY.
* c-decl.c (build_compound_literal): Use TYPE_READONLY.
	* emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
	* objc/objc-act.c (adorn_decl, gen_declspecs): Likewise.
	* c-typeck.c (decl_constant_value): Don't access DECL_INITIAL of a
	PARM_DECL.
	* calls.c (flags_from_decl_or_type): Use TYPE_READONLY and do so only
	for a type.
	* print-tree.c (print_node): Properly handle side-effects, readonly,
	and constant flags.
	* tree.c (build1_stat, build_expr_wfl): Only look at TREE_SIDE_EFFECTS
	and TREE_CONSTANT if not a type.
	* tree.h (IS_NON_TYPE_CODE_CLASS): New macro.
	(IS_EXPR_CODE_CLASS): Write 'E', not 'e'.
	(NON_TYPE_CHECK): New macro.
	(TREE_SIDE_EFFECT, TREE_READONLY, TREE_CONSTANT: Add check.

	* cp/init.c (decl_constant_value): Don't look at DECL_INITIAL
	of PARM_DECL.
	* cp/tree.c (bot_manip, build_min): Don't look at TREE_CONSTANT
	or TREE_SIDE_EFFECTS of a type.

	* ada/decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
	* ada/utils.c (create_field_decl): Likewise.
	* ada/utils2.c (build_unary_op, gnat_build_constructor): Likewise.

From-SVN: r80430
2004-04-05 08:25:26 -04:00
Eric Botcazou
5ffc47306c sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG unconditionally.
* config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Set
	to DWARF2_DEBUG unconditionally.
	(ASM_DEBUG_SPEC): Set the default to --gdwarf2 unconditionally.

From-SVN: r80425
2004-04-05 04:22:57 +00:00
Ian Lance Taylor
c38f02dfd6 re PR target/14548 (building Ada library incorrectly requires collect2 on mingw)
PR target/14548
	* config.host: Set the shell variable host_can_use_collect2.
	Set it to yes by default, and to no for alpha*-dec-*vms*,
	i[34567]86-*-mingw32*, and powerpc-*-beos*.
	* configure.ac: Set and substitute the shell variable collect2.
	Give an error if use_collect2 is yes and host_can_use_collect2 is
	no.
	* Makefile.in (COLLECT2): Rename from USE_COLLECT2.  Change all
	uses.  Initialize to @collect2@.
	(STAGESTUFF): Remove $(USE_COLLECT2).
	* config/alpha/x-vms (USE_COLLECT2): Don't set.
	* config/i386/t-mingw32 (USE_COLLECT2): Likewise.
	* config/rs6000/t-beos (USE_COLLECT2): Likewise.
	* config/pa/t-pa64: Remove commented out USE_COLLECT2.
	* configure: Regenerate.

Co-Authored-By: Nathanael Nerode <neroden@gcc.gnu.org>

From-SVN: r80422
2004-04-05 03:58:46 +00:00
Roger Sayle
9d3172516d simplify-rtx.c (simplify_binary_operation): Constant fold DIV, MOD, UDIV and UMOD using div_and_round_double.
* simplify-rtx.c (simplify_binary_operation): Constant fold
	DIV, MOD, UDIV and UMOD using div_and_round_double.

From-SVN: r80420
2004-04-05 03:14:13 +00:00
GCC Administrator
e1c6f28deb Daily bump.
From-SVN: r80415
2004-04-05 00:16:16 +00:00
Mark Mitchell
644809883a re PR c++/14804 ([unit-at-a-time] initializing const data with reinterpret_cast-ed pointer-to-member function crashes)
PR c++/14804
	* varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to
	RECORD_TYPEs.

From-SVN: r80404
2004-04-04 22:51:02 +00:00
Mark Mitchell
aaf3c6d91d invoke.texi (-mabi=o64): Create link to O64 ABI documentation.
* doc/invoke.texi (-mabi=o64): Create link to O64 ABI
	documentation.

From-SVN: r80402
2004-04-04 21:56:48 +00:00
Mark Mitchell
cd3f11a636 invoke.texi (-mabi=o64): Create link to O64 ABI documentation.
* doc/invoke.texi (-mabi=o64): Create link to O64 ABI
	documentation.

From-SVN: r80401
2004-04-04 21:52:44 +00:00
Roger Sayle
d8b7ec41b5 cse.c (cse_insn): Correct usage of simplify_replace_rtx when updating the REG_EQUAL note on an...
* cse.c (cse_insn): Correct usage of simplify_replace_rtx when
	updating the REG_EQUAL note on an insn's libcall_insn.

From-SVN: r80400
2004-04-04 21:44:41 +00:00
Roger Sayle
4012b7db1e * df.h: Tidy up whitespace in the definitions of the DF_ flags.
From-SVN: r80399
2004-04-04 21:12:35 +00:00
Paolo Carlini
9f35e4aab5 filebuf_sputn_unbuf.cc: New, adapted from libstdc++/11378.
2004-04-04  Paolo Carlini  <pcarlini@suse.de>
	    Petur Runolfsson  <peturr02@ru.is>

	* testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
	adapted from libstdc++/11378.

Co-Authored-By: Petur Runolfsson <peturr02@ru.is>

From-SVN: r80398
2004-04-04 18:18:29 +00:00
GCC Administrator
6060368e54 Daily bump.
From-SVN: r80385
2004-04-04 00:16:14 +00:00
Bud Davis
369a832c0b * MAINTAINERS: Add myself to write-after-approval.
From-SVN: r80382
2004-04-03 23:30:54 +00:00
Roger Sayle
2f63a4570c fold-const.c (fold): Guard (-A)+B -> B-A transformation with reorder_operands_p.
* fold-const.c (fold) <PLUS_EXPR>: Guard (-A)+B -> B-A transformation
	with reorder_operands_p.

From-SVN: r80381
2004-04-03 20:05:40 +00:00
Jan Hubicka
ef1140a912 * md.texi (vec_set, vec_extract, vec_init): Document.
From-SVN: r80380
2004-04-03 17:25:47 +00:00
Paolo Carlini
c8333c0fd5 mt_allocator.h (__mt_alloc<>::allocate): Factor out some duplicated code.
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
2004-04-03 13:39:16 +00:00
GCC Administrator
a0eabb87e1 Daily bump.
From-SVN: r80366
2004-04-03 00:16:22 +00:00
Nathanael Nerode
2c0a14b2ee README: Bring up to date with new subdirectories; remove duplicate subdirectory lines.
* g++.dg/README: Bring up to date with new subdirectories; remove
	duplicate subdirectory lines.

From-SVN: r80363
2004-04-02 23:50:43 +00:00
Gabor Loki
f736cb3eed opts.c (decode_options): Do function inlining with very small max-inline-insns-* parameters when...
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
2004-04-02 22:17:49 +00:00
Paolo Carlini
ab40b100d3 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
2004-04-02 19:51:21 +00:00
Vladimir Makarov
89c43c0a0b i386.h (TARGET_NOCONA): New macro.
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
2004-04-02 15:05:55 +00:00
Nathan Sidwell
2e9ceb77be re PR c++/14007 (Incorrect use of const partial specialization for reference template argument)
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
2004-04-02 11:48:56 +00:00
Arnaud Charlet
efe4ba3d35 Complete previous change.
Update copyright notice.

From-SVN: r80350
2004-04-02 11:18:44 +02:00
Arnaud Charlet
6da7d5795d gnat-style.texi, [...]: Remove RCS tags.
* 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
2004-04-02 10:52:49 +02:00
Andrew Pinski
cd798543d8 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
2004-04-01 17:19:41 -08:00
Kelley Cook
b52d4110bf 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
2004-04-02 00:47:19 +00:00
GCC Administrator
9b754eac89 Daily bump.
From-SVN: r80342
2004-04-02 00:17:18 +00:00
Mark Mitchell
a406f5669b 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
2004-04-01 23:30:25 +00:00
Jan Hubicka
18c6ada9b2 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
2004-04-01 23:28:15 +00:00