Commit Graph

44141 Commits

Author SHA1 Message Date
Roger Sayle 6bfa5aac87 re PR rtl-optimization/4046 (redundant conditional branch)
PR opt/4046
	* fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A,
	A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and
	B are truth values.

From-SVN: r55153
2002-07-01 20:59:00 +00:00
Nathanael Nerode 9a5c1b9db1 Kill last references to LIBGCC1_TEST, which is never tested and never set to anything but "".
Kill last references to LIBGCC1_TEST, which is never tested and never
set to anything but "".  Oy.

From-SVN: r55152
2002-07-01 20:51:20 +00:00
Matt Kraai 3b2124df5f README.Portability (Function prototypes): Give an example of declaring and defining a function with no arguments.
* README.Portability (Function prototypes): Give an example of
	declaring and defining a function with no arguments.

From-SVN: r55151
2002-07-01 20:24:41 +00:00
Matt Kraai d3fc4dbce0 README.Portability (Function prototypes): Document new variable-argument function macros.
* README.Portability (Function prototypes): Document new
	variable-argument function macros.

From-SVN: r55150
2002-07-01 20:09:52 +00:00
Nathanael Nerode 5fd3853ac3 config-ml.in doesn't need to worry about cygnus configure
From-SVN: r55149
2002-07-01 19:59:22 +00:00
Benjamin Kosnik eafa1afac6 strstream: Remove namespace std.
2002-07-01  Benjamin Kosnik  <bkoz@redhat.com>

	* include/backward/strstream: Remove namespace std. Transfer to...
	* include/backward/strstream.h: ...here. Qualify std names.
	* src/strstream.cc: Remove namespace std.
	* include/Makefile.am (backward_headers): Remove strstream.h.
	* include/Makefile.in: Regenerate.
	* config/linker-map.gnu: Export strstream bits.

	* src/fstream-inst.cc: Tweak.
	* src/io-inst.cc: Same.
	* src/istream-inst.cc: Same.
	* src/misc-inst.cc: Same.
	* src/ostream-inst.cc: Same.
	* src/sstream-inst.cc: Same.
	* src/valarray-inst.cc: Same.
	* src/misc-inst.cc: Remove unused instantiations.

