Commit Graph

43590 Commits

Author SHA1 Message Date
Aldy Hernandez
182e515e72 tm.texi (MEMBER_TYPE_FORCES_BLK): Document MODE argument.
2002-06-15  Aldy Hernandez  <aldyh@redhat.com>

        * tm.texi (MEMBER_TYPE_FORCES_BLK): Document MODE argument.

        * stor-layout.c (compute_record_mode): Remove check for
        FUNCTION_ARG_REG_LITTLE_ENDIAN and VOIDmode when checking for
        MEMBER_TYPE_FORCES_BLK.  Pass new mode field to
        MEMBER_TYPE_FORCES_BLK.

        * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Same.

        * config/c4x/c4x.h (MEMBER_TYPE_FORCES_BLK): Same.

From-SVN: r54643
2002-06-15 09:41:13 +00:00
GCC Administrator
2313d59405 Daily bump.
From-SVN: r54642
2002-06-15 07:17:26 +00:00
Jeff Sturm
8773135d94 * config/sparc/sparc.h (DYNAMIC_CHAIN_ADDRESS): Add SPARC_STACK_BIAS.
From-SVN: r54637
2002-06-14 18:20:03 -07:00
Steve Ellcey
893a047c65 configure.in (USE_UNWIND_EXCEPTIONS): Add support to set USE_UNWIND_EXCEPTIONS if --enable-libunwind-exceptions is set.
* configure.in (USE_UNWIND_EXCEPTIONS): Add support to set
        USE_UNWIND_EXCEPTIONS if --enable-libunwind-exceptions is set.
        * configure, config.in: Regenerate.

        * g++spec.c (LIBUNWIND): New.
        (lang_specific_driver): Add it if USE_UNWIND_EXCEPTIONS is set.

From-SVN: r54636
2002-06-14 18:16:28 -07:00
Eric Botcazou
045d7161a0 loop.c (check_final_value): Use v->always_executed instead of v->always_computable.
* loop.c (check_final_value): Use v->always_executed
	instead of v->always_computable.
	* unroll.c (final_giv_value): Don't calculate the final
	value as a function of the biv if the giv is not computed
	for every loop iteration.

From-SVN: r54634
2002-06-14 18:10:49 -07:00
Eric Botcazou
048c861604 * loop.c (for_each_insn_in_loop): Fix formatting and comments.
From-SVN: r54633
2002-06-14 17:47:53 -07:00
Richard Henderson
0b0b07504c New.
From-SVN: r54630
2002-06-14 17:43:20 -07:00
Richard Henderson
52689a988b Mark pr last change.
From-SVN: r54629
2002-06-14 17:42:52 -07:00
Eric Botcazou
43e4a9d870 convert.c (convert_to_integer): Don't pass the truncation down when the target type is signed.
* convert.c (convert_to_integer) [LSHIFT_EXPR]: Don't pass
	the truncation down when the target type is signed.
	[trunc1]: Use unsigned arithmetic for LSHIFT_EXPR.
	* fold-const.c (extract_muldiv) [NOP_EXPR]: Don't pass through
	the conversion if the target type is a smaller type.

From-SVN: r54627
2002-06-14 17:40:49 -07:00
Richard Henderson
fa4a5557dd fold-const.c (fold): Move X>=C / X<C transfomation earlier.
* fold-const.c (fold) [compare ops]: Move X>=C / X<C transfomation
        earlier.  Re-factor comparisons vs extrema.

From-SVN: r54626
2002-06-14 17:06:18 -07:00
Richard Henderson
d95eb49f76 * config/alpha/alpha.md (builtin_zapnot): Fix op2 mode.
From-SVN: r54625
2002-06-14 13:26:23 -07:00
Eric Christopher
563b6f04d1 Remove bogus ChangeLog entry that snuck in during last commit:
2002-06-12  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.md (prefetch, prefetch_di, prefetch_si): New
	patterns.
	* config/mips/mips.h (RTX_COSTS): Fix formatting.

From-SVN: r54623
2002-06-14 19:12:54 +00:00
Franz Sirl
be202ec201 rtl.h (SCHED_GROUP_P): Disallow CODE_LABEL, BARRIER and NOTE.
2002-06-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* rtl.h (SCHED_GROUP_P): Disallow CODE_LABEL, BARRIER and NOTE.
	* sched-deps.c (add_dependence): Likewise.
	(group_leader): Likewise.
	* sched-rgn.c (init_ready_list): Likewise.
	* doc/rtl.texi: Adjust accordingly.

