aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2002-05-14cp-tree.h (struct lang_type): Added non_zero_init.Alexandre Oliva8-38/+143
* cp-tree.h (struct lang_type): Added non_zero_init. (CLASS_NON_ZERO_INIT_P): New macro. (zero_init_p, force_store_init_value, build_forced_zero_init): Declare. * class.c (check_field_decls): Test non_zero_init. * cvt.c (convert_to_pointer_force): Use cp_convert_to_pointer for zero-to-NULL conversions. * decl.c (obscure_complex_init): Don't reset DECL_INITIAL of a type that needs zero-initialization without zeros. (check_initializer_decl): Compute zero-initializer for types that require a non-trivial one. * init.c (build_forced_zero_init): New function. (build_default_init): Use it. * tree.c (zero_init_p): New function. * typeck2.c (force_store_init_value): New function. (process_init_constructor): Create non-trivial zero-initializers for array members and class fields. From-SVN: r53461
2002-05-14gcc.c (cpp_options): Must pass -m* and -f* options to the front end even ↵Neil Booth6-13/+30
when only preprocessing. * gcc.c (cpp_options): Must pass -m* and -f* options to the front end even when only preprocessing. (cc1_options): Remove redundant -lang-c. * tradcpp.c (main): Ignore -m options. cp: * lang-specs.h: Remove redundant -lang-c++. objc: * lang-specs.h: Similarly. From-SVN: r53460
2002-05-14genautomata.c (transform_3): Add code for transformation `(A,B,...)+C -> ↵Vladimir Makarov2-3/+48
A+C,B,...'. 2002-05-14 Vladimir Makarov <vmakarov@redhat.com> * genautomata.c (transform_3): Add code for transformation `(A,B,...)+C -> A+C,B,...'. From-SVN: r53459
2002-05-14Make-lang.in (gnat1$(exeext), [...]): Restore $(CONFIG_H) and prefix.o ↵Rainer Orth3-7/+15
dependencies. * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools): Restore $(CONFIG_H) and prefix.o dependencies. (ada.stage[1-4]): Depend on stage?-start. * Makefile.in (b_gnatb.c): Depend on interfac.o. From-SVN: r53458
2002-05-14revert last checkinJason Merrill3-12/+5
From-SVN: r53457
2002-05-14final.c (end_final): Do not output profile_arcs constructor, when no ↵Jan Hubicka2-1/+6
functions are instrumented. * final.c (end_final): Do not output profile_arcs constructor, when no functions are instrumented. From-SVN: r53455
2002-05-14* i386.md (testsi to testqi_zext_1 splitter): Fix typo.Jan Hubicka2-1/+5
From-SVN: r53454
2002-05-14install.texi: Remove special markup originally required for HTML generation ↵Gerald Pfeifer2-24/+5
with texi2html. * doc/install.texi: Remove special markup originally required for HTML generation with texi2html. From-SVN: r53453
2002-05-14install.texi (Specific, [...]): Update passus on setting CONFIG_SHELL to ↵Gerald Pfeifer2-3/+7
/bin/ksh and remove alternate trick to... * doc/install.texi (Specific, *-*-solaris2*): Update passus on setting CONFIG_SHELL to /bin/ksh and remove alternate trick to (possibly) work around broken /bin/sh. From-SVN: r53452
2002-05-14Fix typo in last change.Andreas Schwab1-1/+1
From-SVN: r53451
2002-05-14sysv4.h (DO_SELECT_SECTION): Factored out of SELECT_SECTION.Andreas Schwab2-32/+125
* config/ia64/sysv4.h (DO_SELECT_SECTION): Factored out of SELECT_SECTION. (UNIQUE_SECTION): Define to get small data correctly. From-SVN: r53450
2002-05-14varasm.c (resolve_unique_section): Add third parameter ↵Andreas Schwab2-6/+16
flag_function_or_data_sections and use it instead of... * varasm.c (resolve_unique_section): Add third parameter flag_function_or_data_sections and use it instead of flag_function_sections. (assemble_start_function): Pass flag_function_sections. (asm_emit_uninitialised): Pass flag_data_sections. (assemble_variable): Likewise. From-SVN: r53449
2002-05-14i386.md: Use define_constants for unspec numbers.Richard Henderson3-193/+259
* config/i386/i386.md: Use define_constants for unspec numbers. * config/i386/i386.c: Likewise. From-SVN: r53448
2002-05-14Daily bump.GCC Administrator2-2/+2
From-SVN: r53447
2002-05-13flow.c (invalidate_mems_from_autoinc): Rewrite to use for_each_rtx.Jeff Law2-20/+33
* flow.c (invalidate_mems_from_autoinc): Rewrite to use for_each_rtx. Update prototype and callers. (propagate_one_insn): Stack pointer adjustments kill MEMs on the mem_set_list which reference the stack pointer, as do calls to constant functions as they may clobber outgoing argument space. From-SVN: r53442
2002-05-14inclhack.def (winidss_valist): Limit applicability.Mark Mitchell5-3/+34
* fixinc/inclhack.def (winidss_valist): Limit applicability. * fixinc/fixincl.x: Regenerated. * fixinc/tests/base/math.h: Update. * fixinc/tests/base/testing.h: Likewise. From-SVN: r53441
2002-05-14genattr.c (gen_attr): Don't emit a comma after the last enumerator.Zack Weinberg2-1/+7
* genattr.c (gen_attr): Don't emit a comma after the last enumerator. From-SVN: r53440
2002-05-14jcf-write.c (write_classfile): Unlink the temporary file if it cannot be ↵Mark Mitchell2-5/+12
renamed. * jcf-write.c (write_classfile): Unlink the temporary file if it cannot be renamed. Use concat to build up the name of the temporary file From-SVN: r53439
2002-05-13cfgrtl.c (purge_dead_edges): Handle abnormal call edges created by non-local ↵Richard Henderson3-20/+40
gotos. * cfgrtl.c (purge_dead_edges): Handle abnormal call edges created by non-local gotos. * recog.c (peephole2_optimize): Likewise. From-SVN: r53438
2002-05-13contrib.texi: Update my entry.Neil Booth1-1/+2
* doc/contrib.texi: Update my entry. * wwwdocs/htdocs/bugs.html: Update. From-SVN: r53437
2002-05-13cppfiles.c (open_file): Change mode (DJGPP only) of redirected input to ↵Andris Pavenis2-1/+14
O_BINARY. * cppfiles.c (open_file): Change mode (DJGPP only) of redirected input to O_BINARY. From-SVN: r53431
2002-05-13* i386.c (ia32_multipass_dfa_lookahead): Prototype.Jeff Law2-0/+3
From-SVN: r53428
2002-05-13i386.c (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.Jeff Law2-0/+20
* i386.c (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define. (ia32_multipass_dfa_lookahead): New function. From-SVN: r53427
2002-05-13gcc.c (SWITCH_TAKES_ARG): Remove 'V'.Neil Booth3-67/+17
* gcc.c (SWITCH_TAKES_ARG): Remove 'V'. (translate_options): Remove 'V'. (process_command): Similarly. doc: * invoke.texi: Remove documentation of 'V'. From-SVN: r53425
2002-05-13* config/s390/linux.h: Revert 2002-04-22 changes.Ulrich Weigand2-35/+6
From-SVN: r53421
2002-05-13fr30.md: Only allow splits of immediate loads if the destination is a register.Scott Marks2-4/+11
2002-05-13 Scott Marks <SMarks@mobile-mind.com> * config/fr30/fr30.md: Only allow splits of immediate loads if the destination is a register. From-SVN: r53418
2002-05-13rtti.c (emit_tinfo_decl): Call import_export_decl.Jason Merrill1-0/+13
* rtti.c (emit_tinfo_decl): Call import_export_decl. * decl2.c (import_export_decl): Set DECL_NOT_REALLY_EXTERN on tinfo decls by default. Don't mess with the builtins. From-SVN: r53417
2002-05-13class.c (build_vtbl_ref_1): Use fixed_type_or_null.Jason Merrill5-65/+48
* class.c (build_vtbl_ref_1): Use fixed_type_or_null. (fixed_type_or_null): See through reference vars. (build_base_path): Vtable contents are constant. * typeck.c (get_member_function_from_ptrfunc): Likewise. * rtti.c (emit_tinfo_decl): Call import_export_decl. * decl2.c (import_export_decl): Set DECL_NOT_REALLY_EXTERN on tinfo decls by default. Don't mess with the builtins. From-SVN: r53416
2002-05-13Daily bump.GCC Administrator2-2/+2
From-SVN: r53415
2002-05-13Makefile.in (c-common.o, cppinit.o): Update.Neil Booth17-126/+193
* Makefile.in (c-common.o, cppinit.o): Update. * c-common.c: Include except.h. (cb_register_builtins): Handle __USING_SJLJ_EXCEPTIONS__. Call TARGET_CPU_CPP_BUILTINS and TARGET_OS_CPP_BUILTINS. * cppinit.c (__USING_SJLJ_EXCEPTIONS): Not here. * defaults.h (TARGET_OS_CPP_BUILTINS, TARGET_CPU_CPP_BUILTINS, CPP_PREDEFINES): Handle here. config: * alpha/alpha-interix.h, alpha/gnu.h, alpha/linux.h, alpha/netbsd.h, alpha/openbsd.h, alpha/osf.h, alpha/unicosmk.h, alpha/vms.h, alpha/vxworks.h: Remove CPP_PREDEFINES, define TARGET_OS_CPP_BUILTINS. * alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Define. (CPP_SPEC, EXTRA_SPECS): Update. (CPP_AM_BWX_SPEC, CPP_AM_MAX_SPEC, CPP_AM_FIX_SPEC, CPP_AM_CIX_SPEC, CPP_IM_EV4_SPEC, CPP_IM_EV5_SPEC, CPP_IM_EV6_SPEC, CPP_CPU_EV4_SPEC, CPP_CPU_EV5_SPEC, CPP_CPU_EV56_SPEC, CPP_CPU_PCA56_SPEC, CPP_CPU_EV6_SPEC, CPP_CPU_EV67_SPEC, CPP_CPU_DEFAULT_SPEC, CPP_CPU_SPEC): Remove. doc: * tm.texi (TARGET_REGISTER_CPP_BUILTINS): Remove. (TARGET_OS_CPP_BUILTINS, TARGET_CPU_CPP_BUILTINS): Define. From-SVN: r53410
2002-05-13emit-rtl.c (global_rtl): Update comment.Zack Weinberg20-366/+324
* emit-rtl.c (global_rtl): Update comment. (const_double_htab, const_double_htab_hash, const_double_htab_hash, lookup_const_double): New. (const_int_htab_hash, const_int_htab_eq): Remove const qualifiers, which cause tons of warnings with RTL checking on. (gen_rtx_CONST_DOUBLE): Deleted. (const_double_from_real_value): New function - bears some resemblance to the former immed_real_const_1. (immed_double_const): Moved here from varasm.c and simplified. (gen_rtx_REG): Make REGNO unsigned to squelch warnings. (gen_rtx_SUBREG): Use gen_rtx_raw_SUBREG. (gen_rtx): Use immed_double_const. (init_emit_once): Initialize the const_double_htab. Use REAL_VALUE_FROM_INT where possible. Can now use CONST_DOUBLE_FROM_REAL_VALUE when setting up const_tiny_rtx. * varasm.c (struct varasm_status): Remove x_const_double_chain. (const_double_chain, immed_real_const, clear_const_double_mem): Delete. (immed_double_const, immed_real_const_1): Moved to emit-rtl.c. (init_varasm_status, mark_varasm_status): Don't touch x_const_double_chain. * output.h: Delete prototype for clear_const_double_mem. * real.h: Make REAL_VALUE_TYPE a macro again. Remove leading '0' slot from all CONST_DOUBLE_FORMAT definitions. Prototype const_double_from_real_value, not immed_real_const_1, and use it to define CONST_DOUBLE_FROM_REAL_VALUE. Define new macro CONST_DOUBLE_ATOF. * rtl.h (CONST_DOUBLE_CHAIN): Kill. (CONST_DOUBLE_LOW, CONST_DOUBLE_HIGH): Adjust. (gen_rtx_CONST_DOUBLE, immed_real_const): Delete prototypes. (gen_rtx_REG): Second arg is unsigned. * gengenrtl.c (special_rtx): Take out CONST_DOUBLE. (excluded_rtx): New, return true for CONST_DOUBLE. (genmacro): Write nothing for excluded codes. * combine.c (combine_simplify_rtx): Use CONST_DOUBLE_FROM_REAL_VALUE. * expr.c (expand_expr): Likewise. * ggc-common.c (ggc_mark_rtx_children_1): Don't mark the CONST_DOUBLE_CHAIN. * toplev.c (rest_of_compilation): Don't call clear_const_double_mem. * config/rs6000/rs6000.c (rs6000_float_const): Delete. (rs6000_hash_constant): Remove CONST_DOUBLE special case. (toc_hash_eq): Remove CONST_DOUBLE and LABEL_REF special cases. * config/rs6000/rs6000-protos.h: Don't prototype rs6000_float_const. * config/c4x/c4x.md, config/rs6000/rs6000.md: Use CONST_DOUBLE_ATOF. * config/dsp16xx/dsp16xx.md, config/mips/mips.md, config/pa/pa.md: Use CONST_DOUBLE_FROM_REAL_VALUE. * config/sparc/sparc.md, config/sparc/sparc.c: Use immed_double_const. From-SVN: r53409
2002-05-13os_defines.h: Revert 2002-05-06 change.Kaveh R. Ghazi2-0/+16
libstdc++-v3: * config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06 change. gcc: * mips/iris6.h (CPLUSPLUS_CPP_SPEC): Define. From-SVN: r53408
2002-05-12conversion.c (ldnear): Use long double types.David S. Miller2-2/+7
2002-05-12 David S. Miller <davem@redhat.com> * gcc.c-torture/execute/conversion.c (ldnear): Use long double types. From-SVN: r53407
2002-05-12* tree.h (copy_node): Don't mention TREE_PERMANENT.Tom Tromey2-3/+5
From-SVN: r53404
2002-05-12gensupport.c (n_comma_elts): Moved here from genattrtab.c.Zack Weinberg6-63/+119
* gensupport.c (n_comma_elts): Moved here from genattrtab.c. (scan_comma_elt): New function. Accepts whitespace in comma lists. * gensupport.h: Prototype new routines. * genattr.c (gen_attr): Use scan_comma_elt. Avoid unnecessary use of printf. * genattrtab.c (n_comma_elts): Moved to gensupport.c. (next_comma_elt): Use scan_comma_elt. * config/i386/i386.md: Use new attribute notation to break up long lines in define_attr forms. From-SVN: r53403
2002-05-12cp-lang.c (ok_to_generate_alias_set_for_type): Backend-created structs are safe.Jason Merrill2-0/+8
* cp-lang.c (ok_to_generate_alias_set_for_type): Backend-created structs are safe. From-SVN: r53402
2002-05-12expr.c (compress_float_constant): New.Richard Henderson5-18/+169
* expr.c (compress_float_constant): New. (emit_move_insn): Use it. (float_extend_from_mem): New. (init_expr_once): Initialize it. * real.c (exact_real_truncate): New. * config/i386/i386.h (CONST_COSTS): Assume CONST_DOUBLE gets dropped into memory; penalize for size. (RTX_COSTS): FLOAT_EXTEND is free. * config/i386/i386.md (extendsfdf2, extendsfxf2, extendsftf2, extenddfxf2, extenddftf2): Accept constants and drop them to memory. From-SVN: r53401
2002-05-12profile.h (profile_info): Add missing extern to declaration.Richard Henderson3-2/+13
* profile.h (profile_info): Add missing extern to declaration. * profile.c (profile_info): Define it. From-SVN: r53400
2002-05-12*** empty log message ***Marek Michalkiewicz1-0/+6
From-SVN: r53399
2002-05-12* pt.c (tsubst_expr) [ASM_STMT]: Copy ASM_INPUT_P.Jason Merrill1-0/+12
From-SVN: r53397
2002-05-12Daily bump.GCC Administrator2-2/+2
From-SVN: r53396
2002-05-12pa32-regs.h (HARD_REGNO_MODE_OK): Revise sets of general registers used for ↵John David Anglin2-4/+14
DImode and TImode. * pa/pa32-regs.h (HARD_REGNO_MODE_OK): Revise sets of general registers used for DImode and TImode. From-SVN: r53387
2002-05-11cpplex.c (_cpp_lex_direct): When in a directive at EOF fake a newline.Neil Booth2-2/+7
* cpplex.c (_cpp_lex_direct): When in a directive at EOF fake a newline. From-SVN: r53386
2002-05-11Oops, this went with the previous commitZack Weinberg1-0/+35
From-SVN: r53385
2002-05-11* reorg.c (dbr_schedule): Remove unnecessary test.John David Anglin2-4/+5
From-SVN: r53384
2002-05-11i386.md (testsi to testqi spliters): New.Jan Hubicka6-73/+218
* i386.md (testsi to testqi spliters): New. 2002-01-14 Josef Zlomek <zlomek@matfyz.cz> cfg.c (dump_edge_info): added dumping of EDGE_CAN_FALLTHRU. Wed Jan 9 2002 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz> * basic-block.h: New flag EDGE_CAN_FALLTHRU * cfganal.c (set_edge_can_fallthru_flag): New function; marks the edges that can be made fallthru. Mon Nov 12 16:25:53 CET 2001 Jan Hubicka <jh@suse.cz> * cfglayout.c (cleanup_unconditional_jumps): New static function. (cfg_layout_initialize): Use it. Co-Authored-By: Pavel Nejedly <bim@atrey.karlin.mff.cuni.cz> From-SVN: r53383
2002-05-11rs6000.c (rs6000_default_long_calls, [...]): New.Zack Weinberg10-86/+336
* config/rs6000/rs6000.c (rs6000_default_long_calls, rs6000_longcall_switch, rs6000_set_default_type_attributes): New. (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Set it. (rs6000_override_options): Handle -m(no-)longcall. (init_cumulative_args, output_mi_thunk): Check for both longcall and shortcall attributes on the function. (rs6000_attribute_table): Add "shortcall". (rs6000_handle_longcall_attribute): Update comment. (altivec_expand_unop_builtin, altivec_expand_binop_builtin, altivec_expand_ternop_builtin): Add default clauses to switches to silence warnings. * config/rs6000/rs6000.h: Declare rs6000_longcall_switch and rs6000_default_long_calls. Define REGISTER_TARGET_PRAGMAS. (TARGET_OPTIONS): Add longcall and no-longcall. * config/rs6000/rs6000.md (call_nonlocal_sysv, call_value_nonlocal_sysv): Split by alternatives. One pair accepts only SYMBOL_REFs and rejects if CALL_LONG is set in the call cookie. The other pair accepts only LR/CTR and has no restriction. * config.gcc (rs6000-*-* | powerpc*-*-* trailer stanza): Set c_target_objs, cxx_target_objs; add t-rs6000-c-rule to tmake_file. * config/rs6000/rs6000-c.c: New file. * config/rs6000/t-rs6000-c-rule: New file. * config/rs6000/rs6000-protos.c: Add multiple-include guard. Prototype rs6000_pragma_longcall. * doc/extend.texi: Document shortcall attribute. * doc/invoke.texi: Document -mlongcall, -mno-longcall. From-SVN: r53382
2002-05-11avr.c (avr_mcu_types): Update supported devices.Marek Michalkiewicz4-15/+35
* config/avr/avr.c (avr_mcu_types): Update supported devices. * config/avr/avr.h (CPP_SPEC, LINK_SPEC, CRT_BINUTILS_SPECS): Likewise. * config/avr/t-avr (MULTILIB_MATCHES): Likewise. From-SVN: r53381
2002-05-11dbxout.c: Fix formatting.Kazu Hirata11-369/+388
* dbxout.c: Fix formatting. * dependence.c: Likewise. * df.c: Likewise. * diagnostic.c: Likewise. * doloop.c: Likewise. * dominance.c: Likewise. * doschk.c: Likewise. * dwarf2asm.c: Likewise. * dwarf2out.c: Likewise. * dwarfout.c: Likewise. From-SVN: r53380
2002-05-11Daily bump.GCC Administrator2-2/+2
From-SVN: r53379