Commit Graph

25104 Commits

Author SHA1 Message Date
Mark Mitchell f981720185 cp-tree.def (FUNCTION_NAME): New tree node.
* cp-tree.def (FUNCTION_NAME): New tree node.
	* cp-tree.h (current_function_name_declared): Tweak documentation.
	(lang_decl_flags): Add pretty_function_p, adjust dummy.
	(DECL_PRETTY_FUNCTION_P): New macro.
	* decl.c (cp_finish_decl): Handle declarations of __FUNCTION__,
	etc., in a template function.  Use at_function_scope_p instead of
	expanding it inline.
	* pt.c (tsubst_decl): Handle DECL_PRETTY_FUNCTION_P declarations
	specially.
	(tsubst): Handle FUNCTION_NAME.
	(tsubst_copy): Likewise.
	(instantiate_decl): Prevent redeclarations of __PRETTY_FUNCTION__,
	etc. in instantiation.
	* semantics.c (begin_compound_stmt): Declare __FUNCTION__, etc.,
	even in template functions.
	(setup_vtbl_ptr): Don't declare __PRETTY_FUNCTION in the
	conditional scope at the top of a destructor.

	* error.c (dump_function_decl): Use `[ with ... ]' syntax for
	specializations too.

From-SVN: r30625
1999-11-23 02:49:41 +00:00
Jason Merrill a96c67ec89 dwarf2out.c (die_struct): Remove die_attr_last and die_child_last.
* dwarf2out.c (die_struct): Remove die_attr_last and die_child_last.
        (add_dwarf_attr, add_child_die): Just push onto the front.
        (reverse_die_lists): New fn.
        (add_sibling_attributes): Use it.
        (push_decl_scope): Reorganize.
        (gen_struct_or_union_type_die): Don't add a DW_AT_containing_type
        that points to ourself.
        (add_name_and_src_coords_attributes): Don't set file and line for
        an artificial decl.
        (gen_subprogram_die): An artificial function doesn't need to match
        file and line.
        (gen_compile_unit_die): Return the generated die.  Only add
        AT_comp_dir if the filename is relative.
        (remove_AT): Simplify loop.  Also free string values.
        (output_die): A DIE ref can't be null.
        (output_value_format, value_format): Take a dw_attr_ref.
        (dwarf_last_decl, is_extern_subr_die, sibling_offset): Remove.
        (AT_class, AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, AT_loc,
        AT_addr, AT_lbl): New fns.
        (various): Use them.
        (various): Constify.

From-SVN: r30624
1999-11-22 20:50:36 -05:00
J"orn Rennecke 54f3b5c2f1 combine.c (combine_simplify_rtx): When handling a SUBREG, take SUBREG_WORD into account.
* combine.c (combine_simplify_rtx): When handling a SUBREG,
	take SUBREG_WORD into account.
	(if_then_else_cond): Likewise.

From-SVN: r30623
1999-11-22 23:56:34 +00:00
Benjamin Kosnik b49df33399 stl_rope.h: Fix initialization order.
* stl_rope.h: Fix initialization order.
        * stl_deque.h: Use static_casts<size_type>(signed_type).

Co-Authored-By: Matthias Klose <doko@cs.tu-berlin.de>

From-SVN: r30622
1999-11-22 23:35:50 +00:00
Jason Merrill a819692432 gmon.c, [...]: Remove advertising clause from BSD license
* gmon.c, i386/gmon-sol2.c, sparc/gmon-sol2.c: Remove advertising
        clause from BSD license

From-SVN: r30621
1999-11-22 13:40:20 -05:00
Jason Merrill f3636679d9 strtoul.c, [...]: Remove advertising clause from BSD license
* strtoul.c, strtol.c, random.c: Remove advertising clause from
        BSD license

From-SVN: r30620
1999-11-22 13:36:49 -05:00
Bernd Schmidt b1dbfa1d87 Add regset_head and INIT_REG_SET.
From-SVN: r30619
1999-11-22 18:34:13 +00:00
Bernd Schmidt 328f4006b2 Reformat load_mems slightly.
From-SVN: r30618
1999-11-22 16:40:32 +00:00
Nathan Sidwell 19a027a082 * g++.old-deja/g++.other/warn4.C: New test.
From-SVN: r30617
1999-11-22 16:10:58 +00:00
Nathan Sidwell 88b4335f8a semantics.c (finish_unary_op_expr): Only set TREE_NEGATED_INT when actually negative.
* semantics.c (finish_unary_op_expr): Only set TREE_NEGATED_INT
	when actually negative.

	* typeck.c (convert_for_assignment): Expand comment about
	strange NULL check, moved from ...
	(convert_for_initialization): ... here. Remove unneeded
	code.

From-SVN: r30616
1999-11-22 16:08:14 +00:00
Nathan Sidwell 7cffd12d38 cleanup2.C: New test.
* g++.old-deja/g++.eh/cleanup2.C: New test.
	* g++.old-deja/g++.ext/pretty2.C: New test.
	* g++.old-deja/g++.ext/pretty3.C: New test.
	* g++.old-deja/g++.other/debug6.C: New test.

From-SVN: r30615
1999-11-22 15:51:14 +00:00
Bruce Korb d3201a2ce6 fixinc.x86-linux-gnu folded into inclhack.def
From-SVN: r30614
1999-11-22 15:07:28 +00:00
Bruce Korb 8aeb3b0e4c __FD_ZERO fixes for gnu libc1&2
From-SVN: r30613
1999-11-22 15:05:48 +00:00
Andrew Haley ee265800a5 emit-rtl.c (gen_sequence): Only return the pattern of an insn if its code is INSN and it has no notes.
Fri Nov 12 14:08:40 1999  Andrew Haley  <aph@cygnus.com>

	* emit-rtl.c (gen_sequence): Only return the pattern of an insn if
	its code is INSN and it has no notes.

From-SVN: r30612
1999-11-22 14:53:20 +00:00
Andrew Haley 6c85df6949 varasm.c (function_defined): Remove.
1999-11-22  Andrew Haley  <aph@cygnus.com>

        * varasm.c (function_defined): Remove.
        (make_function_rtl): Don't set function_defined.
        (make_decl_rtl): Remove global register warning.
        * regclass.c (no_global_reg_vars): New variable.
        (globalize_reg): Warn if function has already been defined.
        (regclass_init): Set no_global_reg_vars.

From-SVN: r30611
1999-11-22 14:20:35 +00:00
Jan Hubicka 9ffc5a70f8 regclass.c (reg_pref): New structure and static variable
* regclass.c (reg_pref): New structure and static variable
	(prefclass): Delete.
	(altclass): Delete.
	(all uses of prefclass and altclass): Use reg_pref instead.

From-SVN: r30610
1999-11-22 13:43:39 +00:00
Jeff Law 28a22acb45 Daily bump.
From-SVN: r30609
1999-11-22 01:45:06 -07:00
Anthony Green 48aedbca8b constants.c (find_methodref_index): Unwrap method names before inserting them in the constant pool.
* constants.c (find_methodref_index): Unwrap method names before
        inserting them in the constant pool.

        * jcf-parse.c (jcf_parse): Display `interface' when appropriate.

        * class.c (assume_compiled_node): New typedef.
        (assume_compiled_tree): New static data.
        (find_assume_compiled_node): New function.
        (add_assume_compiled): New function.
        (assume_compiled): New function.
        * class.c (make_class_data): Use assume_compiled.
        (is_compiled_class): Use assume_compiled.

        * java-tree.h (add_assume_compiled): Declare.

        * lang.c (lang_decode_option): Parse new options.

