56214 Commits

Author SHA1 Message Date
Dhruv Matani
56766e0db5 debug_allocator.h: _M_extra now stands for the number of extra objects instead of the number of...
2004-02-04  Dhruv Matani  <dhruvbird@gmx.net>

	* include/ext/debug_allocator.h: _M_extra now stands for the
	number of extra objects instead of the number of extra bytes.
	(debug_allocator::allocate): Adjust.
	(debug_allocator::deallocate): Adjust.

	* include/ext/pool_allocator.h: Fix typo.

From-SVN: r77256
2004-02-04 17:37:10 +00:00
Ulrich Weigand
7bdff56f69 s390.md ("*la_64" + peepholes, [...]): Move to before adddi3 insn patterns.
* config/s390/s390.md ("*la_64" + peepholes, "reload_indi"): Move
	to before adddi3 insn patterns.
	("*la_31" + peepholes, "*la_31_and", "*la_31_and_cc", "force_la_31",
	"reload_insi"): Move to before addsi3 insn patterns.

From-SVN: r77253
2004-02-04 15:55:33 +00:00
Ian Lance Taylor
5ec473b9b3 * gcc.dg/arm-mmx-1.c: Don't look for ldmfd if -mthumb.
From-SVN: r77249
2004-02-04 13:43:43 +00:00
Kaveh R. Ghazi
c85a3379bb encode-2.m, [...]: Fix tests for systems where `char' is unsigned by default.
* objc.dg/encode-2.m, objc.dg/encode-3.m, objc.dg/encode-4.m: Fix
	tests for systems where `char' is unsigned by default.

From-SVN: r77247
2004-02-04 13:40:25 +00:00
Mark Mitchell
dd292d0ad8 calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P parameter.
* calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P
	parameter.  Use it instead of current_function_is_thunk.
	* function.h (struct function): Update documentation for is_thunk.
	* tree.h (CALL_FROM_THUNK_P): New macro.
	* config/alpha/alpha.c (alpha_sa_mask): Do not check
	no_new_pseudos when testing current_function_is_thunk.
	* config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse.

	* decl.c (cxx_push_function_context): Do not set
	current_function_is_thunk.
	* method.c (use_thunk): Set CALL_FROM_THUNK on the call to the
	actual function.

From-SVN: r77244
2004-02-04 12:22:42 +00:00
Giovanni Bajo
18d0ecb6ec Forgot the PR number.
From-SVN: r77239
2004-02-04 11:30:20 +00:00
Giovanni Bajo
2ff9cd1a32 Forgot the PR number for my last entry.
From-SVN: r77238
2004-02-04 11:29:57 +00:00
Giovanni Bajo
090c5291c5 * g++.dg/template/partial3.C: New test.
From-SVN: r77237
2004-02-04 11:28:30 +00:00
Giovanni Bajo
baa4973045 pt.c (more_specialized_class): Increase processing_template_decl while partial ordering.
* pt.c (more_specialized_class): Increase processing_template_decl
	while partial ordering.

From-SVN: r77236
2004-02-04 11:26:26 +00:00
Arnaud Charlet
06effe875c [multiple changes]
2004-02-04  Robert Dewar  <dewar@gnat.com>

	* 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
	ali.ads, gprcmd.adb: Minor reformatting

	* bindgen.adb: Output restrictions string for new style restrictions
	handling

	* impunit.adb: Add s-rident.ads (System.Rident) and
	s-restri (System.Restrictions)

	* lib-writ.adb: Fix bug in writing restrictions string (last few
	entries wrong)

	* s-restri.ads, s-restri.adb: Change name Restrictions to
	Run_Time_Restrictions to avoid conflict with package name.
	Add circuit to read and acquire run time restrictions.

2004-02-04  Jose Ruiz  <ruiz@act-europe.fr>

	* restrict.ads, restrict.adb: Use the new restriction
	No_Task_Attributes_Package instead of the old No_Task_Attributes.

	* sem_prag.adb: No_Task_Attributes is a synonym of
	No_Task_Attributes_Package.

	* snames.ads, snames.adb: New entry for proper handling of
	No_Task_Attributes.

	* s-rident.ads: Adding restriction No_Task_Attributes_Package
	(AI-00249) that supersedes the GNAT specific restriction
	No_Task_Attributes.

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

	* sem_prag.adb:
	(Analyze_Pragma, case Warnings): In an inlined body, as in an instance
	 body, an identifier may be wrapped in an unchecked conversion.

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

	* lib-writ.ads: Comment update for the W lines

	* bld.adb: (Expression): An empty string list is static

	* fname-uf.adb: Minor comment update

	* fname-uf.ads: (Get_File_Name): Document new parameter May_Fail

	* gnatbind.adb: Initialize Cumulative_Restrictions with the
	restrictions on the target.

From-SVN: r77233
2004-02-04 12:06:19 +01:00
Kazu Hirata
c23796791c tm.texi: Replace SETUP_INCOMING_VARARGS with TARGET_SETUP_INCOMING_VARARGS.
* doc/tm.texi: Replace SETUP_INCOMING_VARARGS with
	TARGET_SETUP_INCOMING_VARARGS.

From-SVN: r77226
2004-02-04 06:32:51 +00:00
Felix Yen
2226963242 allocator.cc: Add map, deque, set tests.
2004-02-03  Felix Yen  <fwy@alumni.brown.edu>
	    Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/performance/20_util/allocator.cc: Add map,
	deque, set tests.
	* testsuite/performance/20_util/allocator_thread.cc: Same.

Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>

