gcc.git
32 years agoPass -shared/-non_shared to MIPS 3.0 linker if passed.
Michael Meissner [Wed, 26 Aug 1992 21:21:55 +0000 (21:21 +0000)]
Pass -shared/-non_shared to MIPS 3.0 linker if passed.

From-SVN: r1968

32 years ago(current_block): Declared.
Richard Stallman [Wed, 26 Aug 1992 21:05:32 +0000 (21:05 +0000)]
(current_block): Declared.

From-SVN: r1967

32 years ago(define_function_unit): Correct and simplify memory unit
Tom Wood [Wed, 26 Aug 1992 20:54:09 +0000 (20:54 +0000)]
(define_function_unit): Correct and simplify memory unit
specification.

From-SVN: r1966

32 years ago(fold): Do A op C1 ? A : C2 opt only for INTEGER_TYPEs.
Richard Stallman [Wed, 26 Aug 1992 19:45:07 +0000 (19:45 +0000)]
(fold): Do A op C1 ? A : C2 opt only for INTEGER_TYPEs.

From-SVN: r1965

32 years agoMajor rework to have caller-saves emit load/store double insns when...
Jeff Law [Wed, 26 Aug 1992 19:41:20 +0000 (13:41 -0600)]
Major rework to have caller-saves emit load/store double insns when...

Major rework to have caller-saves emit load/store double insns when
possible and to avoid useless resaving of registers restored for
source accesses only.
* caller-save.c (toplevel): All arrays are multi-dimensional to
hold information for multiple save/restore insns.  New variable
hard_regs_need_restore.
(choose_hard_reg_mode): New argument `nregs' indicating how many
hard registers are desired.  All callers changed.
(init_caller_save): Change initialization to handle multiple
register saves.  A call-used register can not be live across
if we can not find a single register mode to save it in.
(multiple register saves are optional)
(init_save_areas): Change initialization of regno_save_mem to
handle multiple register saves.
(setup_save_areas): Allocate space for consecutive hard registers
in aligned consecutive memory locations.   When allocating space
for consecutive hard registers, also initialize regno_save_mem
for each hard register stored as a single word.
(save_call_clobbered_regs): Initialize hard_regs_need_restore.
Set hard_regs_need_restore to hard_regs_saved after crossing
a call.  Also recompute n_regs_saved.  At the end of a basic block
we need only restore registers in hard_regs_need_restore.
(set_reg_live, clear_reg_live): Do the right thing for
hard_regs_need_restore and hard_regs_saved.
(restore_referenced_regs): Just return if X is a clobber.
Test hard_regs_need_restore to determine when to restore a hard
register from the save area.
(insert_save_restore): Now returns the number of extra registers
saved/restored.  New argument `maxrestore' which constrains how
many hard registers should be restored.  All callers changed.
Do stores of consecutive registers with double store insns if
possible.  Else do them with single word insns. Likewise for
loads, except constrained by maxrestore.  Set hard_regs_saved
and hard_regs_need_restore appropriately to minimize useless
saves into the save area.  Test against hard_regs_need_restore
when trying to restore multiple regs and similarly test against
hard_regs_saved when storing multiple regs.

From-SVN: r1964

32 years agoFix comment.
Richard Stallman [Wed, 26 Aug 1992 18:56:07 +0000 (18:56 +0000)]
Fix comment.

From-SVN: r1963

32 years agoAdd #ifdef INSN_SCHEDULING around variables only used by schedule_insns.
Jim Wilson [Wed, 26 Aug 1992 06:49:54 +0000 (23:49 -0700)]
Add #ifdef INSN_SCHEDULING around variables only used by schedule_insns.

Add #ifdef INSN_SCHEDULING around variables only used
by schedule_insns.
(INSN_QUEUE_SIZE): Delete default definition.

From-SVN: r1962

32 years agoPartially undo Mar 7 change.
Jim Wilson [Wed, 26 Aug 1992 06:30:34 +0000 (23:30 -0700)]
Partially undo Mar 7 change.

Partially undo Mar 7 change.  Only call
emit_library_call with no_queue == 1 for const functions.

From-SVN: r1961

32 years ago(expand_expr): For BIND_EXPR, call insert_block on the block.
Richard Stallman [Wed, 26 Aug 1992 06:05:46 +0000 (06:05 +0000)]
(expand_expr): For BIND_EXPR, call insert_block on the block.

From-SVN: r1960

32 years ago(fold): Avoid the normal STRIP_NOPS on arg of NOP_EXPR.
Richard Stallman [Wed, 26 Aug 1992 06:04:35 +0000 (06:04 +0000)]
(fold): Avoid the normal STRIP_NOPS on arg of NOP_EXPR.

