* bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
not a HOST_WIDE_INT.
* calls.c (expand_call): Change test of expand_inline_function
return value to stop compiler warning.
* genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
From-SVN: r17777
* rtl.c (read_rtx): Use atol/atoq based upon disposition of
HOST_WIDE_INT.
* genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
as needed.
* genemit.c (gen_exp): Likewise.
* genpeep.c (match_rtx): Likewise.
* genrecog.c (write_tree_1): Likewise.
* c-lex.c (yyprint): Use proper format string based upon
disposition of HOST_BITS_PER_WIDE_INT.
(yylex): Put casts in right place for args to build_int_2.
* combine.c: Fix typos in Jan27 changes.
From-SVN: r17544
* genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
RLIMIT_STACK. This maintains consistency with the recent, similar
patch to cccp.c and toplev.c.
From-SVN: r17218
* genattrtab.c (expand_units): For large nr opclasses, expand
function_units_used with ORX to prevent blowups. Tag with FFS.
(num_unit_opclasses): New variable.
(gen_unit): Update it.
(enum operator): Add ORX_OP.
(operate_exp): Treat ORX as or, except don't expand across an if.
Reuse number rtx's after operating on them.
(check_attr_value): Accept IOR, AND, & FFS.
(write_test_expr): Transmute `in_comparison' to `flags'. Allow
for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
(write_expr_attr_cache, write_toplevel_expr): New functions.
(write_attr_get): Handle FFS-tagged expressions.
(make_canonical): Don't expand const attributes.
(convert_const_symbol_ref): Dike out.
(evaluate_eq_attr): Handle SYMBOL_REF.
(main): Don't emit get_attr_foo for const attributes.
* alpha.c (override_options): Reinstate PROCESSOR_EV6.
(alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
* alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
* alpha.md: Redo all of the scheduling, adding EV6 support, and
combining function units where possible.
(attr "type"): Split loads, stores, cmov into int/fp. Combine
multiplies and divides. Add EV6 sqrt, ftoi, itof.
(attr "opsize"): New attribute.
(sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
(movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
to control register allocation.
(movsi2-1, movdi2-1): Likewise.
From-SVN: r17212
* rtl.h (global_rtl): New variable, replacing separate variables for
commonly used rtl.
(const_int_rtx): Now array of rtx_def, not rtx.
* emit-rtl.c: Update for new rtl data structures.
* genattrtab.c: Define global_rtl.
From-SVN: r17049
* jump.c (jmp_uses_reg_or_mem): Deleted unused function.
(find_basic_blocks): Use computed_jump_p to determine if a
particular JUMP_INSN is a computed jump.
* reg-stack.c (find_blocks): Use computed_jump_p to determine
if a particular JUMP_INSN is a computed jump.
* rtlanal.c (jmp_uses_reg_or_mem): New function.
(computed_jump_p): Likewise.
* rtl.h (computed_jump_p): Declare.
* genattrtab.c (pc_rtx): Define and initialize.
* loop.c (loop_optimize): Always determine if the current
function has a computed jump.
(indirect_jump_in_function_p): Use computed_jump_p to determine
if a particular JUMP_INSN is a computed jump.
General (and haifa) cleanups.
From-SVN: r15615
* sparc/sparc.c (label_ref_operand): New function.
(emit_move_sequence): Pass label_ref to gen_move_label_di to not
lose flags.
* sparc/sparc.md (move_label_di): Operand one is label_ref now.
* genattrtab.c (write_test_expr): Allow label_ref in match_dup.
From-SVN: r12643
(write_test_expr, case MATCH_DUP): Use operands[N] instead of
JUMP_LABEL (which may not be set).
(walk_attr_value, case MATCH_DUP): Set must_extract.
From-SVN: r9640
(expand_units): When calculate BLOCKAGE, reverse
terms to POS_MINUS_OP. Clarify comment before BLOCKAGE computation.
(write_complex_function): Use EXECUTING_INSN for first switch, and
CANDIDATE_INSN for second switch.
From-SVN: r6442
(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
unmark_used_attributes, add_values_to_cover, increment_current_value,
test_for_current_value, simplify_with_current_value,
simplify_with_current_value_aux): New functions.
(struct function_unit): Add max_busy_cost, {min,max}_busy_delay.
(expand_units): Use simplify_by_exploding to simplify the
function_units_used attribute. Compute the ready cost attributes
as a COND in numeric order.
(gen_unit): Compute {min,max}_ready_cost and {min,max}_busy_delay.
(write_function_unit_info): Determine if there is only one busy
delay value by comparing the minimum and maximum busy delay.
Write the initializer for function_units in numeric order.
Write out the maximum busy delay field.
(attr_desc): Add negative_ok field.
(find_attr, make_internal_attr): Initialize negative_ok.
(check_attr_value): Allow negative values for CONST_STRING for
numeric attributes with negative_ok.
(encode_units_mask): Change the encoding of the function_units_used
result.
{....
From-SVN: r1848