From-SVN: r30608
1999-11-21 23:37:58 +00:00
Alexandre Oliva 250ba2372c * delete2.C, delete3.C, delete4.C, delete5.C: New tests.
From-SVN: r30607
1999-11-21 17:49:59 +00:00
Alexandre Oliva c7edeea32a cp-tree.h (build_vec_delete): Remove `auto_delete' argument.
* cp-tree.h (build_vec_delete): Remove `auto_delete' argument.
* init.c (build_vec_delete, build_vec_delete_1): Likewise.
Always destruct virtual bases of array components, but never
delete them.
(build_vec_init): Adjust invocations.
(build_delete): Likewise.
* decl2.c (delete_sanity): Likewise.

From-SVN: r30606
1999-11-21 17:44:34 +00:00
Nick Clifton 5f1e6755ec Rename -mshort-load-bytes switch to -malignment-traps
From-SVN: r30604
1999-11-21 16:11:20 +00:00
Jan Hubicka 5b8ad69915 Oops, forgot the Changleog entry.
* global.c (allocno): New structure and static variable.
	(allocno_reg): Remove, all references replaced by allocno.
	(allocno_size): Likewise.
	(hard_reg_conflicts): Likewise.
	(hard_reg_preferences): Likewise.
	(hard_reg_copy_preferences): Likewise.
	(hard_reg_full_preferences): Likewise.
	(regs_someone_prefers): Likewise.
	(allocno_calls_crossed): Likewise.
	(allocno_n_refs): Likewise.
	(allocno_live_length): Likewise.
	(find_reg): Rename ALLOCNO to NUM.

