Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r34269
|
|
insn.
* config/alpha/alpha.md (*setne_internal): Use match_operator
instead of working down from insn.
From-SVN: r34268
|
|
* cp-tree.h (DECL_ANTICIPATED): New macro.
Document new use of DECL_LANG_FLAG_7.
* decl.c (builtin_function): Set DECL_ANTICIPATED on builtins
in the user namespace.
* lex.c (do_identifier): If the identifier's declaration has
DECL_ANTICIPATED on, it has not yet been declared. But do not
replace it with an ordinary implicit declaration.
* tinfo2.cc: Include stdlib.h.
From-SVN: r34267
|
|
From-SVN: r34266
|
|
From-SVN: r34265
|
|
From-SVN: r34264
|
|
From-SVN: r34263
|
|
From-SVN: r34262
|
|
From-SVN: r34261
|
|
* cpplib.c (do_if): Don't save and restore only_seen_white here.
* cppexp.c (_cpp_parse_expr): Save and restore only_seen_white
and skipping here.
From-SVN: r34260
|
|
conditional death information.
* flow.c (mark_used_reg): If a register is unconditionally live,
remove any conditional death information.
From-SVN: r34259
|
|
* final.c (current_output_insn): New.
(final_scan_insn): Set it.
* output.h: Declare it.
From-SVN: r34258
|
|
From-SVN: r34257
|
|
* jump.c (redirect_jump): Don't emit NOTE_INSN_FUNCTION_END
if nlabel is null.
From-SVN: r34256
|
|
* concatstr.c, exh.c: Include stdlib.h and string.h.
* delaycase.c, eqstr.c, memmove.c, printbuffer.c,
printevent.c, sendbuffer.c, waitbuffer.c: Include string.h.
From-SVN: r34255
|
|
* hashtab.c, partition.c, sort.c, xmemdup.c: Include string.h
if HAVE_STRING_H.
* pexecute.c, xexit.c: Include stdlib.h if HAVE_STDLIB_H.
* objalloc.c: Include config.h. Include stdlib.h and don't
declare malloc or free if HAVE_STDLIB_H.
* strerror.c, strsignal.c: Include stdlib.h if HAVE_STDLIB_H,
else declare malloc without prototype. Include string.h if
HAVE_STRING_H, else declare memset without prototype. Don't
include stddef.h.
From-SVN: r34254
|
|
* cpplib.h (cpp_reader): Remove if_stack. Change
potential_control_macro to a cpp_hashnode *. Add skipping flag.
* cpphash.h (struct ihash): Change control_macro to a
cpp_hashnode * and shorten name to cmacro.
Add NEVER_REINCLUDE constant.
* cppfiles.c (redundant_include_p): Drop cpp_reader argument.
Examine the cmacro node directly, no need to call cpp_defined.
(_cpp_execute_include, read_include_file): Set cmacro to
NEVER_REINCLUDE, not U"".
* cpplex.c (cpp_push_buffer): Don't set new->if_stack.
(cpp_get_token): If pfile->skipping is true, discard text and
keep scanning until we hit a directive; don't expand macros.
* cpplib.c (struct if_stack): Remove if_succeeded, add
was_skipping. Change control_macro to a cpp_hashnode * and
shorten name to cmacro. Remove typedef IF_STACK.
(parse_ifdef), detect_if_not_defined): Return a cpp_hashnode *.
(conditional_skip, skip_if_group,
consider_directive_while_skipping): Delete.
(push_conditional): New.
(_cpp_handle_directive): Don't process directives other than
conditionals if we are skipping.
(do_ifdef, do_ifndef, do_if, do_else, do_elif, do_endif):
Update to new scheme.
(validate_else): Skip rest of line here, unconditionally.
(_cpp_unwind_if_stack): The stack is per-buffer. Force
pfile->skipping off.
(all): Remove `scare quotes' from error messages.
* gcc.dg/cpp-mi.c: Add another case, cpp-mix.h, where the
guard macro is already defined when the header is first
included.
* gcc.dg/cpp-mix.h: New file.
* gcc.dg/endif-label.c: Update patterns to match compiler.
* g++.brendan/complex1.C: Declare abort.
* g++.law/refs4.C: Remove XFAIL.
* g++.oliva/expr2.C: Declare abort and exit.
From-SVN: r34253
|
|
* cp-tree.h (CLASSTYPE_ALIGN_UNIT): New macro.
* class.c (layout_empty_base): Use CLASSTYPE_ALIGN_UNIT, not
CLASSTYPE_ALIGN.
From-SVN: r34252
|
|
* function.c (emit_return_into_block): New line_note arg; emit it.
(thread_prologue_and_epilogue_insns): Attempt to locate a line note
for the close brace to accompany HAVE_return. Move all line notes
following the epilogue to before the NOTE_INSN_EPILOGUE_BEG.
From-SVN: r34251
|
|
* longlong.h [__alpha] (count_leading_zeros): New.
(count_trailing_zeros): New.
(COUNT_LEADING_ZEROS_0): New.
* config/alpha/alpha.c (alpha_zero_comparison_operator): New.
(alpha_split_conditional_move): New.
* config/alpha/alpha-protos.h: Prototype them.
* config/alpha/alpha.h (PREDICATE_CODES): Update.
(CPP_CPU_DEFAULT_SPEC): Fix typo for EV67.
* config/alpha/alpha.md: Update ffs cix commentary.
(*ze_and_ne): New.
(*nabssf2, *nabsdf2): New.
(*mov[qhsd]icc_internal): Use add_operand.
(if_then_else constant splitters): New.
(*cmp_sadd_di, *cmp_sadd_si, *cmp_sadd_sidi): New.
(*cmp_ssub_di, *cmp_ssub_si, *cmp_ssub_sidi): New.
From-SVN: r34250
|
|
From-SVN: r34249
|
|
when conditions allow.
* combine.c (force_to_mode) [MINUS]: Convert subtraction from
a constant to NEG or NOT when conditions allow.
From-SVN: r34248
|
|
args are general_operand.
* combine.c (combine_simplify_rtx): Don't create an if_then_else
unless both args are general_operand. Don't canonicalize plus
to ior unless it helps.
From-SVN: r34247
|
|
track register_life_up_to_date.
* toplev.c (rest_of_compilation): Set no_new_pseudos after flow1;
instead track register_life_up_to_date. Toggle no_new_pseudos
around if_convert.
From-SVN: r34246
|
|
2000-05-29 Bryce McKinlay <bryce@albatross.co.nz>
* libjava.lang/PR242.java: New file. PR gcj/242.
From-SVN: r34245
|
|
see them.
* config/rs6000/rs6000.c (output_cbranch): Escape '%' characters
so output_operand doesn't see them.
From-SVN: r34244
|
|
* lcm.c (make_preds_opaque): Fix comment.
(optimize_mode_switching): Use NORMAL_MODE instead of
MODE_USES_IN_EXIT_BLOCK. Change leftover instance of
FP_MODE_NONE to no_mode. Rename MODE_AT_ENTRY to NORMAL_MODE.
Handle insertions before an existing NOTE_INSN_BASIC_BLOCK.
* tm.texi (OPTIMIZE_MODE_SWITCHING): Refer to NORMAL_MODE.
(MODE_USES_IN_EXIT_BLOCK): Delete.
(MODE_AT_ENTRY) Rename to NORMAL_MODE.
* sh.h (MODE_USES_IN_EXIT_BLOCK): Delete.
(MODE_AT_ENTRY): Rename to NORMAL_MODE.
(MODE_NEEDED): Don't look for USE.
(EPILOGUE_USES): Define.
From-SVN: r34243
|
|
From-SVN: r34242
|
|
From-SVN: r34241
|
|
2000-05-28 Gabriel Dos Reis <gdr@codesourcery.com>
* toplev.h (skip_leading_substring): New macro.
* toplev.c (decode_f_option): Use skip_leading_substring instead
of strncmp.
(decode_W_option): Likewise.
cp/
2000-05-28 Gabriel Dos Reis <gdr@codesourcery.com>
* decl2.c (lang_decode_option): Use skip_leading_substring instead
of plain strncmp.
From-SVN: r34240
|
|
From-SVN: r34239
|
|
CLASS_CANNOT_CHANGE_SIZE.
* regclass.c (record_operand_costs): Protect reg_changes_size
with CLASS_CANNOT_CHANGE_SIZE.
From-SVN: r34238
|
|
From-SVN: r34237
|
|
From-SVN: r34236
|
|
* g++.old-deja/g++.law/refs4.C: Mark as XFAIL.
* g++.old-deja/g++.law/temps4.C: Likewise.
From-SVN: r34235
|
|
From-SVN: r34234
|
|
* g++.old-deja/g++.brendan/code-gen4.C: Include stdio.h and
stdlib.h. Call abort() on failure.
* g++.old-deja/g++.law/refs4.C: Likewise.
* g++.old-deja/g++.law/temps4.C: Likewise.
* g++.old-deja/g++.brendan/complex1.C: Don't assume argc is 1.
* gcc.c-torture/execute/20000112-1.c: Include string.h.
From-SVN: r34233
|
|
* operators.def (<?): Duplicated, should have been...
(>?): this. Fixed.
From-SVN: r34232
|
|
now.
2000-05-28 Toon Moene <toon@moene.indiv.nluug.nl>
* bugs.texi: Note that debugging information for
common block items is emitted now.
* news.texi: Ditto.
From-SVN: r34231
|
|
* function.c (diddle_return_value): A pcc-style struct return
returns a pointer.
From-SVN: r34230
|
|
From-SVN: r34229
|
|
* cppfiles.c: Read files in, using mmap if possible, then
prescan them separately.
(read_file, read_with_read): New functions.
* cpplex.c: Don't define UCHAR_MAX.
(_cpp_read_and_prescan): Rename to _cpp_prescan. Don't read
the file here.
* cppinit.c (handle_option): Automatically define __cplusplus,
__OBJC__, __ASEEMBLER__, _LANGUAGE_FORTRAN here when we see
the respective -lang switch.
* cpphash.h (enum node_type, struct hashnode, _cpp_lookup
prototype): Move to...
* cpplib.h: ... here. Rename struct hashnode to struct
cpp_hashnode and give it a typedef. Rename _cpp_lookup to
cpp_lookup. Add 'fe_value' slot, a union tree_node *.
From-SVN: r34228
|
|
* config/rs6000/rs6000.md (movsi): Constify 'name'.
* regclass.c [CLASS_CANNOT_CHANGE_SIZE]
(class_can_change_size): New variable.
(reg_changes_size): New variable.
(init_reg_sets_1): Initialise class_can_change_size.
(record_operand_costs): Remove subreg_changes_size.
Don't pass it around. Instead update reg_changes_size.
(regclass): Initialise and free reg_changes_size. If a register
changes size, don't preference it to a class that contains
registers that can't change size.
(record_reg_classes): Don't look at subreg_changes_size.
From-SVN: r34227
|
|
* conpr-1.C, conpr-2.C, conpr-3.C: Include stdlib.h.
Relative to g++.old-deja:
* g++.brendan/complex1.C, g++.jason/optimize2.C,
g++.mike/p9732b.C, g++.other/addrof1.C, g++.other/dyncast5.C,
g++.other/init5.C, g++.other/init7.C, g++.other/union2.C,
g++.pt/vbase1.C, g++.robertl/eb14.C, g++.robertl/eh990323-1.C,
g++.robertl/eh990323-2.C, g++.robertl/eh990323-3.C,
g++.robertl/eh990323-4.C, g++.robertl/eh990323-5.C,
g++.robertl/ice990323-2.C: Prototype exit and/or abort.
* g++.brendan/nest21.C, g++.eh/rethrow3.C, g++.jason/init3.C,
g++.law/arm15.C, g++.law/cvt2.C, g++.law/visibility17.C,
g++.mike/eh23.C, g++.mike/eh25.C, g++.mike/eh34.C,
g++.mike/eh48.C, g++.mike/eh55.C, g++.mike/p2736.C,
g++.oliva/new1.C, g++.other/align.C, g++.robertl/eb39.C,
g++.robertl/eb54.C, g++.robertl/eb63.C: Include stdlib.h
and/or string.h.
* g++.other/goto1.C: Update expectations for error messages.
From-SVN: r34226
|
|
* print-rtl.c (reg_names): Remove const.
* regclass.c (reg_names): Likewise.
* regs.h (reg_names): Likewise.
* hard-reg-set.h (reg_names): Likewise.
From-SVN: r34225
|
|
From-SVN: r34224
|
|
2000-05-27 Alex Samuel <samuel@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (ansi_opname): Make it a macro.
(ansi_assopname): Likewise.
(struct lang_decl_flags): Add assignment_operator_p.
(struct lang_decl): Add operator_code.
(DECL_VTT_PARM): Adjust.
(DECL_OVERLOADED_OPERATOR_P): Return the operator_code for an
overloaded operator.
(SET_OVERLOADED_OPERATOR_CODE): New macro.
(DECL_ASSIGNMENT_OPERATOR_P): New macro.
(DECL_ARRAY_DELETE_OPERATOR_P): Adjust.
(opname_tab): Remove.
(assignop_tab): Likewise.
(operator_name_info_t): New type.
(operator_name_info): New variable.
(assignment_operator_name_info): Likewise.
(build_cp_library_fn): Remove declaration.
(push_cp_library_fn): Likewise.
(operator_name_string): Likewise.
(build_decl_overload): Likewise.
* call.c (print_z_candidates): Simplify.
(build_object_call): Adjust usage of ansi_opname. Use
DECL_OVERLOADED_OPERATOR_P.
(op_error): Adjust operator name lookup.
(build_conditional_expr): Adjust usage of ansi_opname.
(build_new_op): Likewise.
(build_op_delete_call): Likewise.
(build_over_call): Likewise.
(joust): Use DECL_OVERLOADED_OPERATOR_P.
* decl.c (duplicate_decls): Copy operator_code.
(init_decl_processing): Adjust parameters to push_cp_library_fn.
(builtin_function): Adjust parameters to build_library_fn_1.
(build_library_fn_1): Accept an overloaded operator code.
(build_library_fn): Pass ERROR_MARK.
(build_cp_library_fn): Accept an overloaded operator code.
(push_cp_library_fn): Likewise.
(grokfndecl): Tweak.
(grokdeclarator): Simplify code to compute names of overloaded
operators. Adjust use of ansi_opname.
(ambi_op_p): Work on tree_codes, not identifiers.
(unary_op_p): Likewise.
(grok_op_properties): Likewise.
(start_function): Use DECL_OVERLOADED_OPERATOR_P.
(lang_mark_tree): Don't try to mark the operator_code.
* decl2.c (grok_function_init): Use DECL_OVERLOADED_OPERATOR_P.
* error.c (dump_decl): Remove special handling for operator
names.
(dump_function_name): Likewise.
(dump_expr): Adjust name lookup of operators.
(op_to_string): Simplify.
(assop_to_string): Likewise.
* init.c (build_new_1): Adjust use of ansi_opname.
* lex.c (opname_tab): Remove.
(assignop_tab): Likewise.
(ansi_opname): Likewise.
(ansi_assopname): Likewise.
(operator_name_string): Likewise.
(reinit_lang_specific): Likewise.
(operator_name_info): New variable.
(assignment_operator_name_info): Likewise.
(init_operators): New function.
(init_parse): Use it.
(do_identifier): Adjust use of ansi_opname.
* method.c (mangle_expression): Don't use ansi_opname for
mangling.
(build_decl_overload_real): Use DECL_OVERLOADED_OPERATOR_P.
(build_decl_overload): Remove.
(build_typename_overload): Use OPERATOR_TYPENAME_FORMAT directly.
(do_build_assign_ref): Adjust use of ansi_opname.
(synthesize_method): Likewise.
(implicitly_declare_fn): Likewise.
* operators.def: New file.
* parse.y (operator): Adjust use of ansi_opname.
* pt.c (tsubst_decl): Use IDENTIFIER_OPNAME_P.
(set_mangled_name_for_template_decl): Don't play games with
current_namespace.
(special_function_p): Adjust use of ansi_opname.
* typeck.c (check_return_expr): Likewise.
* Make-lang.in (cc1plus): Depend on operators.def.
* Makefile.in (lex.o): Likewise.
(decl.o): Likewise.
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r34223
|
|
if, instead of with an ifdef.
* config/alpha/alpha.c (alpha_does_function_need_gp): Test
TARGET_PROFILING_NEEDS_GP in the if, instead of with an ifdef.
(alpha_expand_prologue): Emit prologue_mcount if needed.
* config/alpha/alpha.h (TARGET_PROFILING_NEEDS_GP): Default to 0.
* config/alpha/alpha.md (prologue_mcount): New.
* config/alpha/linux.h (FUNCTION_PROFILER): Remove.
(TARGET_PROFILING_NEEDS_GP): Undef before redefining.
* config/alpha/netbsd.h: Likewise.
From-SVN: r34222
|
|
* config/alpha/elf.h (SELECT_SECTION): Mirror Kenner's May 19
change to config/elfos.h.
From-SVN: r34221
|
|
* config/alpha/alpha-protos.h (alpha_arg_info_reg_val): Protect
with RTX_CODE.
(alpha_write_linkage): Protect with BUFSIZ.
(alpha_need_linkage): Update prototype.
* config/alpha/alpha.c (function_arg): Move VMS code here.
(alpha_links_base): Remove.
(alpha_links): New.
(mark_alpha_links_node, mark_alpha_links): New.
(alpha_write_one_linkage): New.
(alpha_need_linkage): Use a splay tree. Build the linkage symbol.
(alpha_write_linkage): Use splay_tree_foreach.
* config/alpha/alpha.md (call_vms): Use alpha_need_linkage
to get the linkage symbol.
(call_value_vms): Likewise.
* config/alpha/elf.h (output_file_directive): Remove decl.
(ctors_section, dtors_section): Prototype.
(sbss_section, sdata_section): Prototype.
* config/alpha/vms.h (FUNCTION_ARG): Remove.
(readonly_section, link_section, literals_section): Prototype.
(ctors_section, dtors_section): Prototype.
(vms_valid_decl_attribute_p): Remove decl.
(alpha_arg_type, alpha_arg_info_reg_val): Likewise.
From-SVN: r34220
|