Commit Graph

45391 Commits

Author SHA1 Message Date
Steve Ellcey
2e88ae2267 class.c (build_vtbl_initializer): Change build_c_cast to build1.
* cp/class.c (build_vtbl_initializer): Change build_c_cast
	to build1.

From-SVN: r57712
2002-10-01 22:47:09 +00:00
Jason Thorpe
b6aa31c56a Oops, this file missed in previous checkin.
2002-10-01  Matt Thomas  <matt@3am-software.com>
            Jason Thorpe  <thorpej@wasabisystems.com>

* config.gcc (vax-*-netbsdelf*): Enable configuration.
* config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
if not already defined.
* config/vax/elf.h: New file.
* config/vax/netbsd-elf.h: New file.
* config/vax/vax.c: Include "debug.h".
(vax_output_function_prologue): Add dwarf2 support.  Use
MAIN_NAME_P when checking for VMS_TARGET stack adjust.
* config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
(VAX_ISTREAM_SYNC): Remove.
(INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
(JUMP_TABLES_IN_TEXT_SECTION): Define.
(ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
(ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
and assemble_name.
(ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
(PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
(PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
(INCOMING_RETURN_ADDR_RTX): Define.
* config/vax/vax.md (VUNSPEC_BLOCKAGE)
(VUNSPEC_SYNC_ISTREAM): Define.
(blockage): Use VUNSPEC_BLOCKAGE.
(sync_istream): New insn.


2002-10-01  Richard Henderson  <rth@redhat.com>

* config/vax/vax.md (call_pop, *call_pop, call_value_pop)
(*call_value_pop, call, call_value): Add dwarf2 EH support.
(*call): New insn.

From-SVN: r57711
2002-10-01 22:24:02 +00:00
Mark Mitchell
a1d1a0f9b0 * gcc.dg/empty1.C: Fix typo.
From-SVN: r57710
2002-10-01 22:23:55 +00:00
Richard Henderson
fd1e5d25e3 calls.c (precompute_register_parameters): Force non-legitimate constants into pseudos.
* calls.c (precompute_register_parameters): Force non-legitimate
        constants into pseudos.
	* gcc.dg/tls/opt-3.c: New.

From-SVN: r57709
2002-10-01 13:49:39 -07:00
Nick Clifton
78872ad9bd (spe_evrlwi): Add missing third operand to assembler template.
From-SVN: r57707
2002-10-01 20:39:03 +00:00
Richard Henderson
3c655f42e4 dwarf2out.c (loc_descriptor_from_tree): Relax requirement for TLS debug info to !DECL_EXTERNAL.
* dwarf2out.c (loc_descriptor_from_tree): Relax requirement
        for TLS debug info to !DECL_EXTERNAL.

From-SVN: r57706
2002-10-01 13:24:52 -07:00
Jason Thorpe
ec20cffb2e [multiple changes]
2002-10-01  Matt Thomas  <matt@3am-software.com>
            Jason Thorpe  <thorpej@wasabisystems.com>

* config.gcc (vax-*-netbsdelf*): Enable configuration.
* config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
if not already defined.
* config/vax/elf.h: New file.
* config/vax/netbsd-elf.h: New file.
* config/vax/vax.c: Include "debug.h".
(vax_output_function_prologue): Add dwarf2 support.  Use
MAIN_NAME_P when checking for VMS_TARGET stack adjust.
* config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
(VAX_ISTREAM_SYNC): Remove.
(INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
(JUMP_TABLES_IN_TEXT_SECTION): Define.
(ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
(ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
and assemble_name.
(ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
(PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
(PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
(INCOMING_RETURN_ADDR_RTX): Define.
* config/vax/vax.md (VUNSPEC_BLOCKAGE)
(VUNSPEC_SYNC_ISTREAM): Define.
(blockage): Use VUNSPEC_BLOCKAGE.
(sync_istream): New insn.


2002-10-01  Richard Henderson  <rth@redhat.com>

* config/vax/vax.md (call_pop, *call_pop, call_value_pop)
(*call_value_pop, call, call_value): Add dwarf2 EH support.
(*call): New insn.

From-SVN: r57702
2002-10-01 20:16:04 +00:00
Nathan Sidwell
6f7e9e9449 jcf-dump.c (print_constant, [...]): Don't fall foul of type-based aliasing.
* jcf-dump.c (print_constant, case CONSTANT_float): Don't fall
	foul of type-based aliasing.

From-SVN: r57699
2002-10-01 19:13:12 +00:00
Nathan Sidwell
73a7376815 re PR c/8083 (GCC does not warn for aliasing violations)
PR c/8083
	* c-typeck.c (build_c_cast): Warn about type punning which breaks
	type based aliasing.
testsuite:
	* gcc.dg/alias-1.c: New test.

From-SVN: r57698
2002-10-01 19:11:07 +00:00
Mark Mitchell
0645ba8f0b stor-layout.c (update_alignment_for_field): New function.
* stor-layout.c (update_alignment_for_field): New function.
	(place_union_field): Use it.
	(place_field): Likewise.
	* gcc.dg/empty1.C: New test.

From-SVN: r57697
2002-10-01 18:44:49 +00:00
Mark Mitchell
b4c20e524c decl.c (cp_finish_decl): Correct check for dynamic initialization of thread-local storage.
* decl.c (cp_finish_decl): Correct check for dynamic
	initialization of thread-local storage.

	* g++.dg/tls/init-2.C: Tweak error messages.

From-SVN: r57696
2002-10-01 18:27:53 +00:00
Mark Mitchell
871e97f720 cp
From-SVN: r57695
2002-10-01 18:27:33 +00:00
Nathan Sidwell
f7e466a3fe * gcc.c (cc1_options): Add space on -auxbase-strip.
From-SVN: r57694
2002-10-01 18:10:04 +00:00
Bo Thorsen
5d2975841c * include/ffi.h.in: Fix i386 win32 compilation.
From-SVN: r57691
2002-10-01 17:38:00 +02:00
Jim Wilson
bc9ec51b0b Don't let regrename clobber the link register.
* config/v850/v850.h (EPILOGUE_USES): Define.

From-SVN: r57689
2002-10-01 06:48:20 -07:00
Andrew Haley
a646f6ccc1 flow.c (insn_dead_p): When using non-call-exceptions, don't eliminate insns that may trap.
2002-09-30  Andrew Haley  <aph@redhat.com>

	* flow.c (insn_dead_p): When using non-call-exceptions, don't
	eliminate insns that may trap.
	* cse.c (insn_live_p): Likewise.

From-SVN: r57688
2002-10-01 12:19:36 +00:00
Richard Sandiford
3f7967e390 mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
* config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
	(TARGET_MIPS4121): Rename to TARGET_MIPS4120.
	* config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
	* config/mips/mips.md: Apply same renaming here.

From-SVN: r57687
2002-10-01 10:26:09 +00:00
Richard Sandiford
41f9efba65 mips.c (PROCESSOR_R4320, [...]): Remove.
* config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
	(GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
	* config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
	* config/mips/mips.md (define_attr cpu): Remove r4320.
	Remove vr4320 scheduler and uses of TARGET_MIPS4320.

From-SVN: r57686
2002-10-01 10:23:52 +00:00
Richard Sandiford
366356d3e6 mips.c (mips16_strings): New variable.
* config/mips/mips.c (mips16_strings): New variable.
	(mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
	symbol in mips16_strings.  Free the list.
	(mips_encode_section_info): Keep track of local strings.

From-SVN: r57685
2002-10-01 10:22:07 +00:00
Richard Sandiford
8ab907e87c mips.md (bunge, [...]): New define_expands.
[gcc/]
	* config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
	(sordered_df, sordered_sf): Remove.
	* config/mips/mips.c (get_float_compare_codes): New fn.
	(gen_int_relational, gen_conditional_move): Use it.

[gcc/testsuite]
	* gcc.c-torture/compile/20020923-1.c: New test.

From-SVN: r57684
2002-10-01 10:20:33 +00:00
Richard Sandiford
d12b8c85a9 mips-protos.h (mips_emit_fcc_reload): Declare.
* config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
	* config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
	* config/mips/mips.c (fcc_register_operand): New function.
	(mips_emit_fcc_reload): New function, extracted from reload_incc.
	(override_options): Allow TFmode values in float registers
	if ISA_HAS_8CC.
	* cnfig/mips/mips.md (reload_incc): Change destination prediate
	to fcc_register_operand.  Remove misleading source constraint.
	Use mips_emit_fcc_reload.
	(reload_outcc): Duplicate reload_incc.

From-SVN: r57683
2002-10-01 10:14:35 +00:00
Bo Thorsen
73bff06445 locks.h (compare_and_swap): Fix multilib support.
2002-09-30  Bo Thorsen  <bo@suse.de>

	* sysdep/x86-64/locks.h (compare_and_swap): Fix multilib support.

From-SVN: r57682
2002-10-01 11:02:08 +02:00
GCC Administrator
fac3fa281d Daily bump.
From-SVN: r57681
2002-10-01 07:17:08 +00:00
Tom Tromey
d74732f5cd ObjectInputStream.java (resolveProxyClass): New method from Classpath.
* java/io/ObjectInputStream.java (resolveProxyClass): New method
	from Classpath.
	* Makefile.in: Rebuilt.
	* Makefile.am (rmi_java_source_files): Added new files.
	* gnu/java/rmi/RMIMarshalledObjectInputStream.java,
	gnu/java/rmi/RMIMarshalledObjectOutputStream.java,
	gnu/java/rmi/server/ConnectionRunnerPool.java: New files from
	Classpath.
	* gnu/java/rmi/dgc/DGCImpl.java,
	gnu/java/rmi/dgc/DGCImpl_Skel.java,
	gnu/java/rmi/dgc/DGCImpl_Stub.java,
	gnu/java/rmi/registry/RegistryImpl_Skel.java,
	gnu/java/rmi/registry/RegistryImpl_Stub.java,
	gnu/java/rmi/server/RMIHashes.java,
	gnu/java/rmi/server/RMIObjectInputStream.java,
	gnu/java/rmi/server/RMIObjectOutputStream.java,
	gnu/java/rmi/server/UnicastConnection.java,
	gnu/java/rmi/server/UnicastConnectionManager.java,
	gnu/java/rmi/server/UnicastRef.java,
	gnu/java/rmi/server/UnicastServer.java,
	gnu/java/rmi/server/UnicastServerRef.java,
	java/rmi/MarshalledObject.java,
	java/rmi/server/RMIClassLoader.java,
	java/rmi/server/RemoteObject.java,
	java/rmi/server/UnicastRemoteObject.java,
	java/security/SecureClassLoader.java: Merged from Classpath.

From-SVN: r57675
2002-10-01 03:46:43 +00:00
Jason Thorpe
e3e3815b7f ffs-1.c: New test.
* gcc.c-torture/execute/ffs-1.c: New test.
* gcc.c-torture/execute/ffs-2.c: Ditto.

From-SVN: r57671
2002-09-30 21:43:01 +00:00
Ulrich Weigand
7e76567593 longlong.h: Partially synchronize with GMP-4.1 version: Use i370 definitions also for s390.
* longlong.h: Partially synchronize with GMP-4.1 version:
	Use i370 definitions also for s390.
	Add generic definition of umul_ppmm in terms of smul_ppmm.
	[s390] (umul_ppmm): Remove.
	[s390] (smul_ppmm): Fix incorrect assembler constraints.
	[s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.

From-SVN: r57670
2002-09-30 20:51:57 +00:00
Zack Weinberg
92e89ef0ae Canonicalize whitespace
From-SVN: r57669
2002-09-30 20:46:06 +00:00
Bob Wilson
89f6025db0 xtensa.h (REG_CLASS_NAMES, [...]): Add new RL_REGS register class.
* config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
        Add new RL_REGS register class.
        (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
        Call xtensa_preferred_reload_class for both input and output reloads.
        * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
        (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
        instead of either AR_REGS or GR_REGS classes.
        (xtensa_secondary_reload_class): Use new RL_REGS class.
        * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.

From-SVN: r57666
2002-09-30 20:25:44 +00:00
Nick Clifton
50bd210bde (BINUTILS_SUPPORT_DIRS): Add cpu directory.
From-SVN: r57665
2002-09-30 20:00:34 +00:00
John David Anglin
7830ba7bc8 pa.c (hppa_encode_label): Don't drop '*' from function labels.
* pa.c (hppa_encode_label): Don't drop '*' from function labels.
	(pa_strip_name_encoding): Strip '@' and '*', in that order.
	* pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
	there is a '*' prefix in NAME.

From-SVN: r57664
2002-09-30 19:52:45 +00:00
Jan Hubicka
344b78b848 reload.c (push_reload): Handle subregs and secondary memory.
* reload.c (push_reload): Handle subregs and secondary memory.
	* reload1.c (gen_reload): Likewise.

	* jump.c (reg_or_subregno): New function.
	* rtl.h (reg_or_subregno): Declare
	* unroll.c (find_splittable_givs): Handle subregs.

From-SVN: r57663
2002-09-30 19:35:17 +00:00
Nathan Sidwell
5a9a196102 tree.c (really_overloaded_fn): TEMPLATE_ID_EXPRs are also overloaded.
cp:
	* tree.c (really_overloaded_fn): TEMPLATE_ID_EXPRs are also
	overloaded.
testsuite:
	* g++.dg/overload/member1.C: New test.

From-SVN: r57662
2002-09-30 19:33:06 +00:00
Steve Ellcey
7befdb9fca class.c (build_vtbl_initializer): Add cast.
* class.c (build_vtbl_initializer): Add cast.
	(add_vcall_offset_vtbl_entries_1):
	Use TARGET_VTABLE_DATA_ENTRY_DISTANCE for offset.

From-SVN: r57659
2002-09-30 18:06:58 +00:00
Richard Henderson
f2bf5da86d New.
From-SVN: r57657
2002-09-30 10:19:37 -07:00
Richard Henderson
b5371c185b Mark PR.
From-SVN: r57656
2002-09-30 10:18:51 -07:00
Anthony Green
71dff72828 Fix docs
From-SVN: r57655
2002-09-30 17:00:42 +00:00
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