From-SVN: r30603
1999-11-21 12:56:01 +00:00
Jan Hubicka 5c0ecffe47 global.c (allocno): New structure and static variable.
* global.c (allocno): New structure and static variable.
	(allocno_reg): Remove, all references replaced by allocno.
	(allocno_size): Likewise.
	(hard_reg_conflicts): Likewise.
	(hard_reg_preferences): Likewise.
	(hard_reg_copy_preferences): Likewise.
	(hard_reg_full_preferences): Likewise.
	(regs_someone_prefers): Likewise.
	(allocno_calls_crossed): Likewise.
	(allocno_n_refs): Likewise.
	(allocno_live_length): Likewise.
	(find_reg): Rename ALLOCNO to NUM.

From-SVN: r30602
1999-11-21 12:53:31 +00:00
Jan Hubicka ee59f29bd9 regclass.c (may_move_in_cost): Rename from may_move_cost, all references updated.
* regclass.c (may_move_in_cost): Rename from may_move_cost, all
	references updated.
	(may_move_out_cost): New variable.
	(init_reg_sets_1): Initialize may_move_out_cost.
	(record_reg_classes): Use may_move_out_cost.

From-SVN: r30601
1999-11-21 12:40:47 +00:00
Jan Hubicka 246fd41f2d regclass.c (dump_regclass): New function.
* regclass.c (dump_regclass): New function.
	(regclass): New parameter DUMP, call DUMP_REGCLASS.
	* toplev.c (rest_of_compilation): Opent lreg dump file before regclass,
	pass rtl_dump_file to regclass.
	* rtl.h (regclass): Update prototype.

From-SVN: r30600
1999-11-21 12:33:17 +00:00
Jeff Law eeae2112fa Daily bump.
From-SVN: r30599
1999-11-21 01:45:07 -07:00
Geoff Keating 8b1cb95b76 varasm.c (output_constructor): Solve problem with long long bitfields...
* varasm.c (output_constructor): Solve problem with long long
bitfields, even on BYTES_BIG_ENDIAN machines (testcase 991118-1).

From-SVN: r30598
1999-11-21 07:53:01 +00:00
Jan Hubicka 06a964de82 i386.md (neg, [...]): Revmap to use ix86_expand_unary_operator and ix86_unary_operator_ok.
* i386.md (neg, not and abs patterns): Revmap to use
        ix86_expand_unary_operator and ix86_unary_operator_ok.
        (add?f and sub?f expanders): Force operand 1 to register.
        * i386.c (ix86_expand_unary_operator): Rewrite.
        (ix86_unary_operator_ok): Ensure that memory operands
        match real opcode.
        (ix86_binary_operator_ok): Do not allow operand 1 to
        come into memory and operand 0 not.
        (ix86_expand_binary_operator): Ensure that
        src1 is not non-matching memory.

From-SVN: r30597
1999-11-21 01:34:22 +00:00
Jan Hubicka 1ce485ec43 i386.md (negs?2): Rewrite to expanders...
* i386.md (negs?2): Rewrite to expanders, new patterns and splitters
	to support integer registers and memory.
	(abss?2_integer): Likewise.

