Jakub Jelinek
8b725198ed
* expr.c (emit_group_load): Use dst mode if src is VOIDmode.
...
From-SVN: r30960
1999-12-15 17:36:26 +01:00
Jan Hubicka
a087165623
function.c (PREFERRED_STACK_BOUDNARY): Provide default value.
...
* function.c (PREFERRED_STACK_BOUDNARY): Provide default value.
(assign_stack_local_1): Limit alignment to PREFERRED_STACK_BOUNDARY,
update stack_alignment_needed.
(prepare_function_start): Initialize stack_alignment_needed
* function.h (struct function): Add field stack_alignment_needed.
From-SVN: r30958
1999-12-15 15:34:03 +00:00
J"orn Rennecke
285f3cf09a
caller-save.c (insert_one_insn): Returns struct insn_chain *.
...
* caller-save.c (insert_one_insn): Returns struct insn_chain *.
Handle live_throughout / dead_or_set instead of live_before /
live_after.
(save_call_clobbered_regs): Get register livenessinformation from
chain->live_throughout.
(add_stored_regs): New function.
(insert_restore, insert_save): Add restored / saved registers to
dead_or_set.
* global.c (reg_dies): New parameter chain.
(reg_becomes_live): Third parameter is regs_set now.
Changed all callers.
(reg_dies): New parameter chain. Changed all callers.
(build_insn_chain): Set live_throughout instead of
live_before / live_after.
* reload.h (struct insn_chain): Replace members live_before /
live_after with live_throughout / dead_or_set.
* reload1.c (new_insn_chain): Handle live_throughout / dead_or_set
instead of live_before / live_after.
(maybe_fix_stack_asms, find_reload_regs, finish_spills): Likewise.
(order_regs_for_reload, find_reg, finish_spills): Likewise.
(choose_reload_regs_init): Likewise.
* stupid.c (current_chain, find_clobbered_regs): Delete.
(stupid_life_analysis): Set chain->live_throughout chain->dead_or_set
instead of chain->live_before / chain->live_after.
(mark_hard_ref): New function.
(stupid_mark_refs): Call mark_hard_ref. Clear chain->live_throughout.
From-SVN: r30957
1999-12-15 14:57:29 +00:00
David S. Miller
4940cd6041
rtlanal.c (reg_overlap_mentioned_p): Handle CONCAT.
...
1999-12-15 David S. Miller <davem@redhat.com>
* rtlanal.c (reg_overlap_mentioned_p): Handle CONCAT.
From-SVN: r30956
1999-12-15 06:33:50 -08:00
Jan Hubicka
35836a43fa
flow.c (calculate_loop_depth): Make global, remove prototype, rewrite to use new loop infrastructure.
...
* flow.c (calculate_loop_depth): Make global, remove prototype,
rewrite to use new loop infrastructure.
(find_basic_block): Remove calculate_loop_depth call.
* toplev.c (rest_of_compilation): Call find_basic_block.
* output.h (calculate_loop_depth): Declare.
From-SVN: r30955
1999-12-15 14:17:59 +00:00
Jan Hubicka
ce4bbac71c
flow.c (dump_flow_info): Dump loop_depth.
...
* flow.c (dump_flow_info): Dump loop_depth.
(flow_loop_nodes_find): Increase loop_depth for basic block in the
body.
(flow_loop_find): Initialize the loop_depth for each basic block.
From-SVN: r30954
1999-12-15 14:09:52 +00:00
Nathan Sidwell
41bd0db1f0
* g++.old-deja/g++.warn/cast-align1.C: New test.
...
From-SVN: r30953
1999-12-15 12:40:30 +00:00
Nathan Sidwell
8be7ab5d48
typeck.c (build_c_cast): Expand warning message.
...
* typeck.c (build_c_cast): Expand warning message. Move pointer
alignment warning to after the cast. Don't warn about pointer
alignment when given a pointer to incomplete.
fix cut-n-paste error on 1999-12-09 Andreas Jaeger and
1999-12-09 Mark Mitchell (was 11999 & 999)
From-SVN: r30952
1999-12-15 12:39:02 +00:00
Richard Henderson
33848bb028
cp-tree.h (make_aggr_type): Declare.
...
* cp-tree.h (make_aggr_type): Declare.
* lex.c (cp_make_lang_type): Don't SET_IS_AGGR_TYPE.
(make_aggr_type): New.
* decl.c (build_typename_type, init_decl_processing): Use it.
(build_ptrmemfunc_type, xref_tag): Likewise.
* except.c (call_eh_info): Likewise.
* init.c (init_init_processing): Likewise.
* pt.c (process_template_parm, lookup_template_class): Likewise.
* rtti.c (expand_class_desc): Likewise.
* semantics.c (begin_class_definition, finish_typeof): Likewise.
* tree.c (copy_template_template_parm): Likewise.
From-SVN: r30951
1999-12-15 01:51:24 -08:00
Jason Merrill
6ff7fb9572
tree.c (decl_function_context): Handle virtual functions.
...
* tree.c (decl_function_context): Handle virtual functions.
* tlink.c (scan_linker_output): Don't look in demangled name when
looking for linker output keywords.
* dwarfout.c (output_type): We can defer namespace-scope classes.
From-SVN: r30950
1999-12-15 04:37:48 -05:00
Jason Merrill
04a2ecf780
cp-tree.def (TEMPLATE_PARM_INDEX): Calculate size using sizeof (struct tree_common).
...
* cp-tree.def (TEMPLATE_PARM_INDEX): Calculate size using
sizeof (struct tree_common).
From-SVN: r30949
1999-12-15 04:18:21 -05:00
Jason Merrill
03c3ba3937
Makefile.in (MYCXXFLAGS): Include $(CXXFLAGS).
...
* Makefile.in (MYCXXFLAGS): Include $(CXXFLAGS).
(MYCFLAGS): Include $(CFLAGS).
From-SVN: r30948
1999-12-15 04:13:57 -05:00
Jason Merrill
3eea0202cd
filedoalloc.c, [...]: Remove advertising clause from BSD license, pursuant with
...
* filedoalloc.c, floatio.h, iovfprintf.c, iovfscanf.c: Remove
advertising clause from BSD license, pursuant with
ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change
From-SVN: r30947
1999-12-15 04:13:06 -05:00
Jason Merrill
1ae8994fb3
dwarf2out.c (add_abstract_origin_attribute): Do call abort if the abstract origin wasn't emitted.
...
* dwarf2out.c (add_abstract_origin_attribute): Do call abort if
the abstract origin wasn't emitted.
From-SVN: r30946
1999-12-15 04:05:18 -05:00
Jason Merrill
8cb360d3a2
optimize.c (expand_call_inline): Set BLOCK_ABSTRACT_ORIGIN on the outermost block to point to the inlined...
...
* optimize.c (expand_call_inline): Set BLOCK_ABSTRACT_ORIGIN on the
outermost block to point to the inlined function decl.
From-SVN: r30945
1999-12-15 04:03:06 -05:00
Jeff Law
6ae63bcd1f
Daily bump.
...
From-SVN: r30944
1999-12-15 01:45:06 -07:00
Jeffrey A Law
accef10312
regclass.c (record_reg_classes): Update comment for merging register class preferences in reg->reg copies.
...
* regclass.c (record_reg_classes): Update comment for merging
register class preferences in reg->reg copies. Tighten conditions
for merging register class preferences in reg->reg copies.
From-SVN: r30943
1999-12-15 01:29:37 -07:00
Martin v. Löwis
705e873389
strstream.h (strstreambuf::streambuf): Rename parameters to avoid shadow warning.
...
* strstream.h (strstreambuf::streambuf): Rename parameters to
avoid shadow warning.
* stream.h (WS): Likewise.
From-SVN: r30941
1999-12-15 07:46:36 +00:00
Martin v. Löwis
035f4506b1
back out unrelated patch to std:: qualify reverse_iterator
...
From-SVN: r30940
1999-12-15 07:43:22 +00:00
Martin v. Löwis
355e94aaeb
bastring.h (basic_string::basic_string): Rename parameters to avoid shadow warnings.
...
* std/bastring.h (basic_string::basic_string): Rename parameters
to avoid shadow warnings.
* std/bastring.cc (alloc): Likewise.
From-SVN: r30938
1999-12-15 07:37:36 +00:00
David Edelsohn
fd2a10921e
* rs6000.md (tablejumpdi): Generate DImode LABEL_REF.
...
From-SVN: r30936
1999-12-15 02:24:19 -05:00
Jason Merrill
d67cdbc3fd
error.c (dump_decl): operator==, not operator ==.
...
* error.c (dump_decl): operator==, not operator ==.
(op_to_string): Likewise.
* decl.c (compute_array_index_type): Handle null name.
* decl2.c (ambiguous_decl): Fix to match comment.
(lookup_using_namespace): Adjust.
* decl2.c (import_export_class): Don't ignore dllimport.
From-SVN: r30935
1999-12-14 20:34:16 -05:00
Mark Mitchell
08b962b08b
class.c (check_field_decls): Split out from ...
...
* class.c (check_field_decls): Split out from ...
(finish_struct_1): ... here. Use it. Tidy.
From-SVN: r30934
1999-12-15 00:36:57 +00:00
Geoff Keating
f4f1acad85
m68020-elf.h (ENDFILE_SPEC): Delete.
...
* config/m68k/m68020-elf.h (ENDFILE_SPEC): Delete.
(INIT_SECTION_ASM_OP): Delete.
(FINI_SECTION_ASM_OP): Delete.
(STARTFILE_SPEC): Define to hold just crtbegin.o.
From-SVN: r30933
1999-12-14 23:14:42 +00:00
David S. Miller
933108bc9e
List Jakub as Sparc co-maintainer.
...
From-SVN: r30932
1999-12-14 15:10:04 -08:00
Jason Merrill
9765e35715
dwarf2out.c (class_scope_p): New fn.
...
* dwarf2out.c (class_scope_p): New fn.
(gen_subprogram_die): Use it.
(gen_variable_die): Use it. Tweak logic.
(gen_struct_or_union_type_die): Check context_die to determine
if we're function-local.
(dwarf2out_decl): Check DECL_BUILT_IN, not DECL_FUNCTION_CODE.
From-SVN: r30931
1999-12-14 18:05:11 -05:00
Per Bothner
cf69bfbf38
re GNATS gcj/110 (don't exclude private methods from method table when optimizing)
...
Tue Dec 14 14:20:16 1999 Per Bothner <per@bothner.com>
* class.c (make_class_data): flag_keep_inline_functions to keep
private methods in the method array.
(This is a fix to the Java PR #110 :
http://sourceware.cygnus.com/ml/java-prs/1999-q4/msg00179.html )
From-SVN: r30930
1999-12-14 14:25:37 -08:00
Bernd Schmidt
6979065c16
Avoid reversing bivs with maybe_multiple set.
...
From-SVN: r30929
1999-12-14 19:54:41 +00:00
Nick Clifton
a120a3bd97
Add support for -mcpu=arm720 cmmand line switch
...
From-SVN: r30928
1999-12-14 19:42:58 +00:00
J"orn Rennecke
e1bb2458c4
loop.c (strength_reduce): Fix sign of giv lifetime calculation for givs made from biv increments.
...
* loop.c (strength_reduce): Fix sign of giv lifetime calculation
for givs made from biv increments.
From-SVN: r30927
1999-12-14 19:18:50 +00:00
Mark Mitchell
d7d5e42f2d
cp-tree.h (remap_save_expr): Add walk_subtrees parameter.
...
* cp-tree.h (remap_save_expr): Add walk_subtrees parameter.
* optimize.c (copy_body_r): Pass it.
* tree.c (remap_save_expr): Clear walk_subtrees for an
already-handled SAVE_EXPR.
(cp_unsave_r): Pass walk_subtrees to remap_save_expr.
From-SVN: r30926
1999-12-14 18:52:40 +00:00
Mark Mitchell
89c6e7ac34
dump.c (dequeue_and_dump): Dump DECL_NAMESPACE_ALIAS.
...
* dump.c (dequeue_and_dump): Dump DECL_NAMESPACE_ALIAS.
* ir.texi (DECL_NAMESPACE_ALIAS): Document it.
* error.c (dump_expr): Handle EXPR_WITH_FILE_LOCATION.
From-SVN: r30925
1999-12-14 18:11:32 +00:00
Jakub Jelinek
9ac190b54e
linux64.h (DEFAULT_VTABLE_THUNKS): Define to 1.
...
* config/sparc/linux64.h (DEFAULT_VTABLE_THUNKS): Define to 1.
(ASM_IDENTIFY_GCC): Remove.
From-SVN: r30924
1999-12-14 17:19:53 +01:00
Richard Henderson
d8ee3e20a0
configure.in (alpha-osf, [...]): Handle ev6[78].
...
* configure.in (alpha-osf, alpha-linux): Handle ev6[78].
* alpha.c (override_options): Recognize -mcpu=ev67.
* alpha.h (CPP_CPU_EV67_SPEC): New.
(CPP_CPU_DEFAULT_SPEC): Examine TARGET_CPU_DEFAULT to use it.
(EXTRA_SPECS): Update.
From-SVN: r30923
1999-12-14 08:14:29 -08:00
Richard Henderson
c2f5d0304c
config.guess (alpha-osf, [...]): Detect ev67.
...
* config.guess (alpha-osf, alpha-linux): Detect ev67.
* config.sub: Accept alphaev[78], alphaev8.
From-SVN: r30922
1999-12-14 08:10:58 -08:00
Richard Henderson
223dca6a20
cppp.c (main): Set trigraphs and __STRICT_ANSI__ as appropriate for -lang-c89 and -std=*.
...
* cppp.c (main): Set trigraphs and __STRICT_ANSI__ as
appropriate for -lang-c89 and -std=*.
* cppinit.c (cpp_handle_option): Likewise.
(new_pending_define): New, split out from cpp_handle_option.
* gcc.c (default_compilers): Don't define __STRICT_ANSI__
or enable trigraphs for -ansi/-std=*.
* ginclude/stdarg.h (__va_copy): New.
(va_copy): Don't define for C89.
From-SVN: r30921
1999-12-14 08:05:23 -08:00
Clinton Popetz
9e3fc4303e
arm.md (mulsidi3adddi, [...]): New patterns for long long multiply-accumulate.
...
* config/arm/arm.md (mulsidi3adddi, umulsidi3adddi): New patterns
for long long multiply-accumulate.
From-SVN: r30919
1999-12-14 09:48:18 -05:00
Jan Hubicka
2f12c89d4c
regclass.c (scan_one_insn): Set loop_cost to 1 when optimizing for size.
...
* regclass.c (scan_one_insn): Set loop_cost to 1 when
optimizing for size.
From-SVN: r30918
1999-12-14 12:56:06 +00:00
Jakub Jelinek
afdac90584
xm-sp64.h: Avoid using __sparc_v9__ when testing for sparc64.
...
* config/sparc/xm-sp64.h: Avoid using __sparc_v9__ when testing
for sparc64.
* config/sparc/sparc.h: Likewise.
* config/sparc/xm-sysv4-64.h: Likewise.
* config/float-sparc.h: Likewise.
* glimits.h: Likewise.
* longlong.h: Likewise.
From-SVN: r30917
1999-12-14 13:53:39 +01:00
Jakub Jelinek
a330e73b14
sparc.h (SPARC_DEFAULT_CMODEL): Default to CM_32.
...
* config/sparc/sparc.h (SPARC_DEFAULT_CMODEL): Default to CM_32.
(CONDITIONAL_REGISTER_USAGE): For block profiling fix %g4 on sparc64,
not %g2.
(MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Use %g4 instead of %g2
as sparc64 block profiling register.
* config/sparc/sparc.c (sparc_override_options): Allow block
profiling with -m32.
(sparc_block_profiler): Use %g4 instead of %g2 as sparc64 block
profiling register.
* config/sparc/linux64.h (MACHINE_STATE_*): Only provide these
macros on TARGET_ARCH32. sparc.h has macros good enough for sparc64.
* config/sparc/sol2.h (MACHINE_STATE_*): Likewise.
From-SVN: r30916
1999-12-14 13:47:01 +01:00
Bernd Schmidt
e483bf9c62
Undo one misguided optimization attempt in previous change.
...
From-SVN: r30915
1999-12-14 12:40:02 +00:00
Bernd Schmidt
0a326ec99a
Run reg_scan_update to get information about regs created by loop.
...
From-SVN: r30914
1999-12-14 12:34:54 +00:00
Jan Hubicka
0dc0641b04
regclass.c (record_reg_classes): Do not do the copying preferrencing when source does not die.
...
* regclass.c (record_reg_classes): Do not do the copying preferrencing
when source does not die.
From-SVN: r30913
1999-12-14 11:10:11 +00:00
Jan Hubicka
d5e2075dbf
* regclass.c (record_reg_classes): Handle INOUT operands propertly.
...
From-SVN: r30912
1999-12-14 11:08:22 +00:00
Jakub Jelinek
5a5e9ce690
linux64.h (TARGET_LIVE_G0, [...]): Don't support weird SPARC variants on Linux.
...
* config/sparc/linux64.h (TARGET_LIVE_G0,
TARGET_BROKEN_SAVERESTORE): Don't support weird SPARC
variants on Linux.
* config/sparc/linux.h (TARGET_LIVE_G0,
TARGET_BROKEN_SAVERESTORE): Likewise.
* config/sparc/linux-aout.h (TARGET_LIVE_G0,
TARGET_BROKEN_SAVERESTORE): Likewise.
From-SVN: r30911
1999-12-14 11:26:44 +01:00
Bernd Schmidt
3749f4ca8e
Avoid making shared rtl.
...
From-SVN: r30910
1999-12-14 10:23:02 +00:00
Bernd Schmidt
956568cd6b
New testcases.
...
From-SVN: r30909
1999-12-14 10:13:57 +00:00
Bernd Schmidt
468644e65c
New testcase
...
From-SVN: r30908
1999-12-14 10:01:23 +00:00
Jakub Jelinek
14d01c31bf
* target.h: Handle sparc64 the same way as alpha.
...
From-SVN: r30907
1999-12-14 09:53:53 +01:00
Jakub Jelinek
d5191c94d1
bastring.h (class basic_string::Rep): Use proper defines for sparc v9 and fix asm for sparc64.
...
* std/bastring.h (class basic_string::Rep): Use proper defines
for sparc v9 and fix asm for sparc64.
From-SVN: r30906
1999-12-14 09:48:11 +01:00