From-SVN: r77225
2004-02-04 06:21:21 +00:00
Kazu Hirata
a2a8cc44e9 emit-rtl.c (gen_rtx): Remove.
* emit-rtl.c (gen_rtx): Remove.
	* genattrtab.c: Don't mention gen_rtx in a comment.
	* rtl.h: Remove the prototype for gen_rtx.
	* doc/md.texi: Replace gen_rtx with gen_rtx_REG.

From-SVN: r77224
2004-02-04 06:12:54 +00:00
Kazu Hirata
f61c92c390 * config/arc/arc.h, config/fr30/fr30.h
(SETUP_INCOMING_VARARGS): Remove the target-independent
	comments.
	* doc/tm.texi: Don't mention deprecated target macros.

From-SVN: r77221
2004-02-04 06:07:39 +00:00
Kazu Hirata
c35c17c1a4 fr30.h (FUNCTION_VALUE): Remove the target-independent comment.
* config/fr30/fr30.h (FUNCTION_VALUE): Remove the
	target-independent comment.

From-SVN: r77220
2004-02-04 05:53:20 +00:00
Kazu Hirata
6b402165e3 * MAINTAINERS: Remove i960 port.
From-SVN: r77219
2004-02-04 05:40:42 +00:00
Kazu Hirata
cea2860314 interface.texi, [...]: Don't mention deprecated target macros.
* doc/interface.texi, doc/tm.texi, doc/trouble.texi: Don't
	mention deprecated target macros.

From-SVN: r77217
2004-02-04 05:33:13 +00:00
Kazu Hirata
a4a4b1d364 config.gcc: Remove obsolete ports and configurations.
gcc/
	* config.gcc: Remove obsolete ports and configurations.
	* config/linux-aout.h, config/netware.h,
	config/t-linux-gnulibc1, config/d30v/abi,
	config/d30v/d30v-protos.h, config/d30v/d30v.c,
	config/d30v/d30v.h, config/d30v/d30v.md,
	config/d30v/libgcc1.asm, config/d30v/t-d30v,
	config/dsp16xx/dsp16xx-modes.def,
	config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c,
	config/dsp16xx/dsp16xx.h, config/dsp16xx/dsp16xx.md,
	config/i370/README, config/i370/i370-c.c,
	config/i370/i370-protos.h, config/i370/i370.c,
	config/i370/i370.h, config/i370/i370.md, config/i370/linux.h,
	config/i370/mvs.h, config/i370/oe.h, config/i370/t-i370,
	config/i386/freebsd-aout.h, config/i386/linux-aout.h,
	config/i386/moss.h, config/i386/netware.h,
	config/i386/svr3.ifile, config/i386/svr3dbx.h,
	config/i386/svr3gas.h, config/i386/svr3z.ifile,
	config/i386/t-udk, config/i386/udk.h, config/i386/vsta.h,
	config/i960/i960-c.c, config/i960/i960-coff.h,
	config/i960/i960-modes.def, config/i960/i960-protos.h,
	config/i960/i960.c, config/i960/i960.h, config/i960/i960.md,
	config/i960/rtems.h, config/i960/t-960bare,
	config/m68k/hp310.h, config/m68k/hp320.h,
	config/m68k/hp320base.h, config/m68k/m68kv4.h,
	config/m68k/netbsd.h, config/m68k/sgs.h, config/m68k/t-hp320:
	Remove.
	* doc/extend.texi, doc/install.texi, doc/invoke.texi,
	doc/md.texi: Remove mentions of obsolete ports.

	testsuite/
	* gcc.dg/20020312-2.c, gcc.dg/builtin-inf-1.c,
	gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c, gcc.dg/cpp/assert4.c:
	Remove mentions of obsolete ports.

From-SVN: r77216
2004-02-04 05:13:43 +00:00
GCC Administrator
c3bf16ff7d Daily bump.
From-SVN: r77206
2004-02-04 00:16:13 +00:00
Tom Tromey
2565abce54 natPosixProcess.cc (startProcess): Handle case where PATH or LD_LIBRARY_PATH is not set in parent environment.
* java/lang/natPosixProcess.cc (startProcess): Handle case where
	PATH or LD_LIBRARY_PATH is not set in parent environment.

From-SVN: r77203
2004-02-04 00:07:19 +00:00
Jan Hubicka
40e02b4a76 alias.c (find_base_term, get_addr): Do not dereference NULL pointer when all VALUE's locations has been invalidated.
* alias.c (find_base_term, get_addr):  Do not dereference NULL
	pointer when all VALUE's locations has been invalidated.
	(rtx_equal_for_memref_p): Simplify checking of VALUEs.

From-SVN: r77201
2004-02-03 23:53:48 +00:00
Wolfgang Bangerth
1c02f6f2d2 Commit for Wolfgang Bangerth:
* doc/invoke.texi (x86 options): Fix spelling/wording

From-SVN: r77200
2004-02-03 23:45:52 +00:00
Paolo Bonzini
e262dfbcf3 20001228-1.c: Fix for new error message.
2004-02-04  Paolo Bonzini  <bonzini@gnu.org>

	* gcc.dg/noncompile/20001228-1.c: Fix for new
	error message.

From-SVN: r77199
2004-02-03 23:44:40 +00:00
Paolo Carlini
129e921059 basic_string.h (insert(iterator)): Remove, non-standard and already scheduled for removal.
2004-02-03  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.h (insert(iterator)): Remove,
	non-standard and already scheduled for removal.

