Commit Graph

32000 Commits

Author SHA1 Message Date
Jakub Jelinek
ab93735752 builtins.c (target_char_cast): New function.
* builtins.c (target_char_cast): New function.
	(expand_builtin_strchr): Use it.
	(expand_builtin_strrchr): Use it.
	(builtin_memset_read_str): New function.
	(expand_builtin_memset): Use target_char_cast.
	Try to optimize memset with second argument non-zero using
	store_by_pieces.

	* gcc.c-torture/execute/string-opt-5.c: Add some memset tests.

From-SVN: r37918
2000-12-01 18:53:07 +01:00
Marek Michalkiewicz
3a69a7d58e install.texi (avr): Replace incomplete list of supported MCU types with a link to the current one ...
* install.texi (avr): Replace incomplete list of supported MCU
	types with a link to the current one ...
	* invoke.texi (AVR Options): ... here.  Update -mmcu= to list
	all supported MCU types.  Document -minit-stack= default.
	Document new options -mno-tablejump, -mtiny-stack.
	* md.texi (AVR family):  Fix typo in 'w' constraint letter
	description.  Document 'q'.  Update 'O'.

From-SVN: r37917
2000-12-01 20:49:05 +03:00
Bernd Schmidt
c02cad8fb9 Add a frontend function for reload_reg_free_for_value_p; need to check all
registers in a multi-reg value.

From-SVN: r37916
2000-12-01 16:34:09 +00:00
Bernd Schmidt
53895717b4 Further tweak cant_combine_insn_p
From-SVN: r37915
2000-12-01 12:45:00 +00:00
Nathan Sidwell
13f9714bb6 call.c (standard_conversion): Reject pointer to member conversions from ambiguous, inaccessible or virtual bases.
cp:
	* call.c (standard_conversion): Reject pointer to member
	conversions from ambiguous, inaccessible or virtual bases.
	* typeck.c (build_static_cast): Don't check pointers to members
	specially.
testsuite:
	* g++.old-deja/g++.other/cast6.C: New test.

From-SVN: r37914
2000-12-01 11:52:33 +00:00
Warren Levy
89f99caaab mauve-libgcj: Turned on JDK1.2 and turned off tests for classes that aren't quite 1.2...
* mauve-libgcj: Turned on JDK1.2 and turned off tests for classes
	that aren't quite 1.2 compatible yet.

From-SVN: r37913
2000-12-01 10:04:02 +00:00
Jeff Law
b80ebb3b5e Daily bump.
From-SVN: r37912
2000-12-01 01:45:07 -07:00
Alexandre Oliva
3d422cb195 sh.c (shiftcosts): Don't get INTVAL before testing whether X is a CONST_INT.
* config/sh/sh.c (shiftcosts): Don't get INTVAL before testing
whether X is a CONST_INT.
(addsubcosts): Likewise.

From-SVN: r37911
2000-12-01 03:29:02 +00:00
Alexandre Oliva
b927e8c720 Align value of UNSPECV_ALIGN
From-SVN: r37910
2000-12-01 03:22:26 +00:00
Alexandre Oliva
f00018dd99 sh.h (OUTPUT_ADDR_CONST_EXTRA): Use INTVAL instead of mis-used XINT.
* config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Use INTVAL instead of
mis-used XINT.
(ARG_POINTER_REGNUM): Set to AP_REG.

From-SVN: r37909
2000-12-01 02:29:34 +00:00
Warren Levy
2f4671099a Fixed ChangeLog entry to be path specific.
From-SVN: r37908
2000-12-01 02:04:23 +00:00
Alexandre Oliva
ecfdeaeb34 sh.md (fpu_switch0, [...]): Only match on TARGET_SH4.
* config/sh/sh.md (fpu_switch0, fpu_switch1, movpsi, fpu_switch,
splits): Only match on TARGET_SH4.

