Commit Graph

18045 Commits

Author SHA1 Message Date
Jeffrey A Law
ec35104c79 combine.c (can_combine_p): Allow combining insns with REG_RETVAL notes.
* combine.c (can_combine_p): Allow combining insns with REG_RETVAL
	notes.
	(try_combine): Allow combining insns with REG_LIBCALL notes.

From-SVN: r21833
1998-08-18 12:29:40 -06:00
Jeffrey A Law
e958d4576a * gcc.c-torture/execute/*.x: Some updates for the h8300 targets.
From-SVN: r21832
1998-08-18 12:22:32 -06:00
Jeffrey A Law
52cf711504 expr.c (emit_block_move): Do not call memcpy as a libcall instead build up a CALL_EXPR and call it like...
* expr.c (emit_block_move): Do not call memcpy as a libcall
        instead build up a CALL_EXPR and call it like any other
        function.
        (clear_storage): Similarly for memset.

From-SVN: r21831
1998-08-18 11:49:28 -06:00
Jeffrey A Law
e27a510618 regmove.c (fixup_match_2): Do not call reg_overlap_mentioned_p on notes.
* regmove.c (fixup_match_2): Do not call reg_overlap_mentioned_p
        on notes.

From-SVN: r21830
1998-08-18 11:14:34 -06:00
Brendan Kehoe
e368d5b332 another expr/decl ambiguity test
From-SVN: r21828
1998-08-18 11:32:36 -04:00
Brendan Kehoe
074900555d add another expr/decl ambiguity test
From-SVN: r21827
1998-08-18 11:24:24 -04:00
Brendan Kehoe
a5a406af64 another expr/decl ambiguity test
From-SVN: r21826
1998-08-18 11:19:21 -04:00
Brendan Kehoe
ba6ac69e47 add expr/decl ambiguity test
From-SVN: r21825
1998-08-18 11:11:05 -04:00
Richard Henderson
2004545263 c-common.c (decl_attributes): Issue an error if the argument to alias is not a string.
* c-common.c (decl_attributes): Issue an error if the argument
to alias is not a string.

From-SVN: r21824
1998-08-18 05:40:52 -07:00
Jeffrey A Law
eaa41c8dd3 Makefile.in (cplus-dem.o): Provide explicit rules for building cplus-dem.o
* Makefile.in (cplus-dem.o): Provide explicit rules for building
        cplus-dem.o

From-SVN: r21823
1998-08-18 04:26:35 -06:00
Jeff Law
4244aeda6c xiberty stuff isn't needed anymore.
From-SVN: r21822
1998-08-18 04:06:24 -06:00
Jeffrey A Law
7b31b7d9bd regmove.c (optimize_reg_copy_1): Update REG_N_CALLS_CROSSED and REG_LIVE_LENGTH as successful substitutions are made.
* regmove.c (optimize_reg_copy_1): Update REG_N_CALLS_CROSSED
        and REG_LIVE_LENGTH as successful substitutions are made.

From-SVN: r21819
1998-08-18 03:34:59 -06:00
David S. Miller
5a5325cb72 From Kaveh R. Ghazi.
* config/sparc/sparc.c (ultra_find_type): Add empty semicolon
	statement after end of loop label.
	From me...
	* config/sparc/sparc.c (ultra_types_avail): New variable.
	(ultra_build_types_avail): New function to record mask of insn
	types in ready list at this cycle.
	(ultrasparc_sched_reorder): Call it.
	(ultra_find_type): Use it to quicken the search.  Also simplif
	dependency check, don't use rtx_equal_p because we know exactly
	what we are looking for.

From-SVN: r21817
1998-08-18 01:24:51 -07:00
Richard Earnshaw
a2767b6709 arm.h (SECONDARY_INPUT_RELOAD_CLASS): Return NO_REGS if compiling for architecture v4.
* arm.h (SECONDARY_INPUT_RELOAD_CLASS): Return NO_REGS if compiling
for architecture v4.

From-SVN: r21816
1998-08-18 03:24:05 +00:00
Jeff Law
2fc83a24b7 Daily bump.
From-SVN: r21814
1998-08-17 18:45:32 -06:00
David S. Miller
45120407b5 sparc.md (sltu, sgeu): Don't FAIL, call gen_compare_reg.
* config/sparc/sparc.md (sltu, sgeu): Don't FAIL, call
	gen_compare_reg.
	(movsf_const_intreg, movsf_const_high, movsf_const_lo,
	movdf_const_intreg and helper splits): New patterns to move float
	constants into integer registers.
	(negtf2, negdf2, abstf2, absdf2): Rework using new patterns and
	splits.

From-SVN: r21813
1998-08-17 15:34:06 -07:00
Mark Mitchell
648f19f647 cp-tree.h (enter_scope_of): New function.
* cp-tree.h (enter_scope_of): New function.
	* parse.y (complex_direct_notype_declarator): Use it.
	* semantics.c (enter_scope_of): New function.

From-SVN: r21812
1998-08-17 22:33:58 +00:00
Jeffrey A Law
def9b0064b * From Graham
* tree.c (build_index_type): Copy TYPE_SIZE_UNIT from sizetype
        to itype.
        * c-decl.c (finish_enum): Copy TYPE_SIZ_UNIT from enumtype to tem.

From-SVN: r21810
1998-08-17 14:26:47 -06:00
Jeff Law
e7b7998a0c rs6000.c (secondary_reload_class): For TARGET_ELF...
�
        * rs6000.c (secondary_reload_class): For TARGET_ELF, indicate that
        a BASE_REGS register is needed as an intermediate when copying
        a symbolic value into any register class other than BASE_REGS.

From-SVN: r21808
1998-08-17 14:11:06 -06:00
Jeff Law
3c144fbd0c rs6000.c (secondary_reload_class): For TARGET_ELF...
* rs6000.c (secondary_reload_class): For TARGET_ELF, indicate that
        a BASE_REGS register is needed as an intermediate when copying
        a symbolic value into any register class other than BASE_REGS.

From-SVN: r21807
1998-08-17 14:11:04 -06:00
Jason Merrill
482b883f89 * decl.c (grokparms): No, here.
From-SVN: r21801
1998-08-17 15:29:45 -04:00
Jason Merrill
2d91446123 decl.c (grokdeclarator): Catch parm with pointer to array of unknown bound here...
* decl.c (grokdeclarator): Catch parm with pointer to array of
	unknown bound here...
	* method.c (process_overload_item): ...not here.

From-SVN: r21800
1998-08-17 14:46:43 -04:00
Jason Merrill
09007174da tweak
From-SVN: r21799
1998-08-17 14:46:03 -04:00
Jason Merrill
5210f3d05f cplus-dem.c (do_type): Fix simple array handling.
* cplus-dem.c (do_type): Fix simple array handling.  If we fail,
	stay failed.

From-SVN: r21798
1998-08-17 14:39:16 -04:00
Jason Merrill
d12e8f597a tweak
From-SVN: r21797
1998-08-17 13:25:32 -04:00
Jason Merrill
509087ae2b * class.c (finish_struct_bits): Also set TYPE_SIZE_UNIT.
From-SVN: r21796
1998-08-17 13:23:38 -04:00
Jason Merrill
8cd4c17528 gxxint.texi: Remove obsolete documentation of overloading code.
* gxxint.texi: Remove obsolete documentation of overloading code.
	* decl.c (finish_enum): Also set TYPE_SIZE_UNIT.
	* tree.c (lvalue_type): Fix for arrays.
	* typeck.c (build_unary_op): Use lvalue_type.
	* call.c (add_function_candidate): Likewise.
	* cvt.c (convert_to_reference): Likewise.
	* decl2.c (lang_decode_option): Ignore -traditional.

From-SVN: r21795
1998-08-17 13:13:42 -04:00
Jeffrey A Law
2e245dac40 expr.c (move_by_pieces): No longer static.
* expr.c (move_by_pieces): No longer static.  Remove prototype.
        * rtl.h (move_by_pieces): Add extern prototype.
        * mips.c (expand_block_move): Handle aligned straight line copy by
        calling move_by_pieces.

From-SVN: r21794
1998-08-17 10:37:49 -06:00
Jason Merrill
9f2b61e454 fix
From-SVN: r21793
1998-08-17 12:34:19 -04:00
Jason Merrill
287662c58d init.c (build_offset_ref): Don't mess with error_mark_node.
* init.c (build_offset_ref): Don't mess with error_mark_node.
	* lex.c (do_scoped_id): Use cp_error.
	* rtti.c (get_tinfo_fn): Don't mess with the context for now.

From-SVN: r21792
1998-08-17 12:29:17 -04:00
Benjamin Kosnik
0d2a8b1b82 decl.c (grokdeclarator): Allow anonymous types to be cv-qualified.
1998-08-17  Benjamin Kosnik  <bkoz@loony.cygnus.com>
	* decl.c (grokdeclarator): Allow anonymous types to be cv-qualified.
fixes g++/16824

From-SVN: r21791
1998-08-17 15:44:47 +00:00
Ulrich Drepper
32f0e4a48f Update.
From-SVN: r21790
1998-08-17 12:32:54 +00:00
Ulrich Drepper
acd1ba4c76 Define __PMT if not already defined.
From-SVN: r21789
1998-08-17 12:32:45 +00:00
Mark Mitchell
ef1090573a * stdexcept: Put things in the std namespace, if appropriate.
From-SVN: r21788
1998-08-17 12:25:32 +00:00
Kaveh R. Ghazi
a782562574 cplus-dem.c: Include config.h if it exists.
* cplus-dem.c: Include config.h if it exists.  Also, only
        prototype malloc/realloc if we can't get stdlib.h.

From-SVN: r21787
1998-08-17 05:42:54 -06:00
Jeffrey A Law
69789cfc8f cp-tree.h (set_identifier_local_value): Provide prototype.
* cp-tree.h (set_identifier_local_value): Provide prototype.
        * decl2.c (do_namespace_alias): Remove unused variables `binding'
        and `old'.

From-SVN: r21786
1998-08-17 05:42:22 -06:00
Kaveh R. Ghazi
efe3eb65d1 Makefile.in (cplus-dep.o): Use cplus-dem.c from libiberty.
* Makefile.in (cplus-dep.o): Use cplus-dem.c from libiberty.
        * cplus-dem.c: Delete.
        * Makefile.in (fold-const.o): depend on $(RTL_H).
        * fold-const.c: Include rtl.h to get the prototype for
        `set_identifier_local_value'.
        * loop.c (express_from_1): Remove unused variable `tmp'.
        (combine_givs): cast the first argument of bzero to char *.
        * toplev.c (display_help): Remove unused variable `looking_for_start'.

Co-Authored-By: Jeffrey A Law <law@cygnus.com>

From-SVN: r21785
1998-08-17 05:39:32 -06:00
Jeff Law
ce3c0b5314 expr.c (expand_expr): Allow assignments from TImode PARM_DECLs and VAR_DECLs.
8
        * expr.c (expand_expr): Allow assignments from TImode PARM_DECLs
        and VAR_DECLs.

From-SVN: r21784
1998-08-17 04:50:00 -06:00
Jeff Law
27fa9e4bdf expr.c (expand_expr): Allow assignments from TImode PARM_DECLs and VAR_DECLs.
* expr.c (expand_expr): Allow assignments from TImode PARM_DECLs
        and VAR_DECLs.

From-SVN: r21783
1998-08-17 04:49:58 -06:00
Mark Mitchell
0720f6fbcd stmt.c (expand_end_loop): Tidy.
* stmt.c (expand_end_loop): Tidy.  Allow unconditional
        jumps out of the loop to be treated as part of the exit test.

From-SVN: r21782
1998-08-17 03:30:15 -06:00
Kaveh R. Ghazi
804a4e13f8 c-decl.c (init_decl_processing): Remove unneeded &.
* c-decl.c (init_decl_processing): Remove unneeded &.
        * alpha.h (alpha_initialize_trampoline): Provide prototype.
        * except.c (set_exception_lang_code, set_exception_version_code):
        Change parameter from `short' to `int' to avoid using a gcc
        extension.
        * except.h (set_exception_lang_code, set_exception_version_code):
        Likewise for prototypes.
        * flow.c (count_reg_references): Remove unused variables `regno'
        and `i'.
        * gcse.c (hash_scan_insn): Declare parameter `in_libcall_block'.
        * prefix.c (translate_name): Cast the result of `alloca'.
        * varray.h (VARRAY_FREE): Reimplement as a `do-while(0)' statement.

Co-Authored-By: Jeffrey A Law <law@cygnus.com>

From-SVN: r21781
1998-08-17 03:08:32 -06:00
Andreas Schwab
f5220a5dd3 m68k.c: Include "system.h" instead of <stdio.h>.
* config/m68k/m68k.c: Include "system.h" instead of <stdio.h>.
        Include "toplev.h".
        (valid_dbcc_comparison_p): Mark mode argument as unused.
        (symbolic_operand): Likewise.
        (legitimize_pic_address): Likewise.
        (const_uint32_operand): Likewise.
        (const_sint32_operand): Likewise.
        * sched.c [!INSN_SCHEDULING]: Define only dummy function
        schedule_insns and comment out rest of file.

From-SVN: r21779
1998-08-17 02:35:24 -06:00
Andreas Schwab
38198304cc m68k.c (output_move_simode_const): Use subl to move a zero into an address register.
* m68k.c (output_move_simode_const): Use subl to move a zero into an
        address register.
        (output_move_[hq]imode): Likewise.

From-SVN: r21778
1998-08-17 02:25:31 -06:00
Jeffrey A Law
3f9a83a91b toplev.c (main): Enable -fstrict-aliasing for -O2 and above.
* toplev.c (main): Enable -fstrict-aliasing for -O2 and above.
        * invoke.texi: Corresponding changes.

From-SVN: r21777
1998-08-17 02:18:17 -06:00
Richard Henderson
29f63881da * regclass.c (allocate_reg_info): Respect MIN when clearing data.
From-SVN: r21770
1998-08-16 19:04:53 -07:00
Jeff Law
295cd2ee03 Daily bump.
From-SVN: r21768
1998-08-16 18:45:02 -06:00
David S. Miller
3bc8b61efc sparc.c (ultra_code_from_mask, [...]): New functions to describe UltraSPARC pipeline exactly to Haifa.
* config/sparc/sparc.c (ultra_code_from_mask,
	ultra_cmove_results_ready_p, ultra_fpmode_conflict_exists,
	ultra_find_type, ultra_schedule_insn, ultra_flush_pipeline,
	ultrasparc_sched_init, ultrasparc_variable_issue,
	ultra_rescan_pipeline_state, ultrasparc_sched_reorder): New
	functions to describe UltraSPARC pipeline exactly to Haifa.
	(ultrasparc_adjust_cost): Indicate IMUL type insns have zero cost,
	as there is nothing the scheduler can do about it.  Indicate that
	REG_DEP_OUTPUT's collide.  Fixup formatting.
	* config/sparc/sparc.h (RTX_COSTS): Fixup integer multiply and
	divide costs on Ultra for DImode.
	(MD_SCHED_INIT, MD_SCHED_REORDER, MD_SCHED_VARIABLE_ISSUE):
	Define.
	* config/sparc/sparc.md (ieu_unnamed function unit): Rename to
	ieuN and add call_no_delay_slot to type list.
	(cti function unit): New unit for branches on UltraSPARC.
	(subx/addx insns): Set type to misc.
	(sidi zero/sign extension insns on arch64): Set type to shift.
	(sign_extendhidi2_insn): Set type to sload.

From-SVN: r21767
1998-08-16 11:50:32 -07:00
David Edelsohn
a6c2a102ae rs6000.c (rs6000_stack_info): Use if == 0 for sizes.
* rs6000.c (rs6000_stack_info): Use if == 0 for sizes.
        (output_epilog): Use if != 0 for offset.
        (rs6000_fatal_bad_address): Prepare for Intl.
        * rs6000.h (rs6000_fatal_bad_address): Declare.
        * rs6000.md (movsfcc, movdfcc): Use else if.
        (elf_high): Use {liu|lis}.
        (elf_low): Use {cal|la}.  Remove %a template from old mnemonics.
        (movsi): Use rs6000_fatal_bad_address.

From-SVN: r21766
1998-08-16 07:07:25 -04:00
Richard Henderson
8ec82f87f3 reload.c (find_equiv_reg): Reject equivalences separated by a volatile instruction.
8
        * reload.c (find_equiv_reg): Reject equivalences separated
        by a volatile instruction.

From-SVN: r21763
1998-08-15 18:55:58 -06:00
Richard Henderson
2753f812d4 reload.c (find_equiv_reg): Reject equivalences separated by a volatile instruction.
�
        * reload.c (find_equiv_reg): Reject equivalences separated
        by a volatile instruction.

From-SVN: r21762
1998-08-15 18:55:56 -06:00