Commit Graph

45455 Commits

Author SHA1 Message Date
Mark Mitchell
17bbb839f1 store-layout.c (finish_record_layout): Add free_p parameter.
* store-layout.c (finish_record_layout): Add free_p parameter.
	(layout_type): Pass it.
	* tree.h (finish_record_layout): Update prototype.

	* class.c (walk_subobject_offsets): Correct the calculation of
	offsets for virtual bases.  Correct the counting of array
	elements.
	(layout_nonempty_base_or_field): Simplify.  Correct the
	calculation of offsets to be propagated through the binfo
	hierarchy.
	(build_base_field): Avoid creating a FIELD_DECL for empty bases.
	Add the FIELD_DECL to TYPE_FIELDS.
	(build_base_fields): Adjust accordingly.
	(layout_virtual_bases): Use build_base_field.
	(end_of_class): Return a tree, not an integer.
	(warn_about_ambiguous_direct_bases): Rename to ...
	(warn_about_ambiguous_bases): ... this.
	(include_empty_classes): New function.
	(layout_class_type): Create an alternative version of the type to
	be used when as a base class type.  Do not call
	finish_record_layout until we are done laying out the class.
	* cp-tree.h (lang_type_class): Remove size, size_unit.  Add
	as_base.
	(CLASSTYPE_SIZE): Reimplement.
	(CLASSTYPE_SIZE_UNIT): Likewise.
	(CLASSTYPE_ALIGN): Likweise.
	(CLASSTYPE_USER_ALIGN): Likewise.
	(CLASSTYPE_AS_BASE): New macro.
	(DECL_INITIALIZED_P): Likewise.
	(extract_init): Remove prototype.
	(build_forced_zero_init): Rename to ...
	(build_zero_init): ... this.
	(force_store_init_value): Remove.
	* decl.c (obscure_complex_init): Remove.
	(duplicate_decls): Copy DECL_INITIALIZED_P.
	(check_initializer): Do not leave junk in DECL_INITIAL.
	(cp_finish_decl): Handle zero-initialization of entities with
	static storage duration.
	* expr.c (extract_init): Remove.
	* init.c (build_forced_zero_init): Remove.
	(build_zero_init): New function.
	(build_default_init): Use it.
	(build_field_list): Skip FIELD_DECLs for base subobjects.
	(push_base_cleanups): Likewise.
	* method.c (do_build_assign_ref): Likewise.
	(synthesize_exception_spec): Likewise.
	* pt.c (tsubst_decl): Clear DECL_INITIALIZED_P.
	(regenerate_decl_from_template): To not set DECL_INITIAL for a
	static data member whose initialization took place in its class.
	(instantiate_decl): Do not pass an initializer to cp_finish_decl
	in that situation.
	* search.c (dfs_push_decls): Skip FIELD_DECLs for base subobjects.
	(dfs_unuse_fields): Likewise.
	* tree.c (pod_type_p): Handle error_mark_node.
	(zero_init_p): Likewise.
	* typeck.c (lookup_anon_field): Skip FIELD_DECLs for base
	subobjects.
	* typeck2.c (store_init_value): Remove #if 0'd code.
	(force_store_init_value): Remove.
	(process_init_constructor): Use build_zero_init.

	* g++.dg/abi/empty7.C: New test.
	* g++.dg/init/pm2.C: Likewise.

From-SVN: r57654
2002-09-30 16:52:19 +00:00
Anthony Green
acc59b855d Add -fno-assert flag.
From-SVN: r57649
2002-09-30 14:57:43 +00:00
Jan Hubicka
48ddd46c41 i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
* i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.

	* gcse.c (cprop_jump): Check that the register has not
	been modified
	(cprop_jump): Likewise.

From-SVN: r57648
2002-09-30 13:00:32 +00:00
Ulrich Weigand
ca25149e05 * configure.in (s390*-*-linux*): Enable libgcj.
From-SVN: r57647
2002-09-30 12:15:00 +00:00
Ulrich Weigand
c4f17c6f58 configure.in: Add s390x-*-linux-* target.
* configure.in: Add s390x-*-linux-* target.
	* configure: Regenerate.
	* include/ffi.h.in: Define S390X for s390x targets.
	(FFI_CLOSURES): Define for s390/s390x.
	(FFI_TRAMPOLINE_SIZE): Likewise.
	(FFI_NATIVE_RAW_API): Likewise.
	* src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390.
	* src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x.
	* src/s390/ffi.c: Major rework of existing code.  Add support for
	s390x targets.  Add closure support.
	* src/s390/sysv.S: Likewise.