From-SVN: r1959

32 years ago(poplevel): Store into BLOCK iff it is non-null.
Richard Stallman [Wed, 26 Aug 1992 06:03:24 +0000 (06:03 +0000)]
(poplevel): Store into BLOCK iff it is non-null.

(current_block): New function.
(struct binding_level): New field this_block.
(poplevel): Use this_block if nonzero, rather than making new BLOCK.
(insert_block, delete_block): New functions.

From-SVN: r1958

32 years ago(float*, fix*): Rewrite to match hardware...
Jim Wilson [Wed, 26 Aug 1992 03:24:03 +0000 (20:24 -0700)]
(float*, fix*): Rewrite to match hardware...

(float*, fix*): Rewrite to match hardware; take/put
integer input/output from/to fp register instead of memory or
general register.  Delete 6 now obsolete combiner patterns.

From-SVN: r1957

32 years ago(output_floatsisf2, output_floatsidf2, output_floatsitf2): Delete declarations.
Jim Wilson [Wed, 26 Aug 1992 03:23:24 +0000 (20:23 -0700)]
(output_floatsisf2, output_floatsidf2, output_floatsitf2): Delete declarations.

From-SVN: r1956

32 years ago(SF_MODES): Allow SImode in fp registers.
Jim Wilson [Wed, 26 Aug 1992 03:22:37 +0000 (20:22 -0700)]
(SF_MODES): Allow SImode in fp registers.

(output_floatsisf2, output_floatsidf2, output_floatsitf2): Delete.

From-SVN: r1955

32 years ago(INSN_QUEUE_SIZE): Add default definition.
Richard Stallman [Tue, 25 Aug 1992 21:36:10 +0000 (21:36 +0000)]
(INSN_QUEUE_SIZE): Add default definition.

From-SVN: r1954

32 years ago(do_pragma): Warn if `#pragma implementation "foo.h"' is
Richard Stallman [Tue, 25 Aug 1992 21:25:20 +0000 (21:25 +0000)]
(do_pragma): Warn if `#pragma implementation "foo.h"' is
invoked after "foo.h" has been included.

From-SVN: r1953

32 years ago(struct attr_desc): Add unsigned_p field.
Tom Wood [Tue, 25 Aug 1992 20:26:02 +0000 (20:26 +0000)]
(struct attr_desc): Add unsigned_p field.

(struct function_unit_op): Add issue_delay, conflict_exp, and
issue_exp fields.  Drop busyexp field.
(struct function_unit): Add needs_blockage_function,
needs_range_function, issue_delay, and max_blockage fields.  Drop
costexp, and busy delay fields.
(enum operator): Add POS_MINUS_OP, EQ_OP, MIN_OP, RANGE_OP.
(operate_exp): Implement new ops.
(make_internal_attr): Set unsigned_p based on the value of SPECIAL.
(write_attr_get): Function is unsigned when unsigned_p is true.
(write_attr_valueq): Write hex value of large constants in a comment.
(simplify_by_exploding): Check for EXP having no EQ_ATTR expressions
and for all values as the default.
(find_and_mark_used_attributes): Add TERMS and NTERMS parameters.
(max_attr_value): Allow IF_THEN_ELSE.
(simplify_knowing, write_complex_function, extend_range): New
functions.
(gen_unit): Use local variables to name the fields.  Change the
meaning of busy-delay to issue-delay.
(expand_units): Compute issue_exp.  Write attributes for computing
`<name>_unit_blockage' and `<name>_unit_blockage_range' functions.
Compute max_blockage, and the needs_*_function values.
(write_function_unit_info): Write blockage function and conflict cost
functions using write_complex_function.  Write new function_unit_desc
fields.
(expand_units): Use the normalized values of the
unit's CONDEXP and BUSYEXP.

From-SVN: r1952

32 years ago(schedule_block): Add a virtual cycle counter CLOCK.
Tom Wood [Tue, 25 Aug 1992 20:23:21 +0000 (20:23 +0000)]
(schedule_block): Add a virtual cycle counter CLOCK.

Pass CLOCK to schedule_insn.
Compute the tail in the scheduling loop, not before it.
Enable the stall code that advances the insn queue.
Select the insn to schedule and block others with schedule_select.
(adjust_priority): Renamed from launch_link.
(schedule_insn): Renamed from launch_links.
(insn_queue): Use INSN_QUEUE_SIZE.