From-SVN: r30596
1999-11-21 00:04:15 +00:00
Jeff Law 65c93378bc Daily bump.
From-SVN: r30595
1999-11-20 01:45:06 -07:00
Jan Hubicka 8fcaaa8099 i386.h (enum reg_class): Add FLOAT_INT_REGS.
* i386.h (enum reg_class): Add FLOAT_INT_REGS.
	(REG_CLASS_NAMES): Likewise.
	(REG_CLASS_CONTENTS): Define FLOAT_INT_REGS as union of FLOAT_REGS
	and GENERAL_REGS.
	* i386.md (pushsf): Do not preferre FLOAT_REGS over GENERAL_REGS.
	(movsf): Likewise; unify 4th and 5th alternative.
	(pushdf): Likewise.
	(movdf_1): Likewise; rename to movdf_integer.
	(pushxf): Likewise; rename to pushxf_integer; fix output template;
	remove redundant splitter.
	(movxf_1): Likewise; rename to movxf_integer; fix splitter's condition.
	(movdf_nointeger): New.
	(movxf_nointeger): New.
	(pushxf_nointeger): New.

From-SVN: r30594
1999-11-19 20:50:36 +00:00
Jan Hubicka f97d9ec377 i386.md (extend?f?f): Split to expander and pattern, refuse two memory operands in patterns.
* i386.md (extend?f?f): Split to expander and pattern, refuse two
	memory operands in patterns.
	(fop*): Refuse two memory operands.

From-SVN: r30593
1999-11-19 20:27:08 +00:00
Jan Hubicka c37d59c3e7 i386.md (ashrsi3_31): Allow cltd when optimizing for size even on !TARGET_USE_CLTD CPUs.
* i386.md (ashrsi3_31): Allow cltd when optimizing for size even
	on !TARGET_USE_CLTD CPUs.

From-SVN: r30592
1999-11-19 20:12:14 +00:00
Tom Tromey 3cf88fb4e8 sjlj jumbo patch
From-SVN: r30591
1999-11-19 19:13:42 +00:00
Diego Novillo 2395f8059c * MAINTAINERS: Add new 'write after approval' maintainer.
From-SVN: r30590
1999-11-19 13:23:48 -05:00
Diego Novillo 14592a41e8 rtl.texi (mem): Add documentation for alias-set argument to RTX `mem'.
* rtl.texi (mem): Add documentation for alias-set argument
	to RTX `mem'.

From-SVN: r30589
1999-11-19 12:23:37 -05:00
Nathan Sidwell e5315fad4d * g++.old-deja/g++.ext/restrict1.C: New test.
From-SVN: r30588
1999-11-19 13:04:48 +00:00
Nathan Sidwell 535233a89f extend.texi: Document C++ restricted pointers and references.
* extend.texi: Document C++ restricted pointers and references.

	* cp-tree.h (grok_method_quals): Return this pointer qualifiers.
	* decl.c (grokdeclarator): Adjust calls to grok_method_quals.
	* decl2.c (grok_method_quals): Accept `restrict' as applying to
	the object pointer. Return such qualifiers.
	(grokclassfn): Apply this pointer qualifiers. Cleanup unused
	variables.

From-SVN: r30587
1999-11-19 13:03:00 +00:00
Bernd Schmidt 73d65336b7 addr_affects_sp_p now unconditional
From-SVN: r30586
1999-11-19 11:36:25 +00:00
Jan Hubicka 96e7ae40d8 i386.h (struct_processor_costs): New fileds int_load, int_store, fp_move, fp_load and fp_store
* i386.h (struct_processor_costs): New fileds int_load, int_store, fp_move,
	fp_load and fp_store
	(REGISTER_MOVE_COST): Fix comment, calculate exactly the cost of
	fp->int moves
	(MEMORY_MOVE_COST): New macro.
	* i386.c (386_cost): Define new fields.
	(i486_cost): Likewise.
	(pentium_cost): Likewise.
	(pentiumpro_cost): Likewise.
	(k6_cost): Likewise.

From-SVN: r30585
1999-11-19 09:12:18 +00:00
Jeff Law 25b540c639 Daily bump.
From-SVN: r30584
1999-11-19 01:45:07 -07:00
Alexandre Oliva 6630745103 * template7.C: Crash test passes, bug error is now bogus.
From-SVN: r30583
1999-11-19 06:36:45 +00:00
Alexandre Oliva 0f7324bf0a Changed my e-mail address to oliva@lsd.ic.unicamp.br
From-SVN: r30582
1999-11-19 03:23:11 +00:00
Alexandre Petit-Bianco 4832340ccc class.c (layout_class): Always convert TYPE_SIZE_UNIT to int_type_node...
Wed Nov 17 21:09:28 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* class.c (layout_class): Always convert TYPE_SIZE_UNIT to
 	int_type_node: that's what `_Jv_AllocObject' expects.