From-SVN: r77198
2004-02-03 23:34:52 +00:00
Richard Sandiford
584e5527f9 iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to put the original string in a comment.
* config/mips/iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to
	put the original string in a comment.
	* config/mips/mips-protos.h (mips_output_ascii): Add prefix argument.
	* config/mips/mips.c (mips_output_ascii): Likewise.
	* config/mips/mips.h (ASM_OUTPUT_ASCII): Adjust accordingly.

From-SVN: r77195
2004-02-03 22:38:34 +00:00
Kazu Hirata
9b2b33751f system.h (GIV_SORT_CRITERION): Poison.
* system.h (GIV_SORT_CRITERION): Poison.
	* config/avr/avr.h (GIV_SORT_CRITERION): Remove.
	* config/ip2k/ip2k.h (GIV_SORT_CRITERION): Likewise.

From-SVN: r77194
2004-02-03 22:14:48 +00:00
Roger Sayle
888d65b5a8 re PR target/9348 ([HP-UX] error in int to unsigned long multiplication)
PR target/9348
	* expr.c (expand_expr_real) <MULT_EXPR>:  When performing widening
	multiplies with a multiplication of the wrong signedness, its the
	signedness of the multiplication that we've performed that needs to
	be passed to expand_mult_highpart_adjust.  Avoid emitting a nop-move
	if expand_mult_highpart_adjust places the result in target.

	* gcc.c-torture/execute/multdi-1.c: New test case.

From-SVN: r77192
2004-02-03 21:31:00 +00:00
Richard Henderson
a8c0bbc721 * varasm.c (const_desc_rtx_sym_eq): Compare symbol strings.
From-SVN: r77191
2004-02-03 13:24:39 -08:00
Mark Mitchell
18f5be99b4 re PR c++/13925 (Bug while befriending specializations)
PR c++/13925
	* decl.c (start_function): Do not call pushdecl for any
	instantiation or specialization of a primary template.

	PR c++/13925
	* g++.dg/template/lookup5.C: New test.

From-SVN: r77187
2004-02-03 20:01:59 +00:00
Mark Mitchell
4bfb8bbaf6 re PR c++/13950 ([DR176] lookup of dependent base name)
PR c++/13950
	* parser.c (cp_parser_class_name): Robustify.

	PR c++/13970
	* parser.c (cp_parser_cache_group): Do not consume the EOF token.

	PR c++/13950
	* g++.dg/template/lookup4.C: New test.

	PR c++/13970
	* g++.dg/parse/error14.C: New test.

From-SVN: r77186
2004-02-03 20:00:47 +00:00
J"orn Rennecke
a8f0f22ea9 * config.gcc (sh[234]l): Use little endian fragments.
From-SVN: r77185
2004-02-03 19:52:23 +00:00
Mark Mitchell
3c398f341f re PR c++/14002 (Friend declaration with template-id causes confusion of function arguments)
PR c++/14002
	* semantics.c (finish_id_expression): Do not return an
	IDENTIFIER_NODE when lookup finds a PARM_DECL.

	PR c++/14002
	* g++.dg/parse/template13.C: New test.

From-SVN: r77183
2004-02-03 17:59:58 +00:00
Paolo Carlini
83042fcaec stl_iterator_base_funcs.h: Minor formatting and indentation tweaks.
2004-02-03  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_iterator_base_funcs.h: Minor formatting
	and indentation tweaks.
	* include/bits/stl_iterator_base_types.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/stl_tempbuf.h: Likewise.

From-SVN: r77182
2004-02-03 17:59:05 +00:00
Paul Koning
e621b5885a pdp11-modes.def: Add RESET_FLOAT_FORMAT calls.
* config/pdp11/pdp11-modes.def: Add RESET_FLOAT_FORMAT calls.
* config/pdp11/pdp11-protos.h (legitimate_const_double_p): Add.
* config/pdp11/pdp11.c (encode_pdp11_f, decode_pdp11_f,
encode_pdp11_d, decode_pdp11_d): New functions to handle PDP11
floating point format.
(pdp11_f_format, pdp11_d_format): New real_format descriptors for
the above functions.
(output_move_quad): Output float values in correct target format.
(legitimate_const_double_p): New function.
* config/pdp11/pdp11.h: Fix typos.
(FLOAT_WORDS_BIG_ENDIAN): Add definition.
(TARGET_FLOAT_FORMAT): Ditto.
(pdp11_f_format, pdp11_d_format): Add external declarations.
(MAX_REGS_PER_ADDRESS): Corrected.
(LEGITIMATE_CONSTANT_P): Use legitimate_const_double_p().
(PRINT_OPERAND): Output float literals in target format.

From-SVN: r77180
2004-02-03 12:36:02 -05:00
Thomas Fitzsimmons
b6d3cb37ef GtkListPeer.java, [...]: Fix handling of alias methods...
2004-02-03  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkListPeer.java,
	java/awt/BorderLayout.java, java/awt/CardLayout.java,
	java/awt/CheckboxGroup.java, java/awt/Choice.java,
	java/awt/Component.java, java/awt/Container.java,
	java/awt/FontMetrics.java, java/awt/GridBagLayout.java,
	java/awt/LayoutManager2.java, java/awt/List.java,
	java/awt/Menu.java, java/awt/MenuBar.java,
	java/awt/MenuItem.java, java/awt/Polygon.java,
	java/awt/Rectangle.java, java/awt/ScrollPane.java,
	java/awt/Scrollbar.java, java/awt/TextArea.java,
	java/awt/TextField.java,
	java/awt/image/renderable/RenderContext.java,
	javax/swing/JApplet.java: Fix handling of alias methods, where a
	method has been deprecated in favour of a new one with the same
	funtion but a different name.  Put the method implementation in
	the deprecated method and have the new method call the
	deprecated one.  Make all other code call the new method.

