wilson [Wed, 6 Jul 1994 18:20:43 +0000 (18:20 +0000)]
(struct nesting): Add new field alt_end_label.
(expand_start_loop): Initialize it to zero.
(expand_end_loop): Reorder loop if find either a jump to end_label
or a jump to alt_end_label.
(expand_exit_loop_if_false): Set alt_end_label.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7664
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Wed, 6 Jul 1994 11:27:16 +0000 (11:27 +0000)]
(arm umul_ppmm): Fix use of uninitialized register.
Eliminate clobbers of hard registers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7663
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Wed, 6 Jul 1994 09:07:10 +0000 (09:07 +0000)]
(decl_attributes): If TREE_TYPE for the DECL is updated,
then update TYPE as well.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7662
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 6 Jul 1994 07:20:48 +0000 (07:20 +0000)]
(expand_divmod): Clear out TARGET also if OP1 is a constant,
when TARGET == OP0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7661
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Wed, 6 Jul 1994 00:28:23 +0000 (00:28 +0000)]
43rd Cygnus<->FSF merge
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7660
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Tue, 5 Jul 1994 23:27:56 +0000 (23:27 +0000)]
(c-parse.y): Redirect through tmp file.
(objc-parse.y): Likewise.
(c-gperf.h): Likewise.
(mostlyclean): Delete the new tmp files.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7659
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Tue, 5 Jul 1994 23:19:00 +0000 (23:19 +0000)]
(expand_divmod): Fix typo setting op1_is_pow2.
(expand_divmod): Handle powers-of-two specifically for CEIL_*_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7658
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 5 Jul 1994 23:12:04 +0000 (23:12 +0000)]
(can_combine_p): Don't check for replacing arg of function here.
(can_combine_p): Do it here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7657
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Tue, 5 Jul 1994 23:02:03 +0000 (23:02 +0000)]
(expand_increment): If pre-incrementing a promoted
variable, don't adjust OP0 since the result won't be used.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7656
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 5 Jul 1994 22:27:27 +0000 (22:27 +0000)]
(expand_increment): If pre-incrementing a promoted variable, don't
adjust OP0 since the result won't be used.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7655
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 5 Jul 1994 21:04:32 +0000 (21:04 +0000)]
(duplicate_loop_exit_test): Handle SUBREG in SET_DEST of loop exit
test statements.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7654
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 5 Jul 1994 20:59:42 +0000 (20:59 +0000)]
(try_combine): If I2DEST was used in I2SRC, it isn't unused just
because there is no SET for I2 anymore.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7653
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 5 Jul 1994 03:01:31 +0000 (03:01 +0000)]
(RS6000_OUTPUT_BASENAME): Always call assembler_name and pass the
actual symbol name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7652
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 5 Jul 1994 01:54:39 +0000 (01:54 +0000)]
(assemble_name): Call STRIP_NAME_ENCODING.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7651
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Mon, 4 Jul 1994 15:14:54 +0000 (15:14 +0000)]
(canon_hash, exp_equiv_p): Refer to string in SYMBOL_REF with XSTR,
not XEXP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7650
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sun, 3 Jul 1994 02:22:00 +0000 (02:22 +0000)]
(smuldi3_highpart, smuldi3_highpart_internal,
umuldi3_highpart, umuldi3_highpart_internal): New patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7649
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sun, 3 Jul 1994 01:14:43 +0000 (01:14 +0000)]
(loop_iterations): Only use REG_EQUAL note value if it
is constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7648
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sat, 2 Jul 1994 23:16:32 +0000 (23:16 +0000)]
(dbxout_type_methods): Enable debugging info for
template classes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7647
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sat, 2 Jul 1994 23:13:19 +0000 (23:13 +0000)]
(yylex): Reject imaginary numbers when pedantic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7646
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sat, 2 Jul 1994 23:09:49 +0000 (23:09 +0000)]
(duplicate_decls): When make void* match char*, set
DECL_IN_SYSTEM_HEADER.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7645
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sat, 2 Jul 1994 23:07:43 +0000 (23:07 +0000)]
(clean): Delete LIB2FUNCS_EXTRA.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7644
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sat, 2 Jul 1994 23:03:33 +0000 (23:03 +0000)]
(PREDICATE_CODES): Add cint8_operand.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7643
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sat, 2 Jul 1994 22:57:01 +0000 (22:57 +0000)]
(FUNCTION_PROFILER, FUNCTION_BLOCK_PROFILER,
BLOCK_PROFILER): Use multiple fputs/fprintf calls instead of ANSI
C concatenated strings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7642
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Sat, 2 Jul 1994 22:52:50 +0000 (22:52 +0000)]
(DEFAULT_WORD_SWITCH_TAKES_ARG): Add -isystem.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7641
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Sat, 2 Jul 1994 13:33:56 +0000 (13:33 +0000)]
(expand_divmod): Always return gen_lowpart (mode, ...).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7640
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 1 Jul 1994 23:29:06 +0000 (23:29 +0000)]
* reorg.c (make_return_insns): Make sure redirecting a jump to
a RETURN insn does not invalidate the delay slots of the jump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7639
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 23:25:58 +0000 (23:25 +0000)]
(jump_optimize): Don't convert if (foo) x++ into an add of an scc
unless X has no side effects and can't trap.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7638
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 23:09:49 +0000 (23:09 +0000)]
(initelt): The equal sign is optional when positioning to a single
element of an array.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7637
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 21:41:55 +0000 (21:41 +0000)]
Update last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7636
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 21:33:07 +0000 (21:33 +0000)]
(push_init_level): If not at "unfilled" position, set
constructor_incremental to 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7635
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Fri, 1 Jul 1994 20:32:09 +0000 (20:32 +0000)]
(arm umul_ppm): Fix typos in last change. Mark hard-coded
registers with "%|".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7634
138bc75d-0d04-0410-961f-
82ee72b054a4
merrill [Fri, 1 Jul 1994 19:12:03 +0000 (19:12 +0000)]
(compile_file): Pass through static consts and inlines
multiple times in case they reference each other.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7633
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 17:54:04 +0000 (17:54 +0000)]
Update copyright notice.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7632
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 17:53:35 +0000 (17:53 +0000)]
If GNUC, include alloca.h, else declare alloca.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7631
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 17:49:42 +0000 (17:49 +0000)]
(FUNCTION_EXTRA_PROLOGUE): New macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7630
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Fri, 1 Jul 1994 12:52:38 +0000 (12:52 +0000)]
Test for _AM29K and _IBMR2, not ___AM29K__ and ___IBMR2__.
(arm umul_ppmm): New definition.
(clipper umul_ppmm, smul_ppmm, __umulsidi3): New definitions.
(hppa count_leading_zeros): New definition.
(i960 umul_ppmm, __umulsidi3): New definitions.
(mc68000 umul_ppmm): Use %. before size suffixes.
(mc88110 umul_ppmm, udiv_qrnnd): Rewrite.
(mc88000): Get UMUL_TIME and UDIV_TIME right.
(mips): Get UMUL_TIME right.
(ns32000 umul_ppmm): New definition.
(ns32000 udiv_qrnnd): Rename from bogus div_qrnnd, rewrite.
(powerpc umul_ppmm, smul_ppmm): New definitions.
(_IBMR2/powerpc add_ssaaaa, sub_ddmmss): Improve.
(pyr umul_ppmm): Fix typo.
(sparc add_ssaaaa, sub_ddmmss): Match constant 0 for all inputs.
(vax sdiv_qrnnd): New definition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7629
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Fri, 1 Jul 1994 11:40:45 +0000 (11:40 +0000)]
(expand_divmod): Put OP0 in a register when computing
remainder, or when OP1 is constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7628
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 1 Jul 1994 10:45:56 +0000 (10:45 +0000)]
(expand_divmod): Don't set REG_NOTES unless we generated a quotient.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7627
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Thu, 30 Jun 1994 22:21:18 +0000 (22:21 +0000)]
(do_spec_1, case 'P'): Don't add underscores to macros starting with
'_[A-Z]'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7626
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Thu, 30 Jun 1994 22:15:45 +0000 (22:15 +0000)]
(umulsi3_highpart, smulsi3_highpart): Fix constraint for operand 0 in
define_insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7625
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 30 Jun 1994 20:08:45 +0000 (20:08 +0000)]
Wrap <time.h> and <sys/time.h> to avoid multiple inclusion errors.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7624
138bc75d-0d04-0410-961f-
82ee72b054a4
krab [Thu, 30 Jun 1994 16:22:23 +0000 (16:22 +0000)]
incremented objc_version iff using gnu runtime.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7623
138bc75d-0d04-0410-961f-
82ee72b054a4
krab [Thu, 30 Jun 1994 16:18:55 +0000 (16:18 +0000)]
This patch makes selectors in the Objective-C language be pointers
to a struct { void *sel_id, char *sel_types }, where the sel_types
element is the type encoding of the method arguments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7622
138bc75d-0d04-0410-961f-
82ee72b054a4
krab [Thu, 30 Jun 1994 16:18:55 +0000 (16:18 +0000)]
(read:, write:, streamVersion:):
Un-disable for alpha. (forward::, performv::): Declare and fix to
return retval_t. .
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7621
138bc75d-0d04-0410-961f-
82ee72b054a4
krab [Thu, 30 Jun 1994 16:17:36 +0000 (16:17 +0000)]
* objc-act.c (get_proto_encoding, build_typed_selector_reference):
New fucnctions. (UTAG_PROTOCOL): New define.
(objc_selector_template, flag_typed_selectors): New variables.
(objc_init): set flag_typed_selectors if -fgnu-runtime.
(synth_module_prologue): Change declaration of
_OBJC_SELECTOR_TABLE when flag_typed_selectors is non-null.
(build_module_descriptor): Make sure the generated constructor
function is declared public.
(build_selector): Only cast to SEL when not doing typed selectors.
(build_selector_translation_table): Rewrite initialization.
(build_tmp_function_decl): Make up new name when called, since it
may now be called multiple times.
(hack_method_prototype): Use init_function_start to reinit args
machinery. Also set current_function_decl before calling
assign_parms.
(generate_protocols): Don't generate encoding twice.
(build_selector_template): New function.
(build_method_list_template): Generate (void*)0 as first element,
not (int)0.
(build_message_expr): move the call to build_selector_reference
towards the end, where we have determined the function prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7620
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Thu, 30 Jun 1994 11:48:44 +0000 (11:48 +0000)]
(INITIAL_ELIMINATION_OFFSET): Check frame_pointer_needed when eliminating
the arg pointer into the stack pointer.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7619
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Thu, 30 Jun 1994 10:24:28 +0000 (10:24 +0000)]
(c_build_type_variant): Remove last change; instead, copy TYPE if not
in old obstack.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7618
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Thu, 30 Jun 1994 09:46:10 +0000 (09:46 +0000)]
(end_final,profile_function): Profiling variables are size of pointer,
not int.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7617
138bc75d-0d04-0410-961f-
82ee72b054a4
merrill [Thu, 30 Jun 1994 09:41:26 +0000 (09:41 +0000)]
(lang_options): Add -W{no-,}non-virtual-dtor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7616
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Thu, 30 Jun 1994 05:35:06 +0000 (05:35 +0000)]
some changes from gb.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7615
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Thu, 30 Jun 1994 03:43:24 +0000 (03:43 +0000)]
Restore to rcs version 1.59 (1.60 is an empty file).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7614
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Thu, 30 Jun 1994 02:03:54 +0000 (02:03 +0000)]
remove cygnus FSF difference
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7613
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Thu, 30 Jun 1994 01:51:05 +0000 (01:51 +0000)]
42nd Cygnus<->FSF merge
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7612
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 23:21:43 +0000 (23:21 +0000)]
(basic_induction_var, case REG): Allow previous insn to set a SUBREG
of X.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7611
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 22:59:23 +0000 (22:59 +0000)]
(LIB_SPEC): If -pg, add -lprof2.
(STARTFILE_SPEC, {FUNCTION,BLOCK,FUNCTION_BLOCK}_PROFILER): New macros.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7610
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 22:57:34 +0000 (22:57 +0000)]
(end_final,profile_function): Profiling variables are size of pointer,
not int.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7609
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 20:13:22 +0000 (20:13 +0000)]
Add new pattern for double-add when have reg + frame pointer.
Slight changes to all such patterns and add define_splits for them.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7608
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 20:12:40 +0000 (20:12 +0000)]
(FRAME_POINTER_REGNUM): Now register 63.
(HARD_FRAME_POINTER_REGNUM): New macro.
(CONDITIONAL_REGISTER_USAGE, REG_CLASS_CONTENTS, REGNO_REG_CLASS):
Show register 63 is not an FP register.
(REGHNO_OK_FOR_BASE_P, REG_OK_FOR_BASE_P, REGISTER_NAMES): Likewise.
(ALPHA_ROUND): New macro.
(STARTING_FRAME_OFFSET, ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET):
Modify to reflect save area between outgoing args and local vars.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7607
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 20:12:03 +0000 (20:12 +0000)]
(alpha_sa_size): Round size to 16-byte boundary.
(add_long_const): Add new arg, TEMP_REG.
(output_{pro,epi}log): Rework to put save area between outgoing args and
local variables.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7606
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 20:02:13 +0000 (20:02 +0000)]
(reload): Can't eliminate if frame pointer needed and TO is stack pointer.
Spill HARD_FRAME_POINTER_REGNUM if not FRAME_POINTER_REGNUM and frame pointer
is needed.
(spill_hard_reg): If CANT_ELIMINATE, set regs_ever_live; no longer done by
callers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7605
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 20:01:31 +0000 (20:01 +0000)]
(global_alloc): Make a more accurate attempt to see if the frame pointer will
be used.
If it is, show HARD_FRAME_POINTER_REGNUM used if its not the same as
FRAME_POINTER_REGNUM.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7604
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 29 Jun 1994 19:52:27 +0000 (19:52 +0000)]
(movqi): Add missing `DONE'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7603
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 29 Jun 1994 19:44:07 +0000 (19:44 +0000)]
* sparc/sp64-elf: (PTRDIFF_TYPE): Remove dependence on POINTER_SIZE.
(SIZE_TYPE): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7602
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 29 Jun 1994 19:43:25 +0000 (19:43 +0000)]
* sparc/sparc.h (CPP_SPEC): Split up v9/non-v9 stuff.
Move -Acpu and -Amachine from here.
(CPP_PREDEFINES): To here.
(NO_BUILTIN_PTRDIFF_TYPE): Undefine.
(NO_BUILTIN_SIZE_TYPE): Likewise.
(PTRDIFF_TYPE): Split up v9/non-v9 definitions.
(SIZE_TYPE): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7601
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Wed, 29 Jun 1994 19:25:41 +0000 (19:25 +0000)]
Always put 1 space after the macro expansion in ANSI mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7600
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 29 Jun 1994 02:41:26 +0000 (02:41 +0000)]
(simplify_set): Evaluate HAVE_conditional_move at runtime.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7599
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:23:02 +0000 (00:23 +0000)]
(expand_mult): Generalize to call synth_mult also for OP1 - 1.
(ceil_log2): New function.
(choose_multiplier): New function.
(invert_mod2n): New function.
(expand_mult_highpart_adjust): New function.
(expand_mult_highpart): New function.
(EXACT_POWER_OF_2_OR_ZERO_P): New macro.
(expand_divmod): Almost completely rewritten.
(expand_shift): Don't truncate immediate shift count, it doesn't work
for types smaller than int.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7598
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:22:36 +0000 (00:22 +0000)]
(smul_highpart_optab, umul_highpart_optab): New variables.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7597
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:22:13 +0000 (00:22 +0000)]
(optabs): Add [us]mul_highpart_optab.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7596
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:21:32 +0000 (00:21 +0000)]
(smul_highpart_optab, umul_highpart_optab): New variables.
(expand_binop): Handle [us]mul_highpart_optab as commutative.
(init_optabs): Initialize [us]mul_highpart_optab.
(expand_binop): Convert OP0 to mode for library calls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7595
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:20:58 +0000 (00:20 +0000)]
(div_and_round_double): Make it globally accessible.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7594
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:19:52 +0000 (00:19 +0000)]
(umulsi3_highpart, const_umulsi3_highpart): New expander and matcher.
(smulsi3_highpart, const_smulsi3_highpart): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7593
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:19:15 +0000 (00:19 +0000)]
(umuldi3_highpart): New expander and matcher.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7592
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:18:43 +0000 (00:18 +0000)]
(cint8_operand): New predicate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7591
138bc75d-0d04-0410-961f-
82ee72b054a4
tege [Wed, 29 Jun 1994 00:18:12 +0000 (00:18 +0000)]
(smulsi3_highpart, umulsi3_highpart): New patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7590
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Tue, 28 Jun 1994 19:33:59 +0000 (19:33 +0000)]
(CPP_SPEC): Handle -msupersparc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7589
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Tue, 28 Jun 1994 19:33:23 +0000 (19:33 +0000)]
(cpu_type, sparc_cpu_type): Rename to arch_type and
sparc_arch_type. Fix all users.
(supersparc_adjust_cost): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7588
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Tue, 28 Jun 1994 19:32:11 +0000 (19:32 +0000)]
(cpu_type, sparc_cpu_type): Rename to arch_type and
sparc_arch_type.
(CPP_SPEC): Handle -msupersparc.
(MASK_SUPERSPARC, TARGET_SUPERSPARC): New macros.
(TARGET_SWITCHES): Add -msupersparc and -mcypress.
(ADJUST_COST): New macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7587
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Tue, 28 Jun 1994 19:31:14 +0000 (19:31 +0000)]
(cpu attribute): Rename to arch attribute. Add a new
cpu attribute. Fix all users.
(type attribute): Add ialu, shift, imul, fpdivs, and fpdivd.
Delete fpdiv.
(function units): Add Cypress and Supersparc versions of each.
(addsi3, subsi3, andsi3, iorsi3, xorsi3): Add ialu type attribute.
(mulsi3): Add imul type attribute.
(divtf3, divdf3): Use fpdivd not fpdiv type attribute.
(divsf3); Use fpdivs not fpdiv type attribute.
(ashlsi3, ashrsi3, lshrsi3): Add shift type attribute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7586
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Tue, 28 Jun 1994 17:41:52 +0000 (17:41 +0000)]
(andsi3+6): Replace bad clrbit pattern with two working ones.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7585
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 17:31:04 +0000 (17:31 +0000)]
Initial revision
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7584
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 28 Jun 1994 16:42:26 +0000 (16:42 +0000)]
* pa.md (define_split for (plus (reg) (large_constant))): Treat
large_constant as signed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7583
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 10:02:05 +0000 (10:02 +0000)]
(eliminate_regs_in_insn): When checking for moves and adds, use
single_set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7582
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 09:49:31 +0000 (09:49 +0000)]
(reloads_conflict): Handle R1_TYPE of RELOAD_OTHER.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7581
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 09:44:57 +0000 (09:44 +0000)]
(do_jump, case BIT_AND_EXPR): Only narrow to a type that corresponds
to a mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7580
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 09:35:22 +0000 (09:35 +0000)]
Include ctype.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7579
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 09:34:30 +0000 (09:34 +0000)]
(movsf): Emit frsp if storing to memory and not PowerPC.
(movsf matcher): Remove explicit frsp.
(store sf with update): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7578
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 09:33:48 +0000 (09:33 +0000)]
(MEMORY_MOVE_COST): Make processor-dependent.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7577
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Tue, 28 Jun 1994 09:15:25 +0000 (09:15 +0000)]
Treat HFmode like SFmode, for now.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7576
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Mon, 27 Jun 1994 23:16:01 +0000 (23:16 +0000)]
(expand_binop, multi-words shifts and rotates): Fix errors in last
change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7575
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Mon, 27 Jun 1994 15:24:36 +0000 (15:24 +0000)]
(function_unit fpa): Add more accurate scheduling information.
(all floating point patterns): Add more accurate instruction type information.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7574
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Mon, 27 Jun 1994 15:24:36 +0000 (15:24 +0000)]
include "expr.h".
(arm_fpu): New variable.
(arm_gen_movstrqi): Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7573
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Mon, 27 Jun 1994 15:24:36 +0000 (15:24 +0000)]
(STARTFILE_SPEC,SIZE_TYPE,PTRDIFF_TYPE): Fix typos.
(ASM_FINAL_SPEC): Only reject -mbsd and -mxopen when -pedantic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7572
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Mon, 27 Jun 1994 15:24:36 +0000 (15:24 +0000)]
(enum floating_point_type): New enumeration type.
(arm_fpu): New declaration.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7571
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Sun, 26 Jun 1994 09:37:16 +0000 (09:37 +0000)]
(v_message_with_decl): Avoid fwrite for stderr; mixing it with fprintf
and fputs can cause strange results under VMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7570
138bc75d-0d04-0410-961f-
82ee72b054a4
erich [Sat, 25 Jun 1994 10:04:06 +0000 (10:04 +0000)]
(distribute_notes, case REG_DEAD): If a call uses a
hard reg, then this is where it dies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7569
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 24 Jun 1994 23:09:17 +0000 (23:09 +0000)]
(create_definition): Eliminate whitespace before and after macro
definitions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7568
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 24 Jun 1994 22:47:38 +0000 (22:47 +0000)]
(alpha_builtin_saveregs): Fix typo in computing value for __base.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7567
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 24 Jun 1994 22:29:54 +0000 (22:29 +0000)]
(zero_extract patterns): Don't allow constants in the first operand of
ZERO_EXTRACT since the recognizer function forces them to match the
mode of the match_operand.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7566
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Fri, 24 Jun 1994 21:46:59 +0000 (21:46 +0000)]
(decl_constant_value): Test for const and not iterator.
(default_conversion, digest_init): Remove redundant checks before calling
decl_constant_value.
(convert_for_assignment): See if RHS has a constant value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7565
138bc75d-0d04-0410-961f-
82ee72b054a4