From-SVN: r37907
2000-12-01 02:03:24 +00:00
Warren Levy
6934615b97 Array.java: New file from classpath.
* Array.java: New file from classpath.
	* BatchUpdateException.java: Ditto.
	* Blob.java: Ditto.
	* Clob.java: Ditto.
	* Ref.java: Ditto.
	* SQLData.java: Ditto.
	* SQLInput.java: Ditto.
	* SQLOutput.java: Ditto.
	* Struct.java: Ditto.
	* CallableStatement.java: Merged file from claspath.
	* Connection.java: Ditto.
	* DataTruncation.java: Ditto.
	* DatabaseMetaData.java: Ditto.
	* DriverManager.java: Ditto.
	* PreparedStatement.java: Ditto.
	* ResultSet.java: Ditto.
	* ResultSetMetaData.java: Ditto.
	* SQLException.java: Ditto.
	* SQLWarning.java: Ditto.
	* Statement.java: Ditto.
	* Types.java: Ditto.

From-SVN: r37906
2000-12-01 01:48:34 +00:00
Alexandre Oliva
95ac07b0f4 combine.c (try_combine): Disregard USEs when updating LOG_LINKS of subsequent insns.
* combine.c (try_combine): Disregard USEs when updating LOG_LINKS
of subsequent insns.

From-SVN: r37905
2000-12-01 01:08:40 +00:00
Richard Henderson
f272085897 alpha.h (ASM_OUTPUT_MI_THUNK): Disable.
* config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Disable.
        * config/alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise.

From-SVN: r37904
2000-11-30 16:32:12 -08:00
Richard Henderson
ef7d91cd5e elf.h (ASM_OUTPUT_SECTION_NAME): Copy elfos.h defn.
* config/alpha/elf.h (ASM_OUTPUT_SECTION_NAME): Copy elfos.h defn.
        (DO_SELECT_SECTION): New.
        (SELECT_SECTION): Use it.
        (UNIQUE_SECTION_P): New.
        (UNIQUE_SECTION): New.

From-SVN: r37903
2000-11-30 16:29:57 -08:00
Geoffrey Keating
be10afdfe8 * gcc.c-torture/execute/20001130-2.c: New testcase.
From-SVN: r37902
2000-12-01 00:15:29 +00:00
Gabriel Dos Reis
a30dbb3960 cmath.cc: Remove.
* src/cmath.cc: Remove.
	* src/Makefile.am (c_base_headers): Add bits/cmath.tcc.
	(sources): Remove cmath.cc
	* src/Makefile.in: Regenerate.

	* include/c/bits/std_cmath.h (__cmath_power<>): Declare.
	(__cmath_abs<>): New function.
	(abs, fabs): Use __cmath_abs when no direct support is available.
	(__pow_helper<>): New function.
	(pow): Define here.  Use __pow_helper<>.

	* include/c/bits/cmath.tcc: New file.

From-SVN: r37901
2000-11-30 23:44:32 +00:00
Alexandre Oliva
29ced803f0 * c-common.c (status_warning) [! ANSI_PROTOTYPES]: Load status
from va_list before using it.