From-SVN: r54622
2002-06-14 18:58:10 +00:00
J.T. Conklin
6203ef88a6 configure.in (target_alias): Fix.
2002-06-14  J.T. Conklin  <jtc@acorntoolworks.com>

	* configure.in (target_alias): Fix.
	* configure: Regenerate.
	* aclocal.m4: Regenerate.

From-SVN: r54618
2002-06-14 18:21:24 +00:00
Jeff Law
99a15921f0 gcse.c (delete_null_pointer_checks_1): Inform caller if any null pointer checks were eliminated.
* gcse.c (delete_null_pointer_checks_1): Inform caller if any
        null pointer checks were eliminated.  Update prototype.
        (delete_null_pointer_checks): Similarly.
        * rtl.h (delete_null_pointer_checks): Update prototype.
        * toplev.c (rest_of_compilation): Only run cleanup_cfg if
        delete_null_pointer_checks deletes one or more null
        pointer checks.  Do not run cleanup_cfg before gcse, the
        CFG is accurate and optimized at that point..

From-SVN: r54617
2002-06-14 10:25:36 -06:00
Jeff Law
e56c446321 rs6000.c (rs6000_frame_related): Avoid unwanted sharing of hard registers.
* rs6000.c (rs6000_frame_related): Avoid unwanted sharing
        of hard registers.

From-SVN: r54615
2002-06-14 08:44:33 -06:00
Ulrich Weigand
556b821e7c * Makefile.in (libgcc.mk): Depend on specs.
From-SVN: r54614
2002-06-14 14:37:26 +00:00
J"orn Rennecke
fa60f36dd9 * sh.md (mulsi3): Update way how to find insns in a sequence.
From-SVN: r54613
2002-06-14 12:20:39 +01:00
Dhananjay R. Deshpande
03b8ec294f sh.h: Define HARD_REGNO_RENAME_OK
Fri Jun 14 12:04:02 2002  Dhananjay R. Deshpande <dhananjayd@kpit.com>

	* sh.h: Define HARD_REGNO_RENAME_OK
	* sh.c: sh_hard_regno_rename_ok: New. If current function has
	interrupt_handler attribute, only registers saved on stack are OK.
	* sh-protos.h: Declare sh_hard_regno_rename_ok.

From-SVN: r54612
2002-06-14 12:06:38 +01:00
Kaz Kojima
8e831557e4 sh.md (jump): Emit jump insn.
* config/sh/sh.md (jump): Emit jump insn.
	(call_pcrel): Get pattern of the result of gen_call_site.
	(call_value_pcrel, sibcall_pcrel, GOTaddr2picreg): Likewise.

From-SVN: r54611
2002-06-14 09:49:18 +00:00
GCC Administrator
c413fdc4d2 Daily bump.
From-SVN: r54610
2002-06-14 07:17:41 +00:00
Neil Booth
bf9d5852a0 cpphash.h (struct cpp_buffer): Remove saved_line_base.
* cpphash.h (struct cpp_buffer): Remove saved_line_base.
	* cpptrad.c: Update comments.
	(skip_whitespace, copy_comment): Take a new parameter.
	(skip_escaped_newlines): Don't duplicate escaped newline test.
	(copy_comment): Different location for CUR, decide here how
	to copy / replace the comment.
	(skip_whitespace): Copy whitespace.
	(_cpp_overlay_buffer, _cpp_remove_overlay): Don't play with line_base.
	(scan_out_logical_line): Let copy comment handle keeping or
	replacing comments.
	(scan_parameters, _cpp_create_trad_definition): Update.

From-SVN: r54605
2002-06-14 05:43:13 +00:00
Alan Lehotsky
57292ec30e pass MEM reference to find_reloads_address
From-SVN: r54604
2002-06-13 21:41:53 -04:00
Richard Henderson
a6f5e04831 defaults.h (TARGET_VTABLE_ENTRY_ALIGN): New.
* defaults.h (TARGET_VTABLE_ENTRY_ALIGN): New.
        (TARGET_VTABLE_DATA_ENTRY_DISTANCE): New.
        * doc/tm.texi: Document them.
        * config/ia64/ia64.h (TARGET_VTABLE_ENTRY_ALIGN): New.
        (TARGET_VTABLE_DATA_ENTRY_DISTANCE): New.
        (TARGET_VTABLE_USES_DESCRIPTORS): 4 word descriptors for 32-bit mode.
        (ASM_OUTPUT_FDESC): Likewise.

        * class.c (build_vtable): Use TARGET_VTABLE_ENTRY_ALIGN.
        (build_vtbl_initializer): Honor TARGET_VTABLE_DATA_ENTRY_DISTANCE.
        (build_vbase_offset_vtbl_entries): Likewise.
        * rtti.c (build_headof): Likewise.
        (get_tinfo_decl_dynamic): Likewise.
        (create_pseudo_type_info): Likewise.

        * g++.old-deja/g++.abi/vtable2.C (INC_VDATA): New.  Define for
        ia64 ilp32.