From-SVN: r55148
2002-07-01 19:58:42 +00:00
J"orn Rennecke c1b92d0906 sh.c (langhooks.h): Include.
* sh.c (langhooks.h): Include.
	(sh_init_builtins, sh_media_init_builtins): New functions.
	(sh_expand_builtin, arith_reg_dest,and_operand): Likewise.
	(mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise.
	(sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise.
	(builtin_description): New struct tag.
	(signature_args, bdesc): New arrays.
	(TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define.
	(print_operand): Add 'N' modifier.
	* sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes.
	(EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros.
	(EXTRA_CONSTRAINT): Add 'U' and 'W' cases.
	(CONST_COSTS): Add special case for SHmedia AND.
	(PREDICATE_CODES): Add and_operand, arith_reg_dest,
	extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset,
	sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand.
	target_operand can also be const or unspec.
	* sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants.
	(UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise.
	(attribute type): Add new types.
	(anddi3): Add splitter.
	(movdi_const_16bit+1): Add code to handle vector constants and
	bitmasks efficiently.
	(shori_media): Have generator function made.
	(movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns.
	(movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise.
	(movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise.
	(ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise.
	(negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise.
	(negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise.
	(mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise.
	(mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise.
	(mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise.
	(mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise.
	(mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise.
	(mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise.
	(mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise.
	(mshflo_b,  mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie.
	(mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise.
	(mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise.
	(mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise.
	(lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise.
	(ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise.
	(ftrv): Likewise.

	(fpu_switch+1, fpu_switch+2): Remove constraint.

From-SVN: r55147
2002-07-01 20:41:54 +01:00
Neil Booth 7098b619a0 cmdlne-dD.c, [...]: New tests.
* gcc.dg/cpp/trad/cmdlne-dD.c, gcc.dg/cpp/trad/cmdlne-dM.c,
	gcc.dg/cpp/trad/include.c: New tests.

From-SVN: r55146
2002-07-01 19:41:52 +00:00
Hans-Peter Nilsson 0a220b4a53 re PR target/7177 (cris-axis-elf: ICE at -O2, unrecognized insn, sign-extend mem)
PR target/7177
	* gcc.c-torture/compile/20020701-1.c: New test.

From-SVN: r55143
2002-07-01 19:39:44 +00:00
Stan Shebs bbeb33f262 objc.exp (objc_target_compile): Add the -I path to ObjC header here...
* lib/objc.exp (objc_target_compile): Add the -I path to ObjC
        header here...
        * lib/objc-torture.exp (objc-torture-compile): ...instead of here
        (objc-torture-execute): or here.

From-SVN: r55142
2002-07-01 18:54:39 +00:00
Aldy Hernandez 97ebc06f5d tree.c (build_function_type_list): Update function comment.
2002-07-01  Aldy Hernandez  <aldyh@redhat.com>

        * tree.c (build_function_type_list): Update function comment.
        Rename first argument to return_type.

From-SVN: r55141
2002-07-01 18:40:24 +00:00
Benjamin Kosnik 9035b63a14 configure.in (libtool_VERSION): Bump to 5:0:0.
2002-07-01  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (libtool_VERSION): Bump to 5:0:0.
	* configure: Regenerate.

From-SVN: r55140
2002-07-01 18:08:25 +00:00
Neil Booth 353a10d056 Makefile.in: Remove all trace of tradcpp.c, tradcpp.h, tradcif.y and related files.
* Makefile.in: Remove all trace of tradcpp.c, tradcpp.h,
	tradcif.y and related files.

From-SVN: r55139
2002-07-01 16:13:01 +00:00
Nathanael Nerode cfefc43445 Remove references to building emacs from top level Makefile.in.
From-SVN: r55138
2002-07-01 15:59:58 +00:00
J"orn Rennecke 03c5327857 * gcc.c-torture/execute/arith-rand-ll.c: New test.
From-SVN: r55136
2002-07-01 16:12:49 +01:00
Neil Booth e34cabb3b7 cpptrad.c (skip_whitespace): Pass pointer to prior char.
* cpptrad.c (skip_whitespace): Pass pointer to prior char.
testsuite:
	* gcc.dg/cpp/trad/escaped-nl.c: New test.

From-SVN: r55135
2002-07-01 12:51:10 +00:00
Neil Booth 590e1987d2 * cppmacro.c: Forgotten commit.
From-SVN: r55134
2002-07-01 12:47:54 +00:00
Kaveh R. Ghazi 8bf3ccbbbd * mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses.
From-SVN: r55133
2002-07-01 12:13:03 +00:00
GCC Administrator 0201312b89 Daily bump.
From-SVN: r55132
2002-07-01 07:17:09 +00:00
Douglas B Rupp 7fda878c25 configure.in (OUTPUT_OPTION,NO_MINUS_C_MINUS_O): Configure.
2002-06-30  Douglas Rupp  <rupp@gnat.com>

	* configure.in (OUTPUT_OPTION,NO_MINUS_C_MINUS_O): Configure.
	* Makefile.in (OUTPUT_OPTION): Use.

From-SVN: r55127
2002-07-01 05:38:50 +00:00
T.J. Mather 32c4621e89 gcj.texi: Fixed gcj invocation example so that it compiles.
2002-06-29  T.J. Mather  <tjmather@maxmind.com>

	* gcj.texi: Fixed gcj invocation example so that it compiles.

From-SVN: r55126
2002-07-01 04:48:39 +01:00
Devang Patel 118f8dc12c objc-act.c (finish_file): Avoid finish_objc() if -fsyntax-only.
2002-06-30  Devang Patel  <dpatel@apple.com>

        * objc/objc-act.c (finish_file): Avoid finish_objc() if
        -fsyntax-only.

2002-06-30  Devang Patel  <dpatel@apple.com>

        * objc.dg/fsyntax-only.m: New test.

From-SVN: r55125
2002-07-01 00:43:41 +00:00
Nathan Sidwell d689a8f192 cp-tree.h (CPTI_TINFO_DECL_TYPE): Replace with ...
* cp-tree.h (CPTI_TINFO_DECL_TYPE): Replace with ...
	(CPTI_TYPE_INFO_PTR_TYPE): ... this.
	(tinfo_decl_type): Replace with ...
	(type_info_ptr_type): ... this.
	(import_export_tinfo): Declare.
	(tinfo_decl_p): Rename to ...
	(unemitted_tinfo_decl_p): ... this.
	* decl2.c (import_export_decl): Break out tinfo handling into ...
	(import_export_tinfo): ... here. New function.
	(finish_file): Adjust.
	* rtti.c (TINFO_REAL_NAME): New macro.
	(init_rtti_processing): Create the tinfo types.
	(get_tinfo_decl_dynamic): Use type_info_ptr_type, get_tinfo_ptr.
	(get_tinfo_decl): Adjust.
	(get_tinfo_ptr): New function.
	(get_type_id): Use it.
	(tinfo_base_init): Create vtable decl here, if it doesn't exist.
	(ptr_initializer): Use get_tinfo_ptr.
	(ptm_initializer): Likewise.
	(synthesize_tinfo_var): Break into ...
	(get_pseudo_ti_init): ... this. Just create the initializer.
	(get_pseudo_ti_desc): .. and this.
	(create_real_tinfo_var): Remove.
	(create_pseudo_type_info): Don't create the vtable decl here.
	(get_vmi_pseudo_type_info): Remove.
	(create_tinfo_types): Adjust.
	(tinfo_decl_p): Rename to ...
	(unemitted_tinfo_decl_p): ... here. Adjust.
	(emit_tinfo_decl): Adjust. Create the initializer.

From-SVN: r55124
2002-06-30 20:41:38 +00:00
Denis Chertykov e3223ea293 extend.texi: Add ip2k port to description of attribute naked.
* doc/extend.texi: Add ip2k port to description of attribute
	naked.
	* doc/install.texi (Specific): Add ip2k description.
	* doc/install-old.texi (Configurations): Add ip2k to possible
	cpu types.
	* doc/md.texi: Document ip2k constraints.
	* config/ip2k/crt0.S: New file.
	* config/ip2k/ip2k-protos.h: New file.
	* config/ip2k/ip2k.c: New file.
	* config/ip2k/ip2k.h: New file.
	* config/ip2k/ip2k.md: New file.
	* config/ip2k/libgcc.S: New file.
	* config/ip2k/t-ip2k: New file.

Co-Authored-By: Alan Lehotsky <apl@alum.mit.edu>
Co-Authored-By: Bernd Schmidt <bernds@redhat.com>
Co-Authored-By: Dave Hudson <dave.hudson@ubicom.com>
Co-Authored-By: Frank Ch. Eigler <fche@redhat.com>
Co-Authored-By: Graham Stott <grahams@redhat.com>
Co-Authored-By: Jeff Johnston <jjohnstn@redhat.com>
Co-Authored-By: Matthew Green <mrg@redhat.com>
Co-Authored-By: Richard Henderson <rth@redhat.com>

From-SVN: r55122
2002-06-30 23:27:48 +04:00
Hans-Peter Nilsson 66b8c57f68 mmix.md ("return"): New pattern.
* config/mmix/mmix.md ("return"): New pattern.
	* config/mmix/mmix.h (TARGET_MASK_USE_RETURN_INSN)
	(TARGET_USE_RETURN_INSN): New macros.
	(TARGET_DEFAULT): Include TARGET_MASK_USE_RETURN_INSN.
	(TARGET_SWITCHES): Add -msingle-exit and -mno-single-exit.
	* config/mmix/mmix.c (MMIX_OUTPUT_REGNO): Fix spacing.
	(MMIX_POP_ARGUMENT): New macro.
	(mmix_target_asm_function_prologue): When no epilogue is executed,
	just emit a blank line.  Use MMIX_POP_ARGUMENT with final POP insn.
	(mmix_print_operand) <case '.'>: New case.
	(mmix_print_operand_punct_valid_p): Match '.'.
	(mmix_use_simple_return): New function.
	* config/mmix/mmix-protos.h (mmix_use_simple_return): Prototype.
	* doc/invoke.texi (Option Summary) <MMIX Summary>: Add
	-msingle-exit, -mno-single-exit.
	(MMIX Options): Ditto.

From-SVN: r55121
2002-06-30 18:53:53 +00:00
Aldy Hernandez e7a60f5696 i386.c (ix86_init_mmx_sse_builtins): Fix typos.
2002-06-30  Aldy Hernandez  <aldyh@redhat.com>

        * config/i386/i386.c (ix86_init_mmx_sse_builtins): Fix typos.

From-SVN: r55120
2002-06-30 17:01:39 +00:00
Kaveh R. Ghazi 1ef7d32b91 * gengtype.c (oprintf): Move VA_CLOSE after all fixedarg uses.
From-SVN: r55119
2002-06-30 12:14:15 +00:00
GCC Administrator 76147cce13 Daily bump.
From-SVN: r55117
2002-06-30 07:18:09 +00:00
Alan Modra c8b64bf26d * unroll.c (loop_iterations): Handle EQ loops.
From-SVN: r55111
2002-06-30 14:36:01 +09:30
David Edelsohn 35aba846c1 rs6000.md (ctrdi): Allocate pseudo for FPR constraint in define_expand, not splitter.
* config/rs6000/rs6000.md (ctrdi): Allocate pseudo for FPR
        constraint in define_expand, not splitter.
        Formatting.

From-SVN: r55110
2002-06-29 21:44:43 -04:00
Aldy Hernandez b4de2f7db7 i386.c (ix86_init_mmx_sse_builtins): Use build_function_type_list instead of build_function_type.
2002-06-29  Aldy Hernandez  <aldyh@redhat.com>

        * config/i386/i386.c (ix86_init_mmx_sse_builtins): Use
        build_function_type_list instead of build_function_type.

        * config/ia64/ia64.c (ia64_init_builtins): Same.

        * config/alpha/alpha.c (alpha_init_builtins): Same.

        * config/rs6000/rs6000.c (altivec_init_builtins): Same.

        * config/arm/arm.c (arm_init_builtins): Same.

        * tree.h: Add build_function_type_list prototype.

        * tree.c (build_function_type_list): New.

From-SVN: r55109
2002-06-30 01:19:58 +00:00
Kaveh R. Ghazi 1691051fc9 * collect2.c (scan_prog_file): Fix typo in message.
From-SVN: r55107
2002-06-29 22:51:11 +00:00
Aaron Lehmann 7bfb14f14f fold-cont.c: Remove unused CHARMASK.
2002-06-28  Aaron Lehmann  <aaronl@vitelus.com>

        * fold-cont.c: Remove unused CHARMASK.

From-SVN: r55106
2002-06-29 21:14:21 +00:00
Hans Boehm 5ddf82b4c7 * win32_threads.c (GC_push_all_stacks): Tolerate bad sp.
From-SVN: r55104
2002-06-29 17:34:06 +00:00
Neil Booth 38800fe876 re PR preprocessor/7150 (gcc -dM -E ... SegFault)
PR preprocessor/7150
	* cppmain.c (scan_translation_unit_trad): Simplify.
	* cpplib.c (cpp_scan_nooutput): Handle traditional case.

From-SVN: r55102
2002-06-29 15:49:24 +00:00
Neil Booth f60ed6be98 crtdll.h: Define EXTRA_OS_CPP_BUILTINS.
* config/i386/crtdll.h: Define EXTRA_OS_CPP_BUILTINS.
	Don't use CPP_PREDEFINES.
	* config/i386/cygwin.h (EXTRA_OS_CPP_BUILTINS): New.
	Used TARGET_OS_CPP_BUILTINS in preference to CPP_PREDEFINES.
	* config/i386/djgpp.h, config/i386/i386-coff.h,
	config/i386/i386-interix.h, config/i386/i386-interix3.h,
	config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mingw32.h,
	config/i386/openbsd.h, config/i386/ptx4-i.h, config/i386/sysv3.h,
	config/i386/uwin.h: Similarly.

From-SVN: r55101
2002-06-29 09:10:04 +00:00
GCC Administrator ddd9819e57 Daily bump.
From-SVN: r55100
2002-06-29 07:17:41 +00:00
Herman A.J. ten Brugge 76118c1102 c4x.h: (TARGET_CPU_CPP_BUILTINS): Check flag_inline_functions and flag_inline_trees to...
* c4x.h: (TARGET_CPU_CPP_BUILTINS): Check flag_inline_functions and
	flag_inline_trees to enable inlining.

From-SVN: r55091
2002-06-29 03:05:50 +00:00
Phil Edwards 446c5b11aa PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
2002-06-28  Phil Edwards  <pme@gcc.gnu.org>

	PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
	* include/std/std_queue.h:  Include deque.tcc, vector.tcc.
	* include/std/std_stack.h:  Include deque.tcc.
	* testsuite/23_containers/adaptors.cc:  New file.

From-SVN: r55090
2002-06-29 01:10:51 +00:00
Phil Edwards 9137b119fa configure.in (gcc_gxx_include_dir): Change to match versioned C++ headers if --enable-version-specific-runtime-libs...
2002-06-28  Phil Edwards  <pme@gcc.gnu.org>

	* configure.in (gcc_gxx_include_dir):  Change to match versioned
	C++ headers if --enable-version-specific-runtime-libs is used.
	* configure:  Regenerate.

From-SVN: r55088
2002-06-29 00:19:00 +00:00
Jan Hubicka 6bdb8dd695 * gcse.c (gcse_emit_move_after): Use gen_move_insn to produce the move.
From-SVN: r55087
2002-06-28 17:41:19 -06:00
Stephen Clarke f1b1186f6c combine.c (combine_simplify_rtx): Pass the mode of the shift count...
* combine.c (combine_simplify_rtx): Pass the mode of the
        shift count, not the shift operation when trying to simplify
        a shift on a SHIFT_COUNT_TRUNCATED target.

From-SVN: r55085
2002-06-28 15:34:47 -06:00
Stephane Carrez ae9bd48177 m68hc11.md ("*addsi3"): Use 'o' constraint to avoid the auto increment addressing modes.
* config/m68hc11/m68hc11.md ("*addsi3"): Use 'o' constraint to
	avoid the auto increment addressing modes.
	("*subsi3"): Likewise.
	(split for add/sub on address): For 68HC12 push the value on
	the stack and do the operation with a pop.

From-SVN: r55083
2002-06-28 23:16:58 +02:00
Graham Stott 2fe938856a MAINTAINERS: Update my email address.
2002-06-28  Graham Stott  <graham.stott@btinternet.com>

	* MAINTAINERS: Update my email address.

From-SVN: r55082
2002-06-28 21:07:30 +00:00
Graham Stott 4c3158022f * Update email address.
From-SVN: r55081
2002-06-28 21:00:15 +00:00
Stephane Carrez 4caff360ac m68hc11.h (OPTIMIZATION_OPTIONS): Define.
* config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Define.
	* config/m68hc11/m68hc11-protos.h (m68hc11_optimization_options):
	Declare.
	* config/m68hc11/m68hc11.c (m68hc11_optimization_options): New,
	do not reorder basic blocks at the end when optimizing for size.

From-SVN: r55079
2002-06-28 22:49:36 +02:00
Neil Booth 1d63a28afc cpplib.c (_cpp_handle_directive): Move #define-specific code to the #define handler...
* cpplib.c (_cpp_handle_directive): Move #define-specific
	code to the #define handler...
	(do_define): ...here.
	(lex_macro_node): No longer a need to check for comments here.

From-SVN: r55077
2002-06-28 20:27:14 +00:00
Stephane Carrez 2cc2149737 m68hc11.c (autoinc_mode): New function.
* config/m68hc11/m68hc11.c (autoinc_mode): New function.
	(m68hc11_make_autoinc_notes): New function.
	(m68hc11_split_move): Be very cautious when spliting a move with
	auto increment/decrement modes because this may result in incompatible
	directions; add REG_INC notes to the resulting insn for CSE reg.

From-SVN: r55076
2002-06-28 22:26:16 +02:00
Toon Moene ba18d6d38b news.texi: Mention 2 Gbyte limit on 32-bit targets for arrays explicitly in news on g77-3.1.
2002-06-28  Toon Moene  <toon@moene.indiv.nluug.nl>

	* news.texi: Mention 2 Gbyte limit on 32-bit targets
	for arrays explicitly in news on g77-3.1.

From-SVN: r55075
2002-06-28 19:58:32 +00:00
Stephane Carrez 3cdd28216b m68hc11.c (register_indirect_p): For 68HC12 a constant can be a valid address.
* config/m68hc11/m68hc11.c (register_indirect_p): For 68HC12 a constant
	can be a valid address.

From-SVN: r55073
2002-06-28 21:52:17 +02:00