From-SVN: r77178
2004-02-03 17:10:56 +00:00
Mark Mitchell
5a98fa7bdb re PR c++/13975 (ICE on misplaced visibility specifier.)
PR c++/13975
	* tree.h (enum tree_index): Add TI_PUBLIC, TI_PROTECTED, and
	TI_PRIVATE.
	(access_public_node): Redefine.
	(access_protected_node): Likewise.
	(access_private_node): Likewise.
	* tree.c (build_common_tree_nodes): Create access_public_node,
	access_protected_node, and access_private_node.

	PR c++/13978
	* pt.c (build_non_dependent_expr): Do not build
	NON_DEPENDENT_EXPRs for FUNCTION_DECLs or TEMPLATE_DECLs.

	PR c++/13968
	* semantics.c (finish_id_expression): Do not return an
	IDENTIFIER_NODE when lookup finds a VAR_DECL.

	PR c++/13975
	* parser.c (cp_parser_simple_declaration): When skipping to the
	end of the statement swallow the terminating semicolon.

	PR c++/13978
	* g++.dg/template/koenig4.C: New test.

	PR c++/13968
	* g++.dg/template/crash17.C: New test.

	PR c++/13975
	* g++.dg/parse/error13.C: New test.
	* g++.old-deja/g++.robertl/eb125.C: Tweak error messages.

From-SVN: r77176
2004-02-03 16:53:27 +00:00
Steve Ellcey
0263e6bf3c ia64.h (MASK_INLINE_INT_DIV_LAT): Change value.
* config/ia64/ia64.h (MASK_INLINE_INT_DIV_LAT): Change value.
	(MASK_INLINE_INT_DIV_THR): Ditto.
	(MASK_INLINE_SQRT_LAT): Ditto.
	(MASK_INLINE_SQRT_THR): Ditto.
	(MASK_DWARF2_ASM): Ditto.
	(MASK_EARLY_STOP_BITS): Ditto.

From-SVN: r77175
2004-02-03 16:39:42 +00:00
Mohan Embar
8696d927c0 * gnu/java/nio/DatagramChannelImpl.java
(inChannelOperation): New field.
	(isInChannelOperation): New accessor.
	(setInChannelOperation): New modifier.
	(receive): Use capacity() - position() of destination
	buffer instead of remaining(). Set and reset our "in
	channel operation indicator" before and after delegating
	the receive to our datagram socket. Removed testing code.
	Update destination buffer's current position if it is
	backed by a byte array (hasArray() is true).
	(send): Set and reset our "in channel operation indicator"
	before and after delegating the send to our datagram socket.
	Removed testing code. Update source buffer's current position
	if it is backed by a byte array (hasArray() is true).
	* gnu/java/nio/SocketChannelImpl.java (read(ByteBuffer)):
	Use capacity() - position() of destination buffer instead
	of remaining().
	* java/net/DatagramSocket.java (receive): Don't throw an
	IllegalBlockingModeException if we have a non-blocking
	channel which initiated this operation.
	(send): Likewise.