(insn_units, insn_blockage, insn_tick, unit_last_insn,
unit_tick, unit_n_insns): New variables.
(schedule_insns): Allocate and initialize insn_tick, insn_units, and
insn_blockage.
(insn_unit, blockage_range, clear_units, prepare_unit, schedule_unit,
actual_hazard_this_instance, actual_hazard, potential_hazard,
schedule_select): New functions.
(schedule_block): Add dependencies to force insns to remain in order
at the end of a block rather than relying on having the scheduler
issue them in priority order.
(insn_cost): Add LINK and USED parameters.  All callers
changed.  Supply an ADJUST_COST interface.
(insn_cost): Make a dependence from a USE insn free.
(priority): Clear the link cost adjustment bits.

From-SVN: r1951

32 years ago(extend_range, init_range): New functions.
Tom Wood [Tue, 25 Aug 1992 20:22:38 +0000 (20:22 +0000)]
(extend_range, init_range): New functions.

(write_units): Add blockage_function, blockage_range_function,
max_blockage and max_issue_delay fields to struct function_unit_desc.
Drop max_busy_cost field.  Write #defines for min/max blockage,
issue delay, multiplicity, and simultaneity and for BLOCKAGE_BITS
and INSN_QUEUE_SIZE.
(main): Compute the new values.

From-SVN: r1950

32 years ago(LINK_COST_ZERO, LINK_COST_FREE): New macros.
Tom Wood [Tue, 25 Aug 1992 20:21:53 +0000 (20:21 +0000)]
(LINK_COST_ZERO, LINK_COST_FREE): New macros.

From-SVN: r1949

32 years ago(type attribute, movdi movdf insns): Add loadd.
Tom Wood [Tue, 25 Aug 1992 20:21:20 +0000 (20:21 +0000)]
(type attribute, movdi movdf insns): Add loadd.

(unit attribute): Delete.
(function units): Correct simultaneity values.  Break out
independent units.  Add conflict matrix for the 88100 load double.

From-SVN: r1948

32 years ago(define_function_unit): Change meaning to ISSUE-DELAY.
Tom Wood [Tue, 25 Aug 1992 20:20:57 +0000 (20:20 +0000)]
(define_function_unit): Change meaning to ISSUE-DELAY.

Merge FP_MUL, FP_DIV, and FP_SQRT into one function unit.

From-SVN: r1947

32 years ago(define_function_unit): Change meaning to ISSUE-DELAY.
Tom Wood [Tue, 25 Aug 1992 20:19:49 +0000 (20:19 +0000)]
(define_function_unit): Change meaning to ISSUE-DELAY.

From-SVN: r1946

32 years agoentered into RCS
Tom Wood [Tue, 25 Aug 1992 20:13:49 +0000 (20:13 +0000)]
entered into RCS

From-SVN: r1945

32 years ago(delete_computation): Derived from delete_jump.
Tom Wood [Tue, 25 Aug 1992 19:20:27 +0000 (19:20 +0000)]
(delete_computation): Derived from delete_jump.

(delete_jump): Use delete_computation.

From-SVN: r1944

32 years ago(final_scan_insn): If 2 consec line notes have same line num, can omit one.
Richard Stallman [Tue, 25 Aug 1992 17:43:28 +0000 (17:43 +0000)]
(final_scan_insn): If 2 consec line notes have same line num, can omit one.

From-SVN: r1943

32 years agoAdd %U to give last %u name.
Michael Meissner [Tue, 25 Aug 1992 17:40:04 +0000 (17:40 +0000)]
Add %U to give last %u name.

From-SVN: r1942

32 years agoChange MIPS fp to be at top of stack, instead of bottom; Fix calling mips-tfile with...
Michael Meissner [Tue, 25 Aug 1992 17:39:37 +0000 (17:39 +0000)]
Change MIPS fp to be at top of stack, instead of bottom; Fix calling mips-tfile with wrong .o file

From-SVN: r1941