From-SVN: r54603
2002-06-13 17:50:34 -07:00
Eric Christopher
3aafa0bbab diagnostic.c (output_format): Fix thinko.
2002-06-13  Eric Christopher  <echristo@redhat.com>

	* diagnostic.c (output_format): Fix thinko.

From-SVN: r54602
2002-06-13 23:31:56 +00:00
J"orn Rennecke
8e581963bb coff.h (HAS_INIT_SECTION, [...]): Don't define.
* config/sh/coff.h (HAS_INIT_SECTION, INVOKE__MAIN): Don't define.
	(DWARF2_UNWIND_INFO): Define to 0.

From-SVN: r54601
2002-06-13 22:36:32 +01:00
J"orn Rennecke
9d7ed8065d sh.c (calc_live_regs): Don't use initial_value optimization for PR_MEDIA_REG.
* config/sh/sh.c (calc_live_regs): Don't use initial_value
	optimization for PR_MEDIA_REG.

From-SVN: r54600
2002-06-13 22:31:58 +01:00
Neil Booth
b66377c173 cpphash.h (_cpp_lex_identifier_trad): Remove.
* cpphash.h (_cpp_lex_identifier_trad): Remove.
	* cpplib.c (end_directive): Don't skip, always remove overlay
	apart from #define.
	(prepare_directive_trad): Handle NULL pfile->directive.
	(_cpp_handle_directive): Always call prepare_directive_trad
	if traditional.
	* cppmain.c (check_multiline_token): Rename account_for_newlines,
	generalize inputs.
	(scan_translation_unit_trad): Use it.
	* cpptrad.c (skip_comment): Rename copy_comment, copy comment to
	output, get escaped newline in comment close correct.
	(check_output_buffer, skip_whitespace): Update.
	(_cpp_lex_identifier_trad): Remove.
	(scan_out_logical_line): Handle -C and comments in directives
	properly.

From-SVN: r54599
2002-06-13 21:16:00 +00:00
J"orn Rennecke
8bc6e10185 Individual processor configurations for sh-elf / sh-linux:
gcc:
	* config.gcc: Add support for sh[234]*-*-elf*, sh[2346lbe]*-*-linux*.
	* config/sh/linux.h (TARGET_DEFAULT): Use TARGET_CPU_DEFAULT.
	* sh.h (SELECT_SH1, SELECT_SH2, SELECT_SH3, SELECT_SH3E): New macros.
	(SELECT_SH4_NOFPU, SELECT_SH4_SINGLE_ONLY, SELECT_SH4): Likewise.
	(SELECT_SH4_SINGLE, SELECT_SH5_64, SELECT_SH5_64_NOFPU): Likewise.
	(SELECT_SH5_32, SELECT_SH5_32_NOFPU, SELECT_SH5_COMPACT): Likewise.
	(SELECT_SH5_COMPACT_NOFPU): Likewise.
	(TARGET_SWITCHES): Use them.
	(TARGET_CPU_DEFAULT): Define if not already defined.
	(TARGET_DEFAULT): Use it.
	(LINK_DEFAULT_CPU_EMUL): Value now depends on TARGET_CPU_DEFAULT.
	* config/sh/t-linux (MULTILIB_OPTIONS): Use MULTILIB_ENDIAN.
	* config/sh/t-monolib: New file.

bfd:
	config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*,
	sh[1234]*-elf*.

ld:
	* configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.

Still outstanding:
	config.sub:
		* config.sub: Add support for sh[12], sh3e, sh[1234]le, sh3ele,
		shle, sh[1234]le, sh3ele, sh64le.