From-SVN: r30581
1999-11-18 17:43:21 -08:00
Gabriel Dos Reis 9c5c5c8a31 valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): Don't forget to define tanh.
1999-11-19  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>

        * std/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): Don't forget
        to define tanh.

From-SVN: r30580
1999-11-19 01:40:12 +00:00
Greg McGary b71733d53f m68kelf.h: Suppress '/* within comment' warning.
* config/m68k/m68kelf.h: Suppress '/* within comment' warning.

* config/m68k/m68k.h (MASK_PCREL): Don't use same value as
MASK_ALIGN_INT.

* config/m68k/m68k.h (MASK_NO_STRICT_ALIGNMENT): New macro.
(TARGET_STRICT_ALIGNMENT): New macro.
(TARGET_SWITCHES): Add "strict-align" and "no-strict-align".
(STRICT_ALIGNMENT): Depend on TARGET_STRICT_ALIGNMENT.
* invoke.texi (M680x0 Options): Document -mstrict-align.

Co-Authored-By: Geoff Keating <geoffk@cygnus.com>

From-SVN: r30579
1999-11-19 00:23:01 +00:00
Jan Hubicka 2450a05729 i386-protos.h (split_xf, [...]): Remove.
* i386-protos.h (split_xf, ix86_split_movdi): Remove.
        (ix86_split_long_move): Declare.
        * i386.c (split_xf, ix86_split_movdi): Remove.
        (ix86_split_to_parts, ix86_split_long_move): New.
        * i386.md (dimode move splitters): Use ix86_split_long_move.
        (dfmode move splitters): Likewise.
        (xfmode move splitters): Likewise.
        (movsf_1): Allow F->r.
        (movdf_1, movxf_1): Allow F->ro.

Co-Authored-By: Richard Henderson <rth@cygnus.com>

From-SVN: r30578
1999-11-18 11:10:44 -08:00
Mark Mitchell 4a6ef811c8 except.c (expand_end_catch_block): Fix typo.
* except.c (expand_end_catch_block): Fix typo.
	(expand_exception_blocks): Simplify.  Don't call
	expand_leftover_cleanups.

From-SVN: r30577
1999-11-18 17:52:27 +00:00
Mark Mitchell 1e4ceb6f9e except.h (struct eh_entry): Add goto_entry_p.
* except.h (struct eh_entry): Add goto_entry_p.
	(eh_region_from_symbol): Remove prototype.
	* except.c (find_func_region_from_symbol): New function.
	(emit_cleanup_handler): Likewise.
	(eh_region_from_symbol): Make it static.
	(add_new_handler): Verify the argument.
	(find_func_region): Update comment.
	(expand_eh_region_end): Expand handlers here, rater than waiting
	until expand_leftover_cleanups or start_all_catch.
	(expand_leftover_cleanups): Don't expand here.
	(expand_start_all_catch): Or here.
	(expand_rethrow): Check the return value from find_func_region.
	* function.c (expand_function_end): Emit the catch_clauses.

From-SVN: r30576
1999-11-18 17:50:56 +00:00
Gavin Romig-Koch 0e6b2107ca * integrate.c (expand_inline_function): Add necessary check for NULL.
From-SVN: r30575
1999-11-18 15:12:51 +00:00