32 years ago(process_command): Don't set verbose_flag if they make a
Richard Stallman [Tue, 25 Aug 1992 03:07:57 +0000 (03:07 +0000)]
(process_command): Don't set verbose_flag if they make a
typo (e.g., `-v-E'); only when it's exactly "-v".

From-SVN: r1940

32 years ago(build_unary_op): For ADDR_EXPR, just set TREE_CONSTANT
Richard Stallman [Mon, 24 Aug 1992 22:13:54 +0000 (22:13 +0000)]
(build_unary_op): For ADDR_EXPR, just set TREE_CONSTANT
if staticp, but don't clear TREE_CONSTANT.

From-SVN: r1939

32 years ago(subst): When moving operation inside IF_THEN_ELSE, make a new rtx
Richard Kenner [Mon, 24 Aug 1992 10:48:59 +0000 (06:48 -0400)]
(subst): When moving operation inside IF_THEN_ELSE, make a new rtx
instead of using SUBST due to sharing.

(simplify_comparison): Correct test for sign extension when trying to
widen comparison.

From-SVN: r1938

32 years ago(expand_end_bindings): Generation of NOTE_INSN_BLOCK_END
Richard Stallman [Mon, 24 Aug 1992 06:11:02 +0000 (06:11 +0000)]
(expand_end_bindings):  Generation of NOTE_INSN_BLOCK_END
moved down so that it occurs after call to `expand_cleanups'.

From-SVN: r1937

32 years agoDo not define strcmp=__builtin_strcmp if not -fbuiltin/-fno-builtin
Michael Meissner [Sun, 23 Aug 1992 20:37:12 +0000 (20:37 +0000)]
Do not define strcmp=__builtin_strcmp if not -fbuiltin/-fno-builtin

From-SVN: r1936

32 years ago(__builtin_new): Cast the result of malloc.
Richard Stallman [Sun, 23 Aug 1992 07:20:15 +0000 (07:20 +0000)]
(__builtin_new): Cast the result of malloc.

From-SVN: r1935

32 years agoFix typo in prev change.
Richard Stallman [Sun, 23 Aug 1992 06:09:33 +0000 (06:09 +0000)]
Fix typo in prev change.

From-SVN: r1934

32 years ago(insn_emit_once): Provide a zero constant for CC modes.
Tom Wood [Sat, 22 Aug 1992 10:44:25 +0000 (10:44 +0000)]
(insn_emit_once): Provide a zero constant for CC modes.

From-SVN: r1933

32 years ago(expand_binop): If, e.g., mulqi3 doesn't exist, try mulqihi3.
Richard Kenner [Fri, 21 Aug 1992 23:21:30 +0000 (19:21 -0400)]
(expand_binop): If, e.g., mulqi3 doesn't exist, try mulqihi3.

From-SVN: r1932

32 years agoreorg.c (fill_simple_delay_slots): Always try to fill empty delay slots with insns...
Jeff Law [Fri, 21 Aug 1992 22:33:02 +0000 (16:33 -0600)]
reorg.c (fill_simple_delay_slots): Always try to fill empty delay slots with insns from beyond the delay insn...

* reorg.c (fill_simple_delay_slots): Always try to fill empty
delay slots with insns from beyond the delay insn, even if
optimize_skip was attempted.
(fill_simple_delay_slots): When filling with insns from after the
delay insn, make sure to always account for sets and references
in the delay insn.

From-SVN: r1931

32 years ago(print_operand): Use output_operand_error for unknown code.
Richard Stallman [Fri, 21 Aug 1992 21:46:41 +0000 (21:46 +0000)]
(print_operand): Use output_operand_error for unknown code.

From-SVN: r1930

32 years ago(build_conditional_expr):
Richard Stallman [Fri, 21 Aug 1992 20:48:11 +0000 (20:48 +0000)]
(build_conditional_expr):

Use TREE_READONLY and TREE_THIS_VOLATILE, not TYPE_...

From-SVN: r1929

32 years ago(find_dummy_reload): Restore original RTX instead of passed IN rtx.
Richard Stallman [Fri, 21 Aug 1992 17:40:27 +0000 (17:40 +0000)]
(find_dummy_reload): Restore original RTX instead of passed IN rtx.

From-SVN: r1928

32 years ago(bcopy, bzero, bcmp): Remove #if VMS code--always use inline C loops.
Richard Stallman [Fri, 21 Aug 1992 17:38:33 +0000 (17:38 +0000)]
(bcopy, bzero, bcmp): Remove #if VMS code--always use inline C loops.

From-SVN: r1927

32 years ago(subst): Move up test for too many restarts.
Richard Kenner [Fri, 21 Aug 1992 11:52:57 +0000 (07:52 -0400)]
(subst): Move up test for too many restarts.

If we restart, clear OP0_MODE since we don't know it.

From-SVN: r1926

32 years ago(FUNCTION_ARG): Don't make an EXPR_LIST if making a libcall.
Richard Kenner [Fri, 21 Aug 1992 11:52:12 +0000 (07:52 -0400)]
(FUNCTION_ARG): Don't make an EXPR_LIST if making a libcall.

From-SVN: r1925

32 years ago(CC,CFLAGS,LIBS): Add commented command
Richard Stallman [Fri, 21 Aug 1992 06:27:19 +0000 (06:27 +0000)]
(CC,CFLAGS,LIBS): Add commented command
variants for bootstrapping gcc-cpp and gcc-cc1 with VAXC.

From-SVN: r1924

32 years ago(CC,CFLAGS,LIBS): Add commented command variants for bootstrapping gcc-cpp and gcc...
Richard Stallman [Fri, 21 Aug 1992 06:26:49 +0000 (06:26 +0000)]
(CC,CFLAGS,LIBS): Add commented command variants for bootstrapping gcc-cpp and gcc-cc1 with VAXC.

(CC,CFLAGS,LIBS): Add commented command
variants for bootstrapping gcc-cpp and gcc-cc1 with VAXC.
(alloca): Build alloca.obj from alloca.c if LIBS needs it.

From-SVN: r1923

32 years ago(emit_insns_after): New function.
Richard Stallman [Fri, 21 Aug 1992 06:12:24 +0000 (06:12 +0000)]
(emit_insns_after): New function.

From-SVN: r1922

32 years ago(parser_build_binary_op): Replace the assignment of CLASS.
Richard Stallman [Fri, 21 Aug 1992 06:05:17 +0000 (06:05 +0000)]
(parser_build_binary_op): Replace the assignment of CLASS.

For Z<Y<Z warning, test class of CODE; don't use TREE_CODE (result).

From-SVN: r1921

32 years agopa.md (call_value+1): For non-dynamic calls...
Jeff Law [Fri, 21 Aug 1992 05:57:31 +0000 (23:57 -0600)]
pa.md (call_value+1): For non-dynamic calls...

* pa.md (call_value+1): For non-dynamic calls, use the "call"
attribute, set length to 1, and fix output template to work
properly with delay slots.

* pa.md (address and use_call_clobbered attributes): Deleted,
these attributes are useless.  All references deleted.
(call define delay): Use "in_branch_delay" as the condition since
"call" delay slots and unconditional "branch" delay slots allow the
same type of insns.
(in_call_delay conditional): Deleted.
(branch define delay): Do not define an annul-if-true delay slot.
It is useless for an unconditional branch.
(all delay branch conditionals): Make sure "call", "dyncall", "multi",
and "milli" insns are explicitly disallowed in delay slots.

From-SVN: r1920

32 years agopa.c (output_mul_insn): Delete nop after branch in template...
Jeff Law [Fri, 21 Aug 1992 05:52:28 +0000 (23:52 -0600)]
pa.c (output_mul_insn): Delete nop after branch in template...

* pa.c (output_mul_insn): Delete nop after branch in template,
conditionally emit a nop if the delay slot was not filled. (via %#)

* pa.c (output_function_prologue): Handle profiling in a function
without a frame pointer.

From-SVN: r1919

32 years ago(__INT_VARARGS_H): Define this to avoid trouble on DG/UX.
Tom Wood [Thu, 20 Aug 1992 23:17:53 +0000 (23:17 +0000)]
(__INT_VARARGS_H): Define this to avoid trouble on DG/UX.

From-SVN: r1918

32 years agoMove include of stdio.h before output.h.
Richard Stallman [Thu, 20 Aug 1992 20:18:38 +0000 (20:18 +0000)]
Move include of stdio.h before output.h.

From-SVN: r1917

32 years agoCompare enums (preds.
Richard Stallman [Thu, 20 Aug 1992 19:35:52 +0000 (19:35 +0000)]
Compare enums (preds.

Compare enums (preds. codes, mem_mode)
explicitly to 0 in conditionals to work-around a VAXC bug that
disallows enum as arguments to && and || operators.

From-SVN: r1916

32 years ago(decl of create_definition): Move forward declaration past the definition of struct...
Richard Stallman [Thu, 20 Aug 1992 19:34:20 +0000 (19:34 +0000)]
(decl of create_definition): Move forward declaration past the definition of struct macrodef.

(decl of create_definition): Move forward declaration
past the definition of struct macrodef.
(VMS_strncat): New function.

From-SVN: r1915

32 years ago(not_qsort): New function.
Richard Stallman [Thu, 20 Aug 1992 19:33:41 +0000 (19:33 +0000)]
(not_qsort): New function.

From-SVN: r1914

32 years agoInitial revision
Richard Stallman [Thu, 20 Aug 1992 19:33:20 +0000 (19:33 +0000)]
Initial revision

From-SVN: r1913

32 years ago(environ): Make declaration conditional.
Richard Stallman [Thu, 20 Aug 1992 19:32:37 +0000 (19:32 +0000)]
(environ): Make declaration conditional.

(main: -g debugging setup): Get rid of \ in #if condition.

From-SVN: r1912

32 years agoInitial revision
Richard Stallman [Thu, 20 Aug 1992 18:49:22 +0000 (18:49 +0000)]
Initial revision

From-SVN: r1911

32 years ago(init_expr_once): Set direct_load and direct_store if SOME hard register can be loade...
Richard Kenner [Thu, 20 Aug 1992 12:36:23 +0000 (08:36 -0400)]
(init_expr_once): Set direct_load and direct_store if SOME hard register can be loaded or stored...

(init_expr_once): Set direct_load and direct_store if SOME hard
register can be loaded or stored; not just if the first one we pick
can be.

From-SVN: r1910

32 years agoFix typo.
Richard Kenner [Thu, 20 Aug 1992 11:24:17 +0000 (07:24 -0400)]
Fix typo.

From-SVN: r1909

32 years ago({load,store}_multiple): Use MATCH_PAR_DUP instead of MATCH_PARALLEL.
Richard Kenner [Thu, 20 Aug 1992 11:22:26 +0000 (07:22 -0400)]
({load,store}_multiple): Use MATCH_PAR_DUP instead of MATCH_PARALLEL.

From-SVN: r1908

32 years ago(load_multiple): Operand 2 should be a MATCH_OPERAND.
Richard Kenner [Thu, 20 Aug 1992 11:08:00 +0000 (07:08 -0400)]
(load_multiple): Operand 2 should be a MATCH_OPERAND.

(store_multiple_{,no_}bug): Likewise.

From-SVN: r1907

32 years ago(mark_set_resources): Fix two bugs in last change.
Richard Kenner [Thu, 20 Aug 1992 10:05:53 +0000 (06:05 -0400)]
(mark_set_resources): Fix two bugs in last change.

From-SVN: r1906

32 years agoPut include of stdio.h after GCC header files (for i860-stardent-sysv4).
Richard Kenner [Thu, 20 Aug 1992 09:58:18 +0000 (05:58 -0400)]
Put include of stdio.h after GCC header files (for i860-stardent-sysv4).

From-SVN: r1905

32 years ago(mulsi3): Use emit_insn on results of gen fcns. Return with DONE.
Richard Stallman [Thu, 20 Aug 1992 04:53:06 +0000 (04:53 +0000)]
(mulsi3): Use emit_insn on results of gen fcns.  Return with DONE.

From-SVN: r1904

32 years ago(subst, case AND): Only make IF_THEN_ELSE if conditional moves exist.
Richard Kenner [Thu, 20 Aug 1992 01:33:19 +0000 (21:33 -0400)]
(subst, case AND): Only make IF_THEN_ELSE if conditional moves exist.

From-SVN: r1903

32 years ago(have_cmove_flag): New variable.
Richard Kenner [Thu, 20 Aug 1992 01:32:51 +0000 (21:32 -0400)]
(have_cmove_flag): New variable.

(walk_insn_part): Add new parm NON_PC_SET_SRC; all callers changed.
Look for IF_THEN_ELSE in a SET_SRC that isn't setting PC and set
have_cmove_flag if so.
(main): Define HAVE_conditional_move if have_cmove_flag is non-zero.

From-SVN: r1902

32 years ago(finclude): Increment indepth before calling
Jim Wilson [Thu, 20 Aug 1992 01:06:05 +0000 (18:06 -0700)]
(finclude): Increment indepth before calling
trigraph_pcp, so that warning uses the correct file name.

From-SVN: r1901

32 years ago(find_comparison_args): Look for comparison operations if the second arg is 0 in...
Richard Kenner [Wed, 19 Aug 1992 22:19:34 +0000 (18:19 -0400)]
(find_comparison_args): Look for comparison operations if the second arg is 0 in any mode.

(find_comparison_args): Look for comparison operations if the second arg is
0 in any mode.
(record_jump_cond): Don't make classes equivalent for floating-point equality
comparison.

From-SVN: r1900

32 years ago(alloc_qty_for_scratch, block_alloc): Provide alternate code in some cases when REGIS...
Richard Kenner [Wed, 19 Aug 1992 21:06:37 +0000 (17:06 -0400)]
(alloc_qty_for_scratch, block_alloc): Provide alternate code in some cases when REGISTER_CONSTRAINTS is not defined.

(alloc_qty_for_scratch, block_alloc): Provide alternate code in some cases
when REGISTER_CONSTRAINTS is not defined.
(requires_inout_p): Only used when REGISTER_CONSTRAINTS is defined.

From-SVN: r1899

32 years ago(mark_set_resources): Add new parm IN_DEST; add callers changed.
Richard Kenner [Wed, 19 Aug 1992 19:05:52 +0000 (15:05 -0400)]
(mark_set_resources): Add new parm IN_DEST; add callers changed.

Rework to scan an entire insn to look for auto-inc operations.

From-SVN: r1898

32 years ago(copy_loop_body): Add missing declaration of EXIT_LABEL parameter.
Richard Kenner [Wed, 19 Aug 1992 17:37:07 +0000 (13:37 -0400)]
(copy_loop_body): Add missing declaration of EXIT_LABEL parameter.

From-SVN: r1897

32 years ago(instantiate_decl): New function.
Richard Kenner [Wed, 19 Aug 1992 12:48:39 +0000 (08:48 -0400)]
(instantiate_decl): New function.

(instantiate_decls{,_1}): Call it.

From-SVN: r1896

32 years agoCorrectly apply last change.
Richard Kenner [Wed, 19 Aug 1992 11:32:24 +0000 (07:32 -0400)]
Correctly apply last change.

From-SVN: r1895

32 years ago(simplify_comparison): Add a few more cases where we can do the
Richard Kenner [Wed, 19 Aug 1992 11:07:22 +0000 (07:07 -0400)]
(simplify_comparison): Add a few more cases where we can do the
comparison in a wider mode.

(distribute_notes, REG_EQUAL): Don't put back a note with a
non-constant expression since it may no longer be valid.

From-SVN: r1894

32 years agoexpr.c (expand_expr): The first expansion of a TARGET_EXPR is marked by DECL_RTL...
Mike Stump [Wed, 19 Aug 1992 06:17:27 +0000 (06:17 +0000)]
expr.c (expand_expr): The first expansion of a TARGET_EXPR is marked by DECL_RTL (slot) being filled...

        * expr.c (expand_expr): The first expansion of a TARGET_EXPR
        is marked by DECL_RTL (slot) being filled in AND TREE_OPERAND
        (exp, 1) being wiped-out with a NULL_TREE, not just the
        DECL_RTL (slot) being filled in.

From-SVN: r1893

32 years ago(build_selector_translation_table): NULL-terminate the selector list.
Richard Stallman [Wed, 19 Aug 1992 02:49:35 +0000 (02:49 +0000)]
(build_selector_translation_table): NULL-terminate the selector list.

(build_selector_translation_table): NULL-terminate the
selector list.  Mark _OBJC_SELECTOR_REFERENCES_decl as static, not extern.

From-SVN: r1892

32 years ago* xcoffout.c (assign_type_number): Skip decls with no name.
Mike Stump [Wed, 19 Aug 1992 01:37:50 +0000 (01:37 +0000)]
* xcoffout.c (assign_type_number):  Skip decls with no name.

From-SVN: r1891

32 years agoexpr.c (expand_expr): When expanding TARGET_EXPRs...
Mike Stump [Wed, 19 Aug 1992 01:33:35 +0000 (01:33 +0000)]
expr.c (expand_expr): When expanding TARGET_EXPRs...

        * expr.c (expand_expr): When expanding TARGET_EXPRs, make sure
        that they are only expanded once, after the first expansion,
        the rtl can be used without further expansions.

From-SVN: r1890

32 years ago(expand_return): Call emit_queue in ignore-the-value case.
Richard Stallman [Tue, 18 Aug 1992 21:13:10 +0000 (21:13 +0000)]
(expand_return): Call emit_queue in ignore-the-value case.

(expand_end_bindings): Check DECL_IN_SYSTEM_HEADER for unused warnings.

From-SVN: r1889

32 years ago(X_CFLAGS): Defined.
Richard Stallman [Tue, 18 Aug 1992 20:25:54 +0000 (20:25 +0000)]
(X_CFLAGS): Defined.

From-SVN: r1888

32 years ago(HOST_WIDE_INT): Copy definition from machmode.h.
Tom Wood [Tue, 18 Aug 1992 19:44:21 +0000 (19:44 +0000)]
(HOST_WIDE_INT): Copy definition from machmode.h.

From-SVN: r1887

32 years ago(simplify_comparison): Rearrange conditional in SUBREG case.
Richard Stallman [Tue, 18 Aug 1992 16:59:12 +0000 (16:59 +0000)]
(simplify_comparison): Rearrange conditional in SUBREG case.

From-SVN: r1886

32 years ago(sed marker): Use the order {target, host, cross-make}.
Tom Wood [Tue, 18 Aug 1992 10:51:20 +0000 (10:51 +0000)]
(sed marker): Use the order {target, host, cross-make}.

From-SVN: r1885

32 years agoSaving a working version before release.
Dennis Glatting [Tue, 18 Aug 1992 04:46:58 +0000 (21:46 -0700)]
Saving a working version before release.

From-SVN: r1884

32 years ago(ansi_compat.h): Replace this with an empty file.
Richard Stallman [Tue, 18 Aug 1992 04:19:17 +0000 (04:19 +0000)]
(ansi_compat.h): Replace this with an empty file.

From-SVN: r1883

32 years ago(movstrsi1): Renamed from movstrsi.
Richard Stallman [Tue, 18 Aug 1992 04:18:46 +0000 (04:18 +0000)]
(movstrsi1): Renamed from movstrsi.

(movstrsi): New define_expand.

From-SVN: r1882

32 years ago(pcfinclude): Use HOST_WIDE_INT for rounding a pointer.
Richard Stallman [Tue, 18 Aug 1992 04:15:46 +0000 (04:15 +0000)]
(pcfinclude): Use HOST_WIDE_INT for rounding a pointer.

From-SVN: r1881

32 years agoFix typo in last change.
Richard Stallman [Tue, 18 Aug 1992 02:55:50 +0000 (02:55 +0000)]
Fix typo in last change.

From-SVN: r1880

32 years ago(digest_init): Test TREE_TYPE (inside_init) is
Richard Stallman [Tue, 18 Aug 1992 02:55:07 +0000 (02:55 +0000)]
(digest_init): Test TREE_TYPE (inside_init) is
nonzero before testing anything else about it.

From-SVN: r1879

32 years ago(do_include): If search_start is NULL, complain that we had nowhere to look.
Richard Stallman [Tue, 18 Aug 1992 02:03:55 +0000 (02:03 +0000)]
(do_include): If search_start is NULL, complain that we had nowhere to look.

From-SVN: r1878

32 years ago(i960_address_cost): Don't abort for invalid addresses.
Jim Wilson [Mon, 17 Aug 1992 18:55:48 +0000 (11:55 -0700)]
(i960_address_cost): Don't abort for invalid addresses.

From-SVN: r1877

32 years ago(assign_parms): When copy arg passed by invisible
Jim Wilson [Mon, 17 Aug 1992 18:53:26 +0000 (11:53 -0700)]
(assign_parms):  When copy arg passed by invisible
reference to pseudo reg, don't use nominal_mode.

From-SVN: r1876

32 years ago(digest_init): Use TYPE_MAIN_VARIANT comparing type of inside_init.
Richard Stallman [Mon, 17 Aug 1992 18:31:29 +0000 (18:31 +0000)]
(digest_init): Use TYPE_MAIN_VARIANT comparing type of inside_init.

(process_init_constructor): Warn about partly bracketed initializers.

From-SVN: r1875

32 years agoAdd missing return; delete unused vars & static functions.
Michael Meissner [Mon, 17 Aug 1992 17:45:19 +0000 (17:45 +0000)]
Add missing return; delete unused vars & static functions.

From-SVN: r1874

32 years ago(expand_expr, case COMPONENT_REF): Don't actually do extraction from
Richard Kenner [Mon, 17 Aug 1992 11:37:25 +0000 (07:37 -0400)]
(expand_expr, case COMPONENT_REF): Don't actually do extraction from
memory if we want address.

(emit_block_move): Fix problems in last change.

From-SVN: r1873

32 years ago(jump_optimize): Allow SUBREG in many places where REG is allowed.
Richard Kenner [Mon, 17 Aug 1992 11:36:39 +0000 (07:36 -0400)]
(jump_optimize): Allow SUBREG in many places where REG is allowed.

From-SVN: r1872

32 years ago(fold): Move conversion back outside of COND_EXPR if moving it inside
Richard Kenner [Mon, 17 Aug 1992 11:36:10 +0000 (07:36 -0400)]
(fold): Move conversion back outside of COND_EXPR if moving it inside
didn't help anything.

(div_and_round_double): Change some more ints to HOST_WIDE_INTs.

From-SVN: r1871

32 years ago(struct undo, struct undo_int): Replace non-portable usage with some unions.
Richard Kenner [Mon, 17 Aug 1992 11:35:04 +0000 (07:35 -0400)]
(struct undo, struct undo_int): Replace non-portable usage with some unions.

(SUBST, SUBST_INT, undo_all, gen_rtx_combine): Make consistent with
new definitions.

From-SVN: r1870

32 years ago(expand_mult): Bound second synth_mult cost by cost of algorithm from
Richard Kenner [Mon, 17 Aug 1992 11:34:23 +0000 (07:34 -0400)]
(expand_mult): Bound second synth_mult cost by cost of algorithm from
first call.

(expand_divmod): When doing logical operations, the size of
COMPUTE_MODE should be used, not MODE.

From-SVN: r1869