From-SVN: r37900
2000-11-30 23:00:57 +00:00
Michael Matz
25e4379fe5 flow.c (make_edge): Early out, if no flags to set.
* flow.c (make_edge): Early out, if no flags to set.
        (calculate_global_regs_live): Clear out garbage only when necessary.

        * simplify-rtx.c (varray_type used_regs): New.
        (clear_table): Use it to only clear necessary items.
        (cselib_lookup, cselib_record_set): Remember newly set items.
        (cselib_update_varray_sizes, cselib_init): Initialize and grow
        used_regs.

        * local-alloc.c (update_equiv_regs): New local `cleared_regs'.
        Move clearing of dead regs out of insn-loop.

From-SVN: r37899
2000-11-30 13:40:33 -08:00
Richard Henderson
41c3953302 calls.c (expand_call): Emit queued insns before creating the tail recursion sequence.
* calls.c (expand_call): Emit queued insns before creating
        the tail recursion sequence.

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

From-SVN: r37898
2000-11-30 12:15:13 -08:00
Nathan Sidwell
31b1b95769 method.c (do_build_copy_constructor): Preserve cv qualifications when accessing source object members.
cp:
	* method.c (do_build_copy_constructor): Preserve cv
	qualifications when accessing source object members.
	(do_build_assign_ref): Likewise. Remove separate diagnostics for
	unnamed fields.
testsuite:
	* g++.old-deja/g++.other/op3.C: New test.

From-SVN: r37896
2000-11-30 16:51:54 +00:00
J. David Anglin
039df8c7c7 prevent dual double definition protection
Co-Authored-By: Bruce Korb <bkorb@gnu.org>

From-SVN: r37895
2000-11-30 16:43:00 +00:00
Loren J. Rittle
42cfed3714 Explicitly state srcdir for fixincl.x references - Loren J. Rittle
From-SVN: r37894
2000-11-30 16:30:05 +00:00
Nathan Sidwell
717e3f7376 method.c (do_build_assign_ref): Construct appropriately CV-qualified base reference.
cp:
	* method.c (do_build_assign_ref): Construct appropriately
	CV-qualified base reference. Don't allow const casts in base
	conversion.
testsuite:
	* g++.old-deja/g++.other/op2.C: New test.

From-SVN: r37893
2000-11-30 16:03:16 +00:00
Gerald Pfeifer
a6bb9efada * README.FRESCO: Remove obsolete file.
From-SVN: r37873
2000-11-30 11:09:43 +00:00
Nathan Sidwell
2c92b94d0f call.c (build_over_call): Use VOID_TYPE_P.
cp:
	* call.c (build_over_call): Use VOID_TYPE_P. Don't die on
	incomplete return type.
testsuite:
	* g++.old-deja/g++.other/crash38.C: New test.

From-SVN: r37872
2000-11-30 09:36:29 +00:00
Jeff Law
47f18b4f13 Daily bump.
From-SVN: r37871
2000-11-30 01:45:07 -07:00
Jeff Law
255b8a498d configure.in: Reorganize handling of *-*-gnu*, to share target specific make details with Linux.
* configure.in: Reorganize handling of *-*-gnu*, to share target
	specific make details with Linux.  Update comments to clarify
        the distinction between GNU/Linux and GNU/Hurd.
	* config/t-gnu (LIBGCC1, CROSS_LIBGCC1, CRTSTUFF_T_CFLAGS,
	TARGET_LIBGCC2_CFLAGS): Remove.  We now use the settings from
	config/t-linux for the Hurd.

From-SVN: r37870
2000-11-30 01:30:26 -07:00
Jeffrey A Law
e3e1101af0 POTFILES.in: Move divmod routines from config/mn10200 to config/ Add dominance.c
* POTFILES.in: Move divmod routines from config/mn10200 to config/
        Add dominance.c

From-SVN: r37869
2000-11-30 01:27:09 -07:00
Stephane Carrez
75273d0832 udivmod.c, [...]: Moved from here.
* config/mn10200/udivmod.c, config/mn10200/divmod.c,
	config/mn10200/udivmodsi4.c: Moved from here.
	* config/udivmod.c, config/divmod.c, config/udivmodsi4.c: To here.
	* config/mn10200/t-mn10200 (LIB2FUNCS_EXTRA): Use the generic
	C division functions.
	* config/m68hc11/t-m68hc11-gas (LIB2FUNCS_EXTRA): Likewise.

From-SVN: r37868
2000-11-30 01:25:59 -07:00
Jeffrey A Law
15c2086a04 pa.md (conditional moves): Avoid holes in operand list.
* pa.md (conditional moves): Avoid holes in operand list.
        (mod, umod patterns): Similarly.
        (variable extract/shift patterns): Similarly.

From-SVN: r37867
2000-11-30 01:15:41 -07:00
Neil Booth
9105f6718c objc-act.c (lang_init, [...]): Remove redundant code, assuming doing_objc_thang is true.
* objc/objc-act.c (lang_init, finish_file, maybe_objc_comptypes,
        maybe_objc_check_decl, build_objc_string_object,
        objc_declare_alias, objc_declare_class, build_message_expr,
        build_protocol_expr, build_selector_expr, build_encode_expr,
        get_class_ivars, start_class, start_protocol): Remove
        redundant code, assuming doing_objc_thang is true.

From-SVN: r37866
2000-11-30 08:11:41 +00:00
John David Anglin
1f80ea952d pa.c (restore_unscaled_index_insn_codes): Delete procedure.
* pa.c (restore_unscaled_index_insn_codes): Delete procedure.
	(record_unscaled_index_insn_codes): Likewise.
	(unscaled_index_insn_codes): Delete.
	(max_unscaled_index_insn_codes_uid): Delete.
	(output_function_prologue, output_function_epilogue, pa_reorg):
	Don't use the unscaled index insn hack.

From-SVN: r37865
2000-11-29 23:41:29 -07:00
John David Anglin
d16ca6a670 pa.md: Remove hack from all index insns to reverse the operand order of frame and...
* pa.md: Remove hack from all index insns to reverse the operand
        order of frame and stack pointer references incorrectly created
        in the reload pass.

From-SVN: r37864
2000-11-29 23:37:34 -07:00
John David Anglin
3502dc9cd3 function.h (emit_status): Delete member regno_pointer_flag and rename regno_pointer_flag_length to...
* function.h (emit_status): Delete member regno_pointer_flag and
	rename regno_pointer_flag_length to regno_pointer_align_length.
	Delete define for REGNO_POINTER_FLAG.
	* integrate.h (inline_remap): Delete member regno_pointer_flag.
	Add member x_regno_reg_rtx.
	* rtl.h (rtx_def): Use frame_related bit to indicate register is
	a pointer in REG expressions.  Define REG_POINTER macro.
	* alias.c (find_base_value, find_base_term): Use REG_POINTER
	instead of REGNO_POINTER_FLAG.
	* combine.c (nonzero_bits, num_sign_bit_copies): Likewise.
	* emit-rtl.c (gen_reg_rtx): Use regno_pointer_align_length instead
	of regno_pointer_flag_length.  Remove code which refers to
	regno_pointer_flag.
	(mark_reg_pointer): Use REG_POINTER.
	(free_emit_status): Remove code which refers to regno_pointer_flag.
	(init_emit, mark_emit_status): Likewise.
	* flow.c (dump_flow_info): Likewise.
	* function.c (preserve_temp_slots): Likewise.
	* integrate.c (expand_inline_function, copy_rtx_and_substitute):
	Use x_regno_reg_rtx instead of regno_pointer_flag for function
	pointer determination in map.
	* loop.c (strength_reduce, maybe_eliminate_biv_1): Use REG_POINTER.
	* predict.c (estimate_probability): Likewise.
	* regclass.c (record_address_regs, reg_scan_mark_refs): Likewise.
	* unroll.c (unroll_loop): Use x_regno_reg_rtx instead of
	regno_pointer_flag for function pointer determination in map.
	* convex.h (RTX_COSTS): Don't test regno_pointer_flag and use
	REG_POINTER.
	* pa.c (hppa_legitimize_address, emit_move_sequence, basereg_operand):
	Use REG_POINTER.
	(restore_unscaled_index_insn_codes): Revise comment.

From-SVN: r37863
2000-11-29 23:31:19 -07:00
John David Anglin
31a7659bfd * expr.c (do_compare_and_jump): Add missing TYPE_MODE in statement.
From-SVN: r37862
2000-11-29 22:49:49 -07:00
Joseph Myers
9f1bbeaa49 * extend.texi: Update documentation for attributes.
From-SVN: r37861
2000-11-30 01:24:39 +00:00
David O'Brien
74e5aa4b46 elf.h (IDENT_ASM_OP): Protect the #define.
2000-11-29  David O'Brien  <obrien@FreeBSD.org>
	* config/alpha/elf.h (IDENT_ASM_OP): Protect the #define.
	(ASM_DECLARE_OBJECT_NAME): Same.
	(ASM_FILE_END): Same.
	(ASM_FINISH_DECLARE_OBJECT): Same.
	(ASM_IDENTIFY_GCC): Same.
	(ASM_IDENTIFY_LANGUAGE): Same.
	(ASM_OUTPUT_CONSTRUCTOR): Same.
	(ASM_OUTPUT_DEF): Same.
	(ASM_OUTPUT_DESTRUCTOR): Same.
	(ASM_OUTPUT_EXTERNAL_LIBCALL): Same.
	(ASM_OUTPUT_SECTION_NAME): Same.
	(ASM_WEAKEN_LABEL): Same.
	(BSS_SECTION_ASM_OP): Same.
	(COMMON_ASM_OP): Same.
	(CONST_SECTION_ASM_OP): Same.
	(CONST_SECTION_FUNCTION): Same.
	(CTORS_SECTION_ASM_OP): Same.
	(DTORS_SECTION_ASM_OP): Same.
	(ESCAPES): Same.
	(FINI_SECTION_ASM_OP): Same.
	(IDENT_ASM_OP): Same.
	(IDENT_ASM_OP): Same.
	(INIT_SECTION_ASM_OP): Same.
	(INT_ASM_OP): Same.
	(MAX_OFILE_ALIGNMENT): Same.
	(SBSS_SECTION_ASM_OP): Same.
	(SDATA_SECTION_ASM_OP): Same.
	(SECTION_FUNCTION_TEMPLATE): Same.
	(SELECT_SECTION): Same.
	(SE_CONST_SECTION): Same.
	(SIZE_ASM_OP): Same.
	(SKIP_ASM_OP): Same.
	(STRING_ASM_OP): Same.
	(STRING_LIMIT): Same.
	(TYPE_ASM_OP): Same.
	(TYPE_OPERAND_FMT): Same.

Approved by:  Richard Henderson <rth@redhat.com>
              Message-ID: <20001128205112.C9793@redhat.com>

From-SVN: r37860
2000-11-30 00:19:47 +00:00
Neil Booth
0eaed3c665 c-decl.c (c_decode_option): Don't handle -lang-objc.
* c-decl.c (c_decode_option): Don't handle -lang-objc.
        * objc/lang-options.h: Remove -lang-objc.
        * objc/lang-specs.h: Don't pass -lang-objc to cc1obj.
        * objc/objc-act.c (lang_init_options): Set c_language.

From-SVN: r37859
2000-11-29 22:19:28 +00:00
Benjamin Kosnik
fc81ccd3e5 Fixes for build directories with colons, AIX build problems.
2000-11-29  Benjamin Kosnik  <bkoz@redhat.com>

	Fixes for build directories with colons, AIX build problems.
	* src/Makefile.am: Cleanups, add documentation.
	(libstdc++.INC): Simplify rule.
	(myinstallheaders): Consolidate install rules.
	(myinstalldirs): New, make directores.
	(base_headers): Subdivide based on install directory.
	(ext_headers): New.
	(backward_headers): New.
	(headers): Remove.
	(c_headers): Remove, unused.
	(c_shadow_headers): Split up, deal with conditional usage in a
	sane manner.
	* src/Makefile.in: Regenerate.

From-SVN: r37858
2000-11-29 21:30:30 +00:00
Jakub Jelinek
9816663912 expr.c (can_store_by_pieces): Reinitialize max_size for reverse tests.
* expr.c (can_store_by_pieces): Reinitialize max_size for reverse
	tests.

From-SVN: r37857
2000-11-29 22:03:33 +01:00
Toon Moene
b2d7dd203a 20001111.x: Test fixed - remove XFAIL.
2000-11-29  Toon Moene  <toon@moene.indiv.nluug.nl>

	* g77.f-torture/execute/20001111.x: Test fixed - remove XFAIL.

From-SVN: r37856
2000-11-29 20:57:55 +00:00
Phil Edwards
58884590a0 Sync with the documentation from wwwdocs.
2000-11-29  Phil Edwards  <pme@sources.redhat.com>

	Sync with the documentation from wwwdocs.
	* docs/Makefile:  New file (rebuilds FAQ text version).
	* docs/configopts.html:  Update.
	* docs/documentation.html:  Update.
	* docs/download.html:  Update.
	* docs/index.html:  Update.
	* docs/install.html:  Update.
	* docs/links.html:  Update.
	* docs/mail.html:  Update.
	* docs/status.html:  Update.
	* docs/thanks.html:  Update.
	* docs/27_io/howto.html:  Update.
	* docs/faq/index.html:  Update for 2.91.
	* docs/faq/index.txt:  Update for 2.91.
	* docs/footer.html:  Removed.
	* docs/footer.ihtml:  New file.
	* docs/gccrebuild.html:  Removed.
	* docs/header.html:  Removed.
	* docs/header.ihtml:  New file.

From-SVN: r37855
2000-11-29 20:37:02 +00:00
Jakub Jelinek
78cd99d0ab * gcc.dg/20001117-1.c: Add main.
From-SVN: r37854
2000-11-29 21:13:47 +01:00
Neil Booth
f3b55474b6 * c-pragma.c (init_pragma): Update for parse_in type change.
From-SVN: r37853
2000-11-29 19:30:04 +00:00
Laurynas Biveinis
b86ecfa96e * configure.in: recognize DOS-style absolute paths.
From-SVN: r37852
2000-11-29 14:07:29 -05:00
Jakub Jelinek
57814e5ea3 expr.h (store_by_pieces): Add prototype.
* expr.h (store_by_pieces): Add prototype.
	(can_store_by_pieces): Likewise.
	* expr.c (struct store_by_pieces): Renamed from clear_by_pieces.
	(can_store_by_pieces): New.
	(store_by_pieces): New.
	(clear_by_pieces): New.
	(clear_by_pieces_1): New.
	(store_by_pieces_1): Renamed from clear_by_pieces, handle storing
	arbitrary compiler generated constants into memory block.
	(store_by_pieces_2): Renamed from clear_by_pieces_1, likewise.
	* builtins.c (c_readstr): New.
	(builtin_memcpy_read_str): New.
	(expand_builtin_memcpy): If src is string constant and
	emit_block_move would move it by pieces, compute integer constants
	from the string and store it into memory block instead.
	(builtin_strncpy_read_str): New.
	(expand_builtin_strncpy): If N is not constant zero and c_strlen does
	not return INTEGER_CST, don't optimize.
	If N is larger than strlen(src) + 1, try to copy the string
	including padding with store_by_pieces.
	(expand_builtin_strcmp): If both arguments have side effects, don't
	optimize.
	(expand_builtin_fputs): If STR has side effects, don't optimize.

	* gcc.c-torture/execute/string-opt-5.c: Add some strcmp and strncpy
	tests.
	* gcc.c-torture/execute/string-opt-6.c: New test.

From-SVN: r37851
2000-11-29 19:24:50 +01:00
Mark Mitchell
3632e1eaba Fix copyright line
From-SVN: r37850
2000-11-29 17:53:18 +00:00
Jason Merrill
01933a513c tabify
From-SVN: r37849
2000-11-29 11:29:34 -05:00