From-SVN: r57646
2002-09-30 11:59:42 +00:00
Richard Earnshaw
b93a0fe6ba arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
* arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
(MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
that we have a SImode access, and only then if reload hasn't completed;
for all other cases, use LO_REGS.

From-SVN: r57644
2002-09-30 11:18:38 +00:00
GCC Administrator
067bb3a79d Daily bump.
From-SVN: r57643
2002-09-30 07:17:22 +00:00
Richard Henderson
98ee7e6caa * real.c (real_from_string): Apply sign last. Tidy exponent handling.
From-SVN: r57637
2002-09-29 23:04:16 -07:00
Anthony Green
d3cc3f10da Add Proxy support.
From-SVN: r57635
2002-09-30 05:19:09 +00:00
Richard Henderson
ccf7aef428 combine.c (force_to_mode): Handle FLOAT_MODE destinations for CONST_INT.
* combine.c (force_to_mode): Handle FLOAT_MODE destinations
        for CONST_INT.

From-SVN: r57634
2002-09-29 20:26:47 -07:00
David Edelsohn
d454e75a29 real.h (ibm_extended_format): Declare.
* real.h (ibm_extended_format): Declare.
        * real.c (encode_ibm_extended, decode_ibm_extended): New
        functions.

From-SVN: r57633
2002-09-29 17:23:45 -04:00
Kaveh R. Ghazi
89b0654082 darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
* darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.

	* ia64.c (ia64_hpux_asm_file_end): Const-ify.

From-SVN: r57632
2002-09-29 19:55:08 +00:00
Nathan Sidwell
03357c23e9 re PR c++/7788 (g++-3.2 internal error: Segmentation fault)
cp:
	PR c++/7788
	* rtti.c (unemitted_tinfo_decl_p): Check it has a field.
testsuite:
	* g++.dg/rtti/crash1.C: New test.

From-SVN: r57630
2002-09-29 18:27:02 +00:00
John David Anglin
6ca6193b82 * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
From-SVN: r57629
2002-09-29 18:25:20 +00:00
Hans-Peter Nilsson
d7bb749a3d sibcall-1.c, [...]: New tests.
* gcc.dg/sibcall-1.c, gcc.dg/sibcall-2.c, gcc.dg/sibcall-3.c,
	gcc.dg/sibcall-4.c: New tests.

From-SVN: r57628
2002-09-29 18:16:15 +00:00
Richard Earnshaw
d7b5262524 * src/arm/sysv.S: Fix typo.
From-SVN: r57627
2002-09-29 18:08:58 +00:00
Nathanael Nerode
9e60a678fc configure: Revert accidentally applied changes.
2002-09-29  Nathanael Nerode  <neroden@gcc.gnu.org>

	* configure: Revert accidentally applied changes.

From-SVN: r57626
2002-09-29 16:11:24 +00:00
Nathanael Nerode
dd30b57d9d Makefile.tpl: Make more autoconf-friendly.
2002-09-29  Nathanael Nerode  <neroden@gcc.gnu.org>

	* Makefile.tpl: Make more autoconf-friendly.
	* Makefile.in: Regenerate.
	* configure: Make substitution more autoconf-like.

From-SVN: r57625
2002-09-29 15:53:23 +00:00
Kazu Hirata
991b659243 builtins.def: Fix comment formatting.
* builtins.def: Fix comment formatting.
	* c-common.def: Likewise.
	* cfgcleanup.c: Likewise.
	* combine.c: Likewise.
	* gengtype.c: Likewise.
	* params.def: Likewise.
	* predict.def: Likewise.
	* rtl.def: Likewise.
	* stab.def: Likewise.
	* stor-layout.c: Likewise.
	* tree.def: Likewise.
	* config/darwin.c: Likewise.
	* config/darwin.h: Likewise.
	* config/dbxcoff.h: Likewise.
	* config/elfos.h: Likewise.
	* config/fp-bit.c: Likewise.
	* config/freebsd-spec.h: Likewise.
	* config/interix.h: Likewise.
	* config/libgloss.h: Likewise.
	* config/linux-aout.h: Likewise.
	* config/linux.h: Likewise.
	* config/lynx-ng.h: Likewise.
	* config/lynx.h: Likewise.
	* config/netbsd-aout.h: Likewise.
	* config/netbsd.h: Likewise.
	* config/netware.h: Likewise.
	* config/psos.h: Likewise.
	* config/ptx4.h: Likewise.

From-SVN: r57624
2002-09-29 13:16:44 +00:00
Kazu Hirata
27631daef5 cp-tree.h: Fix comment typos.
* cp-tree.h: Fix comment typos.
	* decl.c: Likewise.
	* pt.c: Likewise.

From-SVN: r57623
2002-09-29 11:53:49 +00:00
GCC Administrator
1f3d773e3a Daily bump.
From-SVN: r57622
2002-09-29 07:17:15 +00:00
Roger Sayle
1c402174c2 20020720-1.x: No longer skip test on powerpc and MMIX targets.
* gcc.c-torture/execute/20020720-1.x: No longer skip test on
	powerpc and MMIX targets.

From-SVN: r57616
2002-09-28 17:58:27 +00:00
Kazu Hirata
43aa4e05ea ChangeLog.4: Fix typos.
* ChangeLog.4: Fix typos.
	* ChangeLog.6: Likewise.
	* FSFChangeLog.10: Likewise.
	* genattrtab.c: Fix comment typos.
	* haifa-sched.c: Likewise.
	* real.c: Likewise.
	* tree.h: Likewise.
	* config/arm/arm.c: Likewise.
	* config/arm/crti.asm: Likewise.
	* config/arm/crtn.asm: Likewise.
	* config/frv/frv.c: Likewise.
	* config/frv/frv.md: Likewise.
	* config/h8300/h8300.md: Likewise.
	* config/i386/rtemself.h: Likewise.
	* config/ia64/unwind-ia64.c: Likewise.
	* config/ip2k/ip2k.h: Likewise.
	* config/m88k/m88k.c: Likewise.
	* config/m88k/m88k.md: Likewise.
	* config/mips/sr71k.md: Likewise.
	* config/mmix/mmix.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/sh/sh.md: Likewise.

From-SVN: r57614
2002-09-28 15:29:45 +00:00
Theodore A. Roth
13e8651c8a avr.c: Eliminate use of _PC_ in pc relative insns.
* config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
	* config/avr/avr.md: Ditto.

From-SVN: r57613
2002-09-28 14:14:12 +00:00
Richard Earnshaw
5831424ed7 configure.in (arm-*-coff, [...]): Use a single entry to handle all these.
* configure.in (arm-*-coff, strongarm-*-coff, xscale-*-coff): Use a
single entry to handle all these.
(arm-*-elf, strongarm-*-elf, xscale-*-elf): Likewise.  Also enable
libjava on arm-*-elf.

From-SVN: r57612
2002-09-28 12:19:19 +00:00
Richard Earnshaw
841b836041 configure.host: Handle arm*-elf, strongarm*-elf and xscale*-elf with a single configuration.
* configure.host: Handle arm*-elf, strongarm*-elf and xscale*-elf with
a single configuration.

From-SVN: r57611
2002-09-28 12:15:18 +00:00
Richard Earnshaw
82cfabc1a9 gcconfig.h: Don't check for __XSCALE__.
* include/private/gcconfig.h: Don't check for __XSCALE__.  Instead
check for __arm__ or __thumb__.

From-SVN: r57610
2002-09-28 12:12:36 +00:00
Richard Earnshaw
28165e22cd sysv.S: If we don't have machine/asm.h and the pre-processor has defined...
* src/arm/sysv.S: If we don't have machine/asm.h and the pre-processor
has defined __USER_LABEL_PREFIX__, then use it in CNAME.
(ffi_call_SYSV): Handle soft-float.

From-SVN: r57609
2002-09-28 12:09:27 +00:00
GCC Administrator
fb3d26dc12 Daily bump.
From-SVN: r57608
2002-09-28 07:17:09 +00:00
Geoffrey Keating
b7f3b15b05 configure.in (powerpc-*-darwin*): Don't configure BFD, TK, or the things that depend on them.
* configure.in (powerpc-*-darwin*): Don't configure BFD, TK, or the
	things that depend on them.

From-SVN: r57602
2002-09-28 01:43:37 +00:00
Zack Weinberg
57147be1b6 re PR preprocessor/8055 (PATCH: cpp0 dies with SIG11 when building FreeBSD kernel)
2002-09-27  Alexander N. Kabaev <ak03@gte.com>

	PR preprocessor/8055
	* cppmacro.c (stringify_arg): Do not overflow the buffer
	with the terminating NUL when the argument to be stringified
	has no tokens.
	* testsuite/gcc.dg/cpp/20020927-1.c: New.

From-SVN: r57599
2002-09-28 00:30:37 +00:00
Paolo Carlini
b1af5a30a5 locale_facets.tcc (num_put::_M_widen_int): Deal correctly with grouped, showbased (oct or hex) zero.
2002-09-27  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/locale_facets.tcc (num_put::_M_widen_int):
	Deal correctly with grouped, showbased (oct or hex) zero.
	* testsuite/22_locale/num_put_members_char.cc: Add test05.
	* testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.

From-SVN: r57598
2002-09-27 23:08:22 +00:00
Richard Henderson
2a5de0f14b Fix comment typo.
From-SVN: r57597
2002-09-27 15:59:29 -07:00
Richard Henderson
5d0f3df7fd unroll.c (simplify_cmp_and_jump_insns): New.
* unroll.c (simplify_cmp_and_jump_insns): New.
	(unroll_loop): Use it.  Use simplify_gen_foo+force_operand
	instead of expand_simple_foo.

From-SVN: r57596
2002-09-27 15:41:07 -07:00
Richard Henderson
d3d09886b3 std_limits.h (numeric_limits<T>::is_iec559): False if denormals are not supported.
* include/std/std_limits.h (numeric_limits<T>::is_iec559): False
        if denormals are not supported.

From-SVN: r57595
2002-09-27 15:39:28 -07:00
Richard Henderson
f2d208028d * config/os/hpux/cpu_limits.h: Remove.
From-SVN: r57594
2002-09-27 15:39:08 -07:00
Richard Henderson
3dfda826c4 re PR rtl-optimization/7520 (internal compiler error in verify_local_live_at_start)
PR optimization/7520
        * cfganal.c (flow_active_insn_p): New.
        (forwarder_block_p): Use it.

From-SVN: r57593
2002-09-27 14:39:11 -07:00
Ulrich Weigand
10a197ee7c gcconfig: Add machine type S390.
* include/private/gcconfig: Add machine type S390.  Add s390x support.
	* include/private/gc_locks.h (GC_test_and_set): Implement for s390.
	(GC_compare_and_exchange): Likewise.

From-SVN: r57592
2002-09-27 20:40:06 +00:00
Andrew Haley
fc5295fa6a expr.c (build_java_array_length_access): Check for null pointer.
2002-09-26  Andrew Haley  <aph@redhat.com>

	* expr.c (build_java_array_length_access): Check for null pointer.
	* expr.c (expand_java_arrayload): Likewise.

From-SVN: r57591
2002-09-27 18:27:44 +00:00
Richard Henderson
23b8ba8182 * emit-rtl.c (active_insn_p): Revert last change.
From-SVN: r57590
2002-09-27 09:17:33 -07:00
Bo Thorsen
0b0f416385 ffi.h.in: Fix multilib x86-64 support.
2002-09-27  Bo Thorsen  <bo@suse.de>

        * include/ffi.h.in: Fix multilib x86-64 support.

From-SVN: r57589
2002-09-27 16:37:23 +02:00
Jakub Jelinek
dce81a1a59 extend.texi (tls_model): Document.
* doc/extend.texi (tls_model): Document.
	* varasm.c (decl_tls_model): New.
	* c-common.c (handle_tls_model_attribute): New.
	(c_common_attribute_table): Add tls_model.
	* config/alpha/alpha.c (alpha_encode_section_info): Use
	decl_tls_model.
	* flags.h (enum tls_model, flag_tls_default): Move...
	* tree.h (enum tls_model, flag_tls_default): ...here.
	(decl_tls_model): New prototype.
	* config/ia64/ia64.c (ia64_encode_section_info): Likewise.
	* config/i386/i386.c (ix86_encode_section_info): Likewise.
	* config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
	Allow !flag_pic.

From-SVN: r57588
2002-09-27 15:30:10 +02:00
Kazu Hirata
0e9e1e0a42 LANGUAGES: Follow spelling conventions.
* LANGUAGES: Follow spelling conventions.
	* rtl.def: Likewise.
	* sbitmap.c: Likewise.
	* sched-int.h: Likewise.
	* sched-rgn.c: Likewise.
	* sibcall.c: Likewise.
	* simplify-rtx.c: Likewise.
	* ssa.c: Likewise.
	* stab.def: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* target.h: Likewise.
	* timevar.c: Likewise.
	* toplev.c: Likewise.
	* tree-dump.c: Likewise.
	* tree-inline.c: Likewise.
	* tree.c: Likewise.
	* tree.def: Likewise.
	* tree.h: Likewise.
	* unroll.c: Likewise.
	* varasm.c: Likewise.
	* vmsdbgout.c: Likewise.
	* treelang/treelang.texi: Likewise.
	* treelang/treetree.c: Likewise.

From-SVN: r57587
2002-09-27 12:48:07 +00:00
Kazu Hirata
b9b575e6b5 h8300.c (compute_saved_regs): Use a macro instead of a hard register number.
* config/h8300/h8300.c (compute_saved_regs): Use a macro
	instead of a hard register number.
	(get_shift_alg): Use an enumerated type instead of numbers.
	(h8300_shift_needs_scratch_p): Likewise.

From-SVN: r57586
2002-09-27 12:37:15 +00:00
GCC Administrator
87b8359e65 Daily bump.
From-SVN: r57585
2002-09-27 07:18:01 +00:00
David S. Miller
6b1ef791cc trunctfdf.c: New.
2002-09-26  David S. Miller  <davem@redhat.com>

	* gcc.c-torture/compile/trunctfdf.c: New.

From-SVN: r57577
2002-09-26 21:14:12 -07:00
David S. Miller
99a3256796 re PR rtl-optimization/7335 (Sparc: ICE in verify_wide_reg (flow.c:557) with long double and optimization)
2002-09-26  David S. Miller  <davem@redhat.com>

	PR optimization/7335
	* calls.c (emit_library_call_value_1): Passing args by reference
	converts a CONST function into a PURE one.

From-SVN: r57576
2002-09-26 21:12:51 -07:00
David Edelsohn
67cef334cc dbxout.c (FORCE_TEXT): Switch to current_function_decl, not text_section.
2002-09-26  David Edelsohn  <edelsohn@gnu.org>

        * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
        text_section.
        * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
        text section.
        * config/rs6000/rs6000.c (rs6000_override_options): Allow
        function-sections and data-sections functionality on AIX.

2002-09-26  David Edelsohn  <edelsohn@gnu.org>
            Dale Johannesen  <dalej@apple.com>

        * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
        in RTL for sub-word loads from memory.

Co-Authored-By: Dale Johannesen <dalej@apple.com>

From-SVN: r57572
2002-09-26 23:08:38 -04:00
Kaveh R. Ghazi
fa4211cb73 * lib/target-supports.exp (check_weak_available): Handle solaris2.
From-SVN: r57571
2002-09-27 02:14:12 +00:00
Richard Henderson
c2310f5124 sched-deps.c (sched_analyze_insn): Make clobber insns depend on call insns.
* sched-deps.c (sched_analyze_insn): Make clobber insns depend
        on call insns.
	* gcc.c-torture/compile/20020926-1.c: New.

From-SVN: r57566
2002-09-26 18:07:52 -07:00