From-SVN: r77173
2004-02-03 16:07:24 +00:00
Paul Brook
9b66ebb146 backport: re PR target/12476 (ARM/THUMB thunk calls broken)
Merge from csl-arm-branch.

	2004-01-30  Paul Brook  <paul@codesourcery.com>

	* aof.h (REGISTER_NAMES): Add vfp reg names
	(ADDITIONAL_REGISTER_NAMES): Ditto.
	* aout.h (REGISTER_NAMES): Ditto.
	(ADDITIONAL_REGISTER_NAMES): Ditto.
	* arm-protos.h: Update/Add Prototypes.
	* arm.c (init_fp_table): Rename from init_fpa_table. Update users.
	Only allow 0.0 for VFP.
	(fp_consts_inited): Rename from fpa_consts_inited.  Update users.
	(values_fp): Rename from values_fpa.  Update Users.
	(arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa.
	Update users.  Only check valid constants for this hardware.
	(arm_float_rhs_operand): Rename from fpa_rhs_operand.  Update Users.
	Only allow consts for FPA.
	(arm_float_add_operand): Rename from fpa_add_operand.  Update users.
	Only allow consts for FPA.
	(use_return_insn): Check for saved VFP regs.
	(arm_legitimate_address_p): Handle VFP DFmode addressing.
	(arm_legitimize_address): Ditto.
	(arm_general_register_operand): New function.
	(vfp_mem_operand): New function.
	(vfp_compare_operand): New function.
	(vfp_secondary_reload_class): New function.
	(arm_float_compare_operand): New function.
	(vfp_print_multi): New function.
	(vfp_output_fstmx): New function.
	(vfp_emit_fstm): New function.
	(arm_output_epilogue): Output VPF reg restore code.
	(arm_expand_prologue): Output VFP reg save code.
	(arm_print_operand): Add 'P'.
	(arm_hard_regno_mode_ok): Return modes for VFP regs.
	(arm_regno_class): Return classes for VFP regs.
	(arm_compute_initial_elimination_offset): Include space for VFP regs.
	(arm_get_frame_size): Ditto.
	* arm.h (FIXED_REGISTERS): Add VFP regs.
	(CALL_USED_REGISTERS): Ditto.
	(CONDITIONAL_REGISTER_USAGE): Enable VFP regs.
	(FIRST_VFP_REGNUM): Define.
	(LAST_VFP_REGNUM): Define.
	(IS_VFP_REGNUM): Define.
	(FIRST_PSEUDO_REGISTER): Include VFP regs.
	(HARD_REGNO_NREGS): Handle VFP regs.
	(REG_ALLOC_ORDER): Add VFP regs.
	(enum reg_class): Add VFP_REGS.
	(REG_CLASS_NAMES): Ditto.
	(REG_CLASS_CONTENTS): Ditto.
	(CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs.
	(REG_CLASS_FROM_LETTER): Add 'w'.
	(EXTRA_CONSTRAINT_ARM): Add 'U'.
	(EXTRA_MEMORY_CONSTRAINT): Define.
	(SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs.
	(SECONDARY_INPUT_RELOAD_CLASS): Ditto.
	(REGISTER_MOVE_COST): Ditto.
	(PREDICATE_CODES): Add arm_general_register_operand,
	arm_float_compare_operand and vfp_compare_operand.
	* arm.md (various): Rename as above.
	(divsf3): Enable when TARGET_VFP.
	(divdf3): Ditto.
	(movdfcc): Ditto.
	(sqrtsf2): Ditto.
	(sqrtdf2): Ditto.
	(arm_movdi): Disable when TARGET_VFP.
	(arm_movsi_insn): Ditto.
	(movsi): Only split with general regs.
	(cmpsf): Use arm_float_compare_operand.
	(push_fp_multi): Restrict to TARGET_FPA.
	(vfp.md): Include.
	* vfp.md: New file.
	* fpa.md (various): Rename as above.
	* doc/md.texi: Document ARM w and U constraints.

	2004-01-15  Paul Brook  <paul@codesourcery.com>

	* config.gcc: Add with_fpu.  Allow with-float=softfp.
	* config/arm/arm.c (arm_override_options): Rename *-s to *s.
	Break out of loop when we find a float-abi.  Fix typo.
	* config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu".
	Set -mfloat-abi=.
	* doc/install.texi: Document --with-fpu.

	2003-01-14  Paul Brook  <paul@codesourcery.com>

	* config.gcc (with_arch): Add armv6.
	* config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s.
	* config/arm/arm.c (arm_overrride_options): Ditto.

	2004-01-08  Richard Earnshaw  <rearnsha@arm.com>

	* arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT.
	(FL_ARCH6): Renamed from FL_ARCH6J.
	(arm_arch3m): Renamed from arm_fast_multiply.
	(arm_arch6): Renamed from arm_arch6j.
	* arm.h: Update all uses of above.
	* arm-cores.def: Likewise.
	* arm.md: Likewise.

	* arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j,
	not arm6j.  Add entry for arch armv6.

	2004-01-07  Richard Earnshaw  <rearnsha@arm.com>

	* arm.c (arm_emit_extendsi): Delete.
	* arm-protos.h (arm_emit_extendsi): Delete.
	* arm.md (zero_extendhisi2): Also handle zero-extension of
	non-subregs.
	(zero_extendqisi2, extendhisi2, extendqisi2): Likewise.
	(thumb_zero_extendhisi2): Only match if not v6.
	(arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2)
	(thumb_extendhisi2, arm_extendhisi2, arm_extendqisi)
	(thumb_extendqisi2): Likewise.
	(thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns.
	(thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns.
	(thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns.
	(thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns.
	(arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete.
	(arm_extendhisi2_reg, arm_extendqisi2_reg): Delete.
	(arm_zero_extendhisi2addsi): Remove subreg.  Add attributes.
	(arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise.
	(arm_extendqisi2addsi): Likewise.

	2003-12-31  Mark Mitchell  <mark@codesourcery.com>

	Revert this change:
	* config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG
	+ REG addressing modes.

	* config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG
	+ REG addressing modes.

	2003-12-30  Mark Mitchell  <mark@codesourcery.com>

	* config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept
	CONSTANT_P_RTX.

	2003-30-12  Paul Brook  <paul@codesourcery.com>

	* longlong.h: protect arm inlines with !defined (__thumb__)

	2003-30-12  Paul Brook  <paul@codesourcery.com>

	* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__.

	2003-12-30  Nathan Sidwell  <nathan@codesourcery.com>

	* builtins.c (expand_builtin_apply_args_1): Fix typo in previous
	change.

	2003-12-29  Nathan Sidwell  <nathan@codesourcery.com>

	* builtins.c (expand_builtin_apply_args_1): Add pretend args size
	to the virtual incoming args pointer for downward stacks.

	2003-12-29  Paul Brook  <paul@codesourcery.com>

	* config/arm/arm-cores.def: Add cost function.
	* config/arm/arm.c (arm_*_rtx_costs): New functions.
	(arm_rtx_costs): Remove
	(struct processors): Add rtx_costs field.
	(all_cores, all_architectures): Ditto.
	(arm_override_options): Set targetm.rtx_costs.
	(thumb_rtx_costs): New function.
	(arm_rtx_costs_1): Remove cases handled elsewhere.
	* config/arm/arm.h (processor_type): Add COSTS parameter.

	2003-12-29  Nathan Sidwell  <nathan@codesourcery.com>

	* config/arm/arm.md (generic_sched): arm926 has its own scheduler.
	(arm926ejs.md): Include it.
	* config/arm/arm926ejs.md: New pipeline description.

	2003-12-24  Paul Brook  <paul@codesourcery.com>

	* config/arm/arm.c (arm_arch6j): New variable.
	(arm_override_options): Set it.
	(arm_emit_extendsi): New function.
	* config/arm/arm-protos.h (arm_emit_extendsi): Add prototype.
	* config/arm/arm.h (arm_arch6j): Declare.
	* config/arm/arm.md: Add sign/zero extend insns.

	2003-12-23  Paul Brook  <paul@codesourcery.com>

	* config/arm/arm.c (all_architectures): Add armv6.
	* doc/invoke.texi: Document it.

	2003-12-19  Paul Brook  <paul@codesourcery.com>

	* config/arm/arm.md: Add load1 and load_byte "type" attrs.  Modify
	insn patterns to match.
	* config/arm/arm-generic.md: Ditto.
	* config/arm/cirrus.md: Ditto.
	* config/arm/fpa.md: Ditto.
	* config/amm/iwmmxt.md: Ditto.
	* config/arm/arm1026ejs.md: Ditto.
	* config/arm/arm1135jfs.md: Ditto.  Add insn_reservation and bypasses
	for 11_loadb.

	2003-12-18  Nathan Sidwell  <nathan@codesourcery.com>

	* config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare.
	* config/arm/arm.c (arm_adjust_cost): Check shift cost for
	TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG.
	(arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep,
	arm_no_early_mul_dep): Correctly deal with conditional execution,
	parallels and single shift operations.
	(arm_no_early_alu_shift_value_dep): Define.
	* arm.md (attr type): Replace 'normal' with 'alu',
	'alu_shift' and 'alu_shift_reg'.
	(attr core_cycles): Adjust.
	(*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3,
	*shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0,
	*not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp,
	*cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0,
	*arith_shiftsi_compare0_scratch, *sub_shiftsi,
	*sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch,
	*if_shift_move, *if_move_shift, *if_shift_shift): Set type
	attribute appropriately.
	* config/arm/arm1026ejs.md (alu_op): Adjust.
	(alu_shift_op, alu_shift_reg_op): New.
	* config/arm/arm1136.md: Add better bypasses for early
	registers. Remove load[234] and store[234] bypasses.
	(11_alu_op): Adjust.
	(11_alu_shift_op, 11_alu_shift_reg_op): New.

	2003-12-15  Nathan Sidwell  <nathan@codesourcery.com>

	* config/arm/arm-protos.h (arm_no_early_store_addr_dep,
	arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare.
	* config/arm/arm.c (arm_no_early_store_addr_dep,
	arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define.
	* config/arm/arm1026ejs.md: Add load-store bypass.
	* config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles.
	Add bypasses between instructions.

	2003-12-10  Paul Brook  <paul@codesourcery.com>

	* config/arm/arm.c (arm_fpu_model): New variable.
	(arm_fload_abi): New variable.
	(target_fpe_name): Rename from target_fp_name.
	(target_fpu_name): New variable.
	(arm_is_cirrus): Remove.
	(fpu_desc): New struct.
	(all_fpus): Define.
	(pf_model_for_fpu): Define.
	(all_loat_abis): Define.
	(arm_override_options): Set fp arch flags based on -mfpu=
	and -float-abi=.
	(FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM.
	(LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM.
	(*): Use new TARGET_* flags.
	* config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove.
	(TARGET_HARD_FLOAT): No longer implies TARGET_FPA.
	(TARGET_SOFT_FLOAT): Ditto.
	(TARGET_SOFT_FLOAT_ABI): New.
	(TARGET_MAVERICK): Rename from TARGET_CIRRUS.  No longer implies
	TARGET_HARD_FLOAT.
	(TARGET_VFP): No longer implies TARGET_HARD_FLOAT.
	(TARGET_OPTIONS): Add -mfpu=.
	(FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM.
	(LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM.
	(arm_pf_model): Define.
	(arm_float_abi_type): Define.
	(fputype): Add FPUTYPE_VFP.  Change SOFT_FPA->NONE
	* config/arm/arm.md: Use new TARGET_* flags.
	* config/arm/cirrus.md: Ditto.
	* config/arm/fpa.md: Ditto.
	* config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=.
	* config/arm/semi.h (ASM_SPEC): Ditto.
	* config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp.
	(FPUTYPE_DEFAULT): Set to VFP.
	* doc/invoke.texi: Document -mfpu= and -mfloat-abi=.

	2003-11-22  Phil Edwards  <phil@codesourcery.com>

	PR target/12476
	* config/arm/arm.c (arm_output_mi_thunk):  In Thumb mode, use
	'bx' instead of 'b' to avoid branch range restrictions.  Output
	the thunk immediately before the thunked-to function.
	* config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME):  Do not emit
	.thumb_func if a thunk is being generated.  Emit .code 16 along
	with .thumb_func if a thunk is not being generated.

	2003-11-15  Nicolas Pitre <nico@cam.org>

	* config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3,
	arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns.
	* config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3.
	(lshrdi3_iwmmxt): Renamed from lshrdi3.
	* config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly.

	2003-11-12  Steve Woodford  <scw@wasabisystems.com>
	    Ian Lance Taylor  <ian@wasabisystems.com>

	* config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new
	code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__).

	2003-11-05  Phil Edwards  <phil@codesourcery.com>

	* config/arm/arm.md (insn):  Add new V6 instruction names.
	(generic_sched):  New attr.
	* config/arm/arm-generic.md:  Use generic_sched here.
	* config/arm/arm1026ejs.md:  Do not model fetch/issue/decode
	stages of pipeline.  Adjust latency counts accordingly.
	* config/arm/arm1136jfs.md:  New file.

	2003-10-28  Mark Mitchell  <mark@codesourcery.com>

	* config/arm/arm.h (processor_type): New enumeration type.
	(CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S,
	ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores.
	(CPP_CPU_ARCH_SPEC): Likewise.
	* config/arm/arm.c (arm_tune): New variable.
	(all_cores): Use cores.def.
	(all_architectures): Add representative processor.
	(arm_override_options): Restructure way in which tuning
	information is deduced.
	* arm.md: Update "insn" and "type" attributes throughout.
	(insn): New attribute.
	(type): Compute "mult" from "insn" attribute.  Add load2,
	load3, load4 alternatives.
	(arm automaton): Move to arm-generic.md.
	* config/arm/arm-cores.def: New file.
	* config/arm/arm-generic.md: Likewise.
	* config/arm/arm1026ejs.md: Likewise.

From-SVN: r77171
2004-02-03 14:45:44 +00:00
Paolo Bonzini
e93f124e0a Fix mistaken names in the last commit.
2004-02-03  Paolo Bonzini  <bonzini@gnu.org>

	Fix mistaken names in the last commit.
	* gcc.dg/noncompile/20040203-1.cc: Rename to 20040203-1.c
	* gcc.dg/noncompile/20040203-2.cc: Rename to 20040203-2.c
	* gcc.dg/noncompile/20040203-3.cc: Rename to 20040203-3.c

From-SVN: r77170
2004-02-03 13:38:28 +00:00
Eric Botcazou
60b85c4c0e invoke.texi (SPARC options): Remove -mflat and all -mxxx (xxx:chip) options.
* doc/invoke.texi (SPARC options): Remove -mflat and
	all -mxxx (xxx:chip) options.
	* config/sparc/aout.h (DBX_REGISTER_NUMBER): Delete.
	* config/sparc/litecoff.h (DBX_REGISTER_NUMBER): Likewise.
	* config/sparc/netbsd-elf.h (DBX_REGISTER_NUMBER): Likewise.
	* config/sparc/sol2.h (DBX_REGISTER_NUMBER): Likewise.
	* config/sparc/sparc-protos.h: Delete sparc_flat_* prototypes.
	* config/sparc/sparc.c: Likewise.
	(sparc_output_function_prologue): Remove TARGET_FLAT handling.
	(sparc_nonflat_function_prologue): Rename into sparc_function_prologue.
	(sparc_output_function_epilogue): Remove TARGET_FLAT handling.
	(sparc_nonflat_function_epilogue): Rename into sparc_function_epilogue.
	(struct sparc_frame_info, current_frame_info, zero_frame_info): Delete.
	(sparc_flat_must_save_register_p): Likewise.
	(sparc_flat_compute_frame_size): Likewise.
	(sparc_flat_save_restore): Likewise.
	(sparc_flat_function_prologue): Likewise.
	(sparc_flat_function_epilogue): Likewise.
	(sparc_flat_epilogue_delay_slots): Likewise.
	(sparc_flat_eligible_for_epilogue_delay): Likewise.
	(sparc_function_ok_for_sibcall): Remove TARGET_FLAT handling.
	* config/sparc/sparc.h (MASK_FLAT, TARGET_FLAT): Delete.
	(TARGET_SWITCHES): Remove -mflat and all -mxxx (xxx:chip) options.
	(SPARC_INCOMING_INT_ARG_FIRST): Remove TARGET_FLAT handling.
	(CONDITIONAL_REGISTER_USAGE): Likewise.
	(FRAME_POINTER_REQUIRED): Likewise.
	(INITIAL_ELIMINATION_OFFSET): Likewise.
	(BASE_RETURN_VALUE_REG): Likewise.
	(BASE_OUTGOING_VALUE_REG): Likewise.
	(BASE_PASSING_ARG_REG): Likewise.
	(BASE_INCOMING_ARG_REG): Likewise.
	(INCOMING_REGNO): Likewise.
	(OUTGOING_REGNO): Likewise.
	(LOCAL_REGNO): Likewise.
	(DELAY_SLOTS_FOR_EPILOGUE): Likewise.
	(ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.
	(EPILOGUE_USES): Likewise.
	* config/sparc/sparc.md ("isa" attribute): Change "v6" into "v7".
	("flat" attribute): Delete.
	(do_builtin_setjmp_setup): Remove TARGET_FLAT and "flat" attribute
	handling.
	(call followed by jump define_peephole's): Delete.
	(exception_receiver): Likewise.
	(builtin_setjmp_receiver): Likewise.
	* config/sparc/t-sparclite (MULTILIB_OPTIONS): Remove -mflat.

From-SVN: r77169
2004-02-03 12:36:23 +00:00
Paolo Bonzini
e57e265ba6 re PR c/11658 (Wrong error message)
2004-02-03  Paolo Bonzini  <bonzini@gnu.org>

	PR c/11658
	PR c/13994
	* Makefile.in (c-parse.o, c-convert.o, c-typeck.o): Depend
	on langhooks.h.
	* objc/Make-lang.in (objc-parse.o): Depend on langhooks.h.
	* c-parse.in, c-convert.c, c-typeck.c, objc/objc-act.c:
	Include langhooks.h.  Replace c_common_truthvalue_conversion
	with the truthvalue_conversion language hook throughout.
	(expr_no_commas): Call default_conversion before save_expr
	for the first term of the production 'x ? : y'.
	* c-common.c (c_common_truthvalue_conversion): Remove
	obsolete block.  Invoke recursively the hook instead
	of this function.
	* c-convert.c (convert): handle ERROR_MARK_NODE.
	* c-typeck.c (build_binary_op): handle ERROR_MARK_NODE
	returned by the truthvalue_conversion language hook.
	* c-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use
	c_objc_common_truthvalue_conversion.
	* c-objc-common.c (c_objc_common_truthvalue_conversion):
	New function.
	* c-tree.h (c_objc_common_truthvalue_conversion): Declare it.
	* objc/objc-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use
	c_objc_common_truthvalue_conversion.

From-SVN: r77168
2004-02-03 11:22:41 +00:00
Paolo Bonzini
0251aa4518 re PR c/11658 (Wrong error message)
2004-02-03  Paolo Bonzini  <bonzini@gnu.org>

	PR c/11658
	PR c/13994
	* gcc.dg/noncompile/20040203-1.c: New test.
	* gcc.dg/noncompile/20040203-2.c: Likewise.
	* gcc.dg/noncompile/20040203-3.c: Likewise.
	* gcc.dg/20040203-1.c: Likewise.

From-SVN: r77167
2004-02-03 11:21:01 +00:00
Andrew Pinski
9d977b5bb3 re PR c++/10858 (failure with calling a method inside sizeof: sorry, unimplemented: `method_call_expr' not supported by dump_expr)
2004-02-02  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c++/10858
        * g++.dg/template/sizeof7.C: New test.

From-SVN: r77164
2004-02-02 23:27:37 -08:00
Kazu Hirata
a7a2225a2b c4x.h (FUNCTION_VALUE): Use gen_rtx_REG instead of gen_rtx.
* config/c4x/c4x.h (FUNCTION_VALUE): Use gen_rtx_REG instead
	of gen_rtx.
	(LIBCALL_VALUE): Likewise.
	* config/ip2k/ip2k.c (mdr_try_propagate_clr_sequence): Use
	gen_rtx_CC0 instead of gen_rtx.
	* config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use
	gen_rtx_fmt_e and gen_rtx_fmt_ee instead of gen_rtx.
	(m68hc11_expand_compare): Use gen_rtx_fmt_ee instead of
	gen_rtx.
	(m68hc11_emit_logical): Likewise.

From-SVN: r77162
2004-02-03 07:08:29 +00:00
Kazu Hirata
a556fd39ab alpha.c, [...]: Use const0_rtx instead of GEN_INT (0).
* config/alpha/alpha.c, config/arm/arm.c, config/c4x/c4x.c,
	config/fr30/fr30.md, config/frv/frv.c, config/frv/frv.md,
	config/h8300/h8300.c, config/ia64/ia64.c, config/ip2k/ip2k.md,
	config/m32r/m32r.md, config/m68hc11/m68hc11.c,
	config/mips/mips.md, config/mmix/mmix.c,
	config/mn10300/mn10300.c, config/mn10300/mn10300.md,
	config/ns32k/ns32k.c, config/pa/pa.md, config/pdp11/pdp11.c,
	config/rs6000/altivec.md, config/s390/s390.c,
	config/s390/s390.h, config/s390/s390.md, config/sh/sh.c,
	config/sh/sh.h, config/sh/sh.md, config/stormy16/stormy16.c:
	Use const0_rtx instead of GEN_INT (0).  Do the same for other
	constants that are readily available.

From-SVN: r77161
2004-02-03 06:43:59 +00:00
Kazu Hirata
60c81c8995 doloop.c, [...]: Use const0_rtx instead of GEN_INT (0).
* doloop.c, optabs.c, regmove.c, sched-deps.c,
	config/i386/i386.c, config/i386/i386.md: Use const0_rtx
	instead of GEN_INT (0).  Do the same for other constants that
	are readily available.

From-SVN: r77160
2004-02-03 05:39:57 +00:00
Kazu Hirata
2fb00d7f2b combine.c (simplify_set): Use gen_rtx_fmt_e instead of gen_rtx.
gcc/
	* combine.c (simplify_set): Use gen_rtx_fmt_e instead of
	gen_rtx.
	* emit-rtl.c (init_emit_once): Use gen_rtx_PC and gen_rtx_CC0
	instead of gen_rtx.
	* reload1.c (init_elim_table): Use gen_rtx_fmt_e instead of
	gen_rtx.
	* config/ns32k/ns32k.md (udivmodhi4): Use gen_rtx_IOR and
	gen_rtx_ASHIFT instead of gen_rtx.
	(udivmodqi4): Likewise.

	ada/
	* ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
	gen_rtx.

	f/
	* com.c (ffecom_member_phase2_): Use gen_rtx_MEM instead of
	gen_rtx.

From-SVN: r77159
2004-02-03 05:15:46 +00:00
Richard Henderson
b0dccb0022 re PR target/13789 ([tree-ssa] ICE on _builtin_expect_addr)
PR target/13789
        * expr.c (store_expr): Use force_operand before emit_move_insn.

From-SVN: r77158
2004-02-02 20:37:29 -08:00
Jerry Quinn
06a81b60c2 gslice.h, [...]: Update copyright years.
2004-02-02  Jerry Quinn  <jlquinn@optonline.net>

	* include/bits/gslice.h, include/bits/gslice_array.h,
	include/bits/indirect_array.h, include/bits/mask_array.h,
	include/bits/slice_array.h, include/bits/stl_numeric.h,
	include/std/std_valarray.h:  Update copyright years.

From-SVN: r77156
2004-02-03 04:01:15 +00:00