From-SVN: r54598
2002-06-13 20:23:28 +01:00
Tom Tromey
93f7aeea7a natString.cc (init): Handle case where DONT_COPY is true and OFFSET!=0.
* java/lang/natString.cc (init): Handle case where DONT_COPY is
	true and OFFSET!=0.
	* java/lang/String.java (String(char[],int,int,boolean): New
	constructor.
	* java/lang/Long.java: Imported new version from Classpath.
	* java/lang/Number.java: Likewise.
	* java/lang/Integer.java: Likewise.
	* java/lang/Long.java: Likewise.
	* java/lang/Float.java: Likewise.
	* java/lang/Boolean.java: Likewise.
	* java/lang/Double.java: Likewise.
	* java/lang/Void.java: Likewise.

From-SVN: r54595
2002-06-13 18:16:26 +00:00
Tom Tromey
a8fa30f301 re PR java/6865 (gcj: segmentation fault on incorrect input)
* lib/libjava.exp (test_libjava): Fixed typo.
	* libjava.compile/PR6865.xfail: New file.

From-SVN: r54594
2002-06-13 17:34:49 +00:00
Roger Sayle
2181005d64 toplev.c (rest_of_compilation): Simplify (and correct) the logic of the first delete-null-pointer-checks pass.
* toplev.c (rest_of_compilation): Simplify (and correct) the
	logic of the first delete-null-pointer-checks pass.

From-SVN: r54593
2002-06-13 11:20:01 -06:00
Akim Demaille
6d61f1bd1c parse.y (class_declaration, [...]): Make sure all their rules have an action...
2002-06-13  Akim Demaille  <akim@epita.fr>

	* parse.y (class_declaration, interface_declaration): Make sure
	all their rules have an action, in order to avoid meaningless `$$
	= $1' and their type clashes.

From-SVN: r54592
2002-06-13 16:46:01 +00:00
Jan Hubicka
aaae0bb930 * i386.c (ix86_expand_movstr): Fix pasto.
From-SVN: r54590
2002-06-13 16:25:51 +00:00
Jan Hubicka
b80cb6e29c * reload.c (find_valid_class): Fix thinko in my previous patch.
From-SVN: r54589
2002-06-13 16:20:02 +00:00
Jeff Law
6cde487644 emit-rtl.c (static_regno_reg_rtx): Define.
* emit-rtl.c (static_regno_reg_rtx): Define.
        (init_emit_once): Initialize static_regno_reg_rtx.
        (init_emit): Copy static_regno_reg_rtx into regno_reg_rtx instead
        of building new hard reg objects once per function.
        (gen_rtx_REG): Try to share hard regs.
	* regclass.c (init_fake_stack_mems): New function broken out from
	init_regs.
	* rtl.h (init_fake_stack_mems): Declare.
	* toplev.c (lang_independent_init): Call init_regs before
	init_emit_once.  Call init_fake_stack_mems after init_emit_once.

From-SVN: r54588
2002-06-13 10:14:55 -06:00
Ulrich Weigand
dd3fbd933d s390.h (TARGET_CPU_CPP_BUILTINS): New macro.
* config/s390/s390.h (TARGET_CPU_CPP_BUILTINS): New macro.
	* config/s390/linux.h (TARGET_OS_CPP_BUILTINS): New macro.
	(CPP_PREDEFINES, CPP_SPEC, CPP_ARCH31_SPEC, CPP_ARCH64_SPEC): Remove.
	(EXTRA_SPECS): Remove cpp_arch31 and cpp_arch64.

From-SVN: r54586
2002-06-13 15:55:10 +00:00
Gabriel Dos Reis
0d0f605c72 tree-inline.c (expand_call_inline): Don' mess with _DECL fields.
* tree-inline.c (expand_call_inline): Don' mess with _DECL
        fields.

From-SVN: r54585
2002-06-13 15:32:40 +00:00
Gabriel Dos Reis
c92bcccb95 diagnostic.c (output_format): Recognize "%H" as a format specifier for a location_t.
* diagnostic.c (output_format): Recognize "%H" as a format
	specifier for a location_t.
	(text_specifies_location): New function.
	(diagnostic_set_info): Use it.

From-SVN: r54584
2002-06-13 12:40:54 +00:00
Jeff Law
110b3faa60 * i386.md (extenddfxf2, extenddftf2): Fix typo/thinko.
From-SVN: r54583
2002-06-13 06:27:50 -06:00
Jeff Law
7f24367410 alias.c (argument_registers): Remove.
* alias.c (argument_registers): Remove.
	(init_alias_once): Initialize static_reg_base_value here.  Remove
	initialization of argument_registers.
	(init_alias_once_per_function): Remove.
	(init_alias_analysis): Copy all the entries from static_reg_base_value
	into new_reg_base_value all at once.
	* rtl.h (init_alias_once_per_function): Remove declaration.
	* function.c (prepare_function_start): Do not call
	init_alias_once_per_function.

	* caller-save.c (init_caller_save): Use gen_rtx_INSN instead of
	starting a sequence and emitting an INSN.

From-SVN: r54582
2002-06-13 06:24:00 -06:00
Richard Sandiford
a336f2e55f * config/mips/r3900.h (MIPS_CPU_STRING_DEFAULT): Make lower case.
From-SVN: r54581
2002-06-13 10:14:12 +00:00
David S. Miller
2acf0fa92e expmed.c (init_expmed): Remove duplicate init of 'reg'.
2002-06-13  David S. Miller  <davem@redhat.com>

	* expmed.c (init_expmed): Remove duplicate init of 'reg'.

From-SVN: r54580
2002-06-13 02:37:19 -07:00
GCC Administrator
e4c3fb49fd Daily bump.
From-SVN: r54578
2002-06-13 07:17:30 +00:00
Neil Booth
974c43f1e3 cpplib.c (end_directive): Handle line skipping.
* cpplib.c (end_directive): Handle line skipping.  Only remove
	the rest of the line if the directive was valid.
	* cppmacro.c (_cpp_push_text_context): Set NODE_DISABLED when
	expanding a traditional macro.
	* cpptrad.c (recursive_macro): New.
	(read_logical_line_trad): Handle skipping.
	(scan_out_logical_line): Continue after a successful directive.
	Don't expand macros whilst skipping, or if recursing.
	(_cpp_create_trad_definition): scan_out_logical_line now sets
	the output current position.

From-SVN: r54573
2002-06-13 06:25:28 +00:00
Stan Shebs
e4dadd2ad0 mpw-config.in: Remove file, no longer used.
* mpw-config.in: Remove file, no longer used.
        * mpw-make.sed: Ditto.

From-SVN: r54572
2002-06-13 04:58:57 +00:00
Eric Christopher
12bf26b660 2002-06-12 Eric Christopher <echristo@redhat.com>
From Chris Demetriou  <cgd@broadcom.com>
	* config/mips/mips.h (ISA_HAS_FP4): Add ISA_MIPS64 and fix
	comment.
	(ISA_HAS_MADD_MSUB): Ditto.
	(ISA_HAS_NMADD_NMSUB): Ditto.

From-SVN: r54569
2002-06-12 23:26:44 +00:00
Eric Christopher
74826b0f9f Missed a file from previous check-in.
From-SVN: r54568
2002-06-12 23:24:04 +00:00
Eric Christopher
be95b8a529 config.gcc: Consolidate little endian handling and little/big endian targets.
2002-06-12  Eric Christopher  <echristo@redhat.com>

	* config.gcc: Consolidate little endian handling and
	little/big endian targets.
	* config/mips/elfl.h: Remove file.
	* config/mips/elfl64.h: Ditto.
	* config/mips/ecoffl.h: Ditto.
	* config/mips/r3900.h (SUBTARGET_CPP_SPEC): Remove.

From-SVN: r54567
2002-06-12 23:12:25 +00:00
Geoffrey Keating
e03856fe95 gengtype.h (xvasprintf): New prototype.
* gengtype.h (xvasprintf): New prototype.
	(xasprintf): New prototype.
	(struct outf): New.
	(get_output_file): Return an outf_p.
	(header_file): Is now an outf_p.
	(base_files): Now are outf_p.
	(oprintf): New.
	* gengtype.c: Replace all output FILE * with outf_p; use oprintf
	rather than stdio operations.  Use xasprintf in a few places,
	when appropriate.
	(xvasprintf): New.
	(xasprintf): New.
	(struct filemap): Delete.
	(files): Delete.
	(output_files): New.
	(oprintf): New.
	(create_file): Create an outf_p.  Add parameter to indicate output
	file name, change all callers.
	(open_base_files): Create gtype-desc.c here.
	(get_output_file_with_visibility): Rewrite.
	(get_output_file_name): Just look at 'name' field in struct outf.
	(close_output_files): Rewrite.

From-SVN: r54566
2002-06-12 22:57:45 +00:00