2000-08-16 23:17:40 +02:00
|
|
|
|
2000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
|
|
|
|
|
|
|
|
|
* config/sh/lib1funcs.asm (GLOBAL): Define. Use for all
|
|
|
|
|
references to GLOBAL symbols. Use LOCAL where appropriate.
|
|
|
|
|
|
2000-08-16 19:10:21 +02:00
|
|
|
|
2000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always
|
|
|
|
|
use t-aix41 when host == target.
|
|
|
|
|
|
2000-08-16 18:53:02 +02:00
|
|
|
|
2000-08-16 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* reload.c (push_secondary_reload): Revert last change.
|
|
|
|
|
If we use a reload_in/out pattern, make the when the same
|
|
|
|
|
as the primary reload.
|
|
|
|
|
(find_reloads): Likewise.
|
|
|
|
|
|
2000-08-16 18:25:19 +02:00
|
|
|
|
2000-08-16 Manfred Hollstein <manfredh@redhat.com>
|
|
|
|
|
|
|
|
|
|
* configure.in (libstdcxx-v3): Fix test.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2000-08-16 13:59:03 +02:00
|
|
|
|
Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
|
|
|
|
|
|
|
|
|
* calls.c (calls_function_1, expand_call): Only test
|
|
|
|
|
TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
|
|
|
|
|
* function.c (thread_prologue_and_epilogue_insns): Likewise.
|
|
|
|
|
|
2000-08-16 09:56:04 +02:00
|
|
|
|
2000-08-16 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* combine.c (simplify_shift_const): Revert previous two
|
|
|
|
|
changes. If SHIFT_COUNT_TRUNCATED, crop the shift count
|
|
|
|
|
before the main loop.
|
|
|
|
|
|
2000-08-16 08:22:20 +02:00
|
|
|
|
2000-08-15 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* combine.c (simplify_shift_const): Bound shift count when
|
|
|
|
|
combining shifts.
|
|
|
|
|
|
2000-08-15 23:39:26 +02:00
|
|
|
|
Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
|
|
|
|
|
2000-08-16 03:15:37 +02:00
|
|
|
|
* calls.c (ECF_SP_DEPRESSED): New macro.
|
|
|
|
|
(calls_function_1): Treat calling sp-depressed function as alloca.
|
|
|
|
|
(emit_call_1): Don't adjust SP if calling sp-depressed function.
|
|
|
|
|
(expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED.
|
|
|
|
|
If sp-depressed, ensure block saves and restores SP.
|
|
|
|
|
* fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE
|
|
|
|
|
for INTEGER_TYPE.
|
|
|
|
|
* function.c (keep_stack_depressed): New function.
|
|
|
|
|
(thread_prologue_and_epilogue_insns): Call it.
|
|
|
|
|
* print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED
|
|
|
|
|
to print DECL_OFFSET_ALIGN.
|
|
|
|
|
Print no-force-blk and transparent-union flags properly.
|
|
|
|
|
* stmt.c (expand_goto_internal): Don't restore stack if last block
|
|
|
|
|
and function returns with sp depressed.
|
|
|
|
|
(fixup_gotos): Likewise.
|
|
|
|
|
(save_stack_pointer): New function, from code in expand_decl.
|
|
|
|
|
(expand_decl): Call new function.
|
|
|
|
|
* tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK.
|
|
|
|
|
(TYPE_RETURNS_STACK_DEPRESSED): New macro.
|
|
|
|
|
(save_stack_pointer): New declaration.
|
|
|
|
|
|
2000-08-15 23:39:26 +02:00
|
|
|
|
* diagnostic.c (fatal_function): New variable.
|
|
|
|
|
(set_fatal_function): New function.
|
|
|
|
|
(fatal): Call it.
|
|
|
|
|
* diagnostic.h (set_fatal_function): New declaration.
|
|
|
|
|
|
2000-08-15 22:50:39 +02:00
|
|
|
|
2000-08-15 William Cohen <wcohen@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined.
|
|
|
|
|
(PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info.
|
|
|
|
|
(DWARF2_ASM_LINE_DEBUG_INFO): Defined.
|
|
|
|
|
|
2000-08-15 19:31:29 +02:00
|
|
|
|
2000-08-15 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* flow.c (mark_used_reg): Set reg_cond_reg appropriately.
|
|
|
|
|
|
2000-08-15 17:14:06 +02:00
|
|
|
|
2000-08-15 Richard Earnshaw <rearnsha@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm.c (arm_function_ok_for_sibcall): New function.
|
|
|
|
|
* arm.h (FUNCTION_OK_FOR_SIBCALL): Define.
|
|
|
|
|
* arm.md (call expanders): Don't check here for calls that can't
|
|
|
|
|
be sibling calls.
|
|
|
|
|
|
2000-08-15 16:59:37 +02:00
|
|
|
|
2000-08-15 Richard Earnshaw <rearnsha@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm.md (splits generating cond_exec): Disable.
|
|
|
|
|
|
2000-08-15 16:23:33 +02:00
|
|
|
|
2000-08-15 Richard Earnshaw <rearnsha@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm/linux-elf.h (text_section): Delete declaration.
|
|
|
|
|
|
ARM support for unordered FP operations.
* arm-protos.h (arm_comparison_operator): Declare.
* arm.c (arm_comparison_operator): New function.
(arm_select_cc_mode): Add unordered comparison codes.
(get_arm_condition_code): Likewise.
(arm_final_prescan_insn): Can't handle unordered jumps that can't
be done in one insn.
* arm.h (PREDICATE_CODES): Add arm_comparison_operator.
* arm.md (all uses of comparison_operator): Replace with
arm_comparison_operator.
(bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New
expands.
(arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New
patterns.
[[Split portion of a mixed commit.]]
From-SVN: r35703.2
2000-08-15 15:32:11 +02:00
|
|
|
|
2000-08-15 Richard Earnshaw <rearnsha@arm.com>
|
|
|
|
|
|
|
|
|
|
ARM support for unordered FP operations.
|
|
|
|
|
* arm-protos.h (arm_comparison_operator): Declare.
|
|
|
|
|
* arm.c (arm_comparison_operator): New function.
|
|
|
|
|
(arm_select_cc_mode): Add unordered comparison codes.
|
|
|
|
|
(get_arm_condition_code): Likewise.
|
|
|
|
|
(arm_final_prescan_insn): Can't handle unordered jumps that can't
|
|
|
|
|
be done in one insn.
|
|
|
|
|
* arm.h (PREDICATE_CODES): Add arm_comparison_operator.
|
|
|
|
|
* arm.md (all uses of comparison_operator): Replace with
|
|
|
|
|
arm_comparison_operator.
|
|
|
|
|
(bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New
|
|
|
|
|
expands.
|
|
|
|
|
(arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New
|
|
|
|
|
patterns.
|
|
|
|
|
|
2000-08-15 09:40:55 +02:00
|
|
|
|
Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
|
|
|
|
|
|
|
|
|
|
* gthr-posix.h: Conditionally include <sched.h>; include
|
|
|
|
|
<config.h> from libobjc/.
|
|
|
|
|
|
2000-08-15 03:01:37 +02:00
|
|
|
|
2000-08-14 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/i386/i386.c (legitimize_pic_address): Use Pmode
|
|
|
|
|
for all CONSTs.
|
|
|
|
|
|
configure.in (ia64-*): Set float_format for i386 long double.
* configure.in (ia64-*): Set float_format for i386 long double.
* real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT
as we would for i386 XFmode.
(PUT_REAL): Likewise.
(endian, ereal_atof, real_value_truncate): Likewise.
(ereal_isneg, toe64, etens, make_nan): Likewise.
* real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise.
* config/ia64/ia64-protos.h: Update.
* config/ia64/ia64.c (general_tfmode_operand): New.
(destination_tfmode_operand): New.
(tfreg_or_fp01_operand): New.
(ia64_split_timode): New.
(spill_tfmode_operand): New.
(ia64_expand_prologue): Use TFmode not XFmode.
(ia64_expand_epilogue): Likewise.
(ia64_function_arg): Likewise.
(ia64_function_arg_advance): Likewise.
(ia64_return_in_memory): Likewise.
(ia64_function_value): Likewise.
(ia64_print_operand): Likewise.
(ia64_register_move_cost): Set GR<->FR to 5.
(ia64_secondary_reload_class): Get GR for TImode memory op.
* config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove.
(ROUND_TYPE_ALIGN): Remove.
(LONG_DOUBLE_TYPE_SIZE): Set to 128.
(INTEL_EXTENDED_IEEE_FORMAT): Define.
(HARD_REGNO_NREGS): Use TFmode, not XFmode.
(HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs.
(MODES_TIEABLE_P): Use TFmode, not XFmode.
(CLASS_MAX_NREGS): Likewise.
(ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks.
(PREDICATE_CODES): Update.
* config/ia64/ia64.md (movti): New.
(movti_internal): Use a clobber for memory alternatives.
(reload_inti, reload_outti): New.
(movsfcc_astep): Predicate properly.
(movdfcc_astep): Likewise.
(movxf): Remove.
(movtf): New.
(extendsftf2, extenddftf2): New.
(trunctfsf2, trunctfdf2): New.
(floatditf2, fix_trunctfdi2): New.
(floatunsditf2, fixuns_trunctfdi2): New.
(addtf3, subtf3, multf3, abstf2): New.
(negtf2, nabstf2, mintf3, maxtf3): New.
(maddtf3, msubtf3, nmultf3, nmaddtf3): New.
(cmptf): New.
(fr_spill): Use TFmode, not XFmode.
(fr_restore): Likewise.
* config/ia64/lib1funcs.asm (__divtf3): New.
* config/ia64/t-ia64 (LIB1ASMFUNCS): Add it.
From-SVN: r35689
2000-08-14 23:01:24 +02:00
|
|
|
|
2000-08-14 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* configure.in (ia64-*): Set float_format for i386 long double.
|
|
|
|
|
|
|
|
|
|
* real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT
|
|
|
|
|
as we would for i386 XFmode.
|
|
|
|
|
(PUT_REAL): Likewise.
|
|
|
|
|
(endian, ereal_atof, real_value_truncate): Likewise.
|
|
|
|
|
(ereal_isneg, toe64, etens, make_nan): Likewise.
|
|
|
|
|
* real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise.
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64-protos.h: Update.
|
|
|
|
|
* config/ia64/ia64.c (general_tfmode_operand): New.
|
|
|
|
|
(destination_tfmode_operand): New.
|
|
|
|
|
(tfreg_or_fp01_operand): New.
|
|
|
|
|
(ia64_split_timode): New.
|
|
|
|
|
(spill_tfmode_operand): New.
|
|
|
|
|
(ia64_expand_prologue): Use TFmode not XFmode.
|
|
|
|
|
(ia64_expand_epilogue): Likewise.
|
|
|
|
|
(ia64_function_arg): Likewise.
|
|
|
|
|
(ia64_function_arg_advance): Likewise.
|
|
|
|
|
(ia64_return_in_memory): Likewise.
|
|
|
|
|
(ia64_function_value): Likewise.
|
|
|
|
|
(ia64_print_operand): Likewise.
|
|
|
|
|
(ia64_register_move_cost): Set GR<->FR to 5.
|
|
|
|
|
(ia64_secondary_reload_class): Get GR for TImode memory op.
|
|
|
|
|
* config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove.
|
|
|
|
|
(ROUND_TYPE_ALIGN): Remove.
|
|
|
|
|
(LONG_DOUBLE_TYPE_SIZE): Set to 128.
|
|
|
|
|
(INTEL_EXTENDED_IEEE_FORMAT): Define.
|
|
|
|
|
(HARD_REGNO_NREGS): Use TFmode, not XFmode.
|
|
|
|
|
(HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs.
|
|
|
|
|
(MODES_TIEABLE_P): Use TFmode, not XFmode.
|
|
|
|
|
(CLASS_MAX_NREGS): Likewise.
|
|
|
|
|
(ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks.
|
|
|
|
|
(PREDICATE_CODES): Update.
|
|
|
|
|
* config/ia64/ia64.md (movti): New.
|
|
|
|
|
(movti_internal): Use a clobber for memory alternatives.
|
|
|
|
|
(reload_inti, reload_outti): New.
|
|
|
|
|
(movsfcc_astep): Predicate properly.
|
|
|
|
|
(movdfcc_astep): Likewise.
|
|
|
|
|
(movxf): Remove.
|
|
|
|
|
(movtf): New.
|
|
|
|
|
(extendsftf2, extenddftf2): New.
|
|
|
|
|
(trunctfsf2, trunctfdf2): New.
|
|
|
|
|
(floatditf2, fix_trunctfdi2): New.
|
|
|
|
|
(floatunsditf2, fixuns_trunctfdi2): New.
|
|
|
|
|
(addtf3, subtf3, multf3, abstf2): New.
|
|
|
|
|
(negtf2, nabstf2, mintf3, maxtf3): New.
|
|
|
|
|
(maddtf3, msubtf3, nmultf3, nmaddtf3): New.
|
|
|
|
|
(cmptf): New.
|
|
|
|
|
(fr_spill): Use TFmode, not XFmode.
|
|
|
|
|
(fr_restore): Likewise.
|
|
|
|
|
* config/ia64/lib1funcs.asm (__divtf3): New.
|
|
|
|
|
* config/ia64/t-ia64 (LIB1ASMFUNCS): Add it.
|
|
|
|
|
|
2000-08-14 22:55:11 +02:00
|
|
|
|
2000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* cse.c (fold_rtx): Avoid empty body in an if-statement.
|
|
|
|
|
|
|
|
|
|
* doloop.c (doloop_iterations_max, doloop_modify): Avoid using the
|
|
|
|
|
`U' integer constant suffix.
|
|
|
|
|
|
|
|
|
|
* dwarf2out.c (add_subscript_info): Avoid empty body in an
|
|
|
|
|
else-statement.
|
|
|
|
|
|
|
|
|
|
* sparc/sol2.h (__enable_execute_stack): Prototype.
|
|
|
|
|
|
2000-08-14 22:46:16 +02:00
|
|
|
|
2000-08-14 David Edelsohn <edelsohn@gnu.org>
|
|
|
|
|
|
|
|
|
|
* collect2.c: Remove use of AIX import file.
|
|
|
|
|
|
|
|
|
|
* longlong.h: Test ARCH_PWR not ARCH_POWER.
|
|
|
|
|
|
|
|
|
|
* rs6000.c (print_operand, case 'E'): Add else.
|
|
|
|
|
|
2000-08-14 22:28:11 +02:00
|
|
|
|
2000-08-14 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address.
|
|
|
|
|
(movdi_symbolic): New.
|
|
|
|
|
|
2000-08-14 22:18:17 +02:00
|
|
|
|
2000-08-14 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
|
|
|
|
|
to GNU as. For Intel as, pass -M const_gp and -M no_plabel.
|
|
|
|
|
* config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
|
|
|
|
|
to GNU as.
|
|
|
|
|
|
2000-08-14 22:08:25 +02:00
|
|
|
|
2000-08-14 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* expr.c (emit_group_load): Don't force constants into registers.
|
|
|
|
|
Special case source already in the correct mode.
|
|
|
|
|
|
2000-08-14 20:08:46 +02:00
|
|
|
|
2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
|
|
|
|
|
* fixinc/inclhack.def: Likewise.
|
|
|
|
|
* fixinc/mkfixinc.sh: Likewise.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* fixinc/fixincl.x: Regenerate.
|
|
|
|
|
* install.texi: Document equivalence of linux and linux-gnu.
|
|
|
|
|
|
2000-08-14 19:54:23 +02:00
|
|
|
|
Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
|
|
|
|
|
|
|
|
|
|
* cse.c (insert_regs): Also in REG case: When finding an invalid
|
|
|
|
|
value, and we make a new quantity, make sure that it won't be
|
|
|
|
|
mistaken by for a valid one by mention_regs.
|
|
|
|
|
|
2000-08-14 17:43:07 +02:00
|
|
|
|
2000-08-13 Ralf G<>tlein <ralf.guetlein@aranea.de>
|
|
|
|
|
|
|
|
|
|
* h8300.md: Remove obsolete peepholes.
|
|
|
|
|
|
2000-08-14 16:31:23 +02:00
|
|
|
|
2000-08-13 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-14 16:45:30 +02:00
|
|
|
|
* invoke.texi (H8/300 Options): Fix typos.
|
|
|
|
|
* config/h8300.c: Fix formatting.
|
|
|
|
|
* config/h8300.h: Fix comment typos.
|
|
|
|
|
(OVERRIDE_OPTIONS): Fix formatting.
|
|
|
|
|
|
2000-08-14 16:34:52 +02:00
|
|
|
|
* function.c: Fix formatting.
|
|
|
|
|
|
2000-08-14 16:31:23 +02:00
|
|
|
|
* cse.c: Fix formatting.
|
|
|
|
|
|
2000-08-13 19:01:54 +02:00
|
|
|
|
2000-08-13 Geoff Keating <geoffk@cygnus.com>
|
|
|
|
|
|
2000-08-14 07:59:50 +02:00
|
|
|
|
* flow.c (attempt_auto_inc): Remove unused variable `bb'.
|
|
|
|
|
(attempt_auto_inc): Suppress parentheses warning.
|
|
|
|
|
* function.c (put_reg_into_stack): Remove unused variable `unsigned_p'.
|
|
|
|
|
* loop.c (load_mems): Remove `u' suffix in two places.
|
|
|
|
|
* config/rs6000/rs6000.c: Remove unnecessary `u' suffixes from
|
|
|
|
|
hex constants.
|
|
|
|
|
* config/rs6000/rs6000.h: Likewise.
|
|
|
|
|
* config/rs6000/sol-c0.c: Prototype some functions. Remove the
|
|
|
|
|
__eabi dummy routine.
|
|
|
|
|
* config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Remove unused
|
|
|
|
|
variable `buf_ptr'.
|
|
|
|
|
|
2000-08-13 23:49:36 +02:00
|
|
|
|
* config/rs6000/rs6000.c (rs6000_select_section): Rewrite to
|
|
|
|
|
not put stuff in .sdata unnecessarily.
|
|
|
|
|
(rs6000_unique_section): New function.
|
|
|
|
|
* config/rs6000/rs6000-protos.h: Add rs6000_unique_section.
|
|
|
|
|
* config/rs6000/sysv4.h (UNIQUE_SECTION): Define.
|
|
|
|
|
|
2000-08-13 23:31:09 +02:00
|
|
|
|
* c-typeck.c (build_array_ref): Don't complain about non-lvalue
|
|
|
|
|
arrays in C99. Don't try to look at DECL_REGISTER of a
|
|
|
|
|
COMPONENT_REF. Don't complain twice about the same error.
|
|
|
|
|
|
2000-08-13 20:00:34 +02:00
|
|
|
|
* fixinc/inclhack.def (aix_pthread): New fix.
|
|
|
|
|
(aix_sysmachine): New fix.
|
|
|
|
|
* fixinc/fixincl.x: Regenerate.
|
|
|
|
|
|
2000-08-13 19:01:54 +02:00
|
|
|
|
* expr.c (expand_expr): Call convert_modes when turning a large
|
|
|
|
|
multiply into a small one.
|
|
|
|
|
|
|
|
|
|
2000-08-12 Geoff Keating <geoffk@cygnus.com>
|
2000-08-13 00:45:05 +02:00
|
|
|
|
|
|
|
|
|
* tree.h (DECL_OFFSET_ALIGN): Make the off_align field of
|
|
|
|
|
the tree structure an exponent rather than an explicit alignment
|
|
|
|
|
so it doesn't overflow.
|
|
|
|
|
(SET_DECL_OFFSET_ALIGN): New macro.
|
|
|
|
|
* stor-layout.c (place_union_field): Use SET_DECL_OFFSET_ALIGN
|
|
|
|
|
rather than DECL_OFFSET_ALIGN.
|
|
|
|
|
(place_field): Likewise.
|
|
|
|
|
* expmed.c (store_bit_field): Abort on align==0 to avoid
|
|
|
|
|
antisocial machine behaviour.
|
|
|
|
|
|
2000-08-12 18:28:10 +02:00
|
|
|
|
2000-08-12 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* sibcall.c (uses_addressof): Accept both addressof and
|
|
|
|
|
current_function_internal_arg_pointer inside a mem.
|
|
|
|
|
(optimize_sibling_and_tail_recursive_call): Fail tail recursion
|
|
|
|
|
if current_function_uses_addressof.
|
|
|
|
|
* stmt.c (expand_return): Kill tail recursion and HAVE_return
|
|
|
|
|
optimizations.
|
|
|
|
|
|
2000-08-12 01:48:26 +02:00
|
|
|
|
2000-08-11 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.md (addsi3): Remove expander.
|
|
|
|
|
(subsi3, mulsi3, negsi2, one_cmplsi2): Likewise.
|
|
|
|
|
(*addsi3_shladd): New.
|
|
|
|
|
|
2000-08-12 01:10:10 +02:00
|
|
|
|
2000-08-11 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (do_spill): Pass cfa offset to move expander.
|
|
|
|
|
(do_restore): Likewise.
|
|
|
|
|
(gen_movdi_x, gen_fr_spill_x, gen_fr_restore_x): New.
|
|
|
|
|
(ia64_expand_prologue, ia64_expand_epilogue): Use them.
|
|
|
|
|
(rtx_needs_barrier): Track actual bit manipulation for
|
|
|
|
|
ar.unat moves, gr_spill, and gr_restore.
|
|
|
|
|
(emit_insn_group_barriers): Special case gr_spill/gr_restore.
|
|
|
|
|
(process_set): Don't handle varargs spills.
|
|
|
|
|
* config/ia64/ia64.md (gr_spill): Accept cfa offset. Emit
|
|
|
|
|
.mem.offset here instead of in process_set.
|
|
|
|
|
(gr_restore): Likewise.
|
|
|
|
|
|
2000-08-12 00:25:22 +02:00
|
|
|
|
2000-08-11 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.h (PROMOTE_MODE): Only extend to SImode.
|
|
|
|
|
|
2000-08-11 23:23:00 +02:00
|
|
|
|
2000-08-11 Mark Elbrecht <snowball3@bigfoot.com>
|
|
|
|
|
|
|
|
|
|
* gcc.texi (The Configuration File): Document
|
|
|
|
|
COLLECT2_HOST_INITIALIZATION, GCC_DRIVER_HOST_INITIALIZATION, and
|
|
|
|
|
UPDATE_PATH_HOST_CANONICALIZATION.
|
|
|
|
|
|
2000-08-11 18:25:02 +02:00
|
|
|
|
2000-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* c-parse.in (cast_expr): Avoid -Wstrict-prototype warnings for
|
|
|
|
|
unprototyped function pointer casts on integer constants.
|
|
|
|
|
|
2000-08-11 17:20:10 +02:00
|
|
|
|
2000-08-11 Laurynas Biveinis <lauras@softhome.net>
|
|
|
|
|
|
|
|
|
|
* fixproto: Recognize DOS paths with drive letters as absolute paths.
|
|
|
|
|
|
2000-08-11 15:42:32 +02:00
|
|
|
|
2000-08-11 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* extend.texi (Volatiles): Fix typos.
|
|
|
|
|
|
2000-08-11 14:45:05 +02:00
|
|
|
|
2000-08-11 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
|
|
|
|
* flow.c: Fix formatting.
|
|
|
|
|
|
2000-08-11 10:52:58 +02:00
|
|
|
|
2000-08-11 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* reload.c (push_secondary_reload): When invoking a reload_{in,out}
|
|
|
|
|
pattern, always allocate a tertiary scratch register.
|
|
|
|
|
|
|
|
|
|
* config/alpha/alpha.md (reload_inqi): Use a DImode scratch.
|
|
|
|
|
(reload_inhi): Likewise.
|
|
|
|
|
|
2000-08-11 09:38:23 +02:00
|
|
|
|
2000-08-11 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
2000-08-11 09:49:07 +02:00
|
|
|
|
* function.c (put_reg_into_stack): Allow type to be NULL.
|
|
|
|
|
(schedule_fixup_var_refs): Likewise.
|
|
|
|
|
(gen_mem_addressof): Allow decl to be NULL.
|
|
|
|
|
(put_addressof_into_stack): Likewise.
|
|
|
|
|
|
2000-08-11 09:39:55 +02:00
|
|
|
|
* flow.c (merge_blocks_nomove): Be more careful about
|
|
|
|
|
locating the beginning of block A.
|
|
|
|
|
|
2000-08-11 09:38:23 +02:00
|
|
|
|
* combine.c (simplify_shift_const): Obey SHIFT_COUNT_TRUNCATED.
|
|
|
|
|
|
2000-08-11 07:51:12 +02:00
|
|
|
|
Thu Aug 10 22:47:09 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
|
|
|
|
|
|
|
|
|
|
* configure.in:
|
|
|
|
|
* configure:
|
|
|
|
|
* gthr-posix.h:
|
|
|
|
|
* config.in: Reverted the check for <sched.h>.
|
|
|
|
|
|
elf.h (CTOR_SECTION_NAME, [...]): New macros define the name of CTOR and DTOR sections.
* mips/elf.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME): New
macros define the name of CTOR and DTOR sections.
(CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
DTOR_LIST_END): Change to use attributes to specify
sections.
* mips/elf64.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME,
(CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
DTOR_LIST_END): Same as in mips/elf.h.
From-SVN: r35618
2000-08-11 05:18:05 +02:00
|
|
|
|
2000-08-10 Chris Demetriou <cgd@sibyte.com>
|
|
|
|
|
|
|
|
|
|
* mips/elf.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME): New
|
|
|
|
|
macros define the name of CTOR and DTOR sections.
|
|
|
|
|
(CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
|
|
|
|
|
DTOR_LIST_END): Change to use attributes to specify
|
|
|
|
|
sections.
|
|
|
|
|
* mips/elf64.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME,
|
|
|
|
|
(CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
|
|
|
|
|
DTOR_LIST_END): Same as in mips/elf.h.
|
|
|
|
|
|
2000-08-11 03:31:14 +02:00
|
|
|
|
2000-08-10 Drew Moseley <dmoseley@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/mn10300/mn10300.h: Added no-crt0 option for explicitly
|
|
|
|
|
disabling just crt0.o.
|
|
|
|
|
|
2000-08-11 02:30:55 +02:00
|
|
|
|
2000-08-10 Richard Earnshaw <rearnshaw@arm.com> & Nick Clifton <nickc@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* arm.h (CPP_SPEC): Use sub-spec cpp_interwork.
|
|
|
|
|
(CPP_INTERWORK_SPEC, CPP_INTERWORK_DEFAULT_SPEC): New sub-specs.
|
|
|
|
|
(EXTRA_SPECS): Add them.
|
|
|
|
|
* arm/lib1funcs.asm: Support builds for interworking.
|
|
|
|
|
Use macros to eliminate duplicated pieces of code.
|
|
|
|
|
|
2000-08-11 00:01:22 +02:00
|
|
|
|
2000-08-10 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-11 03:43:47 +02:00
|
|
|
|
* h8300.c (expand_a_rotate): New.
|
|
|
|
|
(emit_a_rotate): Likewise.
|
|
|
|
|
(h8300_adjust_insn_length): Add support for the rotate insns.
|
|
|
|
|
* h8300.md (rotlqi3): New.
|
|
|
|
|
(*rotlqi3_1): Likewise.
|
|
|
|
|
(rotlhi3): Likewise.
|
|
|
|
|
(*rotlhi3_1): Likewise.
|
|
|
|
|
(rotlhi3): Likewise.
|
|
|
|
|
(*rotlhi3_1): Likewise.
|
|
|
|
|
* h8300-proto.h: Add prototypes for expand_a_rotate and
|
|
|
|
|
emit_a_rotate.
|
|
|
|
|
|
2000-08-11 01:21:52 +02:00
|
|
|
|
* h8300.c: Fix comment typos.
|
|
|
|
|
(dosize): Declare the variable amount as unsigned.
|
|
|
|
|
(get_shift_alg): Fix a comparison between signed and unsigned.
|
|
|
|
|
(emit_a_shift): Likewise.
|
|
|
|
|
(h8300_adjust_insn_length): Simplify the code.
|
|
|
|
|
|
2000-08-11 00:01:22 +02:00
|
|
|
|
* c-decl.c: Fix formatting.
|
|
|
|
|
|
2000-08-10 17:21:18 +02:00
|
|
|
|
2000-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* c-lex.c (parse_float, yylex): For -Wtraditional, issue a
|
|
|
|
|
warning about non-traditional numeric constant suffixes.
|
|
|
|
|
|
|
|
|
|
* cppexp.c (parse_number): Likewise.
|
|
|
|
|
|
|
|
|
|
* invoke.texi: (-Wtraditional): Document new behavior.
|
|
|
|
|
|
2000-08-10 09:11:44 +02:00
|
|
|
|
Thu Aug 10 00:11:04 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
|
|
|
|
|
|
|
|
|
|
* gthr-posix.h: Include auto-host.h. Conditionally include
|
|
|
|
|
<sched.h>.
|
|
|
|
|
* configure.in: Check for the <sched.h> header file.
|
|
|
|
|
* config.in: Added define for HAVE_SCHED_H.
|
|
|
|
|
|
2000-08-09 21:52:35 +02:00
|
|
|
|
2000-08-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* c-typeck.c (process_init_element): For -Wtraditional, warn about
|
|
|
|
|
initialization of unions.
|
|
|
|
|
|
|
|
|
|
* invoke.texi (-Wtraditional): Document new behavior.
|
|
|
|
|
|
2000-08-09 21:41:12 +02:00
|
|
|
|
2000-08-09 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* configure.in (--enable-c-cpplib): Uncomment. Use AC_DEFINE
|
|
|
|
|
instead of extra_c_flags.
|
|
|
|
|
(--enable-c-mbchar): Use AC_DEFINE instead of extra_c_flags.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* config.in: Regenerate.
|
|
|
|
|
|
|
|
|
|
* cpperror.c (cpp_type2name): New function.
|
|
|
|
|
* cpplex.c (lex_line): If we issued an error for an invalid
|
|
|
|
|
preprocessing directive, discard that logical line.
|
|
|
|
|
* cpplib.c (do_line): Call a hook function if the current file
|
|
|
|
|
is renamed by #line.
|
|
|
|
|
(do_ident): Pass the contents of the string, not the entire
|
|
|
|
|
token, to the callback function.
|
|
|
|
|
* cpplib.h (CPP_LAST_PUNCTUATOR): New #define.
|
|
|
|
|
(cb.rename_file): New hook function.
|
|
|
|
|
(cb.ident): Adjust prototype.
|
|
|
|
|
(cpp_type2name): Prototype.
|
|
|
|
|
* cppmacro.c (dump_macro_args): Correct precedence lossage.
|
|
|
|
|
|
|
|
|
|
* cppmain.c (cb_ident): Update for changed interface.
|
|
|
|
|
(cb_rename_file): New function.
|
|
|
|
|
(main): Set rename callback.
|
|
|
|
|
|
2000-08-09 07:17:12 +02:00
|
|
|
|
2000-08-09 Alexandre Oliva <aoliva@redhat.com>
|
|
|
|
|
|
|
|
|
|
* caller-save.c (mark_referenced_regs): Mark partially-overwritten
|
|
|
|
|
multi-word registers.
|
|
|
|
|
|
c-common.c (combine_strings, [...]): Refer to ISO C or ISO C89 instead of ANSI C.
* c-common.c (combine_strings, check_format_info): Refer to ISO C
or ISO C89 instead of ANSI C.
* c-decl.c (grokdeclarator, xref_tag, finish_struct,
build_enumerator, do_case): Likewise.
* c-lex.c (parse_float, yylex): Likewise.
* c-parse.in: Likewise.
* c-typeck.c (common_type, build_array_ref, build_binary_op,
build_unary_op, pedantic_lvalue_warning, build_conditional_expr,
build_c_cast, convert_for_assignment, set_init_index,
set_init_label, c_expand_start_case): Likewise.
* toplev.c (documented_lang_options, display_help): Likewise.
From-SVN: r35576
2000-08-09 01:19:11 +02:00
|
|
|
|
2000-08-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* c-common.c (combine_strings, check_format_info): Refer to ISO C
|
|
|
|
|
or ISO C89 instead of ANSI C.
|
|
|
|
|
* c-decl.c (grokdeclarator, xref_tag, finish_struct,
|
|
|
|
|
build_enumerator, do_case): Likewise.
|
|
|
|
|
* c-lex.c (parse_float, yylex): Likewise.
|
|
|
|
|
* c-parse.in: Likewise.
|
|
|
|
|
* c-typeck.c (common_type, build_array_ref, build_binary_op,
|
|
|
|
|
build_unary_op, pedantic_lvalue_warning, build_conditional_expr,
|
|
|
|
|
build_c_cast, convert_for_assignment, set_init_index,
|
|
|
|
|
set_init_label, c_expand_start_case): Likewise.
|
|
|
|
|
* toplev.c (documented_lang_options, display_help): Likewise.
|
|
|
|
|
|
2000-08-09 01:07:10 +02:00
|
|
|
|
2000-08-08 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-09 01:09:52 +02:00
|
|
|
|
* h8300.c: Fix formatting.
|
|
|
|
|
* h8300.h: Likewise.
|
|
|
|
|
* h8300.md: Likewise.
|
|
|
|
|
(movsi_h8300hs): Fix formatting of the resulting assembly code.
|
|
|
|
|
|
2000-08-09 01:07:10 +02:00
|
|
|
|
* reload1.c: Fix formatting.
|
|
|
|
|
|
2000-08-09 00:40:49 +02:00
|
|
|
|
2000-08-08 Rodney Brown <RodneyBrown@mynd.com>
|
|
|
|
|
|
|
|
|
|
* alpha/alpha.c (alpha_emit_xfloating_libcall):
|
|
|
|
|
Use GEN_CALL_VALUE define.
|
|
|
|
|
* alpha/alpha.md (untyped_call): Use GEN_CALL define.
|
|
|
|
|
* clipper/clipper.md (untyped_call): Likewise.
|
|
|
|
|
* dsp16xx/dsp16xx.md (untyped_call): Likewise.
|
|
|
|
|
* fx80/fx80.md (untyped_call): Likewise.
|
|
|
|
|
* mips/mips.md (untyped_call): Likewise.
|
|
|
|
|
* ns32k/ns32k.md (untyped_call): Likewise.
|
|
|
|
|
* pa/pa.md (untyped_call): Likewise.
|
|
|
|
|
* romp/romp.md (untyped_call): Likewise.
|
|
|
|
|
* sparc/sparc.md (untyped_call): Likewise.
|
|
|
|
|
|
2000-08-09 00:22:32 +02:00
|
|
|
|
2000-08-08 Jason Eckhardt <jle@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/i860/i860.c (singlemove_string): Do not generate assembler
|
|
|
|
|
pseudo instructions that must be expanded (that is, with signed
|
|
|
|
|
constants larger than 16 bits).
|
|
|
|
|
|
2000-08-08 21:46:51 +02:00
|
|
|
|
2000-08-08 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* flow.c (life_analysis): Only turn off PROP_LOG_LINKS and
|
|
|
|
|
PROP_AUTOINC at -O0. Don't collect alias info at -O0.
|
|
|
|
|
(init_propagate_block_info): Don't kill memory stores at -O0.
|
|
|
|
|
(mark_set_1, mark_used_regs): Likewise.
|
|
|
|
|
|
2000-08-08 20:50:15 +02:00
|
|
|
|
2000-08-08 David Edelsohn <edelsohn@gnu.org>
|
|
|
|
|
|
|
|
|
|
* rs6000.c (optimization_options): Decorate 'level' as
|
|
|
|
|
ATTRIBUTE_UNUSED.
|
|
|
|
|
(mask64_operand): Remove sign-extend thinko.
|
|
|
|
|
(rldic_operand): New function.
|
|
|
|
|
(load_multiple_operation): regno's are unsigned ints.
|
|
|
|
|
(store_multiple_operation): Likewise.
|
|
|
|
|
(lmw_operation): Likewise.
|
|
|
|
|
(stmw_operation): Likewise.
|
|
|
|
|
(includes_lshift_p): shift_mask is unsigned int.
|
|
|
|
|
(includes_lshift64_p): New function.
|
|
|
|
|
(addrs_ok_for_quad_peep): unsigned int reg1.
|
|
|
|
|
(print_operand): Consistently add "else" after
|
|
|
|
|
output_operand_lossage().
|
|
|
|
|
(print_operand, case 'b'): Fold in case 'W'.
|
|
|
|
|
(print_operand, case 'W'): Print rldic MB value.
|
|
|
|
|
(output_epilogue): Update Objective-C language string.
|
|
|
|
|
(output_toc): unsigned HOST_WIDE_INT low, compare unsigned.
|
|
|
|
|
* rs6000.h (PREDICATE_CODES): Add rldic_operand.
|
|
|
|
|
* rs6000.md (ashldi3): Add rldic instruction.
|
|
|
|
|
(iordi3, xordi3): Remove redundant "else if CONST_DOUBLE".
|
|
|
|
|
(cmpsi_internal2, cmpdi_interal2): Use 'b' output template
|
|
|
|
|
modifier.
|
|
|
|
|
|
2000-08-08 12:01:20 +02:00
|
|
|
|
2000-08-08 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64-protos.h: Remove duplicates. Update
|
|
|
|
|
for massive code rearrangements.
|
|
|
|
|
* config/ia64/ia64.c (ia64_arpfs_regno): Remove.
|
|
|
|
|
(ia64_rp_regno, ia64_fp_regno, ia64_input_regs): Remove.
|
|
|
|
|
(ia64_local_regs, ia64_need_regstk): Remove.
|
|
|
|
|
(ar_ccv_reg_operand): New.
|
|
|
|
|
(ia64_gp_save_reg): New.
|
|
|
|
|
(struct ia64_frame_info): Combine most of the size elements;
|
|
|
|
|
add new gr save elements.
|
|
|
|
|
(find_gr_spill): New.
|
|
|
|
|
(next_scratch_gr_reg): New.
|
|
|
|
|
(mark_reg_gr_used_mask): New.
|
|
|
|
|
(ia64_compute_frame_size): Rewrite. Allocate special AR regs
|
|
|
|
|
to GR backing store regs when possible.
|
|
|
|
|
(ia64_initial_elimination_offset): New.
|
|
|
|
|
(ia64_rap_fp_offset): Remove.
|
|
|
|
|
(save_restore_insns): Remove.
|
|
|
|
|
(setup_spill_pointers): New.
|
|
|
|
|
(finish_spill_pointers): New.
|
|
|
|
|
(spill_restore_mem): New.
|
|
|
|
|
(do_spill, do_restore): New.
|
|
|
|
|
(ia64_expand_prologue): Rewrite to use them.
|
|
|
|
|
(ia64_expand_epilogue): Likewise.
|
|
|
|
|
(ia64_direct_return): Update for current_frame_info changes.
|
|
|
|
|
(ia64_function_prologue): Simplify .prologue emission. Emit
|
|
|
|
|
.spill when needed.
|
|
|
|
|
(ia64_setup_incoming_varargs): Don't ever emit rtl.
|
|
|
|
|
(ia64_dbx_register_number): New.
|
|
|
|
|
(ia64_initialize_trampoline): New.
|
|
|
|
|
(ia64_secondary_reload_class): Request GR_REGS for integer
|
|
|
|
|
arithmetic destined for FR_REGS.
|
|
|
|
|
(ia64_init_machine_status): Don't reset return_address_pointer_rtx.
|
|
|
|
|
(ia64_mark_machine_status): Mark ia64_gp_save.
|
|
|
|
|
(rws_access_regno): Rename from rws_access_reg; don't treat
|
|
|
|
|
predicates specially.
|
|
|
|
|
(rws_access_reg): New. Update all callers.
|
|
|
|
|
(rtx_needs_barrier): Remove dead unspecs.
|
|
|
|
|
(ia64_epilogue_uses): Mark ar.pfs and ar.unat live on exit.
|
|
|
|
|
(ia64_encode_section_info): Silence signed/unsigned warnings.
|
|
|
|
|
(spill_offset, sp_offset, spill_offset_emitted): Remove.
|
|
|
|
|
(tmp_reg, tmp_saved): Remove.
|
|
|
|
|
(process_set): Rewrite to expect complicated bits via
|
|
|
|
|
REG_FRAME_RELATED_EXPR.
|
|
|
|
|
(ia64_expand_fetch_and_op): Use emit_move_insn; be explicit
|
|
|
|
|
in the use of ar.ccv; never set RTX_UNCHANGING_P.
|
|
|
|
|
(ia64_expand_op_and_fetch): Likewise.
|
|
|
|
|
(ia64_expand_compare_and_swap): Likewise.
|
|
|
|
|
(ia64_expand_builtin): Likewise.
|
|
|
|
|
* config/ia64/ia64.h (AR_UNAT_REGNUM): New.
|
|
|
|
|
(FIRST_PSEUDO_REGISTER): Update.
|
|
|
|
|
(AR_M_REGNO_P): Update.
|
|
|
|
|
(FIXED_REGS): Don't mark three local registers as used.
|
|
|
|
|
(EXTRA_CC_MODES): New.
|
|
|
|
|
(SELECT_CC_MODE): New.
|
|
|
|
|
(HARD_REGNO_NREGS): Allow DImode in p0; handle CCImode.
|
|
|
|
|
(HARD_REGNO_MODE_OK): Disallow CCImode from non-predicates.
|
|
|
|
|
(FRAME_GROWS_DOWNWARD): Unset.
|
|
|
|
|
(STARTING_FRAME_OFFSET): Zero.
|
|
|
|
|
(ELIMINABLE_REGS): Eliminate from the soft to hard frame pointer.
|
|
|
|
|
(INITIAL_ELIMINATION_OFFSET): Defer to out of line function.
|
|
|
|
|
(HARD_FRAME_POINTER_REGNUM): New.
|
|
|
|
|
(CAN_DEBUG_WITHOUT_FP): Define.
|
|
|
|
|
(TRAMPOLINE_TEMPLATE): Remove.
|
|
|
|
|
(TRAMPOLINE_SIZE): Lower to 32.
|
|
|
|
|
(TRAMPOLINE_ALIGNMENT): Lower to 64.
|
|
|
|
|
(INITIALIZE_TRAMPOLINE): Defer to out of line function.
|
|
|
|
|
(PREDICATE_CODES): Update.
|
|
|
|
|
(struct machine_function): Add ia64_gp_save.
|
|
|
|
|
* config/ia64/ia64.md: Purge unused unspecs.
|
|
|
|
|
(movsi patterns): Allow moves to/from AR_M_REGS.
|
|
|
|
|
(movdi patterns): Allow moves to/from p0.
|
|
|
|
|
(call patterns): Move most setjmp hackery to ia64_gp_save_reg.
|
|
|
|
|
(gr_spill, gr_restore): Indicate ar.unat read/written.
|
|
|
|
|
(nonlocal_goto): Don't pass old frame_pointer.
|
|
|
|
|
(nonlocal_goto_receiver): Remove.
|
|
|
|
|
(exception_receiver): New.
|
|
|
|
|
(builtin_setjmp_setup): New.
|
|
|
|
|
(builtin_setjmp_receiver): New.
|
|
|
|
|
* config/ia64/lib1funcs.asm (__ia64_save_stack_nonlocal): Bundle.
|
|
|
|
|
(__ia64_nonlocal_goto): Bundle. Don't kill r7.
|
|
|
|
|
(__ia64_restore_stack_nonlocal): Likewise.
|
|
|
|
|
(__ia64_trampoline): New.
|
|
|
|
|
* config/ia64/sysv4.h (DBX_REGISTER_NUMBER): Defer to out of line
|
|
|
|
|
function.
|
|
|
|
|
* config/ia64/t-ia64 (LIB1ASMFUNCS): Add __trampoline.
|
|
|
|
|
|
2000-08-08 11:08:55 +02:00
|
|
|
|
2000-08-08 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* frame.h (ia64_frame_state): Add my_psp.
|
|
|
|
|
* libgcc2.c (ia64_throw_helper): Add throw_sp argument.
|
|
|
|
|
(__throw): Pass it in. Don't clobber r7.
|
|
|
|
|
* config/ia64/frame-ia64.c (init_ia64_reg_loc): Mark inline.
|
|
|
|
|
(execute_one_ia64_descriptor) [mem_stack_v]: Sets psp.when
|
|
|
|
|
and nothing to do with sp.
|
|
|
|
|
(normalize_reg_loc): Use frame->my_psp.
|
|
|
|
|
(frame_translate): Handle frame-pointer-less functions. Set
|
|
|
|
|
spill_base correctly, in absence of being told.
|
|
|
|
|
(__build_ia64_frame_state): New sp argument. Fill in frame->my_sp.
|
|
|
|
|
(__ia64_backtrace_helper): New sp argument. Use
|
|
|
|
|
builtin_return_address instead of label addresses.
|
|
|
|
|
(print_record) [mem_stack_v]: No size member.
|
|
|
|
|
|
|
|
|
|
2000-08-08 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* regclass.c (choose_hard_reg_mode): Iterate over all CC modes.
|
|
|
|
|
|
2000-08-08 10:28:00 +02:00
|
|
|
|
2000-08-08 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* tm.texi (LOCAL_REGNO): Document.
|
|
|
|
|
* flow.c (LOCAL_REGNO, EPILOGUE_USES): Provide default.
|
|
|
|
|
(mark_regs_live_at_end): Don't mark LOCAL_REGNO registers.
|
|
|
|
|
* reload1.c (reload): Likewise when considering nonlocal labels.
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.h (LOCAL_REGNO): New.
|
|
|
|
|
* config/sparc/sparc.h (LOCAL_REGNO): New.
|
|
|
|
|
|
2000-08-08 10:23:31 +02:00
|
|
|
|
2000-08-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* c-lex.c (yylex): Don't allow integer suffixes 'LUL', 'Ll', 'lL'.
|
|
|
|
|
|
2000-08-08 03:17:06 +02:00
|
|
|
|
2000-08-07 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/mips/mips.c: Fix compile time warning messages.
|
|
|
|
|
* config/mips/mips-protos.h: Add prototype for equality_op.
|
2000-08-07 13:35:06 +02:00
|
|
|
|
|
|
|
|
|
* mn10300.h (TARGET_SWITCHES): Document `-mam33'.
|
|
|
|
|
|
2000-08-07 13:26:59 +02:00
|
|
|
|
2000-08-07 Graham Stott <grahams@cygnus.co.uk>
|
|
|
|
|
|
2000-08-07 13:28:02 +02:00
|
|
|
|
* mn10300.md: Use nonimmediate_operand instead of general_operand
|
|
|
|
|
on output operands.
|
|
|
|
|
|
2000-08-07 13:26:59 +02:00
|
|
|
|
* mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads.
|
|
|
|
|
|
2000-08-07 11:58:29 +02:00
|
|
|
|
2000-08-07 Alexandre Oliva <aoliva@redhat.com>
|
|
|
|
|
|
|
|
|
|
* sh.h (EXTRA_CONSTRAINT_Q): Adjust to GNU Coding Standards.
|
|
|
|
|
* sh.c (expand_block_move): Break long lines.
|
|
|
|
|
(expand_ashiftrt, fpscr_set_from_mem): Likewise.
|
|
|
|
|
* sh.md (mulsi3): Likewise.
|
|
|
|
|
(movdi): Adjust spacing.
|
|
|
|
|
|
2000-08-07 10:27:54 +02:00
|
|
|
|
2000-08-07 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* expmed.c (store_bit_field): Don't require MEM_IN_STRUCT_P.
|
|
|
|
|
* expr.c (emit_group_store): Don't set it.
|
|
|
|
|
|
2000-08-07 09:07:21 +02:00
|
|
|
|
2000-08-07 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-07 09:11:38 +02:00
|
|
|
|
* invoke.texi (Options for Debugging Your Program or GCC): Remove
|
|
|
|
|
duplicate entries for 'w' and 'z'.
|
|
|
|
|
|
2000-08-07 09:07:21 +02:00
|
|
|
|
* flow.c: Fix a comment typo.
|
|
|
|
|
|
2000-08-07 08:48:26 +02:00
|
|
|
|
Sun Aug 6 23:47:35 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
|
|
|
|
|
|
|
|
|
|
* c-parse.in: Changed the language string for Objective-C to "GNU
|
|
|
|
|
Objective-C".
|
|
|
|
|
|
2000-08-06 20:54:49 +02:00
|
|
|
|
Sun Aug 6 11:54:03 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
|
|
|
|
|
|
|
|
|
|
* gthr-posix.h: Integrated Chris Ball's <cball@fmco.com> changes
|
|
|
|
|
to improve the Posix thread support for Objective-C.
|
|
|
|
|
|
c-common.h (enum c_tree_index): Add CTI_SIGNED_SIZE_TYPE and CTI_UNSIGNED_PTRDIFF_TYPE.
* c-common.h (enum c_tree_index): Add CTI_SIGNED_SIZE_TYPE and
CTI_UNSIGNED_PTRDIFF_TYPE.
(signed_size_type_node): Define.
(unsigned_ptrdiff_type_node): Define.
* c-decl.c (init_decl_processing): Create the
signed_size_type_node and unsigned_ptrdiff_type_node types.
* c-common.c (T_SC): Define.
(T_SST): Define.
(T_UPD): Define.
(print_char_table): Use T_SST for %zd, %zi, %zn. Use T_UPD for
%to, %tu, %tx, %tX. Allow %hhn (T_SC). Add "c" to the flags for
%s and %p.
(scan_char_table): Use T_SC for %hhd, %hhi, %hhn. Use T_SST for
%zd, %zi, %zn. Use T_UPD for %to, %tu, %tx, %tX. Add "c" to the
flags for %c, %s and %[.
(check_format_info): Only allow leniency for signedness of targets
of character pointers (when pedantic) for formats flagged with
"c", so for strings but not for %hh formats. When pedantic, don't
allow character pointers to substitute for void pointers if a
second level of indirection is present.
testsuite:
* gcc.dg/c99-printf-1.c: New test.
From-SVN: r35530
2000-08-06 20:12:49 +02:00
|
|
|
|
2000-08-06 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* c-common.h (enum c_tree_index): Add CTI_SIGNED_SIZE_TYPE and
|
|
|
|
|
CTI_UNSIGNED_PTRDIFF_TYPE.
|
|
|
|
|
(signed_size_type_node): Define.
|
|
|
|
|
(unsigned_ptrdiff_type_node): Define.
|
|
|
|
|
* c-decl.c (init_decl_processing): Create the
|
|
|
|
|
signed_size_type_node and unsigned_ptrdiff_type_node types.
|
|
|
|
|
* c-common.c (T_SC): Define.
|
|
|
|
|
(T_SST): Define.
|
|
|
|
|
(T_UPD): Define.
|
|
|
|
|
(print_char_table): Use T_SST for %zd, %zi, %zn. Use T_UPD for
|
|
|
|
|
%to, %tu, %tx, %tX. Allow %hhn (T_SC). Add "c" to the flags for
|
|
|
|
|
%s and %p.
|
|
|
|
|
(scan_char_table): Use T_SC for %hhd, %hhi, %hhn. Use T_SST for
|
|
|
|
|
%zd, %zi, %zn. Use T_UPD for %to, %tu, %tx, %tX. Add "c" to the
|
|
|
|
|
flags for %c, %s and %[.
|
|
|
|
|
(check_format_info): Only allow leniency for signedness of targets
|
|
|
|
|
of character pointers (when pedantic) for formats flagged with
|
|
|
|
|
"c", so for strings but not for %hh formats. When pedantic, don't
|
|
|
|
|
allow character pointers to substitute for void pointers if a
|
|
|
|
|
second level of indirection is present.
|
|
|
|
|
|
2000-08-06 19:48:30 +02:00
|
|
|
|
2000-08-06 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-06 20:08:08 +02:00
|
|
|
|
* invoke.texi (Options for Debugging Your Program or GCC): Update
|
|
|
|
|
the names of dump files.
|
|
|
|
|
|
2000-08-06 20:03:58 +02:00
|
|
|
|
* h8300.c (dosize): Rearrange code for conciseness.
|
|
|
|
|
(split_adds_subs): Likewise.
|
|
|
|
|
|
2000-08-06 19:57:57 +02:00
|
|
|
|
* loop.c: Fix formatting.
|
|
|
|
|
|
2000-08-06 19:55:22 +02:00
|
|
|
|
* dwarf2out.c: Fix formatting.
|
|
|
|
|
|
2000-08-06 19:50:06 +02:00
|
|
|
|
* tm.texi (FUNCTION_ARG_PARTIAL_NREGS): Fix a typo.
|
|
|
|
|
|
2000-08-06 19:48:30 +02:00
|
|
|
|
* expr.c: Fix formatting.
|
|
|
|
|
|
2000-08-06 18:39:20 +02:00
|
|
|
|
2000-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* rs6000.c (rs6000_maybe_dead): Prototype.
|
|
|
|
|
|
2000-08-06 12:07:31 +02:00
|
|
|
|
2000-08-06 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* stmt.c (expand_goto): Do virtual_stack_vars_rtx replacement for
|
|
|
|
|
HAVE_nonlocal_goto as well.
|
|
|
|
|
* config/i960/i960.md (nonlocal_goto): Don't do it here.
|
|
|
|
|
* config/pj/pj.md (nonlocal_goto): Likewise.
|
|
|
|
|
|
2000-08-06 10:15:28 +02:00
|
|
|
|
2000-08-07 Michael Hayes <mhayes@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* loop.c (try_swap_copy_prop): New function.
|
|
|
|
|
(load_mems): Rename copies to load_copies and add new regset
|
|
|
|
|
store_copies. Check for sets of shadow registers and mark
|
|
|
|
|
in store_copies. Call try_swap_copy_prop for registers
|
|
|
|
|
marked in store_copies.
|
|
|
|
|
|
2000-08-06 09:56:00 +02:00
|
|
|
|
Sun Aug 6 00:54:42 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
|
|
|
|
|
|
|
|
|
|
* objc/objc-act.c: New command line option -fconstant-string-class
|
|
|
|
|
to allow specifying a user defined constant string class,
|
|
|
|
|
different from NXConstantString.
|
|
|
|
|
|
|
|
|
|
* toplev.c: Moved the Objective-C specific options to
|
|
|
|
|
objc/lang-options.h.
|
|
|
|
|
|
|
|
|
|
* objc/lang-options.h: Moved the Objective-C specific options from
|
|
|
|
|
toplev.c. Added -fconstant-string-class.
|
|
|
|
|
|
2000-08-06 02:02:49 +02:00
|
|
|
|
2000-08-05 Chris Demetriou <cgd@sibyte.com>
|
|
|
|
|
|
2000-08-06 02:07:22 +02:00
|
|
|
|
* mips/elf.h (CTOR_LIST_BEGIN, CTOR_LIST_END,
|
|
|
|
|
DTOR_LIST_BEGIN, DTOR_LIST_END): change type of
|
|
|
|
|
__CTOR_LIST__ from func_ptr array to just func_ptr, to
|
|
|
|
|
avoid extra alignment imposed on arrays.
|
|
|
|
|
* mips/elf64.h (CTOR_LIST_BEGIN, CTOR_LIST_END,
|
|
|
|
|
DTOR_LIST_BEGIN, DTOR_LIST_END): Likewise.
|
|
|
|
|
|
2000-08-06 02:02:49 +02:00
|
|
|
|
* mips.h: Clean up comments and spacing near MASKs.
|
|
|
|
|
(TARGET_UNIX_ASM): Delete.
|
|
|
|
|
(MASK_MIPS16, MASK_NO_CHECK_ZERO_DIV, MASK_CHECK_RANGE_DIV,
|
|
|
|
|
MASK_UNINIT_CONST_IN_RODATA): Change values to make mask
|
|
|
|
|
values contiguous.
|
|
|
|
|
|
2000-08-05 20:31:15 +02:00
|
|
|
|
2000-08-05 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* c-common.c (print_char_table): Add entries for the X/Open '
|
|
|
|
|
format flag (print decimals with locale's thousands grouping
|
|
|
|
|
character). Make %C expect wint_t.
|
|
|
|
|
(check_format_info): If pedantic, warn when the %n$ operand
|
|
|
|
|
number form is used. Allow for the ' flag; warn about it if
|
|
|
|
|
pedantic.
|
|
|
|
|
|
2000-08-05 20:24:19 +02:00
|
|
|
|
2000-08-05 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* i386.h (FUNCTION_OK_FOR_SIBCALL): Not OK if DECL's return
|
|
|
|
|
type is a float mode, cfun->decl's return type is not, and
|
|
|
|
|
TARGET_FLOAT_RETURNS_IN_80387.
|
|
|
|
|
|
[multiple changes]
2000-08-04 Andreas Schwab <schwab@suse.de>
* cppmain.c (cb_def_pragma): Skip the first two tokens from the
token list, which are always `#' and `pragma'.
2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
* tree.c (tree_expr_nonnegative_p): Move to...
* fold-const.c: ... here. Also handle BIND_EXPR and RTL_EXPR.
(rtl_expr_nonnegative_p): New.
* tree.h: Add prototype for rtl_expr_nonnegative_p.
* real.h (CONST_DOUBLE_LOW, CONST_DOUBLE_HIGH, CONST_DOUBLE_MEM,
CONST_DOUBLE_CHAIN: Move to...
* rtl.h: ...here. Use XCINT/XCEXP.
* Makefile.in: Remove toplev.o from OBJS. Add rule to make
libbackend.a; add libbackend.a to STAGESTUFF. Add BACKEND
variable. Use BACKEND when linking cc1, not OBJS. Add BACKEND
to VOL_FILES.
* objc/Make-lang.in (cc1obj): Link with $(BACKEND).
ch:
* Make-lang.in (cc1chill): Depend on $(BACKEND), not stamp-objlist.
* Makefile.in (cc1chill): Link with $(BACKEND). Define BACKEND,
eliminate C_OBJS (was commented out), OBJS, OBJDEPS.
cp:
* Make-lang.in (cc1plus): Depend on $(BACKEND), not stamp-objlist.
* Makefile.in: Add C_OBJS, BACKEND; delete OBJS, OBJDEPS.
(cc1plus): Link with $(BACKEND) and $(C_OBJS).
f:
* Make-lang.in (f771): Depend on $(BACKEND), not stamp-objlist.
* Makefile.in: Add BACKEND; delete OBJS, OBJDEPS.
(f771): Link with $(BACKEND).
java:
* Make-lang.in (jc1, jv-scan): Depend on $(BACKEND), not stamp-objlist.
* Makefile.in: Add BACKEND; delete OBJS, OBJDEPS.
(jc1): Link with $(BACKEND).
(jv-scan): Depend on version.o, not all of $(OBJS) or $(BACKEND).
From-SVN: r35501
2000-08-05 02:50:02 +02:00
|
|
|
|
2000-08-04 Andreas Schwab <schwab@suse.de>
|
|
|
|
|
|
|
|
|
|
* cppmain.c (cb_def_pragma): Skip the first two tokens from the
|
|
|
|
|
token list, which are always `#' and `pragma'.
|
|
|
|
|
|
|
|
|
|
2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* tree.c (tree_expr_nonnegative_p): Move to...
|
|
|
|
|
* fold-const.c: ... here. Also handle BIND_EXPR and RTL_EXPR.
|
|
|
|
|
(rtl_expr_nonnegative_p): New.
|
|
|
|
|
* tree.h: Add prototype for rtl_expr_nonnegative_p.
|
|
|
|
|
|
|
|
|
|
* real.h (CONST_DOUBLE_LOW, CONST_DOUBLE_HIGH, CONST_DOUBLE_MEM,
|
|
|
|
|
CONST_DOUBLE_CHAIN: Move to...
|
|
|
|
|
* rtl.h: ...here. Use XCINT/XCEXP.
|
|
|
|
|
|
|
|
|
|
* Makefile.in: Remove toplev.o from OBJS. Add rule to make
|
|
|
|
|
libbackend.a; add libbackend.a to STAGESTUFF. Add BACKEND
|
|
|
|
|
variable. Use BACKEND when linking cc1, not OBJS. Add BACKEND
|
|
|
|
|
to VOL_FILES.
|
|
|
|
|
|
|
|
|
|
* objc/Make-lang.in (cc1obj): Link with $(BACKEND).
|
|
|
|
|
|
2000-08-05 01:43:22 +02:00
|
|
|
|
2000-08-05 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
|
|
|
|
|
|
|
|
|
* config/c4x/c4x.md (return_indirect_internal): New.
|
|
|
|
|
* config/c4x/c4x.c (c4x_expand_epilogue): Use it.
|
|
|
|
|
|
2000-08-05 01:03:21 +02:00
|
|
|
|
2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* c-common.c (time_char_table): Mark up formats added in C99 and
|
|
|
|
|
make other corrections. %D and %g were added in C99. %Og is an
|
|
|
|
|
extension. %EX is permitted. %R, %T, %n, %r, %t were added in
|
|
|
|
|
C99. %e was added in C99. %Oj is an extension. %G and %z are in
|
|
|
|
|
C99 rather than GNU extensions, but %OG and %Oz are extensions.
|
|
|
|
|
%h was added in C99. %C was added in C99. %OY and %OC are
|
|
|
|
|
extensions. Add the C99 format %F.
|
|
|
|
|
(check_format_info): If pedantic and not in C99 mode, warn for C99
|
|
|
|
|
formats, %E and %O.
|
|
|
|
|
|
2000-08-05 00:06:49 +02:00
|
|
|
|
Fri Aug 4 23:01:58 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
|
|
|
|
|
|
|
|
|
|
* function.c (schedule_fixup_var_refs): New function, broken out
|
|
|
|
|
of put_reg_into_stack.
|
|
|
|
|
(put_reg_into_stack): Use it.
|
|
|
|
|
(put_var_into_stack): In CONCAT case, fixup up references for
|
|
|
|
|
components only after fixing up references to the whole concat.
|
|
|
|
|
|
2000-08-04 22:28:08 +02:00
|
|
|
|
2000-08-04 Rodney Brown <RodneyBrown@pmsc.com>
|
|
|
|
|
|
|
|
|
|
* alias.c (mark_constant_function): Use INSN_P.
|
|
|
|
|
(init_alias_analysis): Likewise.
|
|
|
|
|
* combine.c (combine_instructions): Use INSN_P.
|
|
|
|
|
(can_combine_p): Likewise.
|
|
|
|
|
(try_combine): Likewise.
|
|
|
|
|
(distribute_notes): Likewise.
|
|
|
|
|
(distribute_links): Likewise.
|
|
|
|
|
* cse.c (cse_around_loop): Use INSN_P.
|
|
|
|
|
(invalidate_skipped_block): Likewise.
|
|
|
|
|
(cse_set_around_loop): Likewise.
|
|
|
|
|
(cse_end_of_basic_block): Likewise.
|
|
|
|
|
(delete_trivially_dead_insns): Likewise.
|
|
|
|
|
* emit-rtl.c (unshare_all_rtl_again): Use INSN_P.
|
|
|
|
|
(unshare_all_rtl_1): Likewise.
|
|
|
|
|
(next_cc0_user): Likewise.
|
|
|
|
|
(try_split make_insn_raw): Likewise.
|
|
|
|
|
(remove_unnecessary_notes): Likewise.
|
|
|
|
|
* final.c (shorten_branches): Use INSN_P.
|
|
|
|
|
(leaf_renumber_regs): Likewise.
|
|
|
|
|
(leaf_renumber_regs_insn): Likewise.
|
|
|
|
|
* flow.c (find_label_refs): Use INSN_P.
|
|
|
|
|
(verify_wide_reg): Likewise.
|
|
|
|
|
(notice_stack_pointer_modification): Likewise.
|
|
|
|
|
(count_or_remove_death_notes): Likewise.
|
|
|
|
|
(verify_flow_info): Likewise.
|
|
|
|
|
(clear_log_links): Likewise.
|
|
|
|
|
* function.c (fixup_var_refs_insns): Use INSN_P.
|
|
|
|
|
(compute_insns_for_mem): Likewise.
|
|
|
|
|
* gcse.c (alloc_gcse_mem): Use INSN_P.
|
|
|
|
|
(compute_sets): Likewise.
|
|
|
|
|
(compute_hash_table): Likewise.
|
|
|
|
|
(classic_gcse): Likewise.
|
|
|
|
|
(cprop): Likewise.
|
|
|
|
|
(insert_insn_end_bb): Likewise.
|
|
|
|
|
(delete_null_pointer_checks_1): Likewise.
|
|
|
|
|
* global.c (expand_preferences): Use INSN_P.
|
|
|
|
|
(build_insn_chain): Likewise.
|
|
|
|
|
* graph.c (node_data): Use INSN_P.
|
|
|
|
|
* haifa-sched.c (priority): Use INSN_P.
|
|
|
|
|
(rm_line_notes): Likewise.
|
|
|
|
|
(rm_other_notes): Likewise.
|
|
|
|
|
(find_insn_reg_weight): Likewise.
|
|
|
|
|
(init_target_units): Likewise.
|
|
|
|
|
(schedule_block): Likewise.
|
|
|
|
|
(compute_block_forward_dependences): Likewise.
|
|
|
|
|
(debug_dependencies): Likewise.
|
|
|
|
|
(set_priorities): Likewise.
|
|
|
|
|
* integrate.c (function_cannot_inline_p): Use INSN_P.
|
|
|
|
|
(save_parm_insns): Likewise.
|
|
|
|
|
(copy_insn_list): Likewise.
|
|
|
|
|
* jump.c (mark_all_labels): Use INSN_P.
|
|
|
|
|
(never_reached_warning): Likewise.
|
|
|
|
|
* lcm.c (optimize_mode_switching): Use INSN_P.
|
|
|
|
|
* local-alloc.c (validate_equiv_mem): Use INSN_P.
|
|
|
|
|
(memref_used_between_p): Likewise.
|
|
|
|
|
(update_equiv_regs): Likewise.
|
|
|
|
|
(block_alloc): Likewise.
|
|
|
|
|
(no_conflict_p): Likewise.
|
|
|
|
|
* loop.c (scan_loop): Use INSN_P.
|
|
|
|
|
(find_and_verify_loops): Likewise.
|
|
|
|
|
(count_loop_regs_set): Likewise.
|
|
|
|
|
(loop_reg_used_before_p): Likewise.
|
|
|
|
|
(strength_reduce): Likewise.
|
|
|
|
|
(recombine_givs): Likewise.
|
|
|
|
|
(check_dbra_loop): Likewise.
|
|
|
|
|
(load_mems): Likewise.
|
|
|
|
|
(try_copy_prop): Likewise.
|
|
|
|
|
* print-rtl.c (print_rtx): Use INSN_P.
|
|
|
|
|
* recog.c (find_single_use): Use INSN_P.
|
|
|
|
|
* reg-stack.c (stack_regs_mentioned): Use INSN_P.
|
|
|
|
|
(next_flags_user): Likewise.
|
|
|
|
|
(swap_rtx_condition): Likewise.
|
|
|
|
|
* regmove.c (mark_flags_life_zones): Use INSN_P.
|
|
|
|
|
(optimize_reg_copy_1): Likewise.
|
|
|
|
|
(optimize_reg_copy_2): Likewise.
|
|
|
|
|
(optimize_reg_copy_3): Likewise.
|
|
|
|
|
(reg_is_remote_constant_p): Likewise.
|
|
|
|
|
(fixup_match_2): Likewise.
|
|
|
|
|
(regmove_optimize): Likewise.
|
|
|
|
|
(fixup_match_1): Likewise.
|
|
|
|
|
* regrename.c (build_def_use): Use INSN_P.
|
|
|
|
|
(replace_reg_in_block): Likewise.
|
|
|
|
|
(consider_use): Likewise.
|
|
|
|
|
* reload.c (find_equiv_reg): Use INSN_P.
|
|
|
|
|
* reload1.c (reload): Use INSN_P.
|
|
|
|
|
(maybe_fix_stack_asms): Likewise.
|
|
|
|
|
(calculate_needs_all_insns): Likewise.
|
|
|
|
|
(reload_as_needed): Likewise.
|
|
|
|
|
(emit_output_reload_insns): Likewise.
|
|
|
|
|
(delete_address_reloads_1): Likewise.
|
|
|
|
|
(reload_cse_regs_1): Likewise.
|
|
|
|
|
(reload_combine): Likewise.
|
|
|
|
|
(reload_cse_move2add): Likewise.
|
|
|
|
|
* reorg.c (redundant_insn): Use INSN_P.
|
|
|
|
|
(dbr_schedule): Likewise.
|
|
|
|
|
* resource.c (find_dead_or_set_registers): Use INSN_P.
|
|
|
|
|
(mark_target_live_regs): Likewise.
|
|
|
|
|
* rtlanal.c (reg_used_between_p): Use INSN_P.
|
|
|
|
|
(reg_referenced_between_p): Likewise.
|
|
|
|
|
(reg_set_between_p): Likewise.
|
|
|
|
|
(reg_set_p): Likewise.
|
|
|
|
|
(single_set): Likewise.
|
|
|
|
|
(multiple_sets): Likewise.
|
|
|
|
|
(find_last_value): Likewise.
|
|
|
|
|
(reg_set_last): Likewise.
|
|
|
|
|
(find_reg_note): Likewise.
|
|
|
|
|
(find_regno_note): Likewise.
|
|
|
|
|
* sibcall.c (sequence_uses_addressof): Use INSN_P.
|
|
|
|
|
* simplify-rtx.c (cselib_process_insn): Use INSN_P.
|
|
|
|
|
* ssa.c (find_evaluations): Use INSN_P.
|
|
|
|
|
(rename_block): Likewise.
|
|
|
|
|
(rename_equivalent_regs): Likewise.
|
|
|
|
|
* unroll.c (loop_find_equiv_value): Use INSN_P.
|
|
|
|
|
(set_dominates_use): Likewise.
|
|
|
|
|
* varasm.c (mark_constant_pool): Use INSN_P.
|
|
|
|
|
(mark_constants): Likewise.
|
|
|
|
|
* config/alpha/alpha.c (alpha_does_function_need_gp): Use INSN_P.
|
|
|
|
|
(alphaev4_next_group): Likewise.
|
|
|
|
|
(alphaev5_next_group): Likewise.
|
|
|
|
|
* config/c4x/c4x.c (c4x_process_after_reload): Use INSN_P.
|
|
|
|
|
(c4x_rptb_rpts_p): Likewise.
|
|
|
|
|
* config/mips/mips.c (mips16_optimize_gp): Use INSN_P.
|
|
|
|
|
* config/rs6000/rs6000.c (uses_TOC): Use INSN_P.
|
|
|
|
|
(rs6000_adjust_priority): Likewise.
|
|
|
|
|
* config/sh/sh.c (sh_loop_align): Use INSN_P.
|
|
|
|
|
(machine_dependent_reorg): Likewise.
|
|
|
|
|
(split_branches): Likewise.
|
|
|
|
|
* config/tahoe/tahoe.c (tahoe_cmp_check): Use INSN_P.
|
|
|
|
|
|
2000-08-04 21:16:05 +02:00
|
|
|
|
Fri Aug 4 11:43:49 2000 John Wehle (john@feith.com)
|
|
|
|
|
|
|
|
|
|
* combine.c (recog_for_combine): Remove the old notes
|
|
|
|
|
prior to attempting to recognize the new pattern.
|
|
|
|
|
(distribute_notes): Ignore REG_NONNEG notes.
|
|
|
|
|
|
2000-08-04 20:11:16 +02:00
|
|
|
|
2000-08-04 Chandrakala Chavva <cchavva@redhat.com>
|
|
|
|
|
|
|
|
|
|
* varasm.c (output_constructor): Add .align 0 for packed vars.
|
|
|
|
|
|
2000-08-04 19:25:19 +02:00
|
|
|
|
2000-08-04 J. David Anglin <dave@hiauly1.hia.nrc.ca>
|
|
|
|
|
|
2000-08-04 19:39:19 +02:00
|
|
|
|
* configure.in: Use default thread_file even when enable_threads is
|
|
|
|
|
yes or dce because hpux10.20 pa port uses MULTILIB implementation.
|
|
|
|
|
* configure: Rebuilt.
|
|
|
|
|
|
2000-08-04 19:25:19 +02:00
|
|
|
|
* gthr-dce.h (__gthread_objc_condition_allocate): Fix typo.
|
|
|
|
|
|
2000-08-04 19:02:51 +02:00
|
|
|
|
2000-08-04 Donn Terry (donnte@microsoft.com)
|
|
|
|
|
|
|
|
|
|
* prefix.c (translate_name): Don't strip trailing DIR_SEPARATOR.
|
|
|
|
|
|
|
|
|
|
2000-08-04 Mark Elbrecht <snowball3@bigfoot.com>
|
2000-08-04 18:19:19 +02:00
|
|
|
|
|
|
|
|
|
* i386/x-djgpp: Delete code that conditionally modifies target_alias.
|
|
|
|
|
Delete code that conditionally modifies 'version'.
|
|
|
|
|
Delete X_CPPFLAGS. Add comment for SYSTEM_HEADER_DIR.
|
|
|
|
|
* i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): New macro.
|
|
|
|
|
* gcc.c (main): Use it.
|
|
|
|
|
* config/i386/xm-djgpp.h (UPDATE_PATH_HOST_CANONICALIZE): New macro.
|
|
|
|
|
* prefix.c (update_path): Use it.
|
|
|
|
|
* i386/djgpp.h (STANDARD_INCLUDE_DIR): Define.
|
|
|
|
|
(MD_EXEC_PREFIX): Set to '/dev/env/DJDIR/bin/'.
|
|
|
|
|
(ASM_OUTPUT_SECTION_NAME): Add code attribute to sections containing
|
|
|
|
|
code.
|
|
|
|
|
(SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Default to true.
|
|
|
|
|
(SUBTARGET_SWITCHES): Adjust.
|
|
|
|
|
(WCHAR_UNSIGNED, WCHAR_TYPE_SIZE, WCHAR_TYPE): Undefine before
|
|
|
|
|
defining.
|
|
|
|
|
(WINT_TYPE, SIZE_TYPE, PTRDIFF_TYPE): Define.
|
|
|
|
|
|
2000-08-04 18:10:14 +02:00
|
|
|
|
2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* c-common.h (flag_isoc94): Declare.
|
|
|
|
|
* c-decl.c (flag_isoc94): Define.
|
|
|
|
|
(c_decode_option): Set flag_isoc94 as appropriate.
|
|
|
|
|
* c-common.c (T_PD, T_IM, T_UIM): Define.
|
|
|
|
|
(format_char_info): Add tlen and jlen.
|
|
|
|
|
(print_char_table): Add entries for %t and %j. Allow %zn. Allow
|
|
|
|
|
%F. Allow %lf.
|
|
|
|
|
(scan_char_table): Add entries for %t and %j. Allow %F. Allow
|
|
|
|
|
%l[.
|
|
|
|
|
(time_char_table): Add NULL entries for %t and %j.
|
|
|
|
|
(check_format_info): Allow for %t and %j. Warn for %F if pedantic
|
|
|
|
|
and not C99. Warn for %lc, %ls and %l[ if pedantic and not C94.
|
|
|
|
|
Warn for printf %lf if pedantic and not C99. Don't warn for empty
|
|
|
|
|
precision. Allow precision argument to be unsigned int. If
|
|
|
|
|
pedantic, warn for %p passed an argument not a pointer to possibly
|
|
|
|
|
qualified void or a possibly qualified character type, and for
|
|
|
|
|
pointer targets of the wrong sign, except for character pointers.
|
|
|
|
|
|
2000-08-04 18:00:48 +02:00
|
|
|
|
2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* ginclude/stddef.h: Don't declare wint_t unless __need_wint_t.
|
|
|
|
|
* c-common.h (enum c_tree_index): Add CTI_WINT_TYPE.
|
|
|
|
|
(wint_type_node): Define.
|
|
|
|
|
* c-decl.c (WINT_TYPE): Define.
|
|
|
|
|
(init_decl_processing): Create the wint_type_node type.
|
|
|
|
|
* c-common.c (T_WI): Define.
|
|
|
|
|
(print_char_table): Use T_WI for %lc format.
|
|
|
|
|
|
2000-08-04 16:16:57 +02:00
|
|
|
|
2000-08-04 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixinc/: Verified that the MSDOS patch does not break
|
|
|
|
|
the UNIX functionality and applied the next three patches
|
|
|
|
|
from July:
|
|
|
|
|
|
|
|
|
|
2000-07-28 Eli Zaretskii <eliz@is.elta.co.il>
|
|
|
|
|
|
|
|
|
|
* fixinc/fixfixes.c (main) [__MSDOS__]: Avoid overwriting the
|
|
|
|
|
output file with the temporary one by appending ".X" to generate
|
|
|
|
|
the temporary fuile's name. If the output file already has an
|
|
|
|
|
extension, replace it with ".X".
|
|
|
|
|
|
|
|
|
|
* fixinc/fixincl.c (fix_with_system) [__MSDOS__]: Use $ORIGDIR,
|
|
|
|
|
not $DESTDIR, to find applyfix. Use sprintf instead of snprintf;
|
|
|
|
|
reallocate the command buffer while copying the command-line
|
|
|
|
|
argument. Redirect the output directly to the temporary file,
|
|
|
|
|
instead of going through another temporary file.
|
|
|
|
|
(process): Close the temporary file before unlinking it.
|
|
|
|
|
(machine_matches) [__MSDOS__]: If the machine doesn't match, set
|
|
|
|
|
the FD_SKIP_TEST flag. Pay attention to the FD_MACH_IFNOT flag.
|
|
|
|
|
(run_compiles): Pass p_fixd argument to machine_matches, as it
|
|
|
|
|
expects.
|
|
|
|
|
|
|
|
|
|
* fixinc/fixincl.sh: Export ORIGDIR. If $DJDIR is set in the
|
|
|
|
|
environment, assume there are no symlinks in the include
|
|
|
|
|
directory. When cleaning up the DONE files, look for them
|
|
|
|
|
case-insensitively. Don't try to remove symlinks if they aren't
|
|
|
|
|
there.
|
|
|
|
|
|
|
|
|
|
* fixinc/fixlib.c (make_raw_shell_str): Accept new argument smax;
|
|
|
|
|
all callers changed. Declare pz "const char *", to avoid compiler
|
|
|
|
|
warnings.
|
|
|
|
|
|
|
|
|
|
* fixinc/fixlib.h (ENV_TABLE): Get ORIGDIR from the environment.
|
|
|
|
|
Change prototype of make_raw_shell_str.
|
|
|
|
|
|
|
|
|
|
2000-07-27 Eli Zaretskii <eliz@is.elta.co.il>
|
|
|
|
|
|
|
|
|
|
* fixinc/fixincl.c [__MSDOS__]: Don't include "server.h".
|
|
|
|
|
(initialize) [__MSDOS__]: Use tempnam.
|
|
|
|
|
(initialize): Don't use SIGPIPE if it is not defined.
|
|
|
|
|
|
|
|
|
|
* fixinc/fixfixes.c (main) [__MSDOS__]: freopen for stdout should
|
|
|
|
|
return stdout.
|
|
|
|
|
|
|
|
|
|
2000-07-25 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixinc/fix*.[ch]: substantially reworked to make it possible
|
|
|
|
|
to run this program without using fork(2) or pipe(2) (i.e. in
|
|
|
|
|
a DOS environment).
|
|
|
|
|
|
2000-08-04 14:45:57 +02:00
|
|
|
|
2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
|
|
|
|
* cppdefault.h (WINT_TYPE): Define.
|
|
|
|
|
* cppinit.c (builtin_array): Define __WINT_TYPE__.
|
|
|
|
|
* tradcpp.c (initialize_builtins): Define __WINT_TYPE__.
|
|
|
|
|
* tm.texi (NO_BUILTIN_WINT_TYPE, WINT_TYPE): Document.
|
|
|
|
|
|
2000-08-04 13:52:08 +02:00
|
|
|
|
Fri Aug 4 06:53:46 2000 Clinton Popetz <cpopetz@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* (mips_legitimate_address_p): Don't allow register+offset
|
|
|
|
|
if the offset is large and negative, and we are compiling
|
|
|
|
|
for 64 bit registers.
|
|
|
|
|
|
2000-08-04 09:01:30 +02:00
|
|
|
|
2000-08-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
|
|
|
|
|
|
|
|
|
* gencodes.c (main): Define CODE_FOR_nothing as the last possible
|
|
|
|
|
insn_code_number + 1.
|
|
|
|
|
|
2000-08-04 08:55:10 +02:00
|
|
|
|
2000-08-04 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-04 09:07:55 +02:00
|
|
|
|
* h8300.c (function_prologue): Rearrange code for conciseness.
|
|
|
|
|
(function_epilogue): Likewise.
|
|
|
|
|
* h8300.h (OK_FOR_U): Fix formatting.
|
|
|
|
|
|
2000-08-04 08:55:10 +02:00
|
|
|
|
* cse.c: Fix a comment typo. Fix formatting.
|
|
|
|
|
|
2000-08-04 06:14:52 +02:00
|
|
|
|
2000-08-03 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/i386/i386.md (return_indirect_internal): New.
|
|
|
|
|
* config/i386/i386.c (ix86_expand_epilogue): Use it.
|
|
|
|
|
|
2000-08-04 03:30:06 +02:00
|
|
|
|
2000-08-03 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplex.c (parse_name): Might have to glue a CPP_OTHER token
|
|
|
|
|
before the name.
|
|
|
|
|
(lex_line): Glue @ onto the beginning of identifiers and
|
|
|
|
|
string constants, in Objective-C mode.
|
|
|
|
|
(output_token, spell_token): Handle CPP_OSTRING.
|
|
|
|
|
(can_paste, maybe_paste_with_next): Handle pasting @ onto the
|
|
|
|
|
beginning of a NAME or a STRING, in objc mode.
|
|
|
|
|
|
|
|
|
|
* cpplib.c (get_define_node): Do not permit identifiers that
|
|
|
|
|
begin with @ to be #defined.
|
|
|
|
|
* cppmacro.c (CAN_PASTE_AFTER): Add CPP_OTHER.
|
|
|
|
|
* cpplib.h (TTYPE_TABLE): Add CPP_OSTRING.
|
|
|
|
|
|
|
|
|
|
* c-lang.c, objc/objc-act.c (build_objc_string): Delete.
|
|
|
|
|
* c-tree.h (build_objc_string): Delete prototype.
|
|
|
|
|
* objc/objc-tree.def: Delete OBJC_STRING_CST.
|
|
|
|
|
* c-lex.c (yylex): Use build_string for all three kinds of strings.
|
|
|
|
|
|
|
|
|
|
* c-parse.in, objc/objc-act.c: Update commentary.
|
|
|
|
|
|
2000-08-04 01:10:18 +02:00
|
|
|
|
2000-08-03 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
2000-08-04 01:55:24 +02:00
|
|
|
|
* extend.texi: Fix typo in last change.
|
|
|
|
|
|
2000-08-04 01:10:18 +02:00
|
|
|
|
* extend.texi: Add commentary on statement-expressions and their
|
|
|
|
|
interactions with C++.
|
|
|
|
|
|
2000-08-04 00:41:38 +02:00
|
|
|
|
2000-08-03 Nick Clifton <nickc@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2.h (DW_LANG_Java): Change value to 0x000b.
|
|
|
|
|
* dwarf.h (LANG_JAVA): Change value to 0x000b.
|
|
|
|
|
|
2000-08-03 23:04:42 +02:00
|
|
|
|
2000-08-03 Anthony Green <green@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2out.c (gen_compile_unit_die): Add java language support.
|
|
|
|
|
(add_bound_info): Check for java language.
|
|
|
|
|
(is_java): New function.
|
|
|
|
|
* dwarfout.c (output_compile_unit_die): Ditto.
|
|
|
|
|
* dwarf.h (dwarf_source_language): Add java source language type.
|
|
|
|
|
* dwarf2.h (dwarf_source_language): Ditto.
|
|
|
|
|
|
2000-08-03 20:36:14 +02:00
|
|
|
|
Thu Aug 3 20:32:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* reg-stack.c (subst_stack_regs_pat): Use replace_reg to swap
|
|
|
|
|
operands.
|
|
|
|
|
|
|
|
|
|
* i386.c (ix86_expand_branch): Mode of comparison in
|
|
|
|
|
IF_THEN_ELSE is VOIDmode.
|
|
|
|
|
|
2000-08-03 18:06:13 +02:00
|
|
|
|
Thu Aug 3 10:05:53 2000 Akiko Matsushita <matusita@sra.co.jp>
|
|
|
|
|
|
|
|
|
|
* gengenrtl.c, rtl.c: Avoid #elif.
|
|
|
|
|
|
2000-08-03 17:05:25 +02:00
|
|
|
|
2000-08-03 Michael Poole <poole@troilus.org>
|
|
|
|
|
|
2000-08-04 03:30:06 +02:00
|
|
|
|
* tm.texi (Register Classes): Clarify order of sub-initializers
|
|
|
|
|
in REG_CLASS_CONTENTS.
|
2000-08-03 17:05:25 +02:00
|
|
|
|
|
2000-08-03 16:55:05 +02:00
|
|
|
|
Thu Aug 3 15:53:03 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
|
|
|
|
|
|
|
|
|
|
From SAITOH Masanobu:
|
|
|
|
|
* sh.h (ASM_OUTPUT_REG_PUSH): Fix syntax.
|
|
|
|
|
|
2000-08-03 15:30:18 +02:00
|
|
|
|
2000-08-03 David Billinghurst <David.Billinghurst@riotinto.com.au>
|
|
|
|
|
|
|
|
|
|
* config/i386/cygwin.h: Remove -remap from CPP_SPEC since this option
|
|
|
|
|
is not supported by tradcpp and isn't actually needed for cygwin.
|
|
|
|
|
|
2000-08-03 09:29:11 +02:00
|
|
|
|
2000-08-03 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-03 17:20:43 +02:00
|
|
|
|
* h8300.c: Fix a comment typo.
|
|
|
|
|
* h8300.h (OK_FOR_U): Accept a 32-bit constant address on H8/S.
|
|
|
|
|
|
2000-08-03 17:01:36 +02:00
|
|
|
|
* jump.c: Fix formatting.
|
|
|
|
|
|
2000-08-03 09:29:11 +02:00
|
|
|
|
* toplev.c: Fix formatting.
|
|
|
|
|
|
2000-08-03 09:05:28 +02:00
|
|
|
|
Thu Aug 3 01:05:32 2000 Jeffrey A Law (law@cygnus.com)
|
|
|
|
|
|
2000-08-03 09:16:39 +02:00
|
|
|
|
* flow.c (find_auto_inc): Verify that we've got a REG before
|
|
|
|
|
peeking at its regno. Fail, don't abort if we can't find
|
|
|
|
|
the increment of the desired register.
|
|
|
|
|
|
2000-08-03 09:05:28 +02:00
|
|
|
|
* pa.md (shadd height reduction patterns/splitters): Remove.
|
|
|
|
|
|
2000-08-03 02:31:39 +02:00
|
|
|
|
2000-08-02 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64-protos.h (flag_ssa): Declare.
|
|
|
|
|
* config/ia64/ia64.md (movti_internal, movti_internal+1): New.
|
|
|
|
|
|
2000-08-03 02:17:11 +02:00
|
|
|
|
2000-08-02 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* dce.c: Remove all uses of assert.
|
|
|
|
|
* dwarf2out.c: Likewise.
|
|
|
|
|
* dwarfout.c: Likewise.
|
|
|
|
|
* ssa.c: Likewise.
|
|
|
|
|
|
2000-08-02 22:21:27 +02:00
|
|
|
|
2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* gcc.h (lang_specific_driver): Constify second argument.
|
|
|
|
|
* gcc.c (translate_options, process_command, main): Likewise.
|
|
|
|
|
Constify variables to match. Cast second argument to
|
|
|
|
|
pexecute.
|
|
|
|
|
|
|
|
|
|
* cppspec.c, gccspec.c: Adjust type of second argument to
|
|
|
|
|
lang_specific_driver, and update code as necessary.
|
|
|
|
|
|
2000-08-02 19:29:52 +02:00
|
|
|
|
2000-08-02 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* loop.c (scan_loop): Ensure update_end label does not
|
|
|
|
|
go away until reg_scan_update is run.
|
|
|
|
|
|
2000-08-02 19:01:13 +02:00
|
|
|
|
2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* c-common.h: Prototype min_precision and c_build_qualified_type here...
|
|
|
|
|
* c-tree.h: ... not here.
|
|
|
|
|
* errors.h: Prototype fancy_abort.
|
|
|
|
|
|
|
|
|
|
* emit-rtl.c (gen_lowpart_common): Move variable 'c' into
|
|
|
|
|
HOST_BITS_PER_WIDE_INT == 64 ifdef block.
|
|
|
|
|
* regrename.c (regrename_optimize): Make control flow explicit.
|
|
|
|
|
(replace_reg_in_block): Initialize reg_use to 0.
|
|
|
|
|
|
|
|
|
|
* i386.c (legitimate_address_p): Rename error label to
|
|
|
|
|
report_error to avoid namespace clash.
|
|
|
|
|
|
2000-08-02 17:28:44 +02:00
|
|
|
|
2000-08-02 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
|
|
|
|
* fold-const.c: Fix formatting.
|
|
|
|
|
|
2000-08-02 16:28:14 +02:00
|
|
|
|
Wed Aug 2 16:26:15 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* i386.c (legitimate_address_p): Accept other bases than
|
|
|
|
|
pic_offset_table_rtx for GOTOFF constructs.
|
|
|
|
|
|
2000-08-02 16:02:16 +02:00
|
|
|
|
Wed Aug 2 15:59:34 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* i386.md (shift to lea splitter): Use const_int_operand.
|
|
|
|
|
|
2000-08-02 09:08:49 +02:00
|
|
|
|
2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppexp.c, cppinit.c, cpplex.c, cpplib.c, cppmacro.c,
|
|
|
|
|
cppspec.c: Do not use 'legal' or 'illegal' in error messages
|
|
|
|
|
and comments.
|
|
|
|
|
|
|
|
|
|
* cppmain.c (cb_define, cb_undef): Don't generate any output
|
|
|
|
|
if not done_initializing.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
* cpplex.c (maybe_paste_with_next): When the token after a ##
|
2000-08-02 09:08:49 +02:00
|
|
|
|
is an omitted rest argument, only delete the token before it
|
|
|
|
|
if that token is a comma. Do not warn about bogus token
|
|
|
|
|
pastes for , ## rest_arg.
|
|
|
|
|
|
|
|
|
|
* cpp.texi: Update.
|
|
|
|
|
* cpp.1: Regenerate.
|
|
|
|
|
|
2000-08-02 09:04:33 +02:00
|
|
|
|
2000-08-02 Fred Fish <fnf@be.com>
|
|
|
|
|
|
|
|
|
|
* config/i386/beos-elf.h (STARTFILE_SPEC): Add i386-mcount.o
|
|
|
|
|
when user gives -p option. Add init_term_dyn.o for BeOS 5.0
|
|
|
|
|
and later.
|
|
|
|
|
|
|
|
|
|
* config/i386/beos-elf.h (INCLUDE_DEFAULTS): Add additional
|
|
|
|
|
Be directories to search path.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-08-02 09:04:33 +02:00
|
|
|
|
Remove support for __declspec(dllimport) and __declspec(dllexport).
|
|
|
|
|
This is leftover cruft from the earlier BeOS gcc port when BeOS
|
|
|
|
|
used Microsoft's PE object file format.
|
|
|
|
|
* configure.in (i*86-*-beoself): Remove extra_objs=winnt.o.
|
|
|
|
|
* config/i386/t-beos (winnt.o): Remove Makefile frag.
|
|
|
|
|
* config/i386/beos-elf.h (TARGET_NOP_FUN_DLLIMPORT): Remove.
|
|
|
|
|
(VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
|
|
|
|
(VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
|
|
|
|
(MERGE_MACHINE_DECL_ATTRIBUTES): Remove.
|
|
|
|
|
(REDO_SECTION_INFO_P): Remove.
|
|
|
|
|
(ASM_EXPORT_DECL): Remove.
|
|
|
|
|
(ASM_DECLARE_FUNCTION_NAME): Remove.
|
|
|
|
|
(ASM_DECLARE_OBJECT_NAME): Remove.
|
|
|
|
|
(ASM_OUTPUT_ALIGNED_COMMON): Remove.
|
|
|
|
|
(ASM_OUTPUT_ALIGNED_DECL_COMMON): Remove.
|
|
|
|
|
(ASM_OUTPUT_ALIGNED_LOCAL): Remove.
|
|
|
|
|
(STRIP_NAME_ENCODING): Remove.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-08-02 09:04:33 +02:00
|
|
|
|
Remove support for obsolete version of BeOS that is no longer
|
|
|
|
|
supported by Be.
|
|
|
|
|
* configure.in (i*86-*-beospe*): Remove.
|
|
|
|
|
* config/i386/beos-pe.h: Remove.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-08-02 06:21:27 +02:00
|
|
|
|
2000-08-01 Jeffrey Oldham <oldham@codesourcery.com>
|
2000-08-04 03:30:06 +02:00
|
|
|
|
Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
2000-08-02 06:21:27 +02:00
|
|
|
|
* Makefile.in (OBJS): Added dce.o.
|
|
|
|
|
(ssa.o): Updated target to include ssa.h.
|
|
|
|
|
(flow.o): Likewise.
|
|
|
|
|
(toplev.o): Likewise.
|
|
|
|
|
(dce.o): Created target.
|
|
|
|
|
* basic-block.h: Added comments.
|
|
|
|
|
(INVALID_BLOCK): Added definition.
|
|
|
|
|
(connect_infinite_loops_to_exit): Added declaration.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
Moved SSA declarations to ssa.h.
|
2000-08-02 06:21:27 +02:00
|
|
|
|
* flow.c: Added inclusion of ssa.h.
|
|
|
|
|
(struct depth_first_search_dsS, depth_first_search_ds):
|
|
|
|
|
Added definitions.
|
|
|
|
|
(compute_immediate_postdominators): Added definition.
|
|
|
|
|
(connect_infinite_loops_to_exit): Likewise.
|
|
|
|
|
(flow_dfs_compute_reverse_init): Likewise.
|
|
|
|
|
(flow_dfs_compute_reverse_add_bb): Likewise.
|
|
|
|
|
(flow_dfs_compute_reverse_execute): Likewise.
|
|
|
|
|
(flow_dfs_compute_reverse_finish): Likewise.
|
|
|
|
|
* rtl.h (rtx/in_struct): Added use to determine insn necessity.
|
|
|
|
|
(LABEL_P): Added definition.
|
|
|
|
|
(JUMP_P): Likewise.
|
|
|
|
|
(NOTE_P): Likewise.
|
|
|
|
|
(BARRIER_P): Likewise.
|
|
|
|
|
(JUMP_TABLE_DATA_P): Likewise.
|
|
|
|
|
(INSN_DEAD_CODE_P): Likewise.
|
|
|
|
|
* ssa.c: Replaced inclusions with ssa.h inclusion.
|
|
|
|
|
(CONVERT_HARD_REGISTER_TO_SSA_P): Moved to ssa.h.
|
|
|
|
|
(rename_registers): Removed unnecessary variables.
|
|
|
|
|
* ssa.h: Created by moving declarations from ssa.c and
|
|
|
|
|
basic-block.h.
|
|
|
|
|
* timevar.def: Defined TV_DEAD_CODE_ELIM.
|
|
|
|
|
* toplev.c: Added ssa.h inclusion.
|
|
|
|
|
(dump_file_index): Added DFI_dce.
|
|
|
|
|
(dump_file): Added "dce" entry.
|
|
|
|
|
Defined flag_ssa.
|
|
|
|
|
(f_options): Added dce entry.
|
|
|
|
|
* invoke.texi: Document -fdce. Emphasize experimental status of
|
2000-08-04 03:30:06 +02:00
|
|
|
|
-fssa.
|
2000-08-08 20:50:15 +02:00
|
|
|
|
* dce.c: New file.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-08-02 03:14:37 +02:00
|
|
|
|
2000-08-01 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpperror.c (v_message): Split into _cpp_begin_message and
|
|
|
|
|
v_message macro. All callers updated.
|
|
|
|
|
(_cpp_begin_message): Do inhibit_errors/inhibit_warnings
|
|
|
|
|
checks here.
|
|
|
|
|
|
|
|
|
|
* cppfiles.c (cpp_syshdr_flags): New function.
|
|
|
|
|
(read_include_file): Don't call cpp_output_tokens. Call
|
|
|
|
|
enter_file hook.
|
|
|
|
|
* cppinit.c (dump_macros_helper): Moved to cppmain.c.
|
|
|
|
|
(cpp_reader_init): Don't initialize token_buffer. Call
|
|
|
|
|
_cpp_init_internal_pragmas.
|
|
|
|
|
(cpp_cleanup): Don't clear token_buffer.
|
|
|
|
|
(cpp_start_read): Don't worry about output from -D processing.
|
|
|
|
|
Don't call cpp_output_tokens.
|
|
|
|
|
(cpp_finish): Don't dump macros here. Don't call
|
|
|
|
|
cpp_output_tokens.
|
|
|
|
|
* cppmacro.c (_cpp_dump_definition): Rename
|
|
|
|
|
cpp_dump_definition. Write directly to a FILE *.
|
|
|
|
|
(dump_funlike_macro): Delete.
|
|
|
|
|
(dump_macro_args): New.
|
|
|
|
|
|
|
|
|
|
* cpplex.c (TOKEN_LEN): Convert to inline function.
|
|
|
|
|
(_cpp_grow_token_buffer, safe_fwrite, cpp_output_tokens,
|
|
|
|
|
cpp_scan_line, _cpp_dump_list): Delete.
|
|
|
|
|
(cpp_printf, cpp_output_list): New.
|
|
|
|
|
(output_line_command): Don't worry about entering or leaving files.
|
|
|
|
|
(cpp_scan_buffer): Just output each token as we hit it.
|
|
|
|
|
(process_directive): Don't call cpp_output_tokens.
|
|
|
|
|
(_cpp_glue_header_name): Don't use token_buffer.
|
|
|
|
|
(output_token, dump_param_spelling): Write directly to a FILE *.
|
|
|
|
|
|
|
|
|
|
* cpplib.c (pass_thru_directive, dump_macro_name,
|
|
|
|
|
pragma_dispatch, do_pragma_gcc): Delete.
|
|
|
|
|
(do_define, do_undef, parse_include, do_line, do_ident, do_pragma,
|
|
|
|
|
do_pragma_poison, cpp_pop_buffer): Call the appropriate hook
|
|
|
|
|
functions.
|
|
|
|
|
(do_error, do_warning, pragma_dependency): Call
|
|
|
|
|
_cpp_begin_message, then cpp_output_list.
|
|
|
|
|
(cpp_register_pragma, cpp_register_pragma_space,
|
|
|
|
|
_cpp_init_internal_pragmas): New.
|
|
|
|
|
(do_pragma): Walk the pragmas table here.
|
|
|
|
|
(do_pragma_once, do_pragma_poison, do_pragma_system_header,
|
|
|
|
|
do_pragma_dependency): Return void.
|
|
|
|
|
(do_pragma_implementation): Moved to cppmain.c.
|
|
|
|
|
|
|
|
|
|
* cpplib.h: Update prototypes.
|
|
|
|
|
(struct cpp_reader): Remove printer, token_buffer,
|
|
|
|
|
token_buffer_size, and limit. Add struct cb, and pragmas.
|
|
|
|
|
(struct cpp_printer): Remove last_id and written.
|
|
|
|
|
(CPP_WRITTEN, CPP_PWRITTEN, CPP_SET_WRITTEN,
|
|
|
|
|
CPP_ADJUST_WRITTEN): Delete.
|
|
|
|
|
* cpphash.h: Update prototypes.
|
|
|
|
|
(ufputs): New wrapper.
|
|
|
|
|
|
|
|
|
|
* cppmain.c (cb_define, cb_undef, cb_include, cb_ident,
|
|
|
|
|
cb_enter_file, cb_leave_file, cb_def_pragma): New functions.
|
|
|
|
|
(main): Set up callbacks. Register #pragma implementation.
|
|
|
|
|
Dump macros from here.
|
|
|
|
|
|
2000-08-02 02:53:59 +02:00
|
|
|
|
2000-08-01 Geoff Keating <geoffk@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* rtl.h (enum reg_note): Add REG_MAYBE_DEAD.
|
|
|
|
|
* rtl.c (reg_note_name): Add REG_MAYBE_DEAD.
|
|
|
|
|
* flow.c (propagate_one_insn): Allow deletion of prologue/epilogue
|
|
|
|
|
insns if they have a REG_MAYBE_DEAD note attached.
|
|
|
|
|
* config/rs6000/rs6000.c (rs6000_maybe_dead): New function.
|
|
|
|
|
(rs6000_emit_load_toc_table): TOC loads may go dead.
|
|
|
|
|
|
2000-08-02 00:23:56 +02:00
|
|
|
|
2000-08-01 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (ia64_function_arg): Fix last change. Verify
|
|
|
|
|
type exists before using it. Use number of words as alignment
|
|
|
|
|
otherwise.
|
|
|
|
|
(ia64_function_arg_partial_nregs, ia64_function_arg_advance,
|
|
|
|
|
ia64_va_arg): Propagate ia64_function_args changes here.
|
|
|
|
|
|
2000-08-01 22:24:22 +02:00
|
|
|
|
2000-08-01 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Care for null DECL.
|
|
|
|
|
* config/ia64/sysv4.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise.
|
|
|
|
|
|
2000-08-01 20:45:53 +02:00
|
|
|
|
2000-08-01 Bernd Schmidt <bernds@cygnus.co.uk>
|
|
|
|
|
|
|
|
|
|
From Joern Rennecke:
|
|
|
|
|
* sh.h (CPP_SPEC, TARGET_SWITCHES): Add m4-nofpu.
|
|
|
|
|
* sh.md (udivsi3, divsi3): Don't use libcalls that use the FPU
|
|
|
|
|
unless TARGET_SH3E is set.
|
|
|
|
|
* t-sh (MULTILIB_MATCHES): Add m2=m4-nofpu.
|
|
|
|
|
|
|
|
|
|
* sh.md (ashlsi3_d, ashlsi3_k): Remove, replace with
|
|
|
|
|
(ashlsi3_std): New pattern.
|
|
|
|
|
(ashlsi3 expander): Use it for TARGET_SH3.
|
|
|
|
|
* sh.c (gen_ashift): Use it instead of ashlsi3_k.
|
|
|
|
|
|
2000-08-01 12:36:25 +02:00
|
|
|
|
Tue Aug 1 12:34:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* loop.c (canonicalize_condition): Use destination, not source to
|
|
|
|
|
determine SET's mode.
|
|
|
|
|
|
2000-08-01 08:42:51 +02:00
|
|
|
|
2000-07-31 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* flow.c (clear_log_links): Fix typo.
|
|
|
|
|
|
2000-08-01 06:19:47 +02:00
|
|
|
|
Mon Jul 31 22:19:24 2000 Jeffrey A Law (law@cygnus.com)
|
|
|
|
|
|
|
|
|
|
* loop.c (check_dbra_loop): Make change from July 17, 2000 work
|
|
|
|
|
on targets which need more than one insn for a compare/cbranch
|
|
|
|
|
operation.
|
|
|
|
|
|
2000-08-01 05:22:53 +02:00
|
|
|
|
2000-07-31 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (ia64_function_arg): Use alignment not size
|
|
|
|
|
when computing offset.
|
|
|
|
|
|
2000-08-01 05:16:19 +02:00
|
|
|
|
Mon Jul 31 20:35:50 2000 Denis Chertykov <denisc@overta.ru>
|
|
|
|
|
|
|
|
|
|
* genpeep.c (main): Handle DEFINE_PEEPHOLE2.
|
|
|
|
|
|
2000-08-01 03:27:45 +02:00
|
|
|
|
2000-07-31 Geoff Keating <geoffk@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* flow.c (clear_log_links): Nuke global_live_at_start and
|
|
|
|
|
global_live_at_end data, since if the log_links stuff is invalid
|
|
|
|
|
so is global_live_at_*.
|
|
|
|
|
|
2000-08-01 02:07:43 +02:00
|
|
|
|
2000-07-31 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* tm.texi (Addressing Modes): Clarify PRE/POST_MODIFY descriptions.
|
|
|
|
|
|
2000-08-01 01:47:19 +02:00
|
|
|
|
2000-07-31 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* cpplex.c (_cpp_get_line): If index is 0, return line 0 col 0.
|
|
|
|
|
(_cpp_get_token): Don't macro expand a just pasted token if it
|
|
|
|
|
was pasted at no_expand_level.
|
|
|
|
|
|
|
|
|
|
2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppmacro.c (find_param, count_params, save_expansion):
|
|
|
|
|
Permit 'defined' as a macro parameter name.
|
|
|
|
|
|
2000-08-01 01:39:08 +02:00
|
|
|
|
2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* Makefile.in: Rename cpp to cpp0, tradcpp to tradcpp0, and
|
|
|
|
|
xcpp to cpp throughout.
|
|
|
|
|
(native): Remove unnecessary dependency on cpp.
|
|
|
|
|
|
|
|
|
|
* gcc.c (trad_capable_cpp, C specs): Rename cpp to cpp,
|
|
|
|
|
tradcpp to tradcpp0.
|
|
|
|
|
(.i spec): Add missing output-file spec to cc1 command line.
|
|
|
|
|
* objc/lang-specs.h: Rename cpp to cpp0 and/or tradcpp to tradcpp0.
|
|
|
|
|
|
2000-07-31 20:10:31 +02:00
|
|
|
|
2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* c-decl.c (mesg_implicit_function_declaration): Init to -1.
|
|
|
|
|
(implicit_decl_warning): New function.
|
|
|
|
|
(implicitly_declare): Use it.
|
|
|
|
|
* c-typeck.c (build_external_ref): Use implicit_decl_warning
|
|
|
|
|
to complain about implicit decls of builtins.
|
|
|
|
|
|
|
|
|
|
* c-lang.c (lang_init): Set mesg_implicit_function_declaration
|
|
|
|
|
based on pedantic && flag_isoc99, if not already set.
|
|
|
|
|
* c-tree.h: Declare mesg_implicit_function_declaration.
|
|
|
|
|
Prototype implicit_decl_warning.
|
|
|
|
|
|
2000-07-31 19:33:28 +02:00
|
|
|
|
2000-07-30 Jeffrey D. Oldham <oldham@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in (ssa.o): Updated header files in dependences.
|
|
|
|
|
* basic-block.h: Added compute_immediate_postdominators declaration.
|
|
|
|
|
* config/i386/i386.h (CONVERT_HARD_REGISTER_TO_SSA_P): Added
|
|
|
|
|
definition.
|
|
|
|
|
* flow.c (compute_immediate_dominators): Updated comment.
|
|
|
|
|
(compute_immediate_postdominators): Added definition.
|
|
|
|
|
* rtl.h (HARD_REGISTER_P): Added definition.
|
|
|
|
|
* ssa.c: Include additional header files.
|
|
|
|
|
(assert): Added definition.
|
|
|
|
|
(ssa_rename_to_lookup): Added to reimplement ssa_rename_to to
|
|
|
|
|
include select hard registers.
|
|
|
|
|
(ssa_rename_to_insert): Likewise.
|
|
|
|
|
(ssa_rename_from_initialize): Likewise.
|
|
|
|
|
(ssa_rename_from_lookup): Likewise.
|
|
|
|
|
(original_register): Likewise.
|
|
|
|
|
(ssa_rename_from_insert): Added to reimplement ssa_rename_from to
|
|
|
|
|
include select hard reigsters.
|
|
|
|
|
(ssa_rename_from_traverse): Likewise.
|
|
|
|
|
(ssa_rename_from_free): Likewise.
|
|
|
|
|
(ssa_rename_from_print): Likewise.
|
|
|
|
|
(ssa_rename_from_print_1): Likewise.
|
|
|
|
|
(ssa_rename_from_hash_function): Likewise.
|
|
|
|
|
(ssa_rename_from_equal): Likewise.
|
|
|
|
|
(ssa_rename_from_delete): Likewise.
|
|
|
|
|
(simplify_to_immediate_dominators): Removed in favor of
|
|
|
|
|
flow.c:compute_immediate_dominators.
|
|
|
|
|
(find_evaluations_1): Modified to work with hard registers.
|
|
|
|
|
(insert_phi_node): Likewise.
|
|
|
|
|
(insert_phi_nodes): Likewise.
|
|
|
|
|
(struct rename_set_data): Updated prev_reg comment.
|
|
|
|
|
(create_delayed_rename): Modified to work with hard registers.
|
|
|
|
|
(RENAME_NO_RTX): Updated comment.
|
|
|
|
|
(apply_delayed_renames): Modified to work with hard registers.
|
|
|
|
|
(rename_insn_1): Likewise and added handling of CLOBBER rtls.
|
|
|
|
|
(rename_block): Updated to use revised ssa_rename_to interface.
|
|
|
|
|
(rename_registers): Updated to use revised ssa_rename_to and
|
|
|
|
|
ssa_rename_from interface.
|
|
|
|
|
(convert_to_ssa): Revised to use compute_immediate_dominators and
|
|
|
|
|
deal with hard registers.
|
|
|
|
|
(make_regs_equivalent_over_bad_edges): Modified to work with hard
|
|
|
|
|
registers. Added check for illegal unification of hard register.
|
|
|
|
|
(make_equivalent_phi_alternatives_equivalent): Modified to work
|
|
|
|
|
with hard registers.
|
|
|
|
|
(compute_conservative_reg_partition): Likewise.
|
|
|
|
|
(coalesce_if_unconflicting): Modified to work with hard registers
|
|
|
|
|
and check for conflicting hard registers.
|
|
|
|
|
(mark_phi_and_copy_regs): Revised loop to work only on pseudo
|
|
|
|
|
registers.
|
|
|
|
|
(rename_equivalent_regs_in_insn): Modified to work with hard
|
|
|
|
|
registers.
|
|
|
|
|
(record_canonical_element_1): Added definition.
|
|
|
|
|
(check_hard_regs_in_partition): Added definition.
|
|
|
|
|
(convert_from_ssa): Added data structure deallocation and check
|
|
|
|
|
for illegal hard register unification.
|
|
|
|
|
(conflict_hard_regs_p): Added definition.
|
|
|
|
|
* toplev.c (rest_of_compilation): Added comment.
|
|
|
|
|
|
2000-07-31 19:23:25 +02:00
|
|
|
|
2000-07-31 Anthony Green <green@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/crtbegin.asm (__EH_FRAME_BEGIN__): Align correctly.
|
|
|
|
|
|
2000-07-31 18:37:34 +02:00
|
|
|
|
2000-07-31 Jason McMullan <jmcmullan@linuxcare.com>
|
|
|
|
|
|
|
|
|
|
* builtins.c (expand_builtin_apply): Don't defer pop during
|
|
|
|
|
argument setup.
|
|
|
|
|
|
2000-07-31 16:04:41 +02:00
|
|
|
|
2000-07-31 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
|
|
|
|
|
|
|
|
|
* calls.c (combine_pending_stack_adjustment_and_call): Only use
|
|
|
|
|
preferred_unit_stack_boundary when it is > 1.
|
|
|
|
|
|
2000-07-31 15:01:23 +02:00
|
|
|
|
2000-07-31 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
2000-07-31 16:00:34 +02:00
|
|
|
|
* c-common.c (init_function_format_info): Add C99 format functions
|
|
|
|
|
in C99 mode.
|
|
|
|
|
|
2000-07-31 15:11:39 +02:00
|
|
|
|
* c-decl.c (get_parm_info): Don't treat 'const void', 'volatile
|
|
|
|
|
void' or 'register void' as being the special case of 'void' alone
|
|
|
|
|
in a parameter list.
|
|
|
|
|
|
2000-07-31 15:01:23 +02:00
|
|
|
|
* c-typeck.c (build_c_cast): Change -Wcast-qual pedwarn for
|
|
|
|
|
discarding qualifiers into a plain warning.
|
|
|
|
|
|
2000-07-31 14:44:28 +02:00
|
|
|
|
2000-07-31 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-08-01 05:11:55 +02:00
|
|
|
|
* combine.c: Fix formatting.
|
|
|
|
|
|
2000-08-01 05:05:52 +02:00
|
|
|
|
* h8300.md: Fix formatting.
|
|
|
|
|
|
2000-07-31 15:57:02 +02:00
|
|
|
|
* local-alloc.c: Fix formatting.
|
|
|
|
|
|
2000-07-31 15:08:11 +02:00
|
|
|
|
* h8300.c (get_shift_alg): Remove the variable alg.
|
|
|
|
|
(emit_a_shift): Rearrange code to improve readability.
|
|
|
|
|
|
|
|
|
|
* h8300.md (movsi_h8300hs): Rearrange code to improve readability.
|
|
|
|
|
|
2000-07-31 14:51:11 +02:00
|
|
|
|
* h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and
|
|
|
|
|
HImode on all architectures and a combination of HImode and SImode
|
|
|
|
|
on H8/300H and H8/S.
|
|
|
|
|
|
2000-07-31 14:44:28 +02:00
|
|
|
|
* h8300.c (split_adds_subs): Rearrange code for conciseness.
|
|
|
|
|
|
2000-07-31 12:30:44 +02:00
|
|
|
|
Mon Jul 31 12:27:55 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* i386.md (addsi to lea splitter, ashlqi3_1_lea): Fix bugs
|
|
|
|
|
in my last checkin.
|
|
|
|
|
|
2000-07-31 10:42:26 +02:00
|
|
|
|
Mon Jul 31 10:41:01 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* recog.c (extract_insn): Set operand_mode according to
|
|
|
|
|
operand if match_operand is VOIDmode.
|
|
|
|
|
|
|
|
|
|
Mon Jul 31 10:36:38 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
2000-07-31 10:37:30 +02:00
|
|
|
|
|
|
|
|
|
* recog.c (validate_replace_rtx_1): Do not abort for (nil) expression.
|
|
|
|
|
|
2000-07-31 10:28:01 +02:00
|
|
|
|
2000-07-31 Geoff Keating <geoffk@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* c-parse.in (extdefs): Call ggc_collect between external
|
|
|
|
|
definitions.
|
|
|
|
|
|
Makefile.in (OBJS): Add doloop.o.
* Makefile.in (OBJS): Add doloop.o.
* doloop.c: New file.
* final.c (insn_current_reference_address): Return 0 before final.
* flags.h (flag_branch_on_count_reg): Fix typos in commentary.
* jump.c (any_uncondjump_p): Likewise.
* loop.c (indirect_jump_in_function): Make static.
(strength_reduce): Call doloop_optimize.
(insert_bct, instrument_loop_bct): Remove.
* loop.h (doloop_optimize): Prototype.
* recog.c (split_all_insns): Split all INSN_P.
* toplev.c (flag_branch_on_count_reg): Default on.
* config/c4x/c4x.c (c4x_optimization_options): Don't set
flag_branch_on_count_reg.
* config/i386/i386.c (override_options): Likewise.
* config/rs6000/rs6000.c (optimization_options): Likewise.
* config/i386/i386.md (decrement_and_branch_on_count): Remove.
(doloop_end): New.
(dbra_ge): Remove, as well as all it's splitters.
* config/rs6000/rs6000.md (decrement_and_branch_on_count): Remove.
(doloop_end): New.
* config/ia64/ia64-protos.h (ar_lc_reg_operand): Declare.
(ia64_register_move_cost): Declare.
* config/ia64/ia64.c (ar_lc_reg_operand): New.
(struct ia64_frame_info): Add ar_size.
(ia64_compute_frame_size): Set it.
(save_restore_insns): Save and restore ar.lc.
(ia64_register_move_cost): New, moved from header file. Handle
application registers.
(REG_AR_PFS, REG_AR_EC): Remove. Replace with AR_*_REGNUM numbers.
(emit_insn_group_barriers): Special case doloop_end_internal.
(ia64_epilogue_uses): Mark ar.lc live at end.
* config/ia64/ia64.h (AR_CCV_REGNUM, AR_LC_REGNUM): New registers.
(AR_EC_REGNUM, AR_PFS_REGNUM): New registers.
(FIRST_PSEUDO_REGISTER): Make room.
(AR_M_REGNO_P, AR_I_REGNO_P, AR_REGNO_P): New.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Update.
(REG_ALLOC_ORDER): Update.
(HARD_REGNO_MODE_OK): Update.
(REGISTER_NAMES): Update.
(enum reg_class): Add AR_M_REGS and AR_I_REGS.
(REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update.
(REGNO_REG_CLASS): Update.
(LEGITIMATE_ADDRESS_DISP): Displacement range is 9 bits, not 10.
(REGISTER_MOVE_COST): Move out of line.
(PREDICATE_CODES): Update.
* config/ia64/ia64.md (movdi patterns): Handle ar register classes.
(addsi3_plus1_alt, adddi3_plus1_alt): New.
(shladd_elim splitter): Allow constants in the predicate.
(doloop_end, doloop_end_internal): New.
From-SVN: r35358
2000-07-31 01:58:03 +02:00
|
|
|
|
2000-07-30 Michael Hayes <mhayes@cygnus.com>
|
|
|
|
|
Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in (OBJS): Add doloop.o.
|
|
|
|
|
* doloop.c: New file.
|
|
|
|
|
|
|
|
|
|
* final.c (insn_current_reference_address): Return 0 before final.
|
|
|
|
|
* flags.h (flag_branch_on_count_reg): Fix typos in commentary.
|
|
|
|
|
* jump.c (any_uncondjump_p): Likewise.
|
|
|
|
|
* loop.c (indirect_jump_in_function): Make static.
|
|
|
|
|
(strength_reduce): Call doloop_optimize.
|
|
|
|
|
(insert_bct, instrument_loop_bct): Remove.
|
|
|
|
|
* loop.h (doloop_optimize): Prototype.
|
|
|
|
|
* recog.c (split_all_insns): Split all INSN_P.
|
|
|
|
|
* toplev.c (flag_branch_on_count_reg): Default on.
|
|
|
|
|
|
|
|
|
|
* config/c4x/c4x.c (c4x_optimization_options): Don't set
|
|
|
|
|
flag_branch_on_count_reg.
|
|
|
|
|
* config/i386/i386.c (override_options): Likewise.
|
|
|
|
|
* config/rs6000/rs6000.c (optimization_options): Likewise.
|
|
|
|
|
|
|
|
|
|
* config/i386/i386.md (decrement_and_branch_on_count): Remove.
|
|
|
|
|
(doloop_end): New.
|
|
|
|
|
(dbra_ge): Remove, as well as all it's splitters.
|
|
|
|
|
|
|
|
|
|
* config/rs6000/rs6000.md (decrement_and_branch_on_count): Remove.
|
|
|
|
|
(doloop_end): New.
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64-protos.h (ar_lc_reg_operand): Declare.
|
|
|
|
|
(ia64_register_move_cost): Declare.
|
|
|
|
|
* config/ia64/ia64.c (ar_lc_reg_operand): New.
|
|
|
|
|
(struct ia64_frame_info): Add ar_size.
|
|
|
|
|
(ia64_compute_frame_size): Set it.
|
|
|
|
|
(save_restore_insns): Save and restore ar.lc.
|
|
|
|
|
(ia64_register_move_cost): New, moved from header file. Handle
|
|
|
|
|
application registers.
|
|
|
|
|
(REG_AR_PFS, REG_AR_EC): Remove. Replace with AR_*_REGNUM numbers.
|
|
|
|
|
(emit_insn_group_barriers): Special case doloop_end_internal.
|
|
|
|
|
(ia64_epilogue_uses): Mark ar.lc live at end.
|
|
|
|
|
* config/ia64/ia64.h (AR_CCV_REGNUM, AR_LC_REGNUM): New registers.
|
|
|
|
|
(AR_EC_REGNUM, AR_PFS_REGNUM): New registers.
|
|
|
|
|
(FIRST_PSEUDO_REGISTER): Make room.
|
|
|
|
|
(AR_M_REGNO_P, AR_I_REGNO_P, AR_REGNO_P): New.
|
|
|
|
|
(FIXED_REGISTERS, CALL_USED_REGISTERS): Update.
|
|
|
|
|
(REG_ALLOC_ORDER): Update.
|
|
|
|
|
(HARD_REGNO_MODE_OK): Update.
|
|
|
|
|
(REGISTER_NAMES): Update.
|
|
|
|
|
(enum reg_class): Add AR_M_REGS and AR_I_REGS.
|
|
|
|
|
(REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update.
|
|
|
|
|
(REGNO_REG_CLASS): Update.
|
|
|
|
|
(LEGITIMATE_ADDRESS_DISP): Displacement range is 9 bits, not 10.
|
|
|
|
|
(REGISTER_MOVE_COST): Move out of line.
|
|
|
|
|
(PREDICATE_CODES): Update.
|
|
|
|
|
* config/ia64/ia64.md (movdi patterns): Handle ar register classes.
|
|
|
|
|
(addsi3_plus1_alt, adddi3_plus1_alt): New.
|
|
|
|
|
(shladd_elim splitter): Allow constants in the predicate.
|
|
|
|
|
(doloop_end, doloop_end_internal): New.
|
|
|
|
|
|
|
|
|
|
2000-07-30 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* genattrtab.c (struct insn_def): Add lineno member.
|
|
|
|
|
(struct insn_ent): Likewise.
|
|
|
|
|
(struct attr_desc): Likewise.
|
|
|
|
|
(struct delay_desc): Likewise.
|
|
|
|
|
(struct function_unit_op): Likewise.
|
|
|
|
|
(struct function_unit): Likewise.
|
|
|
|
|
(check_attr_value): Use message_with_line.
|
|
|
|
|
(check_defs): Likewise.
|
|
|
|
|
(expand_units): Likewise.
|
|
|
|
|
(check_attr_test): Take a lineno argument.
|
|
|
|
|
(gen_attr): Likewise.
|
|
|
|
|
(gen_insn): Likewise.
|
|
|
|
|
(gen_delay): Likewise.
|
|
|
|
|
(gen_unit): Likewise.
|
|
|
|
|
(main): Give it to them.
|
|
|
|
|
(convert_set_attr_alternative): Take an insn_def argument
|
|
|
|
|
instead of num_alt and insn_index.
|
|
|
|
|
(convert_set_attr): Likewise.
|
|
|
|
|
(write_test_expr): Protect INSN_ADDRESSES load
|
|
|
|
|
with INSN_ADDRESSES_SET_P.
|
|
|
|
|
|
2000-07-31 01:05:52 +02:00
|
|
|
|
2000-07-30 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* flow.c (init_propagate_block_info): Use pc_set.
|
|
|
|
|
|
2000-07-30 20:59:56 +02:00
|
|
|
|
Sun Jul 30 20:58:34 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* i386.md (*lea_general_[123]) New insns and splits.
|
|
|
|
|
(addsi3 to lea splitter): Handle other modes too.
|
|
|
|
|
(shlsi3 to lea splitter): Likewise.
|
|
|
|
|
(addhi_1_lea, shlhi_1_lea): New patterns.
|
|
|
|
|
(addhi_1, shlhi_1): Conditionize by PARTIAL_REG_STALL.
|
|
|
|
|
|
2000-07-30 20:53:33 +02:00
|
|
|
|
Sun Jul 30 20:51:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* recog.c (general_operand, nonimmediate_operand): Accept
|
|
|
|
|
any mode for VOIDmode CONSTANT_P operands.
|
|
|
|
|
|
2000-07-30 20:44:13 +02:00
|
|
|
|
Sun Jul 30 20:42:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* gcse.c (try_replace_reg): Use validate_replace_rtx_subexp
|
|
|
|
|
instead of replace_rtx.
|
|
|
|
|
* recog.c (validate_replace_rtx_subexp): New function.
|
|
|
|
|
* recog.h (validate_replace_rtx_subexp): Declare.
|
|
|
|
|
|
2000-07-30 20:40:12 +02:00
|
|
|
|
Sun Jul 30 20:38:26 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* combine.c (simplify_set, make_extraction, make_compound_operation
|
|
|
|
|
make_field_assignment): Use full mask instead of GET_MODE_MASK (mode)
|
|
|
|
|
as force_to_mode argument.
|
|
|
|
|
|
2000-07-30 20:35:53 +02:00
|
|
|
|
Sun Jul 30 20:30:41 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
2000-07-31 10:28:01 +02:00
|
|
|
|
* combine.c (if_then_else_cond): Be sure that mode fits in
|
|
|
|
|
HOST_WIDE_INT.
|
2000-07-30 20:35:53 +02:00
|
|
|
|
|
2000-07-30 20:30:05 +02:00
|
|
|
|
Sun Jul 30 20:27:36 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* combine.c (record_promoted_value): Allow bitsize of mode
|
|
|
|
|
to be equivalent to HOST_BITS_PER_WISE_INT.
|
|
|
|
|
|
2000-07-30 20:26:46 +02:00
|
|
|
|
Sun Jul 30 20:25:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
2000-08-04 03:30:06 +02:00
|
|
|
|
* function.c (assign_stack_local_1, assign_stack_temp_for_type):
|
2000-07-30 20:26:46 +02:00
|
|
|
|
Do not call gen_mode_alignment when mode is BLKmode.
|
|
|
|
|
|
2000-07-30 20:23:54 +02:00
|
|
|
|
Sun Jul 30 20:21:54 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* loop.c (express_from_1): Fix call of simplify_gen_binary.
|
|
|
|
|
|
2000-07-30 20:13:10 +02:00
|
|
|
|
Sun Jul 30 20:08:37 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* simplify-rtx.c (simplify_relational_operation): Verify that mode ==
|
|
|
|
|
VOIDmode implies both operands to be VOIDmode.
|
|
|
|
|
(simplify_ternary_operation): Compute properly the mode of comparison.
|
|
|
|
|
* combine.c (combine_simplify_rtx): Likewise.
|
|
|
|
|
|
2000-07-30 12:35:03 +02:00
|
|
|
|
2000-07-25 Michael Hayes <mph@paradise.net.nz>
|
|
|
|
|
|
|
|
|
|
* basic-block.h (struct loops): New field rc_order.
|
|
|
|
|
* flow.c (flow_loops_cfg_dump): Dump rc_order if computed.
|
|
|
|
|
(flow_loops_free): Free rc_order.
|
|
|
|
|
(flow_depth_first_order_compute): New parameter rc_order.
|
|
|
|
|
(flow_loops_find): Allocate rc_order and swap usage with
|
|
|
|
|
dfs_order.
|
|
|
|
|
|
c4x.md (set_ldp_prologue): Add for RTL prologue/epilogue.
* config/c4x/c4x.md (set_ldp_prologue): Add for RTL prologue/epilogue.
(push_st, push_dp, pop_st, pop_dp, popqi_unspec): Likewise.
(nodb_call, return_from_epilogue): Likewise.
(return_from_interrupt_epilogue, prologue, epilogue): Likewise.
* config/c4x/c4x.c (c4x_expand_prologue, c4x_expand_eplilogue): Add.
* config/c4x/c4x-protos.h (c4x_interrupt_function_p): Add.
(c4x_expand_prologue, c4x_expand_epilogue): Likewise.
(c4x_valid_type_attribute_p): Likewise.
* config/c4x/c4x.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
(FUNCTION_BLOCK_PROFILER_EXIT): Convert to emit RTL.
Co-Authored-By: Michael Hayes <m.hayes@elec.canterbury.ac.nz>
From-SVN: r35341
2000-07-30 11:12:46 +02:00
|
|
|
|
2000-07-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
|
|
|
|
Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
|
|
|
|
|
|
|
|
|
* config/c4x/c4x.md (set_ldp_prologue): Add for RTL prologue/epilogue.
|
|
|
|
|
(push_st, push_dp, pop_st, pop_dp, popqi_unspec): Likewise.
|
|
|
|
|
(nodb_call, return_from_epilogue): Likewise.
|
|
|
|
|
(return_from_interrupt_epilogue, prologue, epilogue): Likewise.
|
|
|
|
|
* config/c4x/c4x.c (c4x_expand_prologue, c4x_expand_eplilogue): Add.
|
|
|
|
|
* config/c4x/c4x-protos.h (c4x_interrupt_function_p): Add.
|
|
|
|
|
(c4x_expand_prologue, c4x_expand_epilogue): Likewise.
|
|
|
|
|
(c4x_valid_type_attribute_p): Likewise.
|
|
|
|
|
* config/c4x/c4x.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
|
|
|
|
|
(FUNCTION_BLOCK_PROFILER_EXIT): Convert to emit RTL.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-07-30 10:42:57 +02:00
|
|
|
|
2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
|
|
|
|
|
|
|
|
|
* config/c4x/c4x.c (c4x_emit_move_sequence): Use loadqi_big_constant
|
|
|
|
|
and loadhi_big_constant if applicable.
|
|
|
|
|
* config/c4x/c4x.md (loadqi_big_constant, loadhi_big_constant): Tweak
|
|
|
|
|
and add new splitter.s
|
|
|
|
|
|
2000-07-30 10:12:12 +02:00
|
|
|
|
2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
2000-07-30 10:29:01 +02:00
|
|
|
|
|
|
|
|
|
* config/c4x/c4x.c (c4x_rptb_insert): Make more robust.
|
|
|
|
|
|
|
|
|
|
2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
|
|
|
|
|
2000-07-30 10:25:57 +02:00
|
|
|
|
* config/c4x/c4x.h (ASM_FORMAT_PRIVATE_NAME): Output $ in label.
|
2000-07-30 10:12:12 +02:00
|
|
|
|
|
2000-07-30 10:25:57 +02:00
|
|
|
|
2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-07-30 10:21:43 +02:00
|
|
|
|
* config/c4x/c4x.h (IS_XXX_REGNO): Rewrite to avoid unsigned warnings.
|
|
|
|
|
|
|
|
|
|
2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
|
|
|
|
|
|
|
|
|
* config/c4x/libgcc.S (divqf3): Improve accuracy.
|
2000-07-30 10:12:12 +02:00
|
|
|
|
|
2000-07-29 21:33:55 +02:00
|
|
|
|
2000-07-27 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
Put phi nodes after NOTE_INSN_BASIC_BLOCK.
|
|
|
|
|
* rtl.h (NOTE_INSN_BASIC_BLOCK_P): New macro.
|
|
|
|
|
* bb-reorder.c (get_next_bb_note): Use NOTE_INSN_BASIC_BLOCK_P.
|
|
|
|
|
(get_prev_bb_note): Likewise.
|
|
|
|
|
(remove_scope_notes): Likewise.
|
|
|
|
|
* flow.c (commit_one_edge_insertion): Likewise.
|
|
|
|
|
(merge_blocks_nomove): Likewise.
|
|
|
|
|
(verify_flow_info): Likewise.
|
|
|
|
|
* gcse.c (insert_insn_end_bb): Likewise.
|
|
|
|
|
* reg-stack.c (emit_swap_insn): Likewise.
|
|
|
|
|
* ssa.c (first_insn_after_basic_block_note): New function.
|
|
|
|
|
(insert_phi_node): Use it.
|
|
|
|
|
(rename_block): Likewise.
|
|
|
|
|
(eliminate_phi): Likewise.
|
|
|
|
|
(make_regs_equivalent_over_bad_edges): Likewise.
|
|
|
|
|
(make_equivalent_phi_alternatives_equivalent): Likewise.
|
|
|
|
|
(for_each_successor_phi): Likewise.
|
|
|
|
|
(convert_from_ssa): Modify phi-node deletion algorithm.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-07-29 12:36:20 +02:00
|
|
|
|
2000-07-29 Andreas Jaeger <aj@suse.de>
|
|
|
|
|
|
|
|
|
|
* configure.in (mips*-*-linux*): Use mips*el to check for little
|
|
|
|
|
endian MIPS, add tmake_file.
|
|
|
|
|
|
|
|
|
|
* config/mips/linux.h (TARGET_VERSION): Use GNU/Linux.
|
|
|
|
|
(SUBTARGET_CPP_SPEC): Default MIPS_ISA is 1.
|
|
|
|
|
Patches by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
|
|
|
|
|
|
2000-07-28 21:46:18 +02:00
|
|
|
|
2000-07-28 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (ia64_print_operand): Fix typos.
|
|
|
|
|
Sign extend mode size before negating.
|
|
|
|
|
|
2000-07-28 19:46:18 +02:00
|
|
|
|
2000-07-28 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* emit-rtl.c (gen_lowpart_common): Add missing 'c' variable.
|
|
|
|
|
|
|
|
|
|
2000-07-28 Bernd Schmidt <bernds@cygnus.co.uk>
|
|
|
|
|
|
|
|
|
|
* cse.c (canon_hash): Handle PRE_MODIFY/POST_MODIFY.
|
|
|
|
|
(cse_insn): Likewise.
|
|
|
|
|
(addr_affects_sp_p): Likewise.
|
|
|
|
|
* expr.c (move_by_pieces): Likewise.
|
|
|
|
|
(clear_by_pieces): Likewise.
|
|
|
|
|
* gcse.c (oprs_unchanged_p): Likewise.
|
|
|
|
|
* haifa-sched.c (sched_analyze_2): Likewise.
|
|
|
|
|
* recog.c (offsettable_address_p): Likewise.
|
|
|
|
|
* regclass.c (record_address_regs): Likewise.
|
|
|
|
|
* reload.c (find_reusable_reload): Likewise.
|
|
|
|
|
(push_reload): Likewise.
|
|
|
|
|
(operands_match_p): Likewise.
|
|
|
|
|
(decompose): Likewise.
|
|
|
|
|
(find_reloads_address_1): Likewise.
|
|
|
|
|
(find_inc_amount): Likewise.
|
|
|
|
|
* reload1.c (elimination_effects): Likewise.
|
|
|
|
|
* resource.c (mark_set_resources): Likewise.
|
|
|
|
|
* flow.c (attempt_auto_inc): New function; mostly broken out
|
|
|
|
|
of find_auto_inc.
|
|
|
|
|
(find_auto_inc): Split into two functions and enhanced to
|
|
|
|
|
generate POST_MODIFY.
|
|
|
|
|
* rtl.def (PRE_MODIFY, POST_MODIFY): Adjust comment.
|
|
|
|
|
* rtl.h (count_all_occurrences): Declare.
|
|
|
|
|
(HAVE_{PRE,POST}_MODIFY_{DISP,REG}): Provide default of 0 if not
|
|
|
|
|
defined.
|
|
|
|
|
* rtlanal.c (count_all_occurrences): New function.
|
|
|
|
|
* tm.texi (HAVE_POST_MODIFY_DISP, HAVE_PRE_MODIFY_DISP,
|
|
|
|
|
HAVE_POST_MODIFY_REG, HAVE_PRE_MODIFY_REG): Document.
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64-protos.h (destination_operand): Declare.
|
|
|
|
|
* config/ia64/ia64.c (destination_operand): New function.
|
|
|
|
|
(ia64_print_operand): Handle POST_MODIFY.
|
|
|
|
|
(rtx_needs_barrier): Likewise.
|
|
|
|
|
* config/ia64/ia64.h (HAVE_POST_MODIFY_DISP): Define to 1.
|
|
|
|
|
(HAVE_POST_MODIFY_REG): Define to 1.
|
|
|
|
|
(MAX_REGS_PER_ADDRESS): Change to 2.
|
|
|
|
|
(GO_IF_LEGITIMATE_ADDRESS): Accept POST_MODIFY too.
|
|
|
|
|
(LEGITIMATE_ADDRESS_REG): New helper macro.
|
|
|
|
|
(LEGITIMATE_ADDRESS_DISP): Likewise.
|
|
|
|
|
(PREDICATE_CODES): Add entry for destination_operand.
|
|
|
|
|
* config/ia64/ia64.md (all mov patterns): Use destination_operand
|
|
|
|
|
predicate for operand 0.
|
|
|
|
|
|
2000-07-28 18:08:54 +02:00
|
|
|
|
2000-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* dwarf2out.c: Indent #error directive.
|
|
|
|
|
|
|
|
|
|
* gbl-ctors.h: Fix typo in comment.
|
|
|
|
|
(__do_global_ctors): Prototype.
|
|
|
|
|
|
|
|
|
|
* gcse.c (record_one_set, pre_delete): Remove unused variables.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-07-28 18:08:54 +02:00
|
|
|
|
* rs6000.c (rs6000_maybe_dead): Delete unused prototype.
|
|
|
|
|
(print_operand): Initialize variable `t'.
|
|
|
|
|
|
2000-07-28 18:03:17 +02:00
|
|
|
|
2000-07-27 Aldy Hernandez <aldyh@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/arm/arm.md ("call_value"): removed constraints.
|
|
|
|
|
Constraints are ignored in expanders.
|
|
|
|
|
(*call_value_reg): split =rf into various constraints.
|
|
|
|
|
(*call_value_mem): same
|
|
|
|
|
(*call_value_symbol): same
|
|
|
|
|
(*sibcall_value_insn): same
|
|
|
|
|
|
2000-07-28 15:24:20 +02:00
|
|
|
|
2000-07-28 Philipp Thomas <pthomas@suse.de>
|
|
|
|
|
|
|
|
|
|
* install.texi (--enable-nls): Change the description of the NLS
|
|
|
|
|
related configure options to match the current state.
|
|
|
|
|
(--with-included-gettext): Likewise.
|
|
|
|
|
(--enable-maintainer-mode): New description added.
|
|
|
|
|
* extend.texi (-fstrict-prototype): Add missing '.'.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-07-28 05:43:13 +02:00
|
|
|
|
2000-07-27 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2out.c (gen_decl_die): Don't call gen_abstract_function if
|
|
|
|
|
DECL_INITIAL (decl) == NULL_TREE.
|
|
|
|
|
|
2000-07-28 03:57:07 +02:00
|
|
|
|
2000-07-27 Alexandre Oliva <aoliva@redhat.com>
|
|
|
|
|
|
Makefile.in (INSN_ATTR_H): New macro.
* Makefile.in (INSN_ATTR_H): New macro. Replace all dependencies
on insn-attr.h with it.
* genattr.c: Generate `#include "insn-addr.h"' if HAVE_ATTR_length.
* insn-addr.h: New header.
(insn_addresses_): Renamed from insn_addresses.
(INSN_ADDRESSES_DEFN, INSN_ADDRESSES, INSN_ADDRESSES_ALLOC,
INSN_ADDRESSES_FREE, INSN_ADDRESSES_SET_P, INSN_ADDRESSES_SIZE,
INSN_ADDRESSES_NEW): New macros.
* genattrtab.c (write_test_expr): Use new macros.
* final.c (insn_addresses, init_insn_lengths): Likewise.
(align_fuzz, shorten_branches): Likewise.
(final): Likewise. Do not reject new insns if their addresses
have been added to INSN_ADDRESSES.
* config/arm/arm.c, config/avr/avr.c: Use new macros.
* config/h8300/h8300.c, config/i370/i370.c: Likewise.
* config/m88k/m88k.c, config/pa/pa.c, config/pa/pa.md: Likewise.
* config/sparc/sparc.c, config/sparc/sparc.md: Likewise.
* config/sh/sh.c: Likewise.
(output_branchy_insn): Use INSN_ADDRESSES_NEW.
From-SVN: r35307
2000-07-28 04:17:26 +02:00
|
|
|
|
* Makefile.in (INSN_ATTR_H): New macro. Replace all dependencies
|
|
|
|
|
on insn-attr.h with it.
|
|
|
|
|
* genattr.c: Generate `#include "insn-addr.h"' if HAVE_ATTR_length.
|
|
|
|
|
* insn-addr.h: New header.
|
|
|
|
|
(insn_addresses_): Renamed from insn_addresses.
|
|
|
|
|
(INSN_ADDRESSES_DEFN, INSN_ADDRESSES, INSN_ADDRESSES_ALLOC,
|
|
|
|
|
INSN_ADDRESSES_FREE, INSN_ADDRESSES_SET_P, INSN_ADDRESSES_SIZE,
|
|
|
|
|
INSN_ADDRESSES_NEW): New macros.
|
|
|
|
|
* genattrtab.c (write_test_expr): Use new macros.
|
|
|
|
|
* final.c (insn_addresses, init_insn_lengths): Likewise.
|
|
|
|
|
(align_fuzz, shorten_branches): Likewise.
|
|
|
|
|
(final): Likewise. Do not reject new insns if their addresses
|
|
|
|
|
have been added to INSN_ADDRESSES.
|
|
|
|
|
* config/arm/arm.c, config/avr/avr.c: Use new macros.
|
|
|
|
|
* config/h8300/h8300.c, config/i370/i370.c: Likewise.
|
|
|
|
|
* config/m88k/m88k.c, config/pa/pa.c, config/pa/pa.md: Likewise.
|
|
|
|
|
* config/sparc/sparc.c, config/sparc/sparc.md: Likewise.
|
|
|
|
|
* config/sh/sh.c: Likewise.
|
|
|
|
|
(output_branchy_insn): Use INSN_ADDRESSES_NEW.
|
|
|
|
|
|
2000-07-28 03:57:07 +02:00
|
|
|
|
* Makefile.in (bootstrap): Move -BstageN/ back to the beginning.
|
|
|
|
|
|
2000-07-28 03:46:11 +02:00
|
|
|
|
2000-07-27 Andrew Cagney <cagney@b1.cygnus.com>
|
|
|
|
|
|
|
|
|
|
* gcc.c (struct prefix_list): Add member priority.
|
|
|
|
|
(enum path_prefix_priority): Declare.
|
|
|
|
|
(add_prefix): Replace ``first'' with ``priority''. Append new
|
|
|
|
|
entry but keep list in priority order.
|
|
|
|
|
(process_command): Update. Pass PREFIX_PRIORITY_B_OPT or
|
|
|
|
|
PREFIX_PRIORITY_LAST to add_prefix.
|
|
|
|
|
(process_command): Move include kludge - foo/stageN - to before
|
|
|
|
|
foo/include.
|
|
|
|
|
|
2000-07-27 20:22:39 +02:00
|
|
|
|
2000-07-27 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2out.c (gen_typedef_die): Abort if we get identical
|
|
|
|
|
TREE_TYPE and DECL_ORIGINAL_TYPE on a typedef.
|
|
|
|
|
|
2000-07-27 17:54:27 +02:00
|
|
|
|
2000-07-27 RodneyBrown <RodneyBrown@pmsc.com>
|
|
|
|
|
|
|
|
|
|
* expr.h (get_alias_set, lang_get_alias_set): Delete prototypes.
|
|
|
|
|
* tree.h (get_alias_set, lang_get_alias_set): Prototype.
|
|
|
|
|
|
2000-07-27 17:49:56 +02:00
|
|
|
|
2000-07-27 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
2000-07-27 21:51:41 +02:00
|
|
|
|
* c-decl.c (finish_function): Don't treat 'main' specially unless
|
|
|
|
|
flag_hosted. In C99 mode, return 0 from 'main' unless
|
|
|
|
|
DEFAULT_MAIN_RETURN is otherwise defined.
|
|
|
|
|
|
2000-07-27 17:49:56 +02:00
|
|
|
|
* c-decl.c (store_parm_decls): In C99 mode, pedwarn for function
|
|
|
|
|
parameters defaulting to int in an old-style function definition.
|
|
|
|
|
|
2000-07-27 17:35:32 +02:00
|
|
|
|
2000-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* c-parse.in (string): For -Wtraditional, warn about string
|
|
|
|
|
concatenation only once per line.
|
|
|
|
|
|
2000-07-27 17:26:05 +02:00
|
|
|
|
Thu Jul 27 09:25:17 2000 Akiko Matsushita <matusita@sra.co.jp>
|
|
|
|
|
|
|
|
|
|
* pa/x-pa-hpux: Add -D_HIUX_SOURCE to FIXPROTO_DEFINES
|
|
|
|
|
for HI-UX/WE2 systems.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
|
2000-07-27 15:29:21 +02:00
|
|
|
|
2000-07-24 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixincl/fixfixes.c(emit_gnu_type): rewrote to *rely* on GCC
|
|
|
|
|
defining the __xxx_TYPE__ macros.
|
|
|
|
|
* fixincl/fixincl.tpl(gnu_type_map): now obsolete
|
|
|
|
|
* fixincl/fixlib.h: don't need to include "tm.h" anymore
|
|
|
|
|
* fixincl/inclhack.def(type_map): now obsolete
|
|
|
|
|
|
2000-07-27 04:19:28 +02:00
|
|
|
|
Thu Jul 27 11:54:17 2000 Andrew Cagney <cagney@b1.cygnus.com>
|
|
|
|
|
|
|
|
|
|
* cpp.texi: Append a trailing full-stop to xrefs where needed.
|
|
|
|
|
|
2000-08-04 03:30:06 +02:00
|
|
|
|
2000-07-26 Dave Pitts <dpitts@cozx.com>
|
2000-07-27 03:55:55 +02:00
|
|
|
|
|
2000-08-04 03:30:06 +02:00
|
|
|
|
* i370.c: Remove LONGEXTERNAL ifdef from alias_number. Added hash
|
2000-07-27 03:55:55 +02:00
|
|
|
|
routine constants.
|
|
|
|
|
(mvs_hash_alias): New function.
|
|
|
|
|
(mvs_add_alias): Change argument spacing.
|
|
|
|
|
(mvs_need_alias): Change aliasing criteria. Added documentation.
|
|
|
|
|
(mvs_get_alias): Change to use hashed name. The hashed name prevents
|
|
|
|
|
CSECT name collisions.
|
|
|
|
|
(mvs_check_alias): Likewise.
|
|
|
|
|
(handle_pragma): Change documentation.
|
|
|
|
|
* i370.md (mulsi3, divsi3, udivsi3, modsi3, umodsi3): Changed gen_rtx
|
|
|
|
|
mode from SImode to DImode.
|
|
|
|
|
(iorhi3): Changed LTORG size for insn.
|
|
|
|
|
|
2000-07-27 03:45:41 +02:00
|
|
|
|
Wed Jul 26 19:44:05 2000 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* reload.c (find_reloads_toplev): Reload a paradoxical subreg of a
|
|
|
|
|
mem if the address is a mode_dependent_address_p.
|
|
|
|
|
|
2000-07-27 03:38:33 +02:00
|
|
|
|
2000-07-26 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
|
|
|
|
* h8300.c (print_operand): Print ":8" when the 'R' operand is
|
|
|
|
|
suitable for 8-bit absolute.
|
|
|
|
|
* h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): New.
|
|
|
|
|
(OK_FOR_U): Add a case for the 8-bit constant address on the
|
|
|
|
|
H8/300H.
|
|
|
|
|
|
2000-07-27 03:35:17 +02:00
|
|
|
|
Wed Jul 26 19:26:21 2000 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* varasm.c (assemble_variable) [! defined(ASM_OUTPUT_ALIGNED_COMMON)
|
|
|
|
|
&& ! defined (ASM_OUTPUT_ALIGNED_BSS]): Also test
|
|
|
|
|
! defined(ASM_OUTPUT_ALIGNED_DECL_COMMON) before complaining about
|
|
|
|
|
lack of implemented alignment.
|
|
|
|
|
|
2000-07-27 02:15:23 +02:00
|
|
|
|
2000-07-26 Geoffrey Keating <geoffk@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETIC]: Handle
|
|
|
|
|
cross-compiling between 64-bit and 32-bit machines.
|
|
|
|
|
|
2000-07-27 02:12:52 +02:00
|
|
|
|
2000-07-27 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.md (movqicc_astep, movqi_internal_astep): New.
|
|
|
|
|
(movhicc_astep, movhi_internal_astep): New.
|
|
|
|
|
(movsicc_astep, movsi_internal_astep): New.
|
|
|
|
|
(movdicc_astep, movdi_internal_astep): New.
|
|
|
|
|
(movsfcc_astep, movsf_internal_astep): New.
|
|
|
|
|
(movdfcc_astep, movdf_internal_astep): New.
|
|
|
|
|
(movxfcc_astep, movxf_internal_astep): New.
|
|
|
|
|
(cmovdi_internal_astep, cmovsi_internal_astep): New.
|
|
|
|
|
Unify the cmov[ds]i splitters.
|
|
|
|
|
|
2000-07-27 01:18:47 +02:00
|
|
|
|
2000-07-27 Rodney Brown <RodneyBrown@pmsc.com>
|
|
|
|
|
|
|
|
|
|
* real.c (asctoeg): Rename `error' label to unexpected_char_error
|
|
|
|
|
|
2000-07-26 22:59:32 +02:00
|
|
|
|
2000-07-26 Nick Clifton <nickc@cygnus.com>
|
|
|
|
|
|
2000-07-26 23:39:42 +02:00
|
|
|
|
* config/arm/vxarm.h (CPP_PREDEFINES): Remove definition of
|
|
|
|
|
__arm__. Allow it to be defined by CPP_ISA_SPEC in arm.h
|
|
|
|
|
|
2000-07-26 22:59:32 +02:00
|
|
|
|
* dwarf2out.c (dwarf2out_frame_debug_expr): Accept SEQUENCE as
|
|
|
|
|
well as PARALLEL blocks in FRAME_RELATED_EXPR notes.
|
|
|
|
|
|
2000-07-26 05:50:56 +02:00
|
|
|
|
2000-07-26 Alexandre Oliva <aoliva@redhat.com>
|
|
|
|
|
|
|
|
|
|
* c-decl.c (finish_enum): Convert enumerations that fit in an
|
|
|
|
|
`int' to `int'.
|
|
|
|
|
(build_enumerator): In pedantic mode, cast to `int' those that
|
|
|
|
|
don't.
|
|
|
|
|
|
2000-07-26 00:29:02 +02:00
|
|
|
|
2000-07-25 Rodney Brown <RodneyBrown@pmsc.com>
|
|
|
|
|
|
|
|
|
|
* config/alpha/osf.h (SIZE_TYPE, PTRDIFF_TYPE): New.
|
|
|
|
|
|
2000-07-26 00:10:38 +02:00
|
|
|
|
Tue Jul 25 23:08:33 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
|
|
|
|
|
|
|
|
|
|
* sh.md (cmpgtdi_t): Must be split.
|
|
|
|
|
(cmpgtdi_t+1): New splitter.
|
|
|
|
|
|
2000-07-25 23:02:10 +02:00
|
|
|
|
2000-07-25 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplib.c (_cpp_check_directive): Issue -Wtraditional
|
|
|
|
|
warnings for indented directives even if we are skipping.
|
|
|
|
|
|
2000-07-25 22:17:28 +02:00
|
|
|
|
2000-07-25 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* invoke.texi (strict-prototypes): Remove.
|
|
|
|
|
* extend.texi (Deprecated Features): Add strict-prototypes.
|
|
|
|
|
(Backwards Compatibility): New node.
|
|
|
|
|
|
2000-07-25 21:35:45 +02:00
|
|
|
|
2000-07-25 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/i386/i386.md (andsi_1+1): Allow HImode.
|
|
|
|
|
(andsi_1+2): Require q_regs_operand.
|
|
|
|
|
|
2000-07-25 21:32:13 +02:00
|
|
|
|
2000-07-25 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/i386/i386.md (call_pop): Check operands[0],
|
|
|
|
|
not operands[1]. Only check SYMBOL_REF_FLAG for a SYMBOL_REF.
|
|
|
|
|
(call): Likewise.
|
|
|
|
|
(call_value_pop): Only check SYMBOL_REF_FLAG for a SYMBOL_REF.
|
|
|
|
|
(call_value): Likewise.
|
|
|
|
|
|
2000-07-25 21:01:33 +02:00
|
|
|
|
2000-07-25 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* toplev.c (pipe_closed): Delete.
|
|
|
|
|
(crash_signal): New. Generate ICE for a fatal signal.
|
|
|
|
|
(float_signal): Call crash_signal outside a float-handler
|
|
|
|
|
block, not abort.
|
|
|
|
|
(main): Install crash_signal as handler for core-dumping signals.
|
|
|
|
|
|
rs6000.c (print_operand, case 'T'): New case.
* rs6000.c (print_operand, case 'T'): New case.
* rs6000.md (call_indirect_aix32): Convert to expander of
scheduled instructions.
(call_indirect_aix64): Likewise.
(call_value_indirect_aix{32,64}): Likewise.
(call, call_value): Invoke expanders for AIX. Fall through to
matchers for SysV.
(call_indirect_nonlocal_aix{32,64}): New patterns (ctr and lr).
(call_value_indirect_nonlocal_aix{32,64}): New patterns.
(call_nonlocal_aix32): Remove CALL_LONG alternative. Operand 1
only "g" constraint.
(call_nonlocal_aix64): Likewise.
(call_value_nonlocal_aix{32,64}): Likewise.
(call_nonlocal_sysv): New pattern for ctr, lr, and symbolic
operands.
(call_value_nonlocal_sysv): New pattern.
(indirect_jump{si,di}): Use new 'T' modifier.
(tablejump{si,di} matchers): Likewise.
(return_internal_{si,di}): Likewise.
(return_eh_{si,di}): Likewise.
From-SVN: r35246
2000-07-25 20:46:54 +02:00
|
|
|
|
2000-07-25 David Edelsohn <edelsohn@gnu.org>
|
|
|
|
|
|
|
|
|
|
* rs6000.c (print_operand, case 'T'): New case.
|
|
|
|
|
|
|
|
|
|
* rs6000.md (call_indirect_aix32): Convert to expander of
|
|
|
|
|
scheduled instructions.
|
|
|
|
|
(call_indirect_aix64): Likewise.
|
|
|
|
|
(call_value_indirect_aix{32,64}): Likewise.
|
|
|
|
|
(call, call_value): Invoke expanders for AIX. Fall through to
|
|
|
|
|
matchers for SysV.
|
|
|
|
|
(call_indirect_nonlocal_aix{32,64}): New patterns (ctr and lr).
|
|
|
|
|
(call_value_indirect_nonlocal_aix{32,64}): New patterns.
|
|
|
|
|
(call_nonlocal_aix32): Remove CALL_LONG alternative. Operand 1
|
|
|
|
|
only "g" constraint.
|
|
|
|
|
(call_nonlocal_aix64): Likewise.
|
|
|
|
|
(call_value_nonlocal_aix{32,64}): Likewise.
|
|
|
|
|
(call_nonlocal_sysv): New pattern for ctr, lr, and symbolic
|
|
|
|
|
operands.
|
|
|
|
|
(call_value_nonlocal_sysv): New pattern.
|
|
|
|
|
(indirect_jump{si,di}): Use new 'T' modifier.
|
|
|
|
|
(tablejump{si,di} matchers): Likewise.
|
|
|
|
|
(return_internal_{si,di}): Likewise.
|
|
|
|
|
(return_eh_{si,di}): Likewise.
|
|
|
|
|
|
2000-07-25 02:48:36 +02:00
|
|
|
|
2000-07-24 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (ia64_print_operand): Handle "%,".
|
|
|
|
|
* config/ia64/ia64.h (PRINT_OPERAND_PUNCT_VALID_P): Likewise.
|
|
|
|
|
* config/ia64/ia64.md (movdi_internal): Use it.
|
|
|
|
|
|
2000-07-24 23:49:34 +02:00
|
|
|
|
2000-07-24 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppexp.c: Warn about unary + if -Wtraditional.
|
|
|
|
|
* cpplex.c (lex_line): Always set BOL on the first token of a line.
|
|
|
|
|
|
2000-07-24 23:07:34 +02:00
|
|
|
|
2000-07-24 Michael Meissner <meissner@redhat.com>
|
|
|
|
|
|
|
|
|
|
* d30v.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Delete references to
|
|
|
|
|
unsupported macro.
|
|
|
|
|
|
2000-07-24 21:01:55 +02:00
|
|
|
|
2000-07-24 Nick Clifton <nickc@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/arm/arm.c (emit_multi_reg_push): Generate a
|
|
|
|
|
REG_FRAME_RELEATED_NOTE that is compatable with the code in
|
|
|
|
|
dwarf2out_debug_frame_expr.
|
|
|
|
|
|
2000-07-24 19:43:42 +02:00
|
|
|
|
2000-07-24 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
2000-07-24 19:52:37 +02:00
|
|
|
|
* dwarf2out.c: Complain if DWARF2_DEBUGGING_INFO is defined without
|
|
|
|
|
UNALIGNED_INT_ASM_OP.
|
|
|
|
|
(def_cfa_1): Don't emit def_cfa_register or def_cfa_offset to adjust
|
|
|
|
|
a location expression.
|
2000-08-04 03:30:06 +02:00
|
|
|
|
(dwarf2out_frame_debug_expr): Lose cfa_old_reg stuff. Don't
|
2000-07-24 19:52:37 +02:00
|
|
|
|
assume indirect access if we're saving the CFA address exactly.
|
|
|
|
|
|
2000-07-24 19:43:42 +02:00
|
|
|
|
* Makefile.in (bootstrap): Move -BstageN/ to the end.
|
|
|
|
|
|
2000-07-24 19:04:03 +02:00
|
|
|
|
2000-07-24 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* tradcpp.c (main): Update max_include_len for cpp_include_defaults
|
|
|
|
|
as well.
|
|
|
|
|
|
2000-07-24 18:39:45 +02:00
|
|
|
|
2000-07-24 Michael Meissner <meissner@redhat.com>
|
|
|
|
|
|
|
|
|
|
* invoke.texi (D30V Options): Add d30v options.
|
|
|
|
|
|
2000-07-24 10:05:03 +02:00
|
|
|
|
Mon Jul 24 02:04:52 2000 Jeffrey A Law (law@cygnus.com)
|
|
|
|
|
|
2000-07-24 17:47:06 +02:00
|
|
|
|
* gcse.c (alloc_pre_mem): Do not alloc TRANSPOUT, it is not
|
|
|
|
|
needed by our gcse pass anymore.
|
|
|
|
|
(free_pre_mem): Corresponding changes.
|
|
|
|
|
(compute_pre_data): Do not call compute_transpout anymore.
|
|
|
|
|
|
2000-07-24 17:32:05 +02:00
|
|
|
|
* gcse.c (alloc_avail_expr_mem): Kill unused 'u_bitmap'.
|
|
|
|
|
(free_avail_expr_mem, alloc_pre_mem, free_pre_mem): Corresponding
|
|
|
|
|
changes.
|
|
|
|
|
|
2000-07-24 17:21:16 +02:00
|
|
|
|
* gcse.c (free_pre_mem): Do not free ANTLOC and AE_KILL here.
|
|
|
|
|
(compute_pre_data): Do it here instead.
|
|
|
|
|
|
2000-07-24 10:05:03 +02:00
|
|
|
|
* gcse.c (alloc_pre_mem, free_pre_mem): Delete unused bitmap
|
|
|
|
|
'temp_bitmap'.
|
|
|
|
|
(pre_delete): Corresponding changes.
|
|
|
|
|
|
2000-07-23 21:59:41 +02:00
|
|
|
|
2000-07-23 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* c-semantics.c (make_rtl_for_local_static): Use TREE_ASM_WRITTEN
|
|
|
|
|
to figure out whether or not a variable has already been emitted.
|
|
|
|
|
|
2000-08-04 03:30:06 +02:00
|
|
|
|
Sun Jul 23 14:49:12 2000 Jason Eckhardt <jle@cygnus.com>
|
2000-07-23 21:51:43 +02:00
|
|
|
|
|
2000-08-04 03:30:06 +02:00
|
|
|
|
* config/i860/i860.md (untyped_call expander): Use GEN_CALL
|
2000-07-28 19:46:18 +02:00
|
|
|
|
instead of gen_call.
|
2000-07-23 21:51:43 +02:00
|
|
|
|
|
2000-07-23 19:53:21 +02:00
|
|
|
|
Sun Jul 23 11:52:03 2000 George Helffrich (george@gly.bris.ac.uk)
|
|
|
|
|
|
|
|
|
|
* dbxout.c (dbxout_type, case COMPLEX_TYPE): Fix length field in stab.
|
|
|
|
|
|
2000-07-23 18:32:10 +02:00
|
|
|
|
2000-07-23 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
|
|
|
|
* h8300.c: Fix formatting.
|
|
|
|
|
|
2000-07-23 18:25:06 +02:00
|
|
|
|
2000-07-23 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
2000-07-23 18:35:23 +02:00
|
|
|
|
* c-typeck.c (c_expand_start_case): Change -Wtraditional pedwarn
|
|
|
|
|
for `long' switch expression into a plain warning.
|
|
|
|
|
|
2000-07-23 18:28:30 +02:00
|
|
|
|
* c-lex.c (init_lex): Keep the "inline" keyword in C99 mode.
|
|
|
|
|
(yylex): Don't pedwarn for "inline" in C99 mode.
|
|
|
|
|
|
2000-07-23 18:25:06 +02:00
|
|
|
|
* bitmap.c (debug_bitmap_file): Cast pointers to PTR for printing
|
|
|
|
|
with %p.
|
|
|
|
|
* ggc-page.c (debug_print_page_list, alloc_page, free_page,
|
|
|
|
|
ggc_alloc): Likewise.
|
|
|
|
|
* bb-reorder.c (dump_scope_forest_1): Likewise.
|
|
|
|
|
|
2000-07-23 08:17:41 +02:00
|
|
|
|
2000-07-22 Aldy Hernandez <aldyh@redhat.com>
|
|
|
|
|
|
|
|
|
|
* reload.c (find_reloads_toplev): Add new parameter
|
|
|
|
|
"address_reloaded".
|
|
|
|
|
(find_reloads): Add new parameter to find_reloads_toplev calls.
|
|
|
|
|
|
2000-07-23 01:29:14 +02:00
|
|
|
|
2000-07-22 Jeffrey Oldham <oldham@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* collect2.c (main): Typo fixed.
|
|
|
|
|
* diagnostic.c: Typo fixed.
|
|
|
|
|
* dwarf2out.c (dwarf2out_frame_debug_expr): Typo fixed.
|
|
|
|
|
* eh-common.h: Typo fixed.
|
|
|
|
|
* emit-rtl.c (start_sequence): Typo fixed.
|
|
|
|
|
* flow.c (find_label_refs): Typo fixed.
|
|
|
|
|
(calculate_global_regs_live): Typo fixed.
|
|
|
|
|
(mark_regno_cond_dead): Typo fixed.
|
|
|
|
|
(create_edge_list): Typos fixed.
|
|
|
|
|
(verify_edge_list): Typo fixed.
|
|
|
|
|
* ggc-common.c (ggc_mark_rtx_children): Typo fixed.
|
|
|
|
|
* loop.c (strength_reduce): Typo in function name fixed.
|
|
|
|
|
* rtl.h: Added comments. Typo in function name fixed.
|
|
|
|
|
* rtlanal.c: Typo in function name fixed.
|
|
|
|
|
(insn_dependant_p): Rename to ...
|
|
|
|
|
(insn_dependent_p): ... this.
|
|
|
|
|
(computed_jumo_p): Typo fixed.
|
|
|
|
|
|
2000-07-22 16:12:38 +02:00
|
|
|
|
2000-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* system.h (__FUNCTION__): Wrap definition in #ifndef.
|
|
|
|
|
|
2000-07-21 20:29:16 +02:00
|
|
|
|
2000-07-21 David Edelsohn <edelsohn@gnu.org>
|
|
|
|
|
|
|
|
|
|
* rs6000.h (SIZE_TYPE): Define.
|
|
|
|
|
|
2000-07-21 11:01:12 +02:00
|
|
|
|
2000-07-21 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ssa.c (rename_insn_1): Don't rename registers that are
|
|
|
|
|
CLOBBERed.
|
|
|
|
|
|
2000-07-21 09:10:36 +02:00
|
|
|
|
2000-07-21 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (trim_filename, fancy_abort): Moved here from
|
|
|
|
|
rtl.c.
|
|
|
|
|
(fatal_function, set_fatal_function): Removed.
|
|
|
|
|
(fatal): Don't prepare for or call the fatal_function.
|
|
|
|
|
(diagnostic_lock, error_recursion): New.
|
|
|
|
|
(diagnostic_for_decl, report_diagnostic): Guard against
|
|
|
|
|
re-entering the error reporting routines.
|
|
|
|
|
(fancy_abort): Assume function is not NULL.
|
|
|
|
|
|
|
|
|
|
* errors.c (fancy_abort): New. Assume function is not NULL.
|
|
|
|
|
* tradcpp.c (fancy_abort): Assume function is not NULL.
|
|
|
|
|
|
|
|
|
|
* system.h: Provide default definition of __FUNCTION__.
|
|
|
|
|
* rtl.h: Use __FUNCTION__ not __PRETTY_FUNCTION__ throughout.
|
|
|
|
|
Always use __FUNCTION__ in definition of abort.
|
|
|
|
|
* tree.h: Likewise.
|
|
|
|
|
* varray.h: Likewise.
|
|
|
|
|
* toplev.h: Likewise. Don't prototype set_fatal_function.
|
|
|
|
|
|
2000-07-21 02:44:14 +02:00
|
|
|
|
2000-07-20 Geoff Keating <geoffk@cygnus.com>
|
|
|
|
|
|
2000-07-21 02:47:27 +02:00
|
|
|
|
* config/rs6000/aix43.h (CPP_SPEC): Define __LONG_MAX__ correctly
|
|
|
|
|
in 64-bit mode.
|
|
|
|
|
* glimits.h: Don't do #if defined for ARCH_PPC.
|
|
|
|
|
|
2000-07-21 02:46:23 +02:00
|
|
|
|
* config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): All
|
|
|
|
|
constants of size no larger than a pointer should go in the TOC.
|
|
|
|
|
Add 'MODE' parameter.
|
|
|
|
|
(LEGITIMIZE_RELOAD_ADDRESS): Add MODE parameter to
|
|
|
|
|
ASM_OUTPUT_SPECIAL_POOL_ENTRY_P.
|
|
|
|
|
(ASM_OUTPUT_SPECIAL_POOL_ENTRY): Likewise.
|
|
|
|
|
* config/rs6000/aix.h (SELECT_RTX_SECTION): Likewise.
|
|
|
|
|
* config/rs6000/netware.h (SELECT_RTX_SECTION): Likewise.
|
|
|
|
|
* config/rs6000/rs6000.c (constant_pool_expr_1): Likewise.
|
|
|
|
|
(rs6000_legitimize_address): Likewise.
|
|
|
|
|
(rs6000_emit_move): Likewise.
|
|
|
|
|
(rs6000_select_rtx_section): Likewise.
|
|
|
|
|
(output_toc): Deal properly with outputting small constants like
|
|
|
|
|
HImode, and SFmode in 32-bit mode, and DFmode in 64-bit mode.
|
|
|
|
|
* config/rs6000/sysv4.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Add
|
|
|
|
|
MODE parameter. Put small constants in the TOC.
|
2000-07-21 09:10:36 +02:00
|
|
|
|
|
2000-07-21 02:46:23 +02:00
|
|
|
|
* config/rs6000/rs6000.c (easy_fp_constant_p): All constants are
|
|
|
|
|
easy in SImode.
|
|
|
|
|
(rs6000_emit_move): When reload calls us with an illegitimate
|
|
|
|
|
address, exit early. Move the change_address calls to one place
|
|
|
|
|
at the end of the routine. Merge the SImode and DImode expanders.
|
|
|
|
|
When called by reload to put an integer into a FP register, force
|
|
|
|
|
it to memory.
|
|
|
|
|
|
|
|
|
|
* config/rs6000/rs6000.c (struct toc_hash_struct): Add 'key_mode'
|
|
|
|
|
field.
|
|
|
|
|
(rs6000_hash_constant): Hash mode too.
|
|
|
|
|
(toc_hash_function): Allow for key_mode.
|
|
|
|
|
(toc_hash_eq): Structures are different if key_mode differs.
|
|
|
|
|
(output_toc): Add 'mode' parameter. Save key_mode.
|
|
|
|
|
* config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY):
|
|
|
|
|
Pass 'mode' parameter.
|
|
|
|
|
* config/rs6000/rs6000-protos.h (output_toc): Add 'mode' param.
|
|
|
|
|
|
2000-07-21 02:45:19 +02:00
|
|
|
|
* config/rs6000/rs6000.c (output_toc): Use RS6000_OUTPUT_BASENAME
|
|
|
|
|
for vtable references.
|
|
|
|
|
|
2000-07-21 02:44:14 +02:00
|
|
|
|
* config/rs6000/rs6000.h (PREFERRED_RELOAD_CLASS): If we have a
|
|
|
|
|
choice, don't put integer values in FP regs.
|
|
|
|
|
|
2000-07-21 02:15:44 +02:00
|
|
|
|
Thu Jul 20 18:13:52 2000 Jeffrey A Law (law@cygnus.com)
|
|
|
|
|
|
|
|
|
|
* flow.c (verify_flow_info): Revamp code to verify that the
|
|
|
|
|
head and end of each basic block are in the insn chain.
|
|
|
|
|
|
2000-07-21 02:07:33 +02:00
|
|
|
|
Thu Jul 20 18:02:35 2000 Michael Matz <matzmich@cs.tu-berlin.de>
|
|
|
|
|
|
|
|
|
|
* gcse.c (record_one_set): Prepend instead of append onto
|
|
|
|
|
reg_set_table, making it O(n) instead O(n^2).
|
|
|
|
|
* lcm.c (compute_antinout_edge,compute_laterin,compute_available):
|
|
|
|
|
Use a queue instead of a stack as worklist.
|
|
|
|
|
|
2000-07-20 23:34:07 +02:00
|
|
|
|
2000-07-20 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
|
|
|
|
* h8300.c (two_insn_adds_subs_operand): Fix a typo.
|
|
|
|
|
* h8300.h (OK_FOR_T): New.
|
|
|
|
|
(EXTRA_CONSTRAINT): Support OK_FOR_T.
|
|
|
|
|
* h8300.md: Use inc/dec.[wl] for increment/decrement
|
|
|
|
|
by 1 and 2 in HI and SI modes.
|
|
|
|
|
|
2000-07-20 23:27:15 +02:00
|
|
|
|
2000-07-20 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Handle DELTA values
|
|
|
|
|
larger than 14 bits.
|
|
|
|
|
|
2000-07-20 19:57:38 +02:00
|
|
|
|
2000-07-20 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppmacro.c (CAN_PASTE_AFTER): New macro.
|
|
|
|
|
(count_params): Don't set GNU_REST_ARGS on anything.
|
|
|
|
|
(save_expansion): Set PASTE_LEFT only on tokens for which
|
|
|
|
|
CAN_PASTE_AFTER is true, or which are named operators.
|
|
|
|
|
|
|
|
|
|
* cpplex.c (parse_args): Distinguish between a rest argument
|
|
|
|
|
given one empty argument, and a rest argument given zero arguments.
|
|
|
|
|
(maybe_paste_with_next): Look for VOID_REST tag, and trigger
|
|
|
|
|
deletion of previous token based on that.
|
|
|
|
|
(get_raw_token): Flatten some control structure.
|
|
|
|
|
|
|
|
|
|
* cpplib.h (CPP_LAST_EQ): Correct.
|
|
|
|
|
(VOID_REST): New token flag.
|
|
|
|
|
(GNU_REST_ARGS): Delete.
|
|
|
|
|
|
|
|
|
|
* tradcpp.c (main): Don't munge -D options.
|
|
|
|
|
(make_definition): Bring -D handling in line with cpplib.
|
|
|
|
|
(do_define): Strip all leading whitespace from macro definitions.
|
|
|
|
|
|
|
|
|
|
2000-07-20 David Billinghurst <David.Billinghurst@riotinto.com.au>
|
|
|
|
|
|
|
|
|
|
* Makefile.in (tradcpp): Depend on intl.o and version.o.
|
|
|
|
|
|
2000-07-20 15:29:29 +02:00
|
|
|
|
2000-07-20 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixincl/check.tpl: strip the platform specific types before testing
|
|
|
|
|
* fixincl/fixfixes.c(gnu_type_fix): use platform specific types
|
|
|
|
|
* fixincl/fixincl.tpl: use platform specific types
|
|
|
|
|
* fixincl/fixlib.h: include the platform specific types
|
|
|
|
|
* fixincl/inclhack.def(gnu_types): don't supply the types
|
|
|
|
|
* fixincl/fixincl.x: regen
|
|
|
|
|
|
2000-07-20 01:02:03 +02:00
|
|
|
|
2000-07-19 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.h (HARD_REGNO_MODE_OK): Don't allow XFmode in
|
|
|
|
|
GR_REGS.
|
|
|
|
|
|
2000-07-19 22:37:26 +02:00
|
|
|
|
2000-07-19 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* tradcpp.c (rescan): Do not recognize directives when the #
|
|
|
|
|
is indented.
|
|
|
|
|
|
2000-07-19 22:18:08 +02:00
|
|
|
|
2000-07-19 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
Implement C++ named operators.
|
|
|
|
|
|
|
|
|
|
* cpplib.h (TTYPE_TABLE): Move CPP_MIN and CPP_MAX into block
|
|
|
|
|
of operators allowed in #if and having an _EQ variant. Add
|
|
|
|
|
CPP_MIN_EQ, CPP_MAX_EQ, and CPP_DEFINED.
|
|
|
|
|
(cpp_token flags): Add NAMED_OP.
|
|
|
|
|
(enum node_type): Add T_OPERATOR.
|
|
|
|
|
(struct cpp_hashnode): Add code slot to value union.
|
|
|
|
|
* cpphash.h (spec_nodes): Remove n_defined.
|
|
|
|
|
|
|
|
|
|
* cpplex.c (lex_line): Convert T_OPERATOR nodes to their proper types.
|
|
|
|
|
(spell_token, can_paste, maybe_paste_with_next): Handle named operators.
|
|
|
|
|
(is_macro_disabled): Tweak error messages.
|
|
|
|
|
|
|
|
|
|
* cpplib.c (get_define_node): Disallow all named operators as
|
|
|
|
|
macro names. Tweak error messages.
|
|
|
|
|
(_cpp_init_stacks): Don't set up spec_nodes->n_defined.
|
|
|
|
|
|
|
|
|
|
* cppinit.c (builtin_array): Add entries for the named operators.
|
|
|
|
|
* cppexp.c (lex): Check for CPP_DEFINED token.
|
|
|
|
|
(priority table): Add entries for CPP_MIN and CPP_MAX.
|
|
|
|
|
(_cpp_parse_expr): Handle CPP_MIN and CPP_MAX.
|
|
|
|
|
|
2000-07-19 19:22:01 +02:00
|
|
|
|
2000-07-19 Bernd Schmidt <bernds@cygnus.co.uk>
|
|
|
|
|
|
|
|
|
|
* gcse.c (INSN_CUID): If ENABLE_CHECKING, abort if the uid is
|
|
|
|
|
larger than the array of cuids.
|
|
|
|
|
(alloc_gcse_mem): Use uid_cuid rather than INSN_CUID when computing
|
|
|
|
|
cuids.
|
|
|
|
|
|
2000-07-19 16:10:41 +02:00
|
|
|
|
2000-07-19 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixinc/fixincl.c: Convert to using a table of environment variables
|
|
|
|
|
and activate the auto-edit marker on the fixed output files.
|
|
|
|
|
* fixinc/fixlib.h: Define the environment table
|
|
|
|
|
* fixinc/fixincl.sh: export the ${INPUT} dir
|
|
|
|
|
* fixinc/check.tpl: likewise
|
|
|
|
|
|
2000-07-19 02:04:14 +02:00
|
|
|
|
2000-07-18 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* gcc.c (.h spec): Fix typo.
|
|
|
|
|
|
2000-07-19 01:46:11 +02:00
|
|
|
|
Wed Jul 19 01:22:15 CEST 2000 Marc Espie <espie@cvs.openbsd.org>
|
|
|
|
|
|
|
|
|
|
* Makefile.in: Fix tradcif.c path.
|
|
|
|
|
|
2000-07-19 01:25:06 +02:00
|
|
|
|
2000-07-18 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplib.h (TTYPE_TABLE): Rearrange to use only two per-entry
|
2000-07-19 22:18:08 +02:00
|
|
|
|
macros, not five.
|
2000-07-19 01:25:06 +02:00
|
|
|
|
|
|
|
|
|
* cpphash.h (TOKEN_NAME): New macro.
|
|
|
|
|
(_cpp_spell_operator): Deleted.
|
|
|
|
|
(token_spellings): Now _cpp_token_spellings.
|
|
|
|
|
|
|
|
|
|
* cppexp.c: Use TOKEN_NAME or TYPE_NAME, not _cpp_spell_operator.
|
|
|
|
|
* cpplex.c: Use OP and TK macros when expanding the
|
|
|
|
|
TTYPE_TABLE. Eliminate token_names. For non-OPERATOR tokens,
|
|
|
|
|
store the stringification of the enumeration name (CPP_CHAR,
|
|
|
|
|
etc.) in the name slot of token_spellings.
|
|
|
|
|
Use TOKEN_NAME and/or TOKEN_SPELL, do not reference
|
|
|
|
|
token_spellings directly.
|
|
|
|
|
* cpplib.c: Use TOKEN_SPELL.
|
2000-07-19 22:18:08 +02:00
|
|
|
|
|
2000-07-19 01:25:06 +02:00
|
|
|
|
* cpplex.c (_cpp_push_token): If the token being pushed back
|
|
|
|
|
is the previous token in this context, just subtract one from
|
|
|
|
|
context->posn.
|
|
|
|
|
* cppmacro.c (save_expansion): Clear aux field when storing a
|
|
|
|
|
placemarker.
|
|
|
|
|
|
2000-07-18 21:30:18 +02:00
|
|
|
|
2000-07-18 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* cpplex.c (cpp_scan_buffer): Output line command even at the stop
|
|
|
|
|
buffer, provided it is not NULL.
|
|
|
|
|
|
2000-07-18 19:53:35 +02:00
|
|
|
|
2000-07-18 Alexandre Oliva <aoliva@redhat.com>
|
|
|
|
|
|
|
|
|
|
* c-decl.c (duplicate_decls): Do not call make_var_volatile() in
|
|
|
|
|
case of invalid volatile re-declaration.
|
|
|
|
|
|
2000-07-18 10:54:33 +02:00
|
|
|
|
2000-07-18 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
2000-07-18 21:30:18 +02:00
|
|
|
|
* calls.c (store_arg): Return non-zero if sibcall_failure is desired.
|
2000-07-18 10:54:33 +02:00
|
|
|
|
(expand_call): Adjust caller.
|
|
|
|
|
|
diagnostic.h (report_diagnostic): Change prototype.
2000-07-17 Gabriel Dos Reis <gdr@codesourcery.com>
* diagnostic.h (report_diagnostic): Change prototype.
* diagnostic.c (output_do_verbatim, diagnostic_for_asm,
diagnostic_for_decl): Change prototype.
(error_with_decl, warning_with_decl, pedwarn_with_decl, warning,
error, warning, error_with_file_and_line,
warning_with_file_and_line, pedwarn_with_file_and_line, fatal):
Adjust call to report_diagnostic, diagnostic_for_decl.
(error_for_asm, warning_for_asm): Adjust call to diagnostic_for_asm.
(output_verbatim, verbatim): Adjust call to output_do_verbatim.
* c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. End
varaible argument list.
From-SVN: r35116
2000-07-18 10:40:32 +02:00
|
|
|
|
2000-07-17 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
2000-07-19 22:18:08 +02:00
|
|
|
|
* diagnostic.h (report_diagnostic): Change prototype.
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (output_do_verbatim, diagnostic_for_asm,
|
|
|
|
|
diagnostic_for_decl): Change prototype.
|
|
|
|
|
(error_with_decl, warning_with_decl, pedwarn_with_decl, warning,
|
|
|
|
|
error, warning, error_with_file_and_line,
|
|
|
|
|
warning_with_file_and_line, pedwarn_with_file_and_line, fatal):
|
|
|
|
|
Adjust call to report_diagnostic, diagnostic_for_decl.
|
|
|
|
|
(error_for_asm, warning_for_asm): Adjust call to diagnostic_for_asm.
|
|
|
|
|
(output_verbatim, verbatim): Adjust call to output_do_verbatim.
|
|
|
|
|
|
|
|
|
|
* c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. End
|
|
|
|
|
varaible argument list.
|
|
|
|
|
|
2000-07-18 10:54:33 +02:00
|
|
|
|
2000-07-17 Zack Weinberg <zack@wolery.cumb.org>
|
2000-07-18 02:59:49 +02:00
|
|
|
|
|
|
|
|
|
* cpphash.c: Don't include hashtab.h. Most macro-handling code
|
|
|
|
|
moved to cppmacro.c.
|
|
|
|
|
(hash_HASHNODE, eq_HASHNODE, _cpp_dump_macro_hash,
|
|
|
|
|
dump_hash_helper): Delete.
|
|
|
|
|
(expand_hash, higher_prime_number, _cpp_lookup_with_hash,
|
|
|
|
|
cpp_forall_identifiers): New. Implement specialized version of
|
|
|
|
|
Vlad's expandable hash table.
|
|
|
|
|
(cpp_lookup): Use new functions.
|
|
|
|
|
(_cpp_init_macros, _cpp_cleanup_macros): Adjust for new
|
2000-07-19 22:18:08 +02:00
|
|
|
|
implementation.
|
2000-07-18 02:59:49 +02:00
|
|
|
|
* cppmacro.c: New file.
|
|
|
|
|
* cppinit.c (dump_macros_helper): New.
|
|
|
|
|
(cpp_finish): Iterate over the identifier table directly.
|
|
|
|
|
* cpplex.c (parse_name): Calculate the hash of the identifier
|
|
|
|
|
while we scan it. Use _cpp_lookup_with_hash when we can.
|
|
|
|
|
|
|
|
|
|
* cpphash.h: Update prototypes.
|
|
|
|
|
(xcnewvec, HASHSTEP): New helper macros.
|
|
|
|
|
* cpplib.h: Update prototypes.
|
|
|
|
|
* Makefile.in (LIBCPP_OBJS): Add cppmacro.o.
|
|
|
|
|
(cppmacro.o): New rule.
|
|
|
|
|
(cpphash.o): Update deps.
|
|
|
|
|
|
|
|
|
|
* cppmain.c: Do not set pfile->printer if no_output is on.
|
|
|
|
|
|
2000-07-18 10:54:33 +02:00
|
|
|
|
2000-07-15 Neil Booth <neilb@earthling.net>
|
2000-07-18 02:59:49 +02:00
|
|
|
|
|
|
|
|
|
* cpplib.c: Change all directive-handler functions to return
|
|
|
|
|
void, not int.
|
|
|
|
|
* cpphash.h: Update typedefs.
|
|
|
|
|
|
2000-07-18 02:15:46 +02:00
|
|
|
|
2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
|
|
|
|
|
|
2000-07-18 02:25:48 +02:00
|
|
|
|
* configure: Regenerate.
|
2000-07-19 22:18:08 +02:00
|
|
|
|
|
2000-07-18 02:23:50 +02:00
|
|
|
|
* extend.texi (Extended Asm): Mention that a memory clobber
|
|
|
|
|
does not count as a side-effect.
|
|
|
|
|
|
2000-07-18 02:16:59 +02:00
|
|
|
|
* unroll.c (copy_loop_body): Fix one instance of using host
|
|
|
|
|
arithmetic on the target; fixes loop-4 on a 32-bit -> 64-bit
|
|
|
|
|
cross-compile.
|
|
|
|
|
|
2000-07-18 02:15:46 +02:00
|
|
|
|
* tlink.c (scan_linker_output): Tweak for output of AIX ld.
|
|
|
|
|
|
2000-07-18 00:19:58 +02:00
|
|
|
|
2000-07-17 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.md (movdi): Split out load address code.
|
|
|
|
|
New post-reload splitter for symbolic operands.
|
|
|
|
|
(movdi_internal): Abort if we didn't split symbolic operands
|
|
|
|
|
when we should have.
|
|
|
|
|
* config/ia64/ia64.c (ia64_expand_load_address): New, from movdi bits.
|
|
|
|
|
(ia64_reorg): Split insns when not optimizing.
|
|
|
|
|
* config/ia64/ia64-protos.h (ia64_expand_load_address): Declare.
|
|
|
|
|
|
2000-07-17 23:44:56 +02:00
|
|
|
|
Mon Jul 17 23:43:26 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Use LONG_DOUBLE_TYPE_SIZE
|
|
|
|
|
instead of MAX_LONG_DOUBLE_TYPE_SIZE to decide output format.
|
|
|
|
|
|
2000-07-17 22:59:39 +02:00
|
|
|
|
2000-07-17 Chandrakala Chavva <cchavva@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* loop.c (check_dbra_loop) : Changed loop_continue to loop->cont.
|
|
|
|
|
|
2000-07-17 22:55:43 +02:00
|
|
|
|
2000-07-17 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in (clean): Remove libgcc directory.
|
|
|
|
|
|
|
|
|
|
* configure.in (-Wno-long-long check): Use higher-level macros.
|
|
|
|
|
|
2000-07-17 20:31:50 +02:00
|
|
|
|
2000-07-17 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* simplify-rtx.c (simplify_binary_operation): Recognize
|
|
|
|
|
(compare (gt[u] (cc) 0) (lt[u] (cc) 0)).
|
|
|
|
|
(simplify_ternary_operation): Do not examine MODE_BITSIZE of
|
|
|
|
|
a CONST_INT, it will always be zero.
|
|
|
|
|
|
2000-07-17 20:10:17 +02:00
|
|
|
|
2000-07-17 Chandrakala Chavva <cchavva@cygnus.com>
|
|
|
|
|
|
2000-07-19 22:18:08 +02:00
|
|
|
|
* loop.c (check_dbra_loop) : Return if more than one condition is
|
2000-07-17 20:10:17 +02:00
|
|
|
|
present to control the loop.
|
|
|
|
|
|
2000-07-17 15:27:54 +02:00
|
|
|
|
Mon Jul 17 08:26:35 2000 Clinton Popetz <cpopetz@cygnus.com>
|
|
|
|
|
|
2000-07-17 22:55:43 +02:00
|
|
|
|
* mips.c (mips_expand_prologue): Don't calculate the last argument
|
|
|
|
|
register unless we need it. When we are calculating this, make
|
|
|
|
|
sure FUNCTION_ARG is giving us a REG.
|
2000-07-17 15:27:54 +02:00
|
|
|
|
|
2000-07-17 12:16:18 +02:00
|
|
|
|
2000-07-17 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
|
|
|
|
|
|
|
|
|
* flow.c (libcall_dead_p): Use single_set to verify the insn
|
|
|
|
|
has only one set and get for analysis.
|
|
|
|
|
(propagate_one_insn): Don't pass the PATTERN of the insn.
|
|
|
|
|
|
2000-07-17 11:50:03 +02:00
|
|
|
|
2000-07-17 Mark Klein <mklein@dis.com>
|
|
|
|
|
|
2000-07-18 00:19:58 +02:00
|
|
|
|
* pa.c (emit_hpdiv_const): Update to match new pattern for udivsi3.
|
2000-07-17 11:50:03 +02:00
|
|
|
|
|
2000-07-17 11:23:16 +02:00
|
|
|
|
2000-07-17 J. David Anglin <dave@hiauly1.hia.nrc.ca>
|
|
|
|
|
|
|
|
|
|
* Makefile.in (TARGET_GETGROUPS_T): New configuration variable.
|
|
|
|
|
* configure.in (TARGET_GETGROUPS_T): Evaluate.
|
|
|
|
|
* sys-protos.h (getgroups): Use TARGET_GETGROUPS_T for array type
|
|
|
|
|
of second argument of getgroups.
|
|
|
|
|
* configure, config.in: Rebuilt.
|
|
|
|
|
|
2000-07-17 10:41:05 +02:00
|
|
|
|
2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* simplify-rtx.c (simplify_relational_operation): Two signed
|
|
|
|
|
values with equal high words are less/greater than each other if
|
|
|
|
|
their low words are less/greater when considered as unsigned.
|
|
|
|
|
|
2000-07-17 10:38:18 +02:00
|
|
|
|
Mon Jul 17 02:37:06 2000 Marc Espie <espie@openbsd.org>
|
|
|
|
|
|
|
|
|
|
* configure.in (vax-*-openbsd): Change to new style configuration,
|
|
|
|
|
add collect2/float_format information.
|
|
|
|
|
* configure: Rebuilt.
|
|
|
|
|
* config/vax/openbsd1.h: New.
|
|
|
|
|
* config/vax/openbsd.h: New.
|
|
|
|
|
* config/vax/t-openbsd: New.
|
|
|
|
|
|
2000-07-17 10:33:55 +02:00
|
|
|
|
2000-07-17 Chip Salzenberg <chip@valinux.com>
|
|
|
|
|
|
|
|
|
|
* c-common.c (shorten_compare): Quiet warnings about unsigned
|
|
|
|
|
comparisons with zero when they occur in a system header.
|
|
|
|
|
|
2000-07-17 10:28:44 +02:00
|
|
|
|
2000-07-17 Joseph S. Myers <jsm28@cam.ac.uk>
|
|
|
|
|
|
2000-07-17 12:19:33 +02:00
|
|
|
|
* invoke.texi (-pedantic): Refer to ISO C instead of ANSI C, and
|
|
|
|
|
update to describe current practice.
|
|
|
|
|
|
2000-07-17 11:45:44 +02:00
|
|
|
|
* glimits.h (LLONG_MIN, LLONG_MAX, ULLONG_MAX): Define for C99.
|
|
|
|
|
|
2000-07-17 11:39:37 +02:00
|
|
|
|
* contrib.texi, cpp.texi, extend.texi, invoke.texi: Update
|
|
|
|
|
references to C9X. Change references to -fstd and -flang-isoc9x
|
|
|
|
|
to refer to -std.
|
|
|
|
|
|
2000-07-17 11:07:08 +02:00
|
|
|
|
* c-common.c (scan_char_table): Allow "z" length modifiers on
|
|
|
|
|
diouxXn formats.
|
|
|
|
|
(check_format_info): Use TYPE_DOMAIN on the type matched against
|
|
|
|
|
for "z" formats, to retrieve the language size_t rather than the
|
|
|
|
|
internal one.
|
|
|
|
|
|
2000-07-17 10:31:15 +02:00
|
|
|
|
* c-common.c (check_format_info): Do not make a pedantic objection
|
|
|
|
|
to the 'L' length modifier if used with a floating point type
|
|
|
|
|
character.
|
|
|
|
|
|
2000-07-17 10:28:44 +02:00
|
|
|
|
* c-lex.c (yylex): Don't pedwarn for hexadecimal floating point
|
|
|
|
|
constants in C99 mode.
|
|
|
|
|
|
2000-07-17 10:24:48 +02:00
|
|
|
|
2000-07-17 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
2000-07-17 11:13:23 +02:00
|
|
|
|
* h8300.md: Fix the format of mac.
|
|
|
|
|
(movsi_h8300hs): Output a tab after stmac instead of a space.
|
|
|
|
|
|
2000-07-17 10:55:51 +02:00
|
|
|
|
* h8300.c (two_insn_adds_subs_operand): Improve code for detecting
|
|
|
|
|
profitable adds/subs sequences.
|
|
|
|
|
|
2000-07-17 10:24:48 +02:00
|
|
|
|
* fold-const.c: Fix comment typos.
|
|
|
|
|
|
2000-07-16 23:22:19 +02:00
|
|
|
|
2000-07-16 Laurynas Biveinis <lauras@softhome.net>
|
|
|
|
|
|
|
|
|
|
* cppfiles.c (read_name_map): Set map_list_ptr->map_list_map to NULL.
|
|
|
|
|
|
2000-07-16 19:17:46 +02:00
|
|
|
|
2000-07-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* fixinc/fixfixes.c (emit_gnu_type): Avoid string concatenation.
|
|
|
|
|
|
2000-07-16 15:35:23 +02:00
|
|
|
|
2000-07-16 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpplex.c: Update comments.
|
|
|
|
|
* README.Portability: Small update.
|
|
|
|
|
|
2000-07-16 04:14:14 +02:00
|
|
|
|
2000-07-16 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* README.Portability: Small update.
|
|
|
|
|
|
2000-07-15 22:31:27 +02:00
|
|
|
|
2000-07-15 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64-protos.h (ia64_move_ok): Prototype.
|
|
|
|
|
* config/ia64/ia64.c (ia64_move_ok): New function.
|
|
|
|
|
* config/ia64/ia64.md (movqi, movqi_internal): Use it.
|
|
|
|
|
(movhi, movsi, movdi, movsf, movdf, movxf): Likewise.
|
|
|
|
|
|
2000-07-15 21:29:14 +02:00
|
|
|
|
2000-07-15 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpphash.c (save_expansion): Clear PREV_WHITE on tokens
|
|
|
|
|
immediately following a paste operator.
|
|
|
|
|
* cppinit.c (sort_options): New function (only for HOST_EBCDIC).
|
|
|
|
|
(cpp_reader_init): Call it, if HOST_EBCDIC.
|
|
|
|
|
(cpp_handle_options): Do not sort option list here.
|
|
|
|
|
(handle_option): Rename to cpp_handle_option and export.
|
|
|
|
|
* cpplex.c (cpp_scan_buffer_nooutput, cpp_scan_buffer): Use
|
|
|
|
|
_cpp_get_token directly.
|
|
|
|
|
(cpp_scan_line): Return 0 at EOF, 1 otherwise.
|
|
|
|
|
* cpplib.c (cpp_push_buffer): Don't set new->lineno to 1.
|
|
|
|
|
* cpplib.h: Prototype cpp_handle_option. Update prototype of
|
|
|
|
|
cpp_scan_line.
|
|
|
|
|
|
2000-07-15 19:22:26 +02:00
|
|
|
|
2000-07-15 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* fold-const.c (extract_muldiv): Don't optimize past an unsigned
|
|
|
|
|
cast around an expression. Tidy other unsigned tests.
|
|
|
|
|
|
2000-07-15 18:50:31 +02:00
|
|
|
|
2000-07-15 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (doing_line_wrapping, line_wrapper_printf, notice,
|
2000-07-19 22:18:08 +02:00
|
|
|
|
v_error_with_decl, v_warning_with_decl, v_pedwarn_with_decl): Remove.
|
2000-07-15 18:50:31 +02:00
|
|
|
|
(v_message_with_decl): Rename to ...
|
|
|
|
|
(format_with_decl): ... this. Tweak
|
|
|
|
|
(diagnostic_for_decl): New function.
|
|
|
|
|
(fatal_io_error): Use verbatim in lieu of notice.
|
|
|
|
|
(announce_function): Use verbatim.
|
|
|
|
|
(default_print_error_function): Likewise.
|
|
|
|
|
(error_with_decl, warning_with_decl, pedwarn_with_decl): Use new
|
2000-07-19 22:18:08 +02:00
|
|
|
|
infratructure.
|
2000-07-15 18:50:31 +02:00
|
|
|
|
|
2000-07-15 17:13:52 +02:00
|
|
|
|
2000-07-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* mips.c (function_arg_pass_by_reference): Don't do automatic
|
|
|
|
|
aggregate initialization.
|
|
|
|
|
(machine_dependent_reorg): Initialize variable `mode'.
|
2000-07-19 22:18:08 +02:00
|
|
|
|
|
2000-07-15 17:13:52 +02:00
|
|
|
|
* mips.md (absdi2): Change variable `regno1' to unsigned int.
|
|
|
|
|
(reload_indi): Rename loword/hiword to lo_word/hi_word to avoid
|
|
|
|
|
conflicts with sys/param.h macro of the same name.
|
|
|
|
|
(reload_outdi): Likewise.
|
|
|
|
|
|
2000-07-15 16:58:53 +02:00
|
|
|
|
2000-07-15 Michael Meissner <meissner@redhat.com>
|
|
|
|
|
|
|
|
|
|
* fold-const.c (fold): When optimizing FOO++ == CONST into ++FOO
|
|
|
|
|
== CONST + INCREMENT, don't overwrite the tree node for FOO++,
|
|
|
|
|
create a new node instead.
|
|
|
|
|
|
2000-07-15 06:59:42 +02:00
|
|
|
|
2000-07-15 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* README.Portability: Correct example about calling a function
|
|
|
|
|
through a pointer to function. Format wide paragraphs.
|
|
|
|
|
|
2000-07-15 06:18:47 +02:00
|
|
|
|
2000-07-15 Michael Meissner <meissner@redhat.com>
|
|
|
|
|
|
|
|
|
|
* README.Portability: Update integer suffixes and function
|
|
|
|
|
prototype sections.
|
|
|
|
|
|
2000-07-15 05:03:11 +02:00
|
|
|
|
2000-07-15 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* README.Portability: Small update.
|
|
|
|
|
|
2000-07-15 04:56:01 +02:00
|
|
|
|
2000-07-15 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* README.Portability: New file.
|
|
|
|
|
|
2000-07-15 02:15:18 +02:00
|
|
|
|
Fri Jul 14 18:13:53 2000 Mark P Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* INSTALL: Give special instructions for building GCC on Irix 6.
|
|
|
|
|
* config/mips/x-iris6 (CC): Don't set it.
|
|
|
|
|
(OLDCC): Likewise.
|
|
|
|
|
|
2000-07-14 19:40:38 +02:00
|
|
|
|
2000-07-14 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
2000-07-19 22:18:08 +02:00
|
|
|
|
* dwarf2out.c (dwarf2out_frame_debug_expr): If we store the CFA
|
2000-07-14 19:40:38 +02:00
|
|
|
|
register in the stack and later in another register, use the new
|
|
|
|
|
register.
|
|
|
|
|
|
2000-07-14 17:25:10 +02:00
|
|
|
|
Fri Jul 14 10:25:53 2000 Clinton Popetz <cpopetz@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/mips/mips.md: (absdi2): Handle sign_extend for
|
|
|
|
|
second operand.
|
|
|
|
|
|
2000-07-14 10:55:21 +02:00
|
|
|
|
2000-07-14 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* cpplib.c (do_pragma_dependency): Tidy warning messages.
|
|
|
|
|
|
2000-07-14 09:13:19 +02:00
|
|
|
|
2000-07-14 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* .cvsignore: Correct typo.
|
|
|
|
|
|
2000-07-14 07:41:33 +02:00
|
|
|
|
2000-07-13 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* .cvsignore: Add generated YACC files.
|
|
|
|
|
* objc/.cvsignore: New file.
|
2000-07-19 22:18:08 +02:00
|
|
|
|
|
2000-07-14 00:55:04 +02:00
|
|
|
|
2000-07-14 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpplex.c (adjust_column): New funcion.
|
|
|
|
|
(skip_whitespace): Use it.
|
|
|
|
|
(skip_block_comment): Use it, and warn about /*/* with
|
|
|
|
|
-Wcomments.
|
|
|
|
|
|
2000-07-13 23:49:33 +02:00
|
|
|
|
2000-07-14 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpphash.c (struct macro_info): Add new members.
|
|
|
|
|
(_cpp_free_definition): Delete the macro directly.
|
|
|
|
|
(count_params): Return void, with first token of
|
|
|
|
|
expansion in struct macro_info on success.
|
|
|
|
|
(parse_define): Return int. Hoist syntax checking from
|
|
|
|
|
save_macro_expansion. Leave call to save_expansion to
|
|
|
|
|
_cpp_create_definition.
|
|
|
|
|
(alloc_macro): Needs just 2 arguments.
|
|
|
|
|
(free_macro): Delete.
|
|
|
|
|
(save_expansion): Don't perform syntax check.
|
|
|
|
|
(_cpp_create_definition): Call save_expansion.
|
|
|
|
|
|
2000-07-13 21:09:23 +02:00
|
|
|
|
2000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
2000-07-13 22:33:09 +02:00
|
|
|
|
* genrecog.c (write_header): Split long string.
|
|
|
|
|
|
2000-07-13 22:09:55 +02:00
|
|
|
|
* cpphash.c (macro_info): Don't use the `signed' keyword.
|
|
|
|
|
|
2000-07-13 21:09:23 +02:00
|
|
|
|
* system.h (alloca): Prototype if __GNUC__ && __SIZE_TYPE__.
|
|
|
|
|
|
2000-07-13 20:19:27 +02:00
|
|
|
|
2000-07-13 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* calls.c (stored_args_map): New variable.
|
|
|
|
|
(check_sibcall_argument_overlap_1): New.
|
|
|
|
|
(check_sibcall_argument_overlap): New.
|
|
|
|
|
(expand_call): Initialize stored_args_map.
|
|
|
|
|
Call check_sibcall_argument_overlap.
|
|
|
|
|
|
2000-07-13 17:23:51 +02:00
|
|
|
|
2000-07-13 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixinc/fixfixes.c: move EXIT_BROKEN to header, add sub-expr max count
|
|
|
|
|
(emit_gnu_type): utility procedure for gnu_type_fix
|
|
|
|
|
(gnu_type_fix): implement various pre-processor guards around
|
|
|
|
|
standard types so these types can be defined over and over
|
|
|
|
|
* fixinc/fixincl.tpl: add a "gnu_type_map" that forces the standard
|
|
|
|
|
types alluded to above will have GNU-compliant base types
|
|
|
|
|
* fixinc/fixlib.h: add EXIT_BROKEN define and the gnu_type_map struct
|
|
|
|
|
* fixinc/inclhack.def: add test_text entries and utilize the new
|
|
|
|
|
"gnu_types" fix for the ptrdiff_t, size_t and wchar_t types.
|
|
|
|
|
* fixinc/fixincl.x: regenerate
|
|
|
|
|
|
diagnostic.c (vline_wrapper_message_with_location, [...]): Remove.
2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
* diagnostic.c (vline_wrapper_message_with_location,
v_message_with_file_and_line, v_error_with_file_and_file,
v_error_for_asm, v_warning_for_asm, vfatal,
v_warning_with_file_and_line, v_pedwarn_with_file_and_line,
vsorry, verror, vwarning, vpedwarn): Remove.
(diagnostic_for_asm): New function.
(pedwarn, error, warning, pedwarn_with_file_and_line,
error_with_file_and_line, warning_with_file_and_line, sorry,
error_for_asm, warning_for_asm, fatal): Reimplement.
(finish_diagnostic): Clear diagnostic info as well.
From-SVN: r35011
2000-07-13 12:37:41 +02:00
|
|
|
|
2000-07-12 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (vline_wrapper_message_with_location,
|
|
|
|
|
v_message_with_file_and_line, v_error_with_file_and_file,
|
|
|
|
|
v_error_for_asm, v_warning_for_asm, vfatal,
|
|
|
|
|
v_warning_with_file_and_line, v_pedwarn_with_file_and_line,
|
|
|
|
|
vsorry, verror, vwarning, vpedwarn): Remove.
|
|
|
|
|
(diagnostic_for_asm): New function.
|
|
|
|
|
(pedwarn, error, warning, pedwarn_with_file_and_line,
|
|
|
|
|
error_with_file_and_line, warning_with_file_and_line, sorry,
|
|
|
|
|
error_for_asm, warning_for_asm, fatal): Reimplement.
|
|
|
|
|
(finish_diagnostic): Clear diagnostic info as well.
|
2000-07-19 22:18:08 +02:00
|
|
|
|
|
2000-07-13 12:12:08 +02:00
|
|
|
|
2000-07-13 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* c-common.h (flag_digraphs): New.
|
|
|
|
|
* c-decl.c (c_decode_option): Set flag_digraphs as appropriate.
|
|
|
|
|
* c-lex.c (yylex): Use flag_digraphs to decide whether to
|
|
|
|
|
honour digraphs.
|
2000-07-19 22:18:08 +02:00
|
|
|
|
|
2000-07-13 09:14:13 +02:00
|
|
|
|
2000-07-13 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* gcc.c (do_spec_1): Add new %B operator.
|
|
|
|
|
(set_input): Prepare for %B.
|
|
|
|
|
|
|
|
|
|
(link_command_spec): Move up with the other tm.h-
|
|
|
|
|
overrideable specs. Factor out the portion conditional on
|
|
|
|
|
LINK_LIBGCC_SPECIAL into a new spec, %(link_libgcc).
|
|
|
|
|
(struct compiler): Just have a single spec string. All users
|
|
|
|
|
updated.
|
|
|
|
|
(default_compilers): Remove unnecessary braces.
|
|
|
|
|
(static_specs): Update.
|
|
|
|
|
|
|
|
|
|
(trad_capable_cpp, cpp_options, cc1_options, asm_options): New
|
|
|
|
|
named specs.
|
|
|
|
|
(C and assembly specs): Use the new named specs, as appropriate.
|
|
|
|
|
|
2000-07-19 22:18:08 +02:00
|
|
|
|
* objc/lang-specs.h: Use the new named specs.
|
2000-07-13 09:14:13 +02:00
|
|
|
|
Remove unnecessary braces.
|
|
|
|
|
|
2000-07-13 06:43:47 +02:00
|
|
|
|
2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* gcc.c (execute): If a subprocess gets a fatal signal, report
|
|
|
|
|
strsignal() of the signal number, and ask for a bug report.
|
|
|
|
|
Do not do this for SIGPIPE if there's already been an error.
|
|
|
|
|
|
|
|
|
|
* tradcpp.c: Don't include signal.h. Don't catch SIGPIPE.
|
|
|
|
|
Delete pipe_closed.
|
|
|
|
|
|
2000-07-13 06:52:22 +02:00
|
|
|
|
* tradcif.c: Remove.
|
|
|
|
|
|
2000-07-13 06:40:23 +02:00
|
|
|
|
2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* final.c (profile_function): Do not emit profile counters in
|
|
|
|
|
the data section, if NO_PROFILE_COUNTERS is defined.
|
|
|
|
|
* tm.texi: Document NO_PROFILE_COUNTERS. Update doc for
|
|
|
|
|
FUNCTION_PROFILER.
|
|
|
|
|
|
|
|
|
|
* config/i386/linux.h (NO_PROFILE_COUNTERS): Define.
|
|
|
|
|
(FUNCTION_PROFILER): Just emit a call to mcount.
|
|
|
|
|
|
cppexp.c, [...]: Eradicate all traces of code dependent on traditional, lang_chill, or lang_fortran.
* cppexp.c, cpphash.c, cpphash.h, cppinit.c, cpplex.c,
cpplib.c, cpplib.h: Eradicate all traces of code dependent on
traditional, lang_chill, or lang_fortran.
* cppfiles.c: #undef strcmp to suppress warning about macros
used without arguments.
(_cpp_execute_include): Use f, not fname, in "No include path"
error.
(_cpp_pop_file_buffer): New function.
* cpplib.c: Don't include <sys/mman.h>.
(cpp_push_buffer): Set line_base and lineno in new buffer.
(cpp_pop_buffer): Use _cpp_pop_file_buffer.
* cpplex.c: Move all prototypes and structure declarations to the
top of the file. Properly parenthesise some macro arguments.
(cpp_scan_line): New function.
(special_symbol [case T_INCLUDE_DEPTH]): Use pfile->include_depth,
don't need to walk up the stack counting.
From-SVN: r35003
2000-07-13 04:32:41 +02:00
|
|
|
|
2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
2000-07-13 05:06:25 +02:00
|
|
|
|
* tradcpp.c (main): Rename 'perror' label to 'sys_error'.
|
|
|
|
|
|
cppexp.c, [...]: Eradicate all traces of code dependent on traditional, lang_chill, or lang_fortran.
* cppexp.c, cpphash.c, cpphash.h, cppinit.c, cpplex.c,
cpplib.c, cpplib.h: Eradicate all traces of code dependent on
traditional, lang_chill, or lang_fortran.
* cppfiles.c: #undef strcmp to suppress warning about macros
used without arguments.
(_cpp_execute_include): Use f, not fname, in "No include path"
error.
(_cpp_pop_file_buffer): New function.
* cpplib.c: Don't include <sys/mman.h>.
(cpp_push_buffer): Set line_base and lineno in new buffer.
(cpp_pop_buffer): Use _cpp_pop_file_buffer.
* cpplex.c: Move all prototypes and structure declarations to the
top of the file. Properly parenthesise some macro arguments.
(cpp_scan_line): New function.
(special_symbol [case T_INCLUDE_DEPTH]): Use pfile->include_depth,
don't need to walk up the stack counting.
From-SVN: r35003
2000-07-13 04:32:41 +02:00
|
|
|
|
* cppexp.c, cpphash.c, cpphash.h, cppinit.c, cpplex.c,
|
|
|
|
|
cpplib.c, cpplib.h: Eradicate all traces of code dependent on
|
|
|
|
|
traditional, lang_chill, or lang_fortran.
|
|
|
|
|
|
|
|
|
|
* cppfiles.c: #undef strcmp to suppress warning about macros
|
|
|
|
|
used without arguments.
|
|
|
|
|
(_cpp_execute_include): Use f, not fname, in "No include path"
|
|
|
|
|
error.
|
|
|
|
|
(_cpp_pop_file_buffer): New function.
|
|
|
|
|
* cpplib.c: Don't include <sys/mman.h>.
|
|
|
|
|
(cpp_push_buffer): Set line_base and lineno in new buffer.
|
|
|
|
|
(cpp_pop_buffer): Use _cpp_pop_file_buffer.
|
|
|
|
|
|
|
|
|
|
* cpplex.c: Move all prototypes and structure declarations to the
|
|
|
|
|
top of the file. Properly parenthesise some macro arguments.
|
|
|
|
|
(cpp_scan_line): New function.
|
|
|
|
|
(special_symbol [case T_INCLUDE_DEPTH]): Use pfile->include_depth,
|
|
|
|
|
don't need to walk up the stack counting.
|
|
|
|
|
|
2000-07-12 23:03:29 +02:00
|
|
|
|
2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* c-common.c (combine_strings): Emit a pedantic warning when a
|
|
|
|
|
string length is greater than the minimum ANSI C is required
|
|
|
|
|
to support.
|
|
|
|
|
|
2000-07-12 22:29:05 +02:00
|
|
|
|
Wed Jul 12 13:24:30 2000 Jeffrey A Law (law@cygnus.com)
|
|
|
|
|
|
|
|
|
|
* pa/xm-pa64.h (NO_SYS_SIGLIST): Kill.
|
|
|
|
|
* d30v/xm-d30v.h (NO_SYS_SIGLIST): Kill.
|
|
|
|
|
|
2000-07-12 22:15:20 +02:00
|
|
|
|
2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* c-decl.c (define_label): Warn about identifier conflicts with
|
|
|
|
|
labels in traditional C.
|
|
|
|
|
|
|
|
|
|
* c-parse.in (unop +): Warn about the unary plus operator for
|
|
|
|
|
traditional C.
|
|
|
|
|
|
|
|
|
|
* c-typeck.c (store_init_value): Warn about automatic aggregate
|
|
|
|
|
initialization for traditional C.
|
|
|
|
|
|
|
|
|
|
* invoke.texi (-Wtraditional): Document new warnings.
|
|
|
|
|
|
2000-07-12 22:05:45 +02:00
|
|
|
|
2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in (c-errors.o): Fix thinko in dependency.
|
|
|
|
|
|
2000-07-12 22:01:02 +02:00
|
|
|
|
2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* gcc.c (C specs [!USE_CPPLIB]): Invoke tradcpp if any of
|
|
|
|
|
-traditional, -ftraditional, or -traditional-cpp was given.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
Do not pass -traditional to the preprocessor.
|
2000-07-12 22:01:02 +02:00
|
|
|
|
(.S spec): Likewise. Don't bother defining __ASSEMBLER__, the
|
|
|
|
|
preprocessor does it automatically.
|
|
|
|
|
* objc/lang-specs.h: Likewise. Don't bother defining __OBJC__.
|
|
|
|
|
|
|
|
|
|
* ch/lang-specs.h: Always use tradcpp. Do not pass
|
2000-07-13 06:43:47 +02:00
|
|
|
|
-traditional, -trigraphs, or -pedantic to the preprocessor.
|
2000-07-12 22:01:02 +02:00
|
|
|
|
* f/lang-specs.h (.F spec): Likewise. Don't bother defining
|
|
|
|
|
_LANGUAGE_FORTRAN.
|
|
|
|
|
|
2000-07-12 21:41:30 +02:00
|
|
|
|
2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppexp.c (LOGICAL): Delete macro.
|
|
|
|
|
(_cpp_parse_expr): Do not use UNARY for unary +. Implement ||
|
|
|
|
|
and && directly.
|
|
|
|
|
|
|
|
|
|
* cpphash.c (HASHSIZE): Increase to 4096.
|
|
|
|
|
(struct hashdummy): Add hash field.
|
|
|
|
|
(eq_HASHNODE): Compare unreduced hashes, then lengths, then
|
|
|
|
|
the string values using memcmp.
|
|
|
|
|
(cpp_lookup): Set dummy.hash.
|
|
|
|
|
|
2000-07-12 21:19:18 +02:00
|
|
|
|
Wed Jul 12 13:15:16 2000 Marc Espie <espie@openbsd.org>
|
|
|
|
|
|
|
|
|
|
* configure.in (m88k-openbsd): Express configuration using new fragment
|
|
|
|
|
style.
|
|
|
|
|
* configure: Rebuilt.
|
|
|
|
|
* m88k/aout-dbx.h: New.
|
|
|
|
|
* m88k/openbsd.h: New.
|
|
|
|
|
* m88k/xm-openbsd.h: New.
|
|
|
|
|
|
2000-07-12 20:55:57 +02:00
|
|
|
|
2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* expr.c (expand_expr): Return const0_rtx, not error_mark_node.
|
|
|
|
|
|
2000-07-12 19:20:17 +02:00
|
|
|
|
2000-07-12 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* reload.c (push_secondary_reload): Make sure to add the new
|
|
|
|
|
reload at the end, after acquiring secondary memory.
|
|
|
|
|
|
2000-07-12 18:17:15 +02:00
|
|
|
|
2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
2000-07-12 19:08:20 +02:00
|
|
|
|
* cpplex.c (is_macro_disabled): Use CPP_WTRADITIONAL.
|
2000-07-12 18:44:41 +02:00
|
|
|
|
|
2000-07-12 18:17:15 +02:00
|
|
|
|
* c-decl.c (set_current_function_name_declared, anon_aggr_type_p,
|
|
|
|
|
lang_expand_stmt): Mark parameters with ATTRIBUTE_UNUSED.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-12 18:17:15 +02:00
|
|
|
|
* c-parse.in (stmt): Delete unused variables.
|
|
|
|
|
|
|
|
|
|
* convert.c (convert_to_vector): Likewise.
|
|
|
|
|
|
|
|
|
|
* gensupport.c (process_rtx): Declare attr as `rtvec' not `rtx'.
|
|
|
|
|
|
|
|
|
|
* tree.c (finish_vector_type): Prototype.
|
|
|
|
|
|
2000-07-12 16:45:05 +02:00
|
|
|
|
2000-07-12 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixinc/fixfixes.c: use xmalloc
|
|
|
|
|
* fixinc/fixincl.c(initialize): set program name for xmalloc
|
|
|
|
|
* fixinc/fixlib.c(must_malloc): obsolete
|
|
|
|
|
(is_cxx_header): no longer used - disabled
|
|
|
|
|
(skip_quote): inserted and disabled for future use
|
|
|
|
|
* fixinc/fixlib.h: reflects above
|
|
|
|
|
* fixinc/fixtests.c: removed dinkleberries
|
|
|
|
|
|
2000-07-12 16:37:47 +02:00
|
|
|
|
2000-07-12 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpphash.h: (TOKEN_SPELL) Pulled from cpplex.c.
|
|
|
|
|
* cpplex.c (TOKEN_SPELL) Move to cpphash.h.
|
|
|
|
|
|
|
|
|
|
* cpphash.c: (struct macro_info, alloc_macro, free_macro,
|
|
|
|
|
struct toklist_dummy): New.
|
|
|
|
|
(cpp_free_definition): Free macros with free_macro.
|
|
|
|
|
(count_params): Don't save paramter spellings. Save macro
|
|
|
|
|
information in a struct macro_info.
|
|
|
|
|
(parse_define): Don't allocate a token list.
|
|
|
|
|
(save_expansion): Allocate the macro's token list, and
|
|
|
|
|
save parameter spellings if necessary. Use TOKEN_SPELL.
|
|
|
|
|
(cpp_create_definition): Make list const.
|
|
|
|
|
|
2000-07-12 16:12:51 +02:00
|
|
|
|
2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* c-typeck.c (pedwarn_c99): Move to
|
|
|
|
|
* c-errors.c: ... Here.
|
|
|
|
|
* toplev.h (verror, vwarning, vpedwarn): Remove prototypes.
|
|
|
|
|
* diagnostic.c (verror, vwarning, vpedwarn): Make static.
|
|
|
|
|
* Makefile.in (C_AND_OBJC_OBJS): Include c-errors.o
|
|
|
|
|
(c-errors.o): List dependency.
|
|
|
|
|
|
2000-07-12 09:12:56 +02:00
|
|
|
|
2000-07-12 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* c-parse.c: Remove.
|
|
|
|
|
* c-parse.h: Likewise.
|
|
|
|
|
* c-parse.y: Likewise.
|
|
|
|
|
* objc/objc-parse.c: Likewise.
|
|
|
|
|
* objc/objc-pasre.y: Likewise.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-12 06:29:22 +02:00
|
|
|
|
2000-07-11 Rodney Brown <RodneyBrown@pmsc.com>
|
|
|
|
|
|
|
|
|
|
* gcc.texi: Fix minor typos
|
|
|
|
|
* extend.texi: Fix minor typos
|
|
|
|
|
|
2000-07-12 06:17:40 +02:00
|
|
|
|
2000-07-11 Marc Espie <espie@openbsd.org>
|
|
|
|
|
|
|
|
|
|
* collect2.c (main): Recognize .lo as object files.
|
|
|
|
|
|
2000-07-12 06:06:13 +02:00
|
|
|
|
2000-07-11 J. David Anglin <dave@hiauly1.hia.nrc.ca>
|
|
|
|
|
|
2000-07-12 06:26:07 +02:00
|
|
|
|
* pa.c (hppa_encode_label): Store labels in gc memory when ggc_p is
|
|
|
|
|
true.
|
|
|
|
|
|
2000-07-12 06:06:13 +02:00
|
|
|
|
* aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Extend test to detect systems
|
|
|
|
|
with MAP_ANONYMOUS and MAP_ANON.
|
|
|
|
|
* configure, config.in: Rebuilt.
|
|
|
|
|
|
diagnostic.c (save_output_state): Remove.
2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
* diagnostic.c (save_output_state): Remove.
(restore_output_state): Likewise.
(clear_text_info): New function.
(clear_diagnostic_info): Likewise.
(output_text_length, is_starting_newline, output_prefix,
line_wrap_cutoff, ideal_line_wrap_cutoff, prefix_was_emitted_for,
prefixing_policy, output_buffer_ptr_to_format_args): New macros
(set_real_maximum_length, output_set_maximum_length,
output_set_prefix, output_get_prefix, output_set_maximum_length,
output_destroy_prefix, init_output_buffer,
reshape_diagnostic_buffer, output_space_left, output_emit_prefix,
output_add_newline, output_add_character, output_add_space,
output_append_r, output_append, wrap_text, output_format,
output_do_printf, output_printf, output_do_verbatim,
output_verbatim, verbatim): Use them.
(output_clear): Split into cleat_text_info and
clear_diagnostic_info.
(struct output_state): Move to...
* diagnostic.h: ...Here
(struct output_buffer): Adjust.
From-SVN: r34975
2000-07-12 02:48:02 +02:00
|
|
|
|
2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (save_output_state): Remove.
|
|
|
|
|
(restore_output_state): Likewise.
|
|
|
|
|
(clear_text_info): New function.
|
|
|
|
|
(clear_diagnostic_info): Likewise.
|
|
|
|
|
(output_text_length, is_starting_newline, output_prefix,
|
|
|
|
|
line_wrap_cutoff, ideal_line_wrap_cutoff, prefix_was_emitted_for,
|
|
|
|
|
prefixing_policy, output_buffer_ptr_to_format_args): New macros
|
|
|
|
|
(set_real_maximum_length, output_set_maximum_length,
|
2000-07-13 06:43:47 +02:00
|
|
|
|
output_set_prefix, output_get_prefix, output_set_maximum_length,
|
diagnostic.c (save_output_state): Remove.
2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
* diagnostic.c (save_output_state): Remove.
(restore_output_state): Likewise.
(clear_text_info): New function.
(clear_diagnostic_info): Likewise.
(output_text_length, is_starting_newline, output_prefix,
line_wrap_cutoff, ideal_line_wrap_cutoff, prefix_was_emitted_for,
prefixing_policy, output_buffer_ptr_to_format_args): New macros
(set_real_maximum_length, output_set_maximum_length,
output_set_prefix, output_get_prefix, output_set_maximum_length,
output_destroy_prefix, init_output_buffer,
reshape_diagnostic_buffer, output_space_left, output_emit_prefix,
output_add_newline, output_add_character, output_add_space,
output_append_r, output_append, wrap_text, output_format,
output_do_printf, output_printf, output_do_verbatim,
output_verbatim, verbatim): Use them.
(output_clear): Split into cleat_text_info and
clear_diagnostic_info.
(struct output_state): Move to...
* diagnostic.h: ...Here
(struct output_buffer): Adjust.
From-SVN: r34975
2000-07-12 02:48:02 +02:00
|
|
|
|
output_destroy_prefix, init_output_buffer,
|
|
|
|
|
reshape_diagnostic_buffer, output_space_left, output_emit_prefix,
|
|
|
|
|
output_add_newline, output_add_character, output_add_space,
|
|
|
|
|
output_append_r, output_append, wrap_text, output_format,
|
|
|
|
|
output_do_printf, output_printf, output_do_verbatim,
|
|
|
|
|
output_verbatim, verbatim): Use them.
|
|
|
|
|
(output_clear): Split into cleat_text_info and
|
|
|
|
|
clear_diagnostic_info.
|
|
|
|
|
(struct output_state): Move to...
|
|
|
|
|
|
|
|
|
|
* diagnostic.h: ...Here
|
2000-07-13 06:43:47 +02:00
|
|
|
|
(struct output_buffer): Adjust.
|
|
|
|
|
|
[multiple changes]
2000-07-11 Zack Weinberg <zack@wolery.cumb.org>
* cpplex.c (parse_name): No longer inline (premature optimization).
(do_pop_context): Fold into pop_context.
(pop_context): Returns int.
(lex_next): Hoist test for end of directive into pop_context.
(push_macro_context): Returns int; takes just reader and token.
Hoist test for excessive nesting to caller.
(push_arg_context): Returns void; takes just reader and token.
Do not call stringify_arg or get_raw_token.
(get_raw_token): Convert tail recursion through push_arg_context
to a loop at this level. Call stringify_arg here if appropriate.
(maybe_paste_with_next): Convert tail recursion to a while loop.
Hoist test of paste_level to caller.
(stringify_arg): Push arg context at beginning.
(cpp_get_token): Split out core into _cpp_get_token. Call
process_directive here. Throw away CPP_PLACEMARKER tokens.
(_cpp_get_token): Convert tail recursion through
push_macro_context to a loop at this level.
(_cpp_glue_header_name, is_macro_disabled, stringify_arg,
_cpp_get_raw_token): Use _cpp_get_token.
(_cpp_skip_rest_of_line): Drop the context stack directly; do
not call pop_context.
(_cpp_run_directive): Call lex_next directly.
* cpphash.h: Prototype _cpp_get_token.
* cppexp.c (lex): Use it.
* cpphash.c (parse_define): Use it.
* cpplib.c (get_define_node, do_undef, parse_include,
read_line_number, do_line, do_ident, do_pragma, do_pragma_gcc,
do_pragma_implementation, do_pragma_poison, do_pragma_dependency,
parse_ifdef, validate_else): Use it.
(cpp_push_buffer): Tweak error message; abort if anyone tries
to push a buffer while macro expansions are stacked.
2000-07-11 Donn Terry <donnte@microsoft.com>
* cpplex.c (free_macro_args, save_token): Cast arg of free
and/or xrealloc to PTR.
(_cpp_init_input_buffer): Clear all fields of the base context.
From-SVN: r34972
2000-07-12 01:20:53 +02:00
|
|
|
|
2000-07-11 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplex.c (parse_name): No longer inline (premature optimization).
|
|
|
|
|
(do_pop_context): Fold into pop_context.
|
|
|
|
|
(pop_context): Returns int.
|
|
|
|
|
(lex_next): Hoist test for end of directive into pop_context.
|
|
|
|
|
(push_macro_context): Returns int; takes just reader and token.
|
|
|
|
|
Hoist test for excessive nesting to caller.
|
|
|
|
|
(push_arg_context): Returns void; takes just reader and token.
|
|
|
|
|
Do not call stringify_arg or get_raw_token.
|
|
|
|
|
(get_raw_token): Convert tail recursion through push_arg_context
|
|
|
|
|
to a loop at this level. Call stringify_arg here if appropriate.
|
|
|
|
|
(maybe_paste_with_next): Convert tail recursion to a while loop.
|
|
|
|
|
Hoist test of paste_level to caller.
|
|
|
|
|
|
|
|
|
|
(stringify_arg): Push arg context at beginning.
|
|
|
|
|
(cpp_get_token): Split out core into _cpp_get_token. Call
|
|
|
|
|
process_directive here. Throw away CPP_PLACEMARKER tokens.
|
|
|
|
|
(_cpp_get_token): Convert tail recursion through
|
|
|
|
|
push_macro_context to a loop at this level.
|
|
|
|
|
(_cpp_glue_header_name, is_macro_disabled, stringify_arg,
|
|
|
|
|
_cpp_get_raw_token): Use _cpp_get_token.
|
|
|
|
|
(_cpp_skip_rest_of_line): Drop the context stack directly; do
|
|
|
|
|
not call pop_context.
|
|
|
|
|
(_cpp_run_directive): Call lex_next directly.
|
|
|
|
|
|
|
|
|
|
* cpphash.h: Prototype _cpp_get_token.
|
|
|
|
|
* cppexp.c (lex): Use it.
|
|
|
|
|
* cpphash.c (parse_define): Use it.
|
|
|
|
|
* cpplib.c (get_define_node, do_undef, parse_include,
|
|
|
|
|
read_line_number, do_line, do_ident, do_pragma, do_pragma_gcc,
|
|
|
|
|
do_pragma_implementation, do_pragma_poison, do_pragma_dependency,
|
|
|
|
|
parse_ifdef, validate_else): Use it.
|
|
|
|
|
(cpp_push_buffer): Tweak error message; abort if anyone tries
|
|
|
|
|
to push a buffer while macro expansions are stacked.
|
|
|
|
|
|
|
|
|
|
2000-07-11 Donn Terry <donnte@microsoft.com>
|
|
|
|
|
|
|
|
|
|
* cpplex.c (free_macro_args, save_token): Cast arg of free
|
|
|
|
|
and/or xrealloc to PTR.
|
|
|
|
|
(_cpp_init_input_buffer): Clear all fields of the base context.
|
|
|
|
|
|
2000-07-12 00:08:47 +02:00
|
|
|
|
Tue Jul 11 15:28:21 CDT 2000 Clinton Popetz <cpopetz@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* gensupport.c (process_rtx): Make rtl checking stop
|
|
|
|
|
complaining about the define_insn while it is being
|
|
|
|
|
converted from a define_insn_and_split.
|
|
|
|
|
|
2000-07-11 23:30:23 +02:00
|
|
|
|
Tue Jul 11 16:26:17 2000 Clinton Popetz <cpopetz@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/mips/mips.c (simple_memory_operand): Access the
|
|
|
|
|
INTVAL of the address, not it's containing MEM.
|
|
|
|
|
|
2000-07-11 17:51:18 +02:00
|
|
|
|
2000-07-11 Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixinc/fixtests.c(double_slash): obsolete
|
|
|
|
|
(else_endif_label): likewise
|
2000-07-11 23:13:42 +02:00
|
|
|
|
* fixinc/inclhack.def(irix_multiline_cmnt): obsolete
|
2000-07-12 00:20:38 +02:00
|
|
|
|
(libc1_ifdefd_memx): correct initial comment
|
|
|
|
|
and omit the #if/#endif pair from the memxxx declarations
|
2000-07-11 23:13:42 +02:00
|
|
|
|
* fixinc/fixincl.x: regen
|
2000-07-11 17:51:18 +02:00
|
|
|
|
|
2000-07-11 16:28:09 +02:00
|
|
|
|
2000-07-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* cpplex.c (T, I, S, C, N): Avoid non-constant initializers.
|
|
|
|
|
|
2000-07-11 15:39:09 +02:00
|
|
|
|
2000-07-11 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpp.texi: Update.
|
|
|
|
|
|
2000-07-11 10:58:28 +02:00
|
|
|
|
2000-07-11 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cppinit.c: (cpp_reader_init): Allow digraphs by default.
|
|
|
|
|
(handle_option): Set digraphs according to standard.
|
|
|
|
|
Merge OPT_lang_c89 handler with OPT_std_c89.
|
|
|
|
|
|
|
|
|
|
* cpplex.c: (lex_line, can_paste): Honour digraphs in
|
|
|
|
|
accordance with the digraphs flag.
|
|
|
|
|
|
|
|
|
|
* cpplib.h: (struct cpp_options): New option digraphs.
|
|
|
|
|
|
2000-07-11 00:40:31 +02:00
|
|
|
|
2000-07-10 Hans-Peter Nilsson <hp@axis.com>
|
2000-07-11 00:37:54 +02:00
|
|
|
|
Bruce Korb <bkorb@gnu.org>
|
|
|
|
|
|
|
|
|
|
* fixinc/inclhack.def (libc1_ifdefd_memx): New fix.
|
|
|
|
|
* fixinc/fixincl.x: Regenerate.
|
|
|
|
|
* fixinc/tests/base/testing.h: Add testcase.
|
|
|
|
|
|
2000-07-10 22:51:23 +02:00
|
|
|
|
2000-07-10 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (got_symbolic_operand): New.
|
|
|
|
|
(symbolic_operand, move_operand): Revert 0701 change.
|
|
|
|
|
* config/ia64/ia64.h (PREDICATE_CODES): Update.
|
|
|
|
|
* config/ia64/ia64-protos.h (got_symbolic_operand): Declare.
|
|
|
|
|
* config/ia64/ia64.md (movdi): Revert 0701 wrt symbolic_operand;
|
|
|
|
|
split the offset into a 14-bit low part instead of a 13-bit low part.
|
|
|
|
|
(load_fptr): Mark the mem as unchanging.
|
|
|
|
|
(load_symptr): Use got_symbolic_operand.
|
|
|
|
|
|
2000-07-10 22:25:56 +02:00
|
|
|
|
2000-07-10 Nick Clifton <nickc@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* libgcc2.c (next_stack_level): Cast result of computation to
|
2000-07-11 20:43:51 +02:00
|
|
|
|
(void **) so that the assignment does not generate a warning.
|
2000-07-10 22:25:56 +02:00
|
|
|
|
|
2000-07-10 22:10:15 +02:00
|
|
|
|
2000-07-10 Chandrakala Chavva <cchavva@redhat.com>
|
|
|
|
|
|
|
|
|
|
* flags.h : Add new variable flag_single_precision_constant.
|
|
|
|
|
* toplev.c (display_help) : Add -fsingle-precision-constant option.
|
|
|
|
|
(flag_single_precision_constant): New.
|
|
|
|
|
* c-lex.c (yylex): Convert floating point constant to single
|
|
|
|
|
precision constant.
|
|
|
|
|
* invoke.texi : Add documentation for this new option.
|
|
|
|
|
|
2000-07-10 19:14:25 +02:00
|
|
|
|
2000-07-10 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (output_octal): Second parameter is unsigned.
|
|
|
|
|
(output_long_octal): Likewise.
|
|
|
|
|
(output_hexadecimal): Likewise.
|
|
|
|
|
(output_long_hexadecimal): Likewise.
|
|
|
|
|
(output_format): Adjust arguments extraction. Tweak.
|
|
|
|
|
(output_verbatim, verbatim): End variable argument list.
|
|
|
|
|
(report_diagnostic): Improve documentation.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-10 12:56:23 +02:00
|
|
|
|
2000-07-10 Benjamin Chelf <chelf@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* c-common.h (build_stmt): Declare.
|
|
|
|
|
(build_continue_stmt): Likewise.
|
|
|
|
|
(build_break_stmt): Likewise.
|
|
|
|
|
(build_return_stmt): Likewise.
|
|
|
|
|
|
|
|
|
|
* c-decl.c (do_case): Rewrite to do what previously done in
|
|
|
|
|
c-parse.in.
|
|
|
|
|
|
|
|
|
|
* c-semantics.c (build_stmt): Define.
|
|
|
|
|
(build_return_stmt): Likewise.
|
|
|
|
|
(build_break_stmt): Likewise.
|
|
|
|
|
(build_continue_stmt): Likewise.
|
|
|
|
|
(build_case_label): Likewise.
|
|
|
|
|
|
|
|
|
|
* c-parse.in (BREAK): Change to build tree, then generate RTL.
|
|
|
|
|
(CONTINUE): Likewise.
|
|
|
|
|
(RETURN): Likewise.
|
|
|
|
|
(CASE): Likewise.
|
|
|
|
|
(DEFAULT): Likewise.
|
|
|
|
|
|
|
|
|
|
* c-parse.y: Regenerate.
|
|
|
|
|
* c-pasre.c: Likewise.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-10 09:18:06 +02:00
|
|
|
|
2000-07-09 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
2000-07-10 09:20:47 +02:00
|
|
|
|
* expr.c (expand_expr): Bail earlier if we get an error_mark_node.
|
|
|
|
|
|
2000-07-10 09:18:06 +02:00
|
|
|
|
* tree.h (STRIP_NOPS): Check for error_mark_node.
|
|
|
|
|
(STRIP_SIGN_NOPS, STRIP_TYPE_NOPS): Likewise.
|
|
|
|
|
(dwarf2out_*): Remove duplicate declarations.
|
|
|
|
|
|
|
|
|
|
* c-decl.c (duplicate_decls): Copy DECL_ABSTRACT_ORIGIN from
|
|
|
|
|
DECL_ABSTRACT_ORIGIN, not DECL_ORIGIN.
|
|
|
|
|
|
2000-07-10 00:51:25 +02:00
|
|
|
|
2000-07-10 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (wrap_text): New function.
|
|
|
|
|
(maybe_wrap_text): Likewise.
|
|
|
|
|
(output_add_string): Use it.
|
|
|
|
|
(output_format): Likewise.
|
|
|
|
|
(count_error): Use verbatim instead of notice.
|
|
|
|
|
(report_error_function): Likewise. Don't use plain fprintf.
|
|
|
|
|
(finish_diagnostic): New function.
|
|
|
|
|
(output_do_verbatim): Tweak. Commonalize functionalities in
|
|
|
|
|
output_verbatim and verbatim.
|
|
|
|
|
(output_verbatim): Adjust.
|
|
|
|
|
(verbatim): Likewise.
|
|
|
|
|
(report_diagnostic): Define.
|
|
|
|
|
|
|
|
|
|
* diagnostic.h (report_diagnostic): Prototype.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-09 22:44:51 +02:00
|
|
|
|
2000-07-09 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppexp.c (_cpp_parse_expr): Don't use unary plus.
|
|
|
|
|
|
cpphash.h: ISvspace, is_vspace, is_nvspace: New.
* cpphash.h: ISvspace, is_vspace, is_nvspace: New.
IShspace, ISspace: Update.
* cppinit.c: ISTABLE: Update.
V: New.
* cpplex.c (IS_HSPACE, S_NEWLINE): Remove.
(IS_DIRECTIVE): Rename KNOWN_DIRECTIVE.
(skip_block_comment, skip_line_comment, parse_string,
lex_line): Use is_vspace rather than IS_NEWLINE.
(skip_whitespace, lex_line): Clean up to use is_nvspace.
(lex_line): Use KNOWN_DIRECTIVE. Any kind of directive
gets a BOL flag.
(lex_next): Unconditionally stop if within a directive.
Treat directives within macro invocations as directives
(after parse_args emits error), not as the argument.
* testsuite/gcc.dg/cpp/directiv.c: New tests.
* testsuite/gcc.dg/cpp/undef1.c: Update.
From-SVN: r34933
2000-07-09 11:19:44 +02:00
|
|
|
|
2000-07-09 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpphash.h: ISvspace, is_vspace, is_nvspace: New.
|
|
|
|
|
IShspace, ISspace: Update.
|
|
|
|
|
|
|
|
|
|
* cppinit.c: ISTABLE: Update.
|
|
|
|
|
V: New.
|
|
|
|
|
|
|
|
|
|
* cpplex.c (IS_HSPACE, S_NEWLINE): Remove.
|
|
|
|
|
(IS_DIRECTIVE): Rename KNOWN_DIRECTIVE.
|
|
|
|
|
(skip_block_comment, skip_line_comment, parse_string,
|
|
|
|
|
lex_line): Use is_vspace rather than IS_NEWLINE.
|
|
|
|
|
(skip_whitespace, lex_line): Clean up to use is_nvspace.
|
|
|
|
|
(lex_line): Use KNOWN_DIRECTIVE. Any kind of directive
|
|
|
|
|
gets a BOL flag.
|
|
|
|
|
(lex_next): Unconditionally stop if within a directive.
|
|
|
|
|
Treat directives within macro invocations as directives
|
|
|
|
|
(after parse_args emits error), not as the argument.
|
|
|
|
|
|
2000-07-09 09:51:26 +02:00
|
|
|
|
2000-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* diagnostic.c (diagnostic_args): New macro.
|
|
|
|
|
(diagnostic_msg): Likewise.
|
|
|
|
|
(output_formatted_integer): Likewise.
|
|
|
|
|
(output_state): New data type.
|
|
|
|
|
(digit_buffer): Make global.
|
|
|
|
|
(output_add_integer): Rename to output_decimal. Squeeze
|
2000-07-13 06:43:47 +02:00
|
|
|
|
digit_buffer.
|
2000-07-09 09:51:26 +02:00
|
|
|
|
(output_long_decimal, output_unsigned_decimal,
|
|
|
|
|
output_long_unsigned_decimal, output_octal, output_long_octal,
|
|
|
|
|
output_hexadecimal, output_long_hexadecimal): New functions.
|
|
|
|
|
(output_append_r): New function.
|
|
|
|
|
(output_append): Tweak.
|
|
|
|
|
(output_flush_on): Rename to output_to_stream.
|
|
|
|
|
(output_format): Change prototype. Improve documentation. Handle
|
|
|
|
|
more format specifiers.
|
|
|
|
|
(build_location_prefix): Rename to context_as_prefix.
|
|
|
|
|
(output_notice): Rename to output_do_printf.
|
|
|
|
|
(output_printf): Tweak.
|
|
|
|
|
(line_wrapper_printf): Likewise.
|
|
|
|
|
(vline_wrapper_message_with_location): Adjust call to renamed
|
2000-07-13 06:43:47 +02:00
|
|
|
|
functions.
|
2000-07-09 09:51:26 +02:00
|
|
|
|
(v_message_with_decl): Likewise.
|
|
|
|
|
(default_print_error_function): Likewise.
|
|
|
|
|
(save_output_state): New function.
|
|
|
|
|
(restore_output_state): Likewise.
|
|
|
|
|
(output_do_verbatim): Likewise.
|
|
|
|
|
(output_verbatim): Define.
|
|
|
|
|
(verbatim): Likewise.
|
|
|
|
|
|
|
|
|
|
* diagnostic.h (printer_fn): Change return type from void to int.
|
|
|
|
|
Improve documentation.
|
|
|
|
|
(output_add_integer): Rename to output_decimal.
|
|
|
|
|
(output_flush_on, output_format): Don't export.
|
|
|
|
|
(output_verbatim, verbatim): Declare.
|
|
|
|
|
|
2000-07-09 00:29:17 +02:00
|
|
|
|
2000-07-08 Toon Moene <toon@moene.indiv.nluug.nl>
|
|
|
|
|
|
|
|
|
|
* fold-const.c (extract_muldiv) case PLUS_EXPR, MINUS_EXPR:
|
|
|
|
|
Check whether c divides op1 exactly if operation is not
|
|
|
|
|
multiplication.
|
|
|
|
|
|
2000-07-08 23:17:51 +02:00
|
|
|
|
2000-07-08 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
2000-07-10 22:51:23 +02:00
|
|
|
|
* final.c (final): Do not abort when reg-stack introduces
|
2000-07-08 23:17:51 +02:00
|
|
|
|
a new insn.
|
|
|
|
|
|
cpplib.h (struct cpp_name): Now struct cpp_string.
* cpplib.h (struct cpp_name): Now struct cpp_string.
(CPP_INT, CPP_FLOAT, CPP_NUMBER, CPP_COMMENT,
CPP_HEADER_NAME): Change to type S.
(struct cpp_token): Rename 'name' field to 'str'. Add 'node'
field, a cpp_hashnode *. All references to val.name updated
to use val.str or val.node as appropriate.
(struct cpp_reader): Add spec_nodes field.
(cpp_idcmp): Now cpp_ideq; takes a token * and a char *.
* cpphash.h (struct spec_nodes): New.
(enum spell_type): Reorder. Only SPELL_STRING tokens use
val.str. All references to 'spelling > SPELL_NONE' updated to
match.
(CPP_IN_SYSTEM_HEADER): Check pfile->buffer and
pfile->buffer->inc are not NULL before dereferencing them.
* cpplex.c (parse_name): Take a pointer to the current token,
plus current position and limit as args; return the new
position; don't copy the text of a name into the string
buffer, instead call cpp_lookup and store the node pointer.
If extending a token, copy out the text of the old into a
scratch buffer, append the new, look that up and store the new
node pointer. Inline.
(maybe_paste_with_next): If the result of paste is a NAME,
then look up the pasted text and store its node pointer.
(lex_line): Adjust for new parse_name interface.
Check for L"str", L'str' using spec_nodes->n_L.
(spell_token): SPELL_IDENT tokens have their spelling in
val.node->name. Handle SPELL_STRING tokens that don't have
string delimiters.
(_cpp_expand_name_space,
(can_paste): Check for L ## "str" using spec_nodes->n_L.
(cpp_get_token, special_symbol): No need to call cpp_lookup.
(cpp_idcmp): Now cpp_ideq; take a token * and a const char *;
return 1=equal 0=not, not a tristate.
* cpphash.c (var_args_str): Delete.
(find_param): Compare node fields directly.
(is__va_args__): Use CPP_PEDANTIC. Just compare
token->val.node with spec_nodes->n__VA_ARGS__.
(dump_funlike_macro): Don't use var_args_str.
* cpplib.c (_cpp_check_directive): Just walk through
spec_nodes->dirs comparing pointers.
(get_define_node, do_pragma_poison, detect_if_not_defined,
parse_ifdef): The identifier has already been looked up.
(do_ifdef, do_ifndef): parse_ifdef won't return a poisoned
node.
(do_if): Only call detect_if_not_defined at beginning of file.
(_cpp_parse_assertion): Only copy string pointers for
SPELL_STRING tokens.
(pragma_dispatch): Take a node pointer and examine its name
field.
(_cpp_init_stacks): Also initialize the spec_nodes structure.
* cppinit.c (cpp_reader_init): Call _cpp_init_stacks after
_cpp_init_macros.
(cpp_cleanup): Free pfile->spec_nodes. Call _cpp_cleanup_* in
reverse order from the corresponding _cpp_init_* routines.
* cppexp.c (parse_number, parse_charconst, parse_defined,
lex): Check val.node->type instead of calling cpp_defined.
Use spec_nodes entries where appropriate.
* fix-header.c, scan-decls.c: Update for interface changes.
From-SVN: r34926
2000-07-08 21:00:39 +02:00
|
|
|
|
2000-07-08 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplib.h (struct cpp_name): Now struct cpp_string.
|
|
|
|
|
(CPP_INT, CPP_FLOAT, CPP_NUMBER, CPP_COMMENT,
|
|
|
|
|
CPP_HEADER_NAME): Change to type S.
|
|
|
|
|
(struct cpp_token): Rename 'name' field to 'str'. Add 'node'
|
|
|
|
|
field, a cpp_hashnode *. All references to val.name updated
|
|
|
|
|
to use val.str or val.node as appropriate.
|
|
|
|
|
(struct cpp_reader): Add spec_nodes field.
|
|
|
|
|
(cpp_idcmp): Now cpp_ideq; takes a token * and a char *.
|
|
|
|
|
|
|
|
|
|
* cpphash.h (struct spec_nodes): New.
|
|
|
|
|
(enum spell_type): Reorder. Only SPELL_STRING tokens use
|
|
|
|
|
val.str. All references to 'spelling > SPELL_NONE' updated to
|
|
|
|
|
match.
|
|
|
|
|
|
|
|
|
|
(CPP_IN_SYSTEM_HEADER): Check pfile->buffer and
|
|
|
|
|
pfile->buffer->inc are not NULL before dereferencing them.
|
|
|
|
|
|
|
|
|
|
* cpplex.c (parse_name): Take a pointer to the current token,
|
|
|
|
|
plus current position and limit as args; return the new
|
|
|
|
|
position; don't copy the text of a name into the string
|
|
|
|
|
buffer, instead call cpp_lookup and store the node pointer.
|
|
|
|
|
If extending a token, copy out the text of the old into a
|
|
|
|
|
scratch buffer, append the new, look that up and store the new
|
|
|
|
|
node pointer. Inline.
|
|
|
|
|
(maybe_paste_with_next): If the result of paste is a NAME,
|
|
|
|
|
then look up the pasted text and store its node pointer.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
(lex_line): Adjust for new parse_name interface.
|
cpplib.h (struct cpp_name): Now struct cpp_string.
* cpplib.h (struct cpp_name): Now struct cpp_string.
(CPP_INT, CPP_FLOAT, CPP_NUMBER, CPP_COMMENT,
CPP_HEADER_NAME): Change to type S.
(struct cpp_token): Rename 'name' field to 'str'. Add 'node'
field, a cpp_hashnode *. All references to val.name updated
to use val.str or val.node as appropriate.
(struct cpp_reader): Add spec_nodes field.
(cpp_idcmp): Now cpp_ideq; takes a token * and a char *.
* cpphash.h (struct spec_nodes): New.
(enum spell_type): Reorder. Only SPELL_STRING tokens use
val.str. All references to 'spelling > SPELL_NONE' updated to
match.
(CPP_IN_SYSTEM_HEADER): Check pfile->buffer and
pfile->buffer->inc are not NULL before dereferencing them.
* cpplex.c (parse_name): Take a pointer to the current token,
plus current position and limit as args; return the new
position; don't copy the text of a name into the string
buffer, instead call cpp_lookup and store the node pointer.
If extending a token, copy out the text of the old into a
scratch buffer, append the new, look that up and store the new
node pointer. Inline.
(maybe_paste_with_next): If the result of paste is a NAME,
then look up the pasted text and store its node pointer.
(lex_line): Adjust for new parse_name interface.
Check for L"str", L'str' using spec_nodes->n_L.
(spell_token): SPELL_IDENT tokens have their spelling in
val.node->name. Handle SPELL_STRING tokens that don't have
string delimiters.
(_cpp_expand_name_space,
(can_paste): Check for L ## "str" using spec_nodes->n_L.
(cpp_get_token, special_symbol): No need to call cpp_lookup.
(cpp_idcmp): Now cpp_ideq; take a token * and a const char *;
return 1=equal 0=not, not a tristate.
* cpphash.c (var_args_str): Delete.
(find_param): Compare node fields directly.
(is__va_args__): Use CPP_PEDANTIC. Just compare
token->val.node with spec_nodes->n__VA_ARGS__.
(dump_funlike_macro): Don't use var_args_str.
* cpplib.c (_cpp_check_directive): Just walk through
spec_nodes->dirs comparing pointers.
(get_define_node, do_pragma_poison, detect_if_not_defined,
parse_ifdef): The identifier has already been looked up.
(do_ifdef, do_ifndef): parse_ifdef won't return a poisoned
node.
(do_if): Only call detect_if_not_defined at beginning of file.
(_cpp_parse_assertion): Only copy string pointers for
SPELL_STRING tokens.
(pragma_dispatch): Take a node pointer and examine its name
field.
(_cpp_init_stacks): Also initialize the spec_nodes structure.
* cppinit.c (cpp_reader_init): Call _cpp_init_stacks after
_cpp_init_macros.
(cpp_cleanup): Free pfile->spec_nodes. Call _cpp_cleanup_* in
reverse order from the corresponding _cpp_init_* routines.
* cppexp.c (parse_number, parse_charconst, parse_defined,
lex): Check val.node->type instead of calling cpp_defined.
Use spec_nodes entries where appropriate.
* fix-header.c, scan-decls.c: Update for interface changes.
From-SVN: r34926
2000-07-08 21:00:39 +02:00
|
|
|
|
Check for L"str", L'str' using spec_nodes->n_L.
|
|
|
|
|
(spell_token): SPELL_IDENT tokens have their spelling in
|
|
|
|
|
val.node->name. Handle SPELL_STRING tokens that don't have
|
|
|
|
|
string delimiters.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
(_cpp_expand_name_space,
|
cpplib.h (struct cpp_name): Now struct cpp_string.
* cpplib.h (struct cpp_name): Now struct cpp_string.
(CPP_INT, CPP_FLOAT, CPP_NUMBER, CPP_COMMENT,
CPP_HEADER_NAME): Change to type S.
(struct cpp_token): Rename 'name' field to 'str'. Add 'node'
field, a cpp_hashnode *. All references to val.name updated
to use val.str or val.node as appropriate.
(struct cpp_reader): Add spec_nodes field.
(cpp_idcmp): Now cpp_ideq; takes a token * and a char *.
* cpphash.h (struct spec_nodes): New.
(enum spell_type): Reorder. Only SPELL_STRING tokens use
val.str. All references to 'spelling > SPELL_NONE' updated to
match.
(CPP_IN_SYSTEM_HEADER): Check pfile->buffer and
pfile->buffer->inc are not NULL before dereferencing them.
* cpplex.c (parse_name): Take a pointer to the current token,
plus current position and limit as args; return the new
position; don't copy the text of a name into the string
buffer, instead call cpp_lookup and store the node pointer.
If extending a token, copy out the text of the old into a
scratch buffer, append the new, look that up and store the new
node pointer. Inline.
(maybe_paste_with_next): If the result of paste is a NAME,
then look up the pasted text and store its node pointer.
(lex_line): Adjust for new parse_name interface.
Check for L"str", L'str' using spec_nodes->n_L.
(spell_token): SPELL_IDENT tokens have their spelling in
val.node->name. Handle SPELL_STRING tokens that don't have
string delimiters.
(_cpp_expand_name_space,
(can_paste): Check for L ## "str" using spec_nodes->n_L.
(cpp_get_token, special_symbol): No need to call cpp_lookup.
(cpp_idcmp): Now cpp_ideq; take a token * and a const char *;
return 1=equal 0=not, not a tristate.
* cpphash.c (var_args_str): Delete.
(find_param): Compare node fields directly.
(is__va_args__): Use CPP_PEDANTIC. Just compare
token->val.node with spec_nodes->n__VA_ARGS__.
(dump_funlike_macro): Don't use var_args_str.
* cpplib.c (_cpp_check_directive): Just walk through
spec_nodes->dirs comparing pointers.
(get_define_node, do_pragma_poison, detect_if_not_defined,
parse_ifdef): The identifier has already been looked up.
(do_ifdef, do_ifndef): parse_ifdef won't return a poisoned
node.
(do_if): Only call detect_if_not_defined at beginning of file.
(_cpp_parse_assertion): Only copy string pointers for
SPELL_STRING tokens.
(pragma_dispatch): Take a node pointer and examine its name
field.
(_cpp_init_stacks): Also initialize the spec_nodes structure.
* cppinit.c (cpp_reader_init): Call _cpp_init_stacks after
_cpp_init_macros.
(cpp_cleanup): Free pfile->spec_nodes. Call _cpp_cleanup_* in
reverse order from the corresponding _cpp_init_* routines.
* cppexp.c (parse_number, parse_charconst, parse_defined,
lex): Check val.node->type instead of calling cpp_defined.
Use spec_nodes entries where appropriate.
* fix-header.c, scan-decls.c: Update for interface changes.
From-SVN: r34926
2000-07-08 21:00:39 +02:00
|
|
|
|
(can_paste): Check for L ## "str" using spec_nodes->n_L.
|
|
|
|
|
(cpp_get_token, special_symbol): No need to call cpp_lookup.
|
|
|
|
|
(cpp_idcmp): Now cpp_ideq; take a token * and a const char *;
|
|
|
|
|
return 1=equal 0=not, not a tristate.
|
|
|
|
|
|
|
|
|
|
* cpphash.c (var_args_str): Delete.
|
|
|
|
|
(find_param): Compare node fields directly.
|
|
|
|
|
(is__va_args__): Use CPP_PEDANTIC. Just compare
|
|
|
|
|
token->val.node with spec_nodes->n__VA_ARGS__.
|
|
|
|
|
(dump_funlike_macro): Don't use var_args_str.
|
|
|
|
|
|
|
|
|
|
* cpplib.c (_cpp_check_directive): Just walk through
|
|
|
|
|
spec_nodes->dirs comparing pointers.
|
|
|
|
|
(get_define_node, do_pragma_poison, detect_if_not_defined,
|
|
|
|
|
parse_ifdef): The identifier has already been looked up.
|
|
|
|
|
(do_ifdef, do_ifndef): parse_ifdef won't return a poisoned
|
|
|
|
|
node.
|
|
|
|
|
(do_if): Only call detect_if_not_defined at beginning of file.
|
|
|
|
|
(_cpp_parse_assertion): Only copy string pointers for
|
|
|
|
|
SPELL_STRING tokens.
|
|
|
|
|
(pragma_dispatch): Take a node pointer and examine its name
|
|
|
|
|
field.
|
|
|
|
|
(_cpp_init_stacks): Also initialize the spec_nodes structure.
|
|
|
|
|
|
|
|
|
|
* cppinit.c (cpp_reader_init): Call _cpp_init_stacks after
|
2000-07-13 06:43:47 +02:00
|
|
|
|
_cpp_init_macros.
|
cpplib.h (struct cpp_name): Now struct cpp_string.
* cpplib.h (struct cpp_name): Now struct cpp_string.
(CPP_INT, CPP_FLOAT, CPP_NUMBER, CPP_COMMENT,
CPP_HEADER_NAME): Change to type S.
(struct cpp_token): Rename 'name' field to 'str'. Add 'node'
field, a cpp_hashnode *. All references to val.name updated
to use val.str or val.node as appropriate.
(struct cpp_reader): Add spec_nodes field.
(cpp_idcmp): Now cpp_ideq; takes a token * and a char *.
* cpphash.h (struct spec_nodes): New.
(enum spell_type): Reorder. Only SPELL_STRING tokens use
val.str. All references to 'spelling > SPELL_NONE' updated to
match.
(CPP_IN_SYSTEM_HEADER): Check pfile->buffer and
pfile->buffer->inc are not NULL before dereferencing them.
* cpplex.c (parse_name): Take a pointer to the current token,
plus current position and limit as args; return the new
position; don't copy the text of a name into the string
buffer, instead call cpp_lookup and store the node pointer.
If extending a token, copy out the text of the old into a
scratch buffer, append the new, look that up and store the new
node pointer. Inline.
(maybe_paste_with_next): If the result of paste is a NAME,
then look up the pasted text and store its node pointer.
(lex_line): Adjust for new parse_name interface.
Check for L"str", L'str' using spec_nodes->n_L.
(spell_token): SPELL_IDENT tokens have their spelling in
val.node->name. Handle SPELL_STRING tokens that don't have
string delimiters.
(_cpp_expand_name_space,
(can_paste): Check for L ## "str" using spec_nodes->n_L.
(cpp_get_token, special_symbol): No need to call cpp_lookup.
(cpp_idcmp): Now cpp_ideq; take a token * and a const char *;
return 1=equal 0=not, not a tristate.
* cpphash.c (var_args_str): Delete.
(find_param): Compare node fields directly.
(is__va_args__): Use CPP_PEDANTIC. Just compare
token->val.node with spec_nodes->n__VA_ARGS__.
(dump_funlike_macro): Don't use var_args_str.
* cpplib.c (_cpp_check_directive): Just walk through
spec_nodes->dirs comparing pointers.
(get_define_node, do_pragma_poison, detect_if_not_defined,
parse_ifdef): The identifier has already been looked up.
(do_ifdef, do_ifndef): parse_ifdef won't return a poisoned
node.
(do_if): Only call detect_if_not_defined at beginning of file.
(_cpp_parse_assertion): Only copy string pointers for
SPELL_STRING tokens.
(pragma_dispatch): Take a node pointer and examine its name
field.
(_cpp_init_stacks): Also initialize the spec_nodes structure.
* cppinit.c (cpp_reader_init): Call _cpp_init_stacks after
_cpp_init_macros.
(cpp_cleanup): Free pfile->spec_nodes. Call _cpp_cleanup_* in
reverse order from the corresponding _cpp_init_* routines.
* cppexp.c (parse_number, parse_charconst, parse_defined,
lex): Check val.node->type instead of calling cpp_defined.
Use spec_nodes entries where appropriate.
* fix-header.c, scan-decls.c: Update for interface changes.
From-SVN: r34926
2000-07-08 21:00:39 +02:00
|
|
|
|
(cpp_cleanup): Free pfile->spec_nodes. Call _cpp_cleanup_* in
|
|
|
|
|
reverse order from the corresponding _cpp_init_* routines.
|
|
|
|
|
|
|
|
|
|
* cppexp.c (parse_number, parse_charconst, parse_defined,
|
|
|
|
|
lex): Check val.node->type instead of calling cpp_defined.
|
|
|
|
|
Use spec_nodes entries where appropriate.
|
|
|
|
|
|
|
|
|
|
* fix-header.c, scan-decls.c: Update for interface changes.
|
|
|
|
|
|
2000-07-08 14:42:09 +02:00
|
|
|
|
2000-07-08 Geoffrey Keating <geoffk@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/rs6000/rs6000.c (rs6000_emit_move): Fix conditions for
|
|
|
|
|
emitting aux_truncdfsf2.
|
|
|
|
|
|
2000-07-08 08:21:13 +02:00
|
|
|
|
2000-07-03 Donn Terry (donnte@microsoft.com)
|
|
|
|
|
|
|
|
|
|
* cppinit.c (print_help): split overlong line into ISO C89
|
|
|
|
|
maximum chunks.
|
|
|
|
|
|
cppexp.c: Update all code for new lexer interface.
* cppexp.c: Update all code for new lexer interface.
(op_t, operator codes, struct token, tokentab2, op_to_str): Remove.
(struct suffix, vsuf_1, vsuf_2, vsuf_3, op_to_prio): New.
* cpplex.c (token_names): Trim leading CPP_ from names; make
the strings unsigned.
(_cpp_spell_operator): New.
(is_macro_disabled): Disable all macros if rescanning
preprocessed text.
(_cpp_get_directive_token): Remove.
* cppinit.c: Don't set no_macro_expand.
* cpplib.c (read_line_number, do_line): Check only for EOF,
not VSPACE.
* cpphash.h: Update prototypes.
* cpplib.h (CPP_VSPACE): Remove.
(struct cpp_reader): Remove no_macro_expand.
testsuite:
* gcc.dg/cpp/19951227-1.c, gcc.dg/cpp/assert2.c,
gcc.dg/cpp/if-1.c, gcc.dg/cpp/if-4.c: Tweak error regexps.
From-SVN: r34920
2000-07-08 04:33:00 +02:00
|
|
|
|
2000-07-07 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppexp.c: Update all code for new lexer interface.
|
|
|
|
|
(op_t, operator codes, struct token, tokentab2, op_to_str): Remove.
|
|
|
|
|
(struct suffix, vsuf_1, vsuf_2, vsuf_3, op_to_prio): New.
|
|
|
|
|
* cpplex.c (token_names): Trim leading CPP_ from names; make
|
|
|
|
|
the strings unsigned.
|
|
|
|
|
(_cpp_spell_operator): New.
|
|
|
|
|
(is_macro_disabled): Disable all macros if rescanning
|
|
|
|
|
preprocessed text.
|
|
|
|
|
(_cpp_get_directive_token): Remove.
|
|
|
|
|
|
|
|
|
|
* cppinit.c: Don't set no_macro_expand.
|
|
|
|
|
* cpplib.c (read_line_number, do_line): Check only for EOF,
|
|
|
|
|
not VSPACE.
|
|
|
|
|
* cpphash.h: Update prototypes.
|
|
|
|
|
* cpplib.h (CPP_VSPACE): Remove.
|
|
|
|
|
(struct cpp_reader): Remove no_macro_expand.
|
|
|
|
|
|
2000-07-08 04:18:25 +02:00
|
|
|
|
2000-07-08 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpphash.c (is__va_args__): New function.
|
|
|
|
|
(count_params): Fix line reported in error messages. Use
|
|
|
|
|
is__va_args__. Don't return ')' on error. Flag GNU style
|
|
|
|
|
rest args macro definitions.
|
|
|
|
|
(parse_define): Check macro name is not __VA_ARGS__.
|
|
|
|
|
(save_expansion): Check identifier in non-varargs-macro is
|
|
|
|
|
not __VA_ARGS__. Don't flag GNU_VARARGS.
|
|
|
|
|
* cpplex.c (parse_args): Accept no argument iff GNU_REST_ARGS.
|
|
|
|
|
(maybe_paste_with_next): Use per-macro GNU_REST_ARGS rather
|
|
|
|
|
than per-token GNU_VARARGS.
|
|
|
|
|
* cpplib.h (GNU_VARARGS): Remove.
|
|
|
|
|
(GNU_REST_ARGS): New.
|
|
|
|
|
|
2000-07-08 01:49:18 +02:00
|
|
|
|
Sat Jul 8 01:38:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
|
|
|
|
|
|
|
|
|
|
* i386.md (call_pop, call, call_value_pop): Do not set
|
|
|
|
|
current_function_uses_pic_offset_table for calls to static
|
|
|
|
|
functions or indirect calls.
|
|
|
|
|
|
2000-07-08 01:43:28 +02:00
|
|
|
|
2000-07-07 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (rws_access_reg): New local write_count. If
|
|
|
|
|
is_predicate_reg, then take max write_count of register pair.
|
|
|
|
|
|
2000-07-07 22:13:35 +02:00
|
|
|
|
2000-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* tradcpp.c (main): Rename label `include' to `add_include' to
|
|
|
|
|
avoid conflicts with variable `include' in traditional C.
|
|
|
|
|
|
2000-07-07 22:06:57 +02:00
|
|
|
|
2000-07-07 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* integrate.c (copy_insn_list): Remove REG_LABEL notes.
|
|
|
|
|
|
2000-07-07 21:55:29 +02:00
|
|
|
|
2000-07-07 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* sibcall.c (uses_addressof): Add INMEM argument, check for
|
|
|
|
|
current_function_internal_arg_pointer outside of MEM rtxs in addition
|
|
|
|
|
to ADDRESSOFs.
|
|
|
|
|
(sequence_uses_addressof): Update caller.
|
|
|
|
|
|
2000-07-07 21:36:12 +02:00
|
|
|
|
2000-07-07 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* tradcpp.c (initialize_builtins): Honor NO_BUILTIN_SIZE_TYPE
|
|
|
|
|
and friends.
|
|
|
|
|
|
2000-07-07 16:29:03 +02:00
|
|
|
|
2000-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* system.h (UNION_INIT_ZERO): New macro for initializing union
|
|
|
|
|
members in structs.
|
|
|
|
|
|
|
|
|
|
* cpplex.c (placemarker_token, eof_token): Use UNION_INIT_ZERO.
|
|
|
|
|
|
2000-07-07 16:11:34 +02:00
|
|
|
|
2000-07-07 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpp.texi: Update.
|
|
|
|
|
|
2000-07-07 15:48:38 +02:00
|
|
|
|
Fri Jul 7 07:47:35 2000 Jeffrey A Law (law@cygnus.com)
|
|
|
|
|
|
|
|
|
|
* final.c (final): Detect out of bounds array access to
|
|
|
|
|
the insn_lengths array.
|
|
|
|
|
|
2000-07-07 15:09:17 +02:00
|
|
|
|
2000-07-07 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
|
|
|
|
* fold-const.c (fold): Fix a comment typo.
|
|
|
|
|
|
2000-07-07 12:04:59 +02:00
|
|
|
|
2000-07-07 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpp.texi: Update to new lexer.
|
|
|
|
|
|
2000-07-07 00:59:34 +02:00
|
|
|
|
2000-07-06 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* tradcpp.c: New file.
|
|
|
|
|
* tradcif.y: New file.
|
|
|
|
|
* tradcif.c: New generated file.
|
|
|
|
|
|
|
|
|
|
* Makefile.in: Add rules to build tradcpp.o, tradcif.o,
|
|
|
|
|
$(srcdir)/tradcif.c. Add tradcpp to STAGESTUFF and
|
|
|
|
|
dependencies of C. Install tradcpp from install-common, in
|
|
|
|
|
$(libsubdir).
|
|
|
|
|
|
2000-07-07 00:52:03 +02:00
|
|
|
|
2000-07-06 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppinit.c: Include cppdefault.h. Refer to
|
|
|
|
|
cpp_GCC_INCLUDE_DIR and cpp_GCC_INCLUDE_DIR_len, not directly
|
|
|
|
|
to GCC_INCLUDE_DIR and its length.
|
|
|
|
|
(SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
|
|
|
|
|
USER_LABEL_PREFIX, REGISTER_PREFIX, struct default_include,
|
|
|
|
|
STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT): Move to
|
|
|
|
|
cppdefault.h.
|
|
|
|
|
(include_defaults_array): Move to cppdefault.c.
|
|
|
|
|
|
|
|
|
|
* cppdefault.h: New file.
|
|
|
|
|
* cppdefault.c: New file.
|
|
|
|
|
|
|
|
|
|
* Makefile.in (LIBCPP_OBJS): Add cppdefault.o.
|
|
|
|
|
(cppinit.o): Don't apply $(PREPROCESSOR_DEFINES) to this file.
|
|
|
|
|
(cppdefault.o): New rule; apply $(PREPROCESSOR_DEFINES) to
|
|
|
|
|
this file.
|
|
|
|
|
|
2000-07-07 00:26:17 +02:00
|
|
|
|
Thu Jul 6 18:30:36 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
|
|
|
|
|
|
|
|
|
* reload.c (push_reload): When seeing if can reuse a register,
|
|
|
|
|
check extra registers against widest of INMODE and OUTMODE.
|
|
|
|
|
|
2000-07-06 11:51:57 +02:00
|
|
|
|
2000-07-06 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpplib.c: (_cpp_parse_assertion): Perform hash lookups
|
|
|
|
|
based on full length of predicate.
|
|
|
|
|
|
2000-07-06 11:36:52 +02:00
|
|
|
|
2000-07-06 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* timevar.c: [HAVE_SYS_RESOURCE_H]: Include <sys/resource.h>.
|
|
|
|
|
[NEED_DECLARATION_GETRUSAGE]: Declare getrusage.
|
|
|
|
|
|
2000-07-06 06:08:07 +02:00
|
|
|
|
2000-07-05 Kazu Hirata <kazu@hxi.com>
|
|
|
|
|
|
|
|
|
|
* h8300-proto.h: Fix formatting.
|
|
|
|
|
* h8300.c: Likewise.
|
|
|
|
|
* h8300.h: Likewise.
|
|
|
|
|
|
2000-07-06 03:31:15 +02:00
|
|
|
|
2000-07-05 Jim Wilson <wilson@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.h (HARD_REGNO_MODE_OK): If FR_REGNO_P, disallow
|
|
|
|
|
CCmode.
|
|
|
|
|
|
2000-07-06 03:07:01 +02:00
|
|
|
|
2000-07-05 Rodney Brown <RodneyBrown@pmsc.com>
|
|
|
|
|
|
|
|
|
|
* invoke.texi: Fix minor typos
|
|
|
|
|
* md.texi: Fix minor typos
|
|
|
|
|
|
2000-07-05 20:12:42 +02:00
|
|
|
|
2000-07-05 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplib.c (_cpp_parse_assertion): Fix buffer overrun.
|
|
|
|
|
|
cpplex.c: Don't include sys/mman.h.
toplevel:
* cpplex.c: Don't include sys/mman.h.
(cpp_push_buffer, cpp_pop_buffer): Moved to cpplib.c.
* cpplib.c: Include sys/mman.h and obstack.h.
(cpp_push_buffer): Moved from cpplex.c; allocate buffers on an
obstack.
(cpp_pop_buffer): Moved from cpplex.c; free buffers from an obstack.
(_cpp_unwind_if_stack): Now static, unwind_if_stack. Don't
bother freeing if stack entries (they will be freed with their buffer).
(do_endif): Free if stack entries from the buffer obstack.
(push_conditional): Allocate if stack entries from the buffer obstack.
(find_answer): Rename to _cpp_find_answer.
(do_assert, do_unassert): Update.
* cpphash.h: Update prototypes.
(xobnew): New convenience macro.
* cpplib.h (struct cpp_reader): Add hash_ob and buffer_ob fields.
Update comments.
(struct cpp_hashnode): Remove disabled field.
* cppinit.c: Don't include hashtab.h or splay-tree.h.
(report_missing_guard): Moved to cppfiles.c.
(cpp_reader_init): Call cpp_init_stacks, cpp_init_macros,
cpp_init_includes.
(cpp_cleanup): Call cpp_cleanup_stacks, cpp_cleanup_macros,
cpp_cleanup_includes. Don't destroy hashtab or
all_include_files here.
(cpp_finish): Use _cpp_report_missing_guards.
* cppfiles.c (report_missing_guard): Moved from cppinit.c.
(_cpp_init_include_table): Rename _cpp_init_includes.
(_cpp_cleanup_includes, _cpp_report_missing_guards): New.
* cppexp.c (parse_assertion): Update for new name of
find_answer.
* Makefile.in (cpplib.o, cpphash.o, cppinit.o): Update deps.
* cpplib.c (do_ident): s/VSPACE/EOF/
testsuite:
* gcc.dg/cpp/ident.c: New test.
From-SVN: r34870
2000-07-05 07:33:57 +02:00
|
|
|
|
2000-07-04 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplex.c: Don't include sys/mman.h.
|
|
|
|
|
(cpp_push_buffer, cpp_pop_buffer): Moved to cpplib.c.
|
|
|
|
|
|
|
|
|
|
* cpplib.c: Include sys/mman.h and obstack.h.
|
|
|
|
|
(cpp_push_buffer): Moved from cpplex.c; allocate buffers on an
|
|
|
|
|
obstack.
|
|
|
|
|
(cpp_pop_buffer): Moved from cpplex.c; free buffers from an obstack.
|
|
|
|
|
(_cpp_unwind_if_stack): Now static, unwind_if_stack. Don't
|
|
|
|
|
bother freeing if stack entries (they will be freed with their buffer).
|
|
|
|
|
(do_endif): Free if stack entries from the buffer obstack.
|
|
|
|
|
(push_conditional): Allocate if stack entries from the buffer obstack.
|
|
|
|
|
|
|
|
|
|
(find_answer): Rename to _cpp_find_answer.
|
|
|
|
|
(do_assert, do_unassert): Update.
|
|
|
|
|
|
|
|
|
|
* cpphash.h: Update prototypes.
|
|
|
|
|
(xobnew): New convenience macro.
|
|
|
|
|
* cpplib.h (struct cpp_reader): Add hash_ob and buffer_ob fields.
|
|
|
|
|
Update comments.
|
|
|
|
|
(struct cpp_hashnode): Remove disabled field.
|
|
|
|
|
|
|
|
|
|
* cppinit.c: Don't include hashtab.h or splay-tree.h.
|
|
|
|
|
(report_missing_guard): Moved to cppfiles.c.
|
|
|
|
|
(cpp_reader_init): Call cpp_init_stacks, cpp_init_macros,
|
|
|
|
|
cpp_init_includes.
|
|
|
|
|
(cpp_cleanup): Call cpp_cleanup_stacks, cpp_cleanup_macros,
|
|
|
|
|
cpp_cleanup_includes. Don't destroy hashtab or
|
|
|
|
|
all_include_files here.
|
|
|
|
|
(cpp_finish): Use _cpp_report_missing_guards.
|
|
|
|
|
|
|
|
|
|
* cppfiles.c (report_missing_guard): Moved from cppinit.c.
|
|
|
|
|
(_cpp_init_include_table): Rename _cpp_init_includes.
|
|
|
|
|
(_cpp_cleanup_includes, _cpp_report_missing_guards): New.
|
|
|
|
|
|
|
|
|
|
* cppexp.c (parse_assertion): Update for new name of
|
|
|
|
|
find_answer.
|
|
|
|
|
|
|
|
|
|
* Makefile.in (cpplib.o, cpphash.o, cppinit.o): Update deps.
|
|
|
|
|
|
|
|
|
|
2000-07-04 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cpplib.c (do_ident): s/VSPACE/EOF/
|
|
|
|
|
|
2000-07-05 00:26:16 +02:00
|
|
|
|
2000-07-05 Neil Booth <NeilB@earthling.net>
|
|
|
|
|
|
|
|
|
|
* cpplex.c: Fix trigraph replacement within strings.
|
|
|
|
|
|
2000-07-04 13:14:13 +02:00
|
|
|
|
2000-07-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* rs6000/aix.h (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier.
|
|
|
|
|
|
|
|
|
|
* xcoffout.c (assign_type_number): Constify.
|
|
|
|
|
(xcoffout_source_file): Add static prototype. Don't needlessly
|
|
|
|
|
cast away const-ness.
|
|
|
|
|
|
2000-07-04 09:55:39 +02:00
|
|
|
|
2000-07-04 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
|
|
|
|
* frame.h (frame_state): Move base_offset to end.
|
|
|
|
|
|
2000-07-04 04:30:22 +02:00
|
|
|
|
Mon Jul 3 21:31:43 2000 Clinton Popetz <cpopetz@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* calls.c (emit_library_call_value_1): Revert previous change.
|
|
|
|
|
|
top level:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* fix-header.c (struct partial_proto): Remove unnecessary fields.
(recognized_extern, recognized_function, read_scan_file):
Update for new scheme.
(check_protection): It's still a multiple include guard even
if it doesn't always trigger.
* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
new scheme.
* scan.h: Declare struct cpp_token. Update prototypes.
2000-07-03 Neil Booth <neilb@earthling.net>
Zack Weinberg <zack@wolery.cumb.org>
Complete overhaul of the lexer and macro expander.
* cpphash.c (object_defn, funct_defn, push_macro_expansion,
arg, arglist, argdata, reflist, collect_objlike_expansion,
collect_funlike_expansion, collect_params,
warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
unsafe_chars, macarg, compare_defs, special_symbol,
scan_arguments, stringify, funlike_macroexpand,
_cpp_quote_string, monthnames): Delete.
(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
_cpp_create_definition, _cpp_dump_definition,
dump_hash_helper): Adjust.
(find_param, count_params, parse_define, var_args_str,
check_macro_redefinition, save_expansion): New.
* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
parse_string, output_line_command, trigraph_replace,
lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
_cpp_skip_rest_of_line): Modify.
(maybe_macroexpand, skip_comment, copy_comment, skip_string,
find_position, null_warning, bump_column, expand_name_space,
pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
_cpp_prescan): Delete.
(dump_param_spelling, process_directive, lex_next,
is_macro_disabled, stringify_arg, expand_context_stack,
output_token, make_string_token, alloc_number_token,
special_symbol, duplicate_token, maybe_paste_with_next,
can_paste, prevent_macro_expansion, restore_macro_expansion,
get_temp_token, release_temp_tokens, quote_string,
token_names, token_spellings, _cpp_expand_name_space,
_cpp_glue_header_name, _cpp_reserve_name_space,
digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
placemarker_token, eof_token, cpp_context, macro_args,
get_raw_token, parse_arg, parse_args, save_token,
push_arg_context, push_macro_context, pop_context,
do_pop_context, free_macro_args, _cpp_get_line,
_cpp_run_directive): New.
* cpplib.c (validate_else, parse_include, push_conditional,
pass_thru_directive, read_line_number, parse_ifdef,
detect_if_not_defined, _cpp_check_directive, do_define,
do_undef, do_include, do_import, do_include_next, do_error,
do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
top_pragmas, do_pragma_gcc, do_pragma_implementation,
do_pragma_poison, do_pragma_system_header,
do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
cpp_defined): Update for new scheme.
(strtoul_for_line, get_define_node, dump_macro_name,
_cpp_check_linemarker, _cpp_parse_assertion): New.
(_cpp_handle_directive, do_pragma_default): Delete.
* cpphash.h (struct predicate): Now struct answer.
(enum spell_type, struct token_spelling, struct directive,
directive_handler): New.
Update prototypes. Remove unused macros.
* cpplib.h: Update prototypes. Remove unused macros,
structure definitions, and fields.
* cpperror.c (print_containing_files, v_message): Adjust.
* cppexp.c (parse_assertion, lex, parse_escape,
_cpp_parse_expr): Adjust.
* cppfiles.c (open_include_file, _cpp_execute_include,
_cpp_compare_file_date, cpp_read_file, read_include_file):
Adjust.
* cppinit.c (dump_special_to_buffer): Delete.
(append_include_chain, merge_include_chains, cpp_reader_init,
cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
cpp_finish, handle_option, print_help): Adjust.
* cppmain.c (main): Adjust.
testsuite:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* testsuite/gcc.dg/cpp/19951025-1.c: Adjust regexps.
* testsuite/gcc.dg/cpp/19990703-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-2.c: Likewise.
* testsuite/gcc.dg/cpp/macro1.c,
testsuite/gcc.dg/cpp/paste1.c, testsuite/gcc.dg/cpp/paste2.c,
testsuite/gcc.dg/cpp/paste3.c, testsuite/gcc.dg/cpp/paste4.c,
testsuite/gcc.dg/cpp/strify1.c,
testsuite/gcc.dg/cpp/strify2.c: New tests.
From-SVN: r34859
2000-07-04 03:58:21 +02:00
|
|
|
|
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* fix-header.c (struct partial_proto): Remove unnecessary fields.
|
|
|
|
|
(recognized_extern, recognized_function, read_scan_file):
|
|
|
|
|
Update for new scheme.
|
|
|
|
|
(check_protection): It's still a multiple include guard even
|
|
|
|
|
if it doesn't always trigger.
|
|
|
|
|
* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
|
|
|
|
|
new scheme.
|
|
|
|
|
* scan.h: Declare struct cpp_token. Update prototypes.
|
|
|
|
|
|
|
|
|
|
2000-07-03 Neil Booth <neilb@earthling.net>
|
|
|
|
|
Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
Complete overhaul of the lexer and macro expander.
|
|
|
|
|
|
|
|
|
|
* cpphash.c (object_defn, funct_defn, push_macro_expansion,
|
|
|
|
|
arg, arglist, argdata, reflist, collect_objlike_expansion,
|
|
|
|
|
collect_funlike_expansion, collect_params,
|
|
|
|
|
warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
|
|
|
|
|
unsafe_chars, macarg, compare_defs, special_symbol,
|
|
|
|
|
scan_arguments, stringify, funlike_macroexpand,
|
|
|
|
|
_cpp_quote_string, monthnames): Delete.
|
|
|
|
|
(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
|
|
|
|
|
_cpp_create_definition, _cpp_dump_definition,
|
|
|
|
|
dump_hash_helper): Adjust.
|
|
|
|
|
(find_param, count_params, parse_define, var_args_str,
|
|
|
|
|
check_macro_redefinition, save_expansion): New.
|
|
|
|
|
|
|
|
|
|
* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
|
2000-07-10 22:51:23 +02:00
|
|
|
|
parse_string, output_line_command, trigraph_replace,
|
|
|
|
|
lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
|
|
|
|
|
cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
|
|
|
|
|
cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
|
top level:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* fix-header.c (struct partial_proto): Remove unnecessary fields.
(recognized_extern, recognized_function, read_scan_file):
Update for new scheme.
(check_protection): It's still a multiple include guard even
if it doesn't always trigger.
* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
new scheme.
* scan.h: Declare struct cpp_token. Update prototypes.
2000-07-03 Neil Booth <neilb@earthling.net>
Zack Weinberg <zack@wolery.cumb.org>
Complete overhaul of the lexer and macro expander.
* cpphash.c (object_defn, funct_defn, push_macro_expansion,
arg, arglist, argdata, reflist, collect_objlike_expansion,
collect_funlike_expansion, collect_params,
warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
unsafe_chars, macarg, compare_defs, special_symbol,
scan_arguments, stringify, funlike_macroexpand,
_cpp_quote_string, monthnames): Delete.
(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
_cpp_create_definition, _cpp_dump_definition,
dump_hash_helper): Adjust.
(find_param, count_params, parse_define, var_args_str,
check_macro_redefinition, save_expansion): New.
* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
parse_string, output_line_command, trigraph_replace,
lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
_cpp_skip_rest_of_line): Modify.
(maybe_macroexpand, skip_comment, copy_comment, skip_string,
find_position, null_warning, bump_column, expand_name_space,
pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
_cpp_prescan): Delete.
(dump_param_spelling, process_directive, lex_next,
is_macro_disabled, stringify_arg, expand_context_stack,
output_token, make_string_token, alloc_number_token,
special_symbol, duplicate_token, maybe_paste_with_next,
can_paste, prevent_macro_expansion, restore_macro_expansion,
get_temp_token, release_temp_tokens, quote_string,
token_names, token_spellings, _cpp_expand_name_space,
_cpp_glue_header_name, _cpp_reserve_name_space,
digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
placemarker_token, eof_token, cpp_context, macro_args,
get_raw_token, parse_arg, parse_args, save_token,
push_arg_context, push_macro_context, pop_context,
do_pop_context, free_macro_args, _cpp_get_line,
_cpp_run_directive): New.
* cpplib.c (validate_else, parse_include, push_conditional,
pass_thru_directive, read_line_number, parse_ifdef,
detect_if_not_defined, _cpp_check_directive, do_define,
do_undef, do_include, do_import, do_include_next, do_error,
do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
top_pragmas, do_pragma_gcc, do_pragma_implementation,
do_pragma_poison, do_pragma_system_header,
do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
cpp_defined): Update for new scheme.
(strtoul_for_line, get_define_node, dump_macro_name,
_cpp_check_linemarker, _cpp_parse_assertion): New.
(_cpp_handle_directive, do_pragma_default): Delete.
* cpphash.h (struct predicate): Now struct answer.
(enum spell_type, struct token_spelling, struct directive,
directive_handler): New.
Update prototypes. Remove unused macros.
* cpplib.h: Update prototypes. Remove unused macros,
structure definitions, and fields.
* cpperror.c (print_containing_files, v_message): Adjust.
* cppexp.c (parse_assertion, lex, parse_escape,
_cpp_parse_expr): Adjust.
* cppfiles.c (open_include_file, _cpp_execute_include,
_cpp_compare_file_date, cpp_read_file, read_include_file):
Adjust.
* cppinit.c (dump_special_to_buffer): Delete.
(append_include_chain, merge_include_chains, cpp_reader_init,
cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
cpp_finish, handle_option, print_help): Adjust.
* cppmain.c (main): Adjust.
testsuite:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* testsuite/gcc.dg/cpp/19951025-1.c: Adjust regexps.
* testsuite/gcc.dg/cpp/19990703-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-2.c: Likewise.
* testsuite/gcc.dg/cpp/macro1.c,
testsuite/gcc.dg/cpp/paste1.c, testsuite/gcc.dg/cpp/paste2.c,
testsuite/gcc.dg/cpp/paste3.c, testsuite/gcc.dg/cpp/paste4.c,
testsuite/gcc.dg/cpp/strify1.c,
testsuite/gcc.dg/cpp/strify2.c: New tests.
From-SVN: r34859
2000-07-04 03:58:21 +02:00
|
|
|
|
_cpp_skip_rest_of_line): Modify.
|
|
|
|
|
|
2000-07-10 22:51:23 +02:00
|
|
|
|
(maybe_macroexpand, skip_comment, copy_comment, skip_string,
|
top level:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* fix-header.c (struct partial_proto): Remove unnecessary fields.
(recognized_extern, recognized_function, read_scan_file):
Update for new scheme.
(check_protection): It's still a multiple include guard even
if it doesn't always trigger.
* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
new scheme.
* scan.h: Declare struct cpp_token. Update prototypes.
2000-07-03 Neil Booth <neilb@earthling.net>
Zack Weinberg <zack@wolery.cumb.org>
Complete overhaul of the lexer and macro expander.
* cpphash.c (object_defn, funct_defn, push_macro_expansion,
arg, arglist, argdata, reflist, collect_objlike_expansion,
collect_funlike_expansion, collect_params,
warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
unsafe_chars, macarg, compare_defs, special_symbol,
scan_arguments, stringify, funlike_macroexpand,
_cpp_quote_string, monthnames): Delete.
(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
_cpp_create_definition, _cpp_dump_definition,
dump_hash_helper): Adjust.
(find_param, count_params, parse_define, var_args_str,
check_macro_redefinition, save_expansion): New.
* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
parse_string, output_line_command, trigraph_replace,
lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
_cpp_skip_rest_of_line): Modify.
(maybe_macroexpand, skip_comment, copy_comment, skip_string,
find_position, null_warning, bump_column, expand_name_space,
pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
_cpp_prescan): Delete.
(dump_param_spelling, process_directive, lex_next,
is_macro_disabled, stringify_arg, expand_context_stack,
output_token, make_string_token, alloc_number_token,
special_symbol, duplicate_token, maybe_paste_with_next,
can_paste, prevent_macro_expansion, restore_macro_expansion,
get_temp_token, release_temp_tokens, quote_string,
token_names, token_spellings, _cpp_expand_name_space,
_cpp_glue_header_name, _cpp_reserve_name_space,
digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
placemarker_token, eof_token, cpp_context, macro_args,
get_raw_token, parse_arg, parse_args, save_token,
push_arg_context, push_macro_context, pop_context,
do_pop_context, free_macro_args, _cpp_get_line,
_cpp_run_directive): New.
* cpplib.c (validate_else, parse_include, push_conditional,
pass_thru_directive, read_line_number, parse_ifdef,
detect_if_not_defined, _cpp_check_directive, do_define,
do_undef, do_include, do_import, do_include_next, do_error,
do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
top_pragmas, do_pragma_gcc, do_pragma_implementation,
do_pragma_poison, do_pragma_system_header,
do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
cpp_defined): Update for new scheme.
(strtoul_for_line, get_define_node, dump_macro_name,
_cpp_check_linemarker, _cpp_parse_assertion): New.
(_cpp_handle_directive, do_pragma_default): Delete.
* cpphash.h (struct predicate): Now struct answer.
(enum spell_type, struct token_spelling, struct directive,
directive_handler): New.
Update prototypes. Remove unused macros.
* cpplib.h: Update prototypes. Remove unused macros,
structure definitions, and fields.
* cpperror.c (print_containing_files, v_message): Adjust.
* cppexp.c (parse_assertion, lex, parse_escape,
_cpp_parse_expr): Adjust.
* cppfiles.c (open_include_file, _cpp_execute_include,
_cpp_compare_file_date, cpp_read_file, read_include_file):
Adjust.
* cppinit.c (dump_special_to_buffer): Delete.
(append_include_chain, merge_include_chains, cpp_reader_init,
cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
cpp_finish, handle_option, print_help): Adjust.
* cppmain.c (main): Adjust.
testsuite:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* testsuite/gcc.dg/cpp/19951025-1.c: Adjust regexps.
* testsuite/gcc.dg/cpp/19990703-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-2.c: Likewise.
* testsuite/gcc.dg/cpp/macro1.c,
testsuite/gcc.dg/cpp/paste1.c, testsuite/gcc.dg/cpp/paste2.c,
testsuite/gcc.dg/cpp/paste3.c, testsuite/gcc.dg/cpp/paste4.c,
testsuite/gcc.dg/cpp/strify1.c,
testsuite/gcc.dg/cpp/strify2.c: New tests.
From-SVN: r34859
2000-07-04 03:58:21 +02:00
|
|
|
|
find_position, null_warning, bump_column, expand_name_space,
|
|
|
|
|
pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
|
|
|
|
|
_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
|
|
|
|
|
_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
|
|
|
|
|
_cpp_prescan): Delete.
|
|
|
|
|
|
|
|
|
|
(dump_param_spelling, process_directive, lex_next,
|
2000-07-10 22:51:23 +02:00
|
|
|
|
is_macro_disabled, stringify_arg, expand_context_stack,
|
|
|
|
|
output_token, make_string_token, alloc_number_token,
|
|
|
|
|
special_symbol, duplicate_token, maybe_paste_with_next,
|
|
|
|
|
can_paste, prevent_macro_expansion, restore_macro_expansion,
|
|
|
|
|
get_temp_token, release_temp_tokens, quote_string,
|
|
|
|
|
token_names, token_spellings, _cpp_expand_name_space,
|
|
|
|
|
_cpp_glue_header_name, _cpp_reserve_name_space,
|
|
|
|
|
digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
|
|
|
|
|
placemarker_token, eof_token, cpp_context, macro_args,
|
|
|
|
|
get_raw_token, parse_arg, parse_args, save_token,
|
|
|
|
|
push_arg_context, push_macro_context, pop_context,
|
|
|
|
|
do_pop_context, free_macro_args, _cpp_get_line,
|
|
|
|
|
_cpp_run_directive): New.
|
top level:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* fix-header.c (struct partial_proto): Remove unnecessary fields.
(recognized_extern, recognized_function, read_scan_file):
Update for new scheme.
(check_protection): It's still a multiple include guard even
if it doesn't always trigger.
* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
new scheme.
* scan.h: Declare struct cpp_token. Update prototypes.
2000-07-03 Neil Booth <neilb@earthling.net>
Zack Weinberg <zack@wolery.cumb.org>
Complete overhaul of the lexer and macro expander.
* cpphash.c (object_defn, funct_defn, push_macro_expansion,
arg, arglist, argdata, reflist, collect_objlike_expansion,
collect_funlike_expansion, collect_params,
warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
unsafe_chars, macarg, compare_defs, special_symbol,
scan_arguments, stringify, funlike_macroexpand,
_cpp_quote_string, monthnames): Delete.
(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
_cpp_create_definition, _cpp_dump_definition,
dump_hash_helper): Adjust.
(find_param, count_params, parse_define, var_args_str,
check_macro_redefinition, save_expansion): New.
* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
parse_string, output_line_command, trigraph_replace,
lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
_cpp_skip_rest_of_line): Modify.
(maybe_macroexpand, skip_comment, copy_comment, skip_string,
find_position, null_warning, bump_column, expand_name_space,
pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
_cpp_prescan): Delete.
(dump_param_spelling, process_directive, lex_next,
is_macro_disabled, stringify_arg, expand_context_stack,
output_token, make_string_token, alloc_number_token,
special_symbol, duplicate_token, maybe_paste_with_next,
can_paste, prevent_macro_expansion, restore_macro_expansion,
get_temp_token, release_temp_tokens, quote_string,
token_names, token_spellings, _cpp_expand_name_space,
_cpp_glue_header_name, _cpp_reserve_name_space,
digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
placemarker_token, eof_token, cpp_context, macro_args,
get_raw_token, parse_arg, parse_args, save_token,
push_arg_context, push_macro_context, pop_context,
do_pop_context, free_macro_args, _cpp_get_line,
_cpp_run_directive): New.
* cpplib.c (validate_else, parse_include, push_conditional,
pass_thru_directive, read_line_number, parse_ifdef,
detect_if_not_defined, _cpp_check_directive, do_define,
do_undef, do_include, do_import, do_include_next, do_error,
do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
top_pragmas, do_pragma_gcc, do_pragma_implementation,
do_pragma_poison, do_pragma_system_header,
do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
cpp_defined): Update for new scheme.
(strtoul_for_line, get_define_node, dump_macro_name,
_cpp_check_linemarker, _cpp_parse_assertion): New.
(_cpp_handle_directive, do_pragma_default): Delete.
* cpphash.h (struct predicate): Now struct answer.
(enum spell_type, struct token_spelling, struct directive,
directive_handler): New.
Update prototypes. Remove unused macros.
* cpplib.h: Update prototypes. Remove unused macros,
structure definitions, and fields.
* cpperror.c (print_containing_files, v_message): Adjust.
* cppexp.c (parse_assertion, lex, parse_escape,
_cpp_parse_expr): Adjust.
* cppfiles.c (open_include_file, _cpp_execute_include,
_cpp_compare_file_date, cpp_read_file, read_include_file):
Adjust.
* cppinit.c (dump_special_to_buffer): Delete.
(append_include_chain, merge_include_chains, cpp_reader_init,
cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
cpp_finish, handle_option, print_help): Adjust.
* cppmain.c (main): Adjust.
testsuite:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* testsuite/gcc.dg/cpp/19951025-1.c: Adjust regexps.
* testsuite/gcc.dg/cpp/19990703-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-2.c: Likewise.
* testsuite/gcc.dg/cpp/macro1.c,
testsuite/gcc.dg/cpp/paste1.c, testsuite/gcc.dg/cpp/paste2.c,
testsuite/gcc.dg/cpp/paste3.c, testsuite/gcc.dg/cpp/paste4.c,
testsuite/gcc.dg/cpp/strify1.c,
testsuite/gcc.dg/cpp/strify2.c: New tests.
From-SVN: r34859
2000-07-04 03:58:21 +02:00
|
|
|
|
|
|
|
|
|
* cpplib.c (validate_else, parse_include, push_conditional,
|
|
|
|
|
pass_thru_directive, read_line_number, parse_ifdef,
|
|
|
|
|
detect_if_not_defined, _cpp_check_directive, do_define,
|
|
|
|
|
do_undef, do_include, do_import, do_include_next, do_error,
|
|
|
|
|
do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
|
|
|
|
|
top_pragmas, do_pragma_gcc, do_pragma_implementation,
|
|
|
|
|
do_pragma_poison, do_pragma_system_header,
|
|
|
|
|
do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
|
|
|
|
|
dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
|
|
|
|
|
do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
|
|
|
|
|
cpp_defined): Update for new scheme.
|
|
|
|
|
(strtoul_for_line, get_define_node, dump_macro_name,
|
|
|
|
|
_cpp_check_linemarker, _cpp_parse_assertion): New.
|
|
|
|
|
(_cpp_handle_directive, do_pragma_default): Delete.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
top level:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* fix-header.c (struct partial_proto): Remove unnecessary fields.
(recognized_extern, recognized_function, read_scan_file):
Update for new scheme.
(check_protection): It's still a multiple include guard even
if it doesn't always trigger.
* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
new scheme.
* scan.h: Declare struct cpp_token. Update prototypes.
2000-07-03 Neil Booth <neilb@earthling.net>
Zack Weinberg <zack@wolery.cumb.org>
Complete overhaul of the lexer and macro expander.
* cpphash.c (object_defn, funct_defn, push_macro_expansion,
arg, arglist, argdata, reflist, collect_objlike_expansion,
collect_funlike_expansion, collect_params,
warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
unsafe_chars, macarg, compare_defs, special_symbol,
scan_arguments, stringify, funlike_macroexpand,
_cpp_quote_string, monthnames): Delete.
(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
_cpp_create_definition, _cpp_dump_definition,
dump_hash_helper): Adjust.
(find_param, count_params, parse_define, var_args_str,
check_macro_redefinition, save_expansion): New.
* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
parse_string, output_line_command, trigraph_replace,
lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
_cpp_skip_rest_of_line): Modify.
(maybe_macroexpand, skip_comment, copy_comment, skip_string,
find_position, null_warning, bump_column, expand_name_space,
pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
_cpp_prescan): Delete.
(dump_param_spelling, process_directive, lex_next,
is_macro_disabled, stringify_arg, expand_context_stack,
output_token, make_string_token, alloc_number_token,
special_symbol, duplicate_token, maybe_paste_with_next,
can_paste, prevent_macro_expansion, restore_macro_expansion,
get_temp_token, release_temp_tokens, quote_string,
token_names, token_spellings, _cpp_expand_name_space,
_cpp_glue_header_name, _cpp_reserve_name_space,
digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
placemarker_token, eof_token, cpp_context, macro_args,
get_raw_token, parse_arg, parse_args, save_token,
push_arg_context, push_macro_context, pop_context,
do_pop_context, free_macro_args, _cpp_get_line,
_cpp_run_directive): New.
* cpplib.c (validate_else, parse_include, push_conditional,
pass_thru_directive, read_line_number, parse_ifdef,
detect_if_not_defined, _cpp_check_directive, do_define,
do_undef, do_include, do_import, do_include_next, do_error,
do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
top_pragmas, do_pragma_gcc, do_pragma_implementation,
do_pragma_poison, do_pragma_system_header,
do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
cpp_defined): Update for new scheme.
(strtoul_for_line, get_define_node, dump_macro_name,
_cpp_check_linemarker, _cpp_parse_assertion): New.
(_cpp_handle_directive, do_pragma_default): Delete.
* cpphash.h (struct predicate): Now struct answer.
(enum spell_type, struct token_spelling, struct directive,
directive_handler): New.
Update prototypes. Remove unused macros.
* cpplib.h: Update prototypes. Remove unused macros,
structure definitions, and fields.
* cpperror.c (print_containing_files, v_message): Adjust.
* cppexp.c (parse_assertion, lex, parse_escape,
_cpp_parse_expr): Adjust.
* cppfiles.c (open_include_file, _cpp_execute_include,
_cpp_compare_file_date, cpp_read_file, read_include_file):
Adjust.
* cppinit.c (dump_special_to_buffer): Delete.
(append_include_chain, merge_include_chains, cpp_reader_init,
cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
cpp_finish, handle_option, print_help): Adjust.
* cppmain.c (main): Adjust.
testsuite:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* testsuite/gcc.dg/cpp/19951025-1.c: Adjust regexps.
* testsuite/gcc.dg/cpp/19990703-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-2.c: Likewise.
* testsuite/gcc.dg/cpp/macro1.c,
testsuite/gcc.dg/cpp/paste1.c, testsuite/gcc.dg/cpp/paste2.c,
testsuite/gcc.dg/cpp/paste3.c, testsuite/gcc.dg/cpp/paste4.c,
testsuite/gcc.dg/cpp/strify1.c,
testsuite/gcc.dg/cpp/strify2.c: New tests.
From-SVN: r34859
2000-07-04 03:58:21 +02:00
|
|
|
|
* cpphash.h (struct predicate): Now struct answer.
|
|
|
|
|
(enum spell_type, struct token_spelling, struct directive,
|
|
|
|
|
directive_handler): New.
|
|
|
|
|
Update prototypes. Remove unused macros.
|
|
|
|
|
* cpplib.h: Update prototypes. Remove unused macros,
|
|
|
|
|
structure definitions, and fields.
|
|
|
|
|
|
|
|
|
|
* cpperror.c (print_containing_files, v_message): Adjust.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
* cppexp.c (parse_assertion, lex, parse_escape,
|
top level:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* fix-header.c (struct partial_proto): Remove unnecessary fields.
(recognized_extern, recognized_function, read_scan_file):
Update for new scheme.
(check_protection): It's still a multiple include guard even
if it doesn't always trigger.
* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
new scheme.
* scan.h: Declare struct cpp_token. Update prototypes.
2000-07-03 Neil Booth <neilb@earthling.net>
Zack Weinberg <zack@wolery.cumb.org>
Complete overhaul of the lexer and macro expander.
* cpphash.c (object_defn, funct_defn, push_macro_expansion,
arg, arglist, argdata, reflist, collect_objlike_expansion,
collect_funlike_expansion, collect_params,
warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
unsafe_chars, macarg, compare_defs, special_symbol,
scan_arguments, stringify, funlike_macroexpand,
_cpp_quote_string, monthnames): Delete.
(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
_cpp_create_definition, _cpp_dump_definition,
dump_hash_helper): Adjust.
(find_param, count_params, parse_define, var_args_str,
check_macro_redefinition, save_expansion): New.
* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
parse_string, output_line_command, trigraph_replace,
lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
_cpp_skip_rest_of_line): Modify.
(maybe_macroexpand, skip_comment, copy_comment, skip_string,
find_position, null_warning, bump_column, expand_name_space,
pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
_cpp_prescan): Delete.
(dump_param_spelling, process_directive, lex_next,
is_macro_disabled, stringify_arg, expand_context_stack,
output_token, make_string_token, alloc_number_token,
special_symbol, duplicate_token, maybe_paste_with_next,
can_paste, prevent_macro_expansion, restore_macro_expansion,
get_temp_token, release_temp_tokens, quote_string,
token_names, token_spellings, _cpp_expand_name_space,
_cpp_glue_header_name, _cpp_reserve_name_space,
digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
placemarker_token, eof_token, cpp_context, macro_args,
get_raw_token, parse_arg, parse_args, save_token,
push_arg_context, push_macro_context, pop_context,
do_pop_context, free_macro_args, _cpp_get_line,
_cpp_run_directive): New.
* cpplib.c (validate_else, parse_include, push_conditional,
pass_thru_directive, read_line_number, parse_ifdef,
detect_if_not_defined, _cpp_check_directive, do_define,
do_undef, do_include, do_import, do_include_next, do_error,
do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
top_pragmas, do_pragma_gcc, do_pragma_implementation,
do_pragma_poison, do_pragma_system_header,
do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
cpp_defined): Update for new scheme.
(strtoul_for_line, get_define_node, dump_macro_name,
_cpp_check_linemarker, _cpp_parse_assertion): New.
(_cpp_handle_directive, do_pragma_default): Delete.
* cpphash.h (struct predicate): Now struct answer.
(enum spell_type, struct token_spelling, struct directive,
directive_handler): New.
Update prototypes. Remove unused macros.
* cpplib.h: Update prototypes. Remove unused macros,
structure definitions, and fields.
* cpperror.c (print_containing_files, v_message): Adjust.
* cppexp.c (parse_assertion, lex, parse_escape,
_cpp_parse_expr): Adjust.
* cppfiles.c (open_include_file, _cpp_execute_include,
_cpp_compare_file_date, cpp_read_file, read_include_file):
Adjust.
* cppinit.c (dump_special_to_buffer): Delete.
(append_include_chain, merge_include_chains, cpp_reader_init,
cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
cpp_finish, handle_option, print_help): Adjust.
* cppmain.c (main): Adjust.
testsuite:
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
* testsuite/gcc.dg/cpp/19951025-1.c: Adjust regexps.
* testsuite/gcc.dg/cpp/19990703-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-1.c: Likewise.
* testsuite/gcc.dg/cpp/20000625-2.c: Likewise.
* testsuite/gcc.dg/cpp/macro1.c,
testsuite/gcc.dg/cpp/paste1.c, testsuite/gcc.dg/cpp/paste2.c,
testsuite/gcc.dg/cpp/paste3.c, testsuite/gcc.dg/cpp/paste4.c,
testsuite/gcc.dg/cpp/strify1.c,
testsuite/gcc.dg/cpp/strify2.c: New tests.
From-SVN: r34859
2000-07-04 03:58:21 +02:00
|
|
|
|
_cpp_parse_expr): Adjust.
|
|
|
|
|
* cppfiles.c (open_include_file, _cpp_execute_include,
|
|
|
|
|
_cpp_compare_file_date, cpp_read_file, read_include_file):
|
|
|
|
|
Adjust.
|
|
|
|
|
* cppinit.c (dump_special_to_buffer): Delete.
|
|
|
|
|
(append_include_chain, merge_include_chains, cpp_reader_init,
|
|
|
|
|
cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
|
|
|
|
|
cpp_finish, handle_option, print_help): Adjust.
|
|
|
|
|
* cppmain.c (main): Adjust.
|
|
|
|
|
|
2000-07-04 02:01:11 +02:00
|
|
|
|
2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* cppspec.c (lang_specific_driver): Use double quotes in error
|
|
|
|
|
message.
|
|
|
|
|
|
2000-07-04 00:06:20 +02:00
|
|
|
|
Mon Jul 3 16:53:43 2000 Clinton Popetz <cpopetz@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* calls.c (emit_library_call_value_1): Use valreg instead
|
|
|
|
|
of hard_libcall_value.
|
|
|
|
|
|
2000-07-03 21:33:09 +02:00
|
|
|
|
2000-07-03 Geoff Keating <geoffk@cygnus.com>
|
|
|
|
|
|
2000-07-03 22:00:44 +02:00
|
|
|
|
* config/rs6000/rs6000.c (rs6000_emit_move): New function.
|
|
|
|
|
* config/rs6000/rs6000-proto.h: Prototype rs6000_emit_move.
|
|
|
|
|
* config/rs6000/rs6000.md (movsi): Use rs6000_emit_move.
|
|
|
|
|
(movhi): Likewise.
|
|
|
|
|
(movqi): Likewise.
|
|
|
|
|
(movdf): Likewise.
|
|
|
|
|
(movsf): Likewise.
|
|
|
|
|
(movdi): Likewise.
|
|
|
|
|
(movti): Likewise.
|
|
|
|
|
|
2000-07-03 21:33:09 +02:00
|
|
|
|
* expmed.c (expand_mult_highpart): Use op1 instead of wide_op1 when
|
|
|
|
|
mode instead of wider_mode is being used.
|
|
|
|
|
|
2000-07-03 20:31:59 +02:00
|
|
|
|
2000-07-03 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/i386/i386.md (movstrictqi_xor): Use 'q' constraint instead
|
|
|
|
|
of 'r'. Use q_regs_operand.
|
|
|
|
|
(andsi_1+2): Use q_regs_operand.
|
|
|
|
|
|
2000-07-03 20:28:34 +02:00
|
|
|
|
2000-07-03 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* builtins.c (get_memory_rtx): Always put into alias set 0.
|
|
|
|
|
|
2000-07-03 20:02:13 +02:00
|
|
|
|
2000-07-03 Nick Clifton <nickc@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/arm/arm.md: Fix post increment and pre increment
|
|
|
|
|
peepholes so that they do not generate UNPREDICATBLE opcodes.
|
|
|
|
|
(ie ones where the increment clobbers the source/destination).
|
|
|
|
|
|
avr.c (out_adj_frame_ptr): Make "frame pointer change too big for -mtiny-stack" a warning, if larger than 63.
* config/avr/avr.c (out_adj_frame_ptr): Make "frame pointer
change too big for -mtiny-stack" a warning, if larger than 63.
(out_set_stack_ptr): Change the logic so -mno-interrupts is
always safe to use on possible future devices.
(function_prologue): Write SPH before SPL, for consistency.
If interrupt_func_p true, we know we have enabled interrupts.
(avr_num_arg_regs): New function. Round up to even number of
bytes if no -mpack-args or if calling a libgcc function.
(function_arg, function_arg_advance): Use it.
(output_movsisf, ashlsi3_out, ashrsi3_out, lshrsi3_out):
Output "movw" if available.
(out_tsthi, out_tstsi, ashlqi3_out, lshrqi3_out): Change uses
of TEST_HARD_REG_CLASS macro to test_hard_reg_class function.
(asm_output_section_name): Add blanks for consistent output.
(encode_section_info): Set TREE_READONLY for progmem data to
avoid gas warnings about changed section attributes.
(avr_hard_regno_mode_ok): Force non-QImode data to start in
even numbered registers on devices with "movw".
* config/avr/avr.h (MASK_*): Define bits for target_flags.
(TARGET_SWITCHES): Mark help strings for translation.
Add new -mpack-args and -menhanced switches.
(TARGET_OPTIONS): Mark help strings for translation.
(progmem_section): Add section attributes.
* config/avr/avr.md (*movhi, call_insn, call_value_insn):
Output "movw" if available.
(mulqi3, mulqihi3, umulqihi3, mulhi3, *tablejump_enh):
New patterns.
* config/avr/libgcc.S (_mulqi3, _divqi3): Update to the new
call convention (arguments aligned on even registers).
(_cleanup, _exit): Make weak symbols libc can override.
From-SVN: r34847
2000-07-03 18:51:38 +02:00
|
|
|
|
2000-07-01 Marek Michalkiewicz <marekm@linux.org.pl>
|
|
|
|
|
|
|
|
|
|
* config/avr/avr.c (out_adj_frame_ptr): Make "frame pointer
|
|
|
|
|
change too big for -mtiny-stack" a warning, if larger than 63.
|
|
|
|
|
(out_set_stack_ptr): Change the logic so -mno-interrupts is
|
|
|
|
|
always safe to use on possible future devices.
|
|
|
|
|
(function_prologue): Write SPH before SPL, for consistency.
|
|
|
|
|
If interrupt_func_p true, we know we have enabled interrupts.
|
|
|
|
|
(avr_num_arg_regs): New function. Round up to even number of
|
|
|
|
|
bytes if no -mpack-args or if calling a libgcc function.
|
|
|
|
|
(function_arg, function_arg_advance): Use it.
|
|
|
|
|
(output_movsisf, ashlsi3_out, ashrsi3_out, lshrsi3_out):
|
|
|
|
|
Output "movw" if available.
|
|
|
|
|
(out_tsthi, out_tstsi, ashlqi3_out, lshrqi3_out): Change uses
|
|
|
|
|
of TEST_HARD_REG_CLASS macro to test_hard_reg_class function.
|
|
|
|
|
(asm_output_section_name): Add blanks for consistent output.
|
|
|
|
|
(encode_section_info): Set TREE_READONLY for progmem data to
|
|
|
|
|
avoid gas warnings about changed section attributes.
|
|
|
|
|
(avr_hard_regno_mode_ok): Force non-QImode data to start in
|
|
|
|
|
even numbered registers on devices with "movw".
|
|
|
|
|
* config/avr/avr.h (MASK_*): Define bits for target_flags.
|
|
|
|
|
(TARGET_SWITCHES): Mark help strings for translation.
|
|
|
|
|
Add new -mpack-args and -menhanced switches.
|
|
|
|
|
(TARGET_OPTIONS): Mark help strings for translation.
|
|
|
|
|
(progmem_section): Add section attributes.
|
|
|
|
|
* config/avr/avr.md (*movhi, call_insn, call_value_insn):
|
|
|
|
|
Output "movw" if available.
|
|
|
|
|
(mulqi3, mulqihi3, umulqihi3, mulhi3, *tablejump_enh):
|
|
|
|
|
New patterns.
|
|
|
|
|
* config/avr/libgcc.S (_mulqi3, _divqi3): Update to the new
|
|
|
|
|
call convention (arguments aligned on even registers).
|
|
|
|
|
(_cleanup, _exit): Make weak symbols libc can override.
|
|
|
|
|
|
2000-07-03 17:06:12 +02:00
|
|
|
|
2000-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
|
|
|
|
|
|
|
|
|
* fp-bit.h: New file.
|
|
|
|
|
|
|
|
|
|
* fp-bit.c: Move common code, prototypes, etc into fp-bit.h.
|
|
|
|
|
Comment #endif statements.
|
|
|
|
|
(__thenan_sf, __thenan_df): Add missing braces around initializer.
|
|
|
|
|
|
2000-07-03 08:33:03 +02:00
|
|
|
|
Mon Jul 3 00:32:47 2000 Jeffrey A Law (law@cygnus.com)
|
|
|
|
|
|
2000-07-03 08:49:31 +02:00
|
|
|
|
* gcse.c (compute_pre_data): Compute ae_kill using other local
|
|
|
|
|
properties instead of calling compute_ae_kill.
|
|
|
|
|
|
2000-07-03 08:33:03 +02:00
|
|
|
|
* alias.c (init_alias_analysis): Do not call
|
|
|
|
|
prologue_epilogue_contains until after reload has completed.
|
|
|
|
|
|
2000-07-03 05:55:23 +02:00
|
|
|
|
2000-07-02 Benjamin Chelf <chelf@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* c-common.h (genrtl_begin_compound_stmt): Remove declaration.
|
|
|
|
|
(genrtl_finish_compound_stmt): Likewise.
|
|
|
|
|
(genrtl_compound_stmt): Change to return void.
|
|
|
|
|
|
2000-07-13 06:43:47 +02:00
|
|
|
|
* c-semantics.c (genrtl_begin_compound_stmt): Remove function and
|
2000-07-03 05:55:23 +02:00
|
|
|
|
move code from here to ...
|
|
|
|
|
(genrtl_compound_stmt): ... here.
|
|
|
|
|
(genrtl_finish_compound_stmt): Remove.
|
|
|
|
|
(expand_stmt): Add comment.
|
|
|
|
|
|
2000-07-02 21:19:18 +02:00
|
|
|
|
2000-07-02 Zack Weinberg <zack@wolery.cumb.org>
|
|
|
|
|
|
|
|
|
|
* c-typeck.c (build_indirect_ref): Use COMPLETE_OR_VOID_TYPE_P
|
|
|
|
|
and VOID_TYPE_P.
|
|
|
|
|
|
2000-07-02 10:56:57 +02:00
|
|
|
|
2000-07-02 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* cpplib.h (struct cpp_reader): New field include_depth.
|
|
|
|
|
(struct cpp_printer): Rename last_bsd to last_id.
|
|
|
|
|
* cppfiles.c (read_include_file): Bump include_depth.
|
|
|
|
|
* cpplex.c (cpp_pop_buffer): Decrement include_depth.
|
|
|
|
|
(output_line_command): Output correct #line if a header
|
|
|
|
|
is including itself and is not protected against multiple inclusion.
|
|
|
|
|
Use include_depth instead of buffer_stack_depth, last_id instead of
|
|
|
|
|
last_bsd.
|
|
|
|
|
* cppinit.c (cpp_start_read): Initialize last_id instead of
|
|
|
|
|
last_bsd.
|
|
|
|
|
|
2000-07-02 07:23:01 +02:00
|
|
|
|
2000-07-01 Benjamin Chelf <chelf@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in (C_AND_OBJC_OBJS): Added c-semantics.o.
|
|
|
|
|
(c-semantics.o): New target.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-02 07:23:01 +02:00
|
|
|
|
* c-common.h (TREE_LANG_FLAG_?): Added documentation.
|
|
|
|
|
(genrtl_do_pushlevel): Moved from cp/cp-tree.h.
|
|
|
|
|
(genrtl_clear_out_block): Likewise.
|
|
|
|
|
(genrtl_goto_stmt): Likewise.
|
|
|
|
|
(genrtl_expr_stmt): Likewise.
|
|
|
|
|
(genrtl_decl_stmt): Likewise.
|
|
|
|
|
(genrtl_if_stmt): Likewise.
|
|
|
|
|
(genrtl_while_stmt): Likewise.
|
|
|
|
|
(genrtl_do_stmt): Likewise.
|
|
|
|
|
(genrtl_return_stmt): Likewise.
|
|
|
|
|
(genrtl_for_stmt): Likewise.
|
|
|
|
|
(genrtl_break_stmt): Likewise.
|
|
|
|
|
(genrtl_continue_stmt): Likewise.
|
|
|
|
|
(genrtl_scope_stmt): Likewise.
|
|
|
|
|
(genrtl_switch_stmt): Likewise.
|
|
|
|
|
(genrtl_case_label): Likewise.
|
|
|
|
|
(genrtl_begin_compound_stmt): Likewise.
|
|
|
|
|
(gerntl_finish_compound_stmt): Likewise.
|
|
|
|
|
(genrtl_compound_stmt): Likewise.
|
|
|
|
|
(genrtl_asm_stmt): Likewise.
|
|
|
|
|
(genrtl_decl_cleanup): Likewise.
|
|
|
|
|
(DECL_ANON_UNION_ELEMS): Likewise.
|
|
|
|
|
(emit_local_var): Likewise.
|
|
|
|
|
(make_rtl_for_local_static): Likewise.
|
|
|
|
|
(expand_cond): Likewise.
|
|
|
|
|
(expand_stmt): Likewise.
|
|
|
|
|
(c_expand_return): Likewise.
|
|
|
|
|
(c_expand_start_case): Likewise.
|
|
|
|
|
(do_case): Likewise.
|
|
|
|
|
(COMPOUND_STMT_NO_SCOPE): Likewise.
|
|
|
|
|
(c_expand_asm_operands): Likewise.
|
|
|
|
|
(NEW_FOR_SCOPE_P): New macro.
|
|
|
|
|
(expand_expr_stmt_fn): New type.
|
|
|
|
|
|
|
|
|
|
(set_current_function_name_declared): Likewise.
|
|
|
|
|
(current_function_name_declared): Likewise.
|
|
|
|
|
(lang_expand_stmt): Likewise.
|
|
|
|
|
(stmts_are_full_exprs_p): Likewise.
|
|
|
|
|
(anon_aggr_type_p): Likewise.
|
|
|
|
|
(lang_expand_expr_stmt): Likewise.
|
|
|
|
|
(build_case_label): Likewise.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-02 07:23:01 +02:00
|
|
|
|
* c-decl.c (lang_expand_expr_stmt): Initialize.
|
|
|
|
|
(stmts_are_full_exprs_p): Define.
|
|
|
|
|
(current_function_name_declared): Likewise.
|
|
|
|
|
(do_case): Likewise.
|
|
|
|
|
(lang_expand_stmt): Likewise.
|
|
|
|
|
(set_current_function_name_declared): Likewise.
|
|
|
|
|
(anon_aggr_type_p): Likewise.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-02 07:23:01 +02:00
|
|
|
|
* c-semantics.c: New file.
|
|
|
|
|
(expand_cond): Moved from cp/semantics.c.
|
|
|
|
|
(genrtl_do_pushlevel): Likewise.
|
|
|
|
|
(genrtl_clear_out_block): Likewise.
|
|
|
|
|
(genrtl_goto_stmt): Likewise.
|
|
|
|
|
(genrtl_expr_stmt): Likewise.
|
|
|
|
|
(genrtl_decl_stmt): Likewise.
|
|
|
|
|
(genrtl_if_stmt): Likewise.
|
|
|
|
|
(genrtl_while_stmt): Likewise.
|
|
|
|
|
(genrtl_do_stmt): Likewise.
|
|
|
|
|
(genrtl_return_stmt): Likewise.
|
|
|
|
|
(genrtl_for_stmt): Likewise.
|
|
|
|
|
(genrtl_break_stmt): Likewise.
|
|
|
|
|
(genrtl_continue_stmt): Likewise.
|
|
|
|
|
(genrtl_scope_stmt): Likewise.
|
|
|
|
|
(genrtl_switch_stmt): Likewise.
|
|
|
|
|
(genrtl_case_label): Likewise.
|
|
|
|
|
(genrtl_begin_compound_stmt): Likewise.
|
|
|
|
|
(genrtl_finish_compound_stmt): Likewise.
|
|
|
|
|
(genrtl_compound_stmt): Likewise.
|
|
|
|
|
(genrtl_asm_stmt): Likewise.
|
|
|
|
|
(genrtl_decl_cleanup): Likewise.
|
|
|
|
|
(make_rtl_for_local_static): Moved from cp/decl.c.
|
|
|
|
|
(emit_local_var): Likewise.
|
|
|
|
|
(expand_stmt): Define.
|
|
|
|
|
|
|
|
|
|
* c-tree.h: (c_expand_asm_operands): Moved to c-common.h.
|
|
|
|
|
(c_expand_return): Likewise.
|
|
|
|
|
(c_expand_start_case): Likewise.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|
2000-07-01 23:20:32 +02:00
|
|
|
|
2000-07-01 Richard Henderson <rth@cygnus.com>
|
|
|
|
|
|
|
|
|
|
* config/ia64/ia64.c (symbolic_operand): Reject CONST expressions
|
|
|
|
|
with the low 13 bits set.
|
|
|
|
|
(move_operand): Check for CONST|SYMBOL_REF|LABEL_REF directly.
|
|
|
|
|
* config/ia64/ia64.md (movdi): Likewise. Expand a CONST with one
|
|
|
|
|
of the low 13 bits into a CONST plus an adddi3.
|
|
|
|
|
(load_symptr): Set RTX_UNCHANGING_P.
|
|
|
|
|
|
2000-07-31 14:59:37 +02:00
|
|
|
|
See ChangeLog.3 for earlier changes.
|
2000-07-13 06:43:47 +02:00
|
|
|
|
|