Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r53505
|
|
2002-05-15 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/altivec.h: Cleanups for tighter typechecking.
Cleanups for accepting modifiers on pointers.
Fix predicate typos.
Allow long pointers as well as int pointers.
From-SVN: r53500
|
|
* varasm.c (merge_weak): Remove special case for extern and common.
* gcc.dg/weak-5.c (vfoo1c, vfoo1g): Warn here.
From-SVN: r53498
|
|
2002-05-15 Matt Hiller <hiller@redhat.com>
* testsuite/gcc.c-torture/compile/20000804-1.x: Don't return 1 if
XFAILing.
* testsuite/gcc.c-torture/compile/20001226-1.x: Ditto.
* testsuite/gcc.c-torture/compile/920520-1.x: Ditto.
* testsuite/gcc.c-torture/compile/mipscop-1.x: XFAIL for now.
* testsuite/gcc.c-torture/compile/mipscop-2.x: Ditto.
* testsuite/gcc.c-torture/compile/mipscop-3.x: Ditto.
* testsuite/gcc.c-torture/compile/mipscop-4.x: Ditto.
From-SVN: r53497
|
|
2002-05-15 Aldy Hernandez <aldyh@redhat.com>
* reload1.c (forget_old_reloads_1): Do not use subreg offset.
From-SVN: r53496
|
|
2002-05-15 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.md ("altivec_mtvscr"): Set VSCR register.
("altivec_mfvscr"): Read from VSCR.
Add vscr sets for the following insns: altivec_vctuxs,
altivec_vaddubs, altivec_vaddsbs, altivec_vadduhs,
altivec_vaddshs, altivec_vadduws, altivec_vaddsws, altivec_vctsxs,
altivec_vmhaddshs, altivec_vmhraddshs, altivec_vmsumuhs,
altivec_vmsumshs, altivec_vpkuhss, altivec_vpkshss,
altivec_vpkuwss, altivec_vpkswss, altivec_vpkuhus,
altivec_vpkshus, altivec_vpkuwus, altivec_vpkswus,
altivec_vsububs, altivec_vsubsbs, altivec_vsubuhs,
altivec_vsubshs, altivec_vsubuws, altivec_vsubsws,
altivec_vsum4ubs, altivec_vsum4sbs, altivec_vsum4shs,
altivec_vsum2sws, altivec_vsumsws.
* config/rs6000/rs6000.h: Add VSCR fixed register.
(CALL_REALLY_USED_REGISTERS): Add vscr.
(CALL_USED_REGISTERS): Same.
(FIXED_REGISTERS): Same.
(REG_ALLOC_ORDER): Same.
(reg_class): Add VSCR_REGS.
(REG_CLASS_NAMES): Same.
(REG_CLASS_CONTENTS): Same.
(VSCR_REGNO): New.
(REGISTER_NAMES): Add vscr.
(DEBUG_REGISTER_NAMES): Same.
(ADDITIONAL_REGISTER_NAMES): Same.
(FIRST_PSEUDO_REGISTER): Increment.
(CONDITIONAL_REGISTER_USAGE): Set VSCR as a global register.
From-SVN: r53495
|
|
2002-05-15 Jakub Jelinek <jakub@redhat.com>
* fold-const.c (fold): Fix a typo.
2002-05-15 Eric Botcazou <ebotcazou@multimania.com>
* fold-const.c (fold) [LT_EXPR]: Move the transformation of a
comparison against the highest or lowest integer value before
the 'X >= CST to X > (CST - 1)' and 'X < CST to X <= (CST - 1)'
transformation and that of an unsigned comparison against 0
right after.
From-SVN: r53493
|
|
* varasm.c (merge_weak): Error for any weakening after definition.
Adjust weakening after use warning to catch more cases.
(assemble_alias): Set TREE_USED and TREE_ASM_WRITTEN consistently.
* config/alpha/alpha.c (alpha_encode_section_info): Do not abort.
* gcc.dg/weak-5.c (vfoo1c): No warning here.
(vfoo1f): Warning here.
(vfoo1l): Don't redefine the alias.
From-SVN: r53491
|
|
* invoke.texi (-malign-double): Re-add lost warning.
* i386-protos.h (x86_output_mi_thunk): Declare.
* unix.h (ASM_OUTPUT_MI_THUNK): Move offline to ...
* i386.c (x86_output_mi_thunk): ... here; handle 64bits.
* dwarf2out.c (output_call_frame_info): Do not skip unwind info
when flag_asynchronous_unwind_tables is set.
* flags.h (flag_reorder_functions): Declare.
* function.c (prepare_function_start): Initialize frequnecy.
* params.def (HOT_BB_COUNT_FRACTION, HOT_BB_FREQUENCY_FRACTION): New paramters.
* Makefile.in (predict.o): Add dependency on target.h and params.h
* defaults.h (HOT_TEXT_SECTION_NAME,
UNLIKELY_EXECUTED_TEXT_SECTION_NAME): New macros.
* predict.c (choose_function_section): New function.
(estimate_bb_frequencies): Use it.
* toplev.c (flag_reorder_functions): New global variable.
(lang_independent_options): New.
(parse_options_and_default_flags): Set.
* varasm.c (assemble_start_function): Bypass functdion alignment
for never executed functions.
* invoke.texi (-freorder-blocks, -freorder-functions): Document.
(param hot-bb-count-fraction, hot-bb-frequency-fraction): New.
* tm.texi (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME):
Document.
Thu Jan 3 21:52:09 CET 2002 Jan Hubicka <jh@suse.cz>
* predict.c: Inlude profile.h
(MIN_COUNT): Rename to MIN_COUNT_FRACTION
(maybe_hot_bb_p, probably_cold_bb_p, probably_never_executed_bb_p):
Use the information about maximal counter in the program.
Thu Dec 20 22:14:00 CET 2001 Jan Hubicka <jh@suse.cz>
* basic-block.h (maybe_hot_bb_p, probably_cold_bb_p,
probably_never_executed_bb_p): New functions.
* cfgcleanup.c (outgoing_edges_match): Use them.
* predict.c (MIN_COUNT, MIN_FREQUENCY): New macros.
(maybe_hot_bb_p, probably_cold_bb_p,
probably_never_executed_bb_p): New functions.
* function.h (function): Add new field function_frequency.
* predict.c (compute_function_frequency): New function.
(estimate_probability): Call it.
From-SVN: r53478
|
|
2002-03-09 Jakub Jelinek <jakub@redhat.com>
PR optimization/5172, optimization/5200
* gcse.c (gcse_main): Disable store_motion.
From-SVN: r53477
|
|
From-SVN: r53476
|
|
[[Split portion of a mixed commit.]]
From-SVN: r53475.2
|
|
* c-parse.in (MODIFIED_WCHAR_TYPE): New macro.
(c_common_nodes_and_builtins): Use it.
(builtin_define_with_value): New function.
(cb_register_builtins): Define __SIZE_TYPE__,
__PTRDIFF_TYPE__, __WCHAR_TYPE__, and __WINT_TYPE__ here,
using builtin_define_with_value. Use consistent notation when
defining __GXX_WEAK__.
(WCHAR_TYPE_SIZE): Don't redefine.
(combine_strings): Don't use WCHAR_TYPE_SIZE.
* cppdefault.h: Don't provide defaults for SIZE_TYPE,
PTRDIFF_TYPE, WCHAR_TYPE, or WINT_TYPE.
* cppinit.c (builtin_array): Remove entries for __SIZE_TYPE__ etc.
* tradcpp.c (initialize_builtins): Likewise.
* gcc.c (cpp_unique_options): Don't muck with __WCHAR_TYPE__.
* c-lex.h (builtin_define_with_value): Prototype.
* system.h: Poison NO_BUILTIN_SIZE_TYPE, NO_BUILTIN_WCHAR_TYPE,
NO_BUILTIN_PTRDIFF_TYPE, and NO_BUILTIN_WINT_TYPE.
* doc/tm.texi: Remove mention of NO_BUILTIN_SIZE_TYPE etc.
* config/avr/avr.h, config/h8300/h8300.h, config/i386/i386.h,
config/ia64/ia64.h, config/mips/dec-osf1.h, config/mips/iris6.h,
config/mips/linux.h, config/mips/mips.h, config/mips/netbsd.h,
config/mips/osfrose.h, config/mips/sni-svr4.h, config/rs6000/aix51.h,
config/s390/linux.h, config/sh/sh.h, config/sh/sh64.h,
config/sparc/linux64.h, config/sparc/netbsd-elf.h,
config/sparc/sol2-bi.h, config/sparc/sparc.h:
Do not define NO_BUILTIN_SIZE_TYPE etc. Remove all references
to __SIZE_TYPE__ etc from all spec strings. When this makes
extra specs empty, delete them.
From-SVN: r53472
|
|
PA8000 or generating dwarf2...
* pa.c (override_options): Override TARGET_JUMP_IN_DELAY when scheduling
for PA8000 or generating dwarf2 call frame information.
(output_call): Remove DO_FRAME_NOTES check from return pointer
optimization.
(following_call): Return 0 when scheduling for PA8000 or generating
dwarf2 call frame information. Revise comment.
From-SVN: r53470
|
|
appropriate.
config/alpha:
* alpha.h (TARGET_CPU_CPP_BUILTINS): Define __IEEE_FP
and __IEEE_FP_INEXACT as appropriate.
(CPLUSPLUS_CPP_SPEC): Don't define __cplusplus.
(CPP_SPEC): Remove ieee defines.
* freebsd.h, netbsd.h: Remove ieee defines.
From-SVN: r53465
|
|
* config/i386/i386.c (ix86_save_reg): Make regno unsigned.
(ix86_safe_length, ix86_safe_length_prefix, ix86_safe_memory): Kill.
From-SVN: r53464
|
|
config:
* arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define.
(CPP_SPEC): Update.
(CPP_APCS_PC_SPEC, CPP_APCS_PC_DEFAULT_SPEC,
CPP_FLOAT_SPEC, CPP_FLOAT_DEFAULT_SPEC, CPP_ENDIAN_SPEC,
CPP_ENDIAN_DEFAULT_SPEC, CPP_INTERWORK_DEFAULT_SPEC,
CPP_INTERWORK_SPEC, CPP_PREDEFINES): Remove.
(EXTRA_SPECS): Update.
* arm/conix-elf.h, arm/linux-elf.h, arm/netbsd.h, arm/riscix.h,
arm/riscix1-1.h, arm/rtems-elf.h, arm/semiaof.h, arm/unknown-elf.h,
arm/unknown-elf-oabi.h, arm/vxarm.h: Remove CPP_PREDEFINES and
define TARGET_OS_CPP_BUILTINS if necessary.
From-SVN: r53463
|
|
From-SVN: r53462
|
|
* 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
|
|
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
|
|
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
|
|
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
|
|
From-SVN: r53457
|
|
functions are instrumented.
* final.c (end_final): Do not output profile_arcs constructor, when
no functions are instrumented.
From-SVN: r53455
|
|
From-SVN: r53454
|
|
with texi2html.
* doc/install.texi: Remove special markup originally required for
HTML generation with texi2html.
From-SVN: r53453
|
|
/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
|
|
From-SVN: r53451
|
|
* config/ia64/sysv4.h (DO_SELECT_SECTION): Factored out of
SELECT_SECTION.
(UNIQUE_SECTION): Define to get small data correctly.
From-SVN: r53450
|
|
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
|
|
* config/i386/i386.md: Use define_constants for unspec numbers.
* config/i386/i386.c: Likewise.
From-SVN: r53448
|
|
From-SVN: r53447
|
|
* 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
|
|
* 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
|
|
* genattr.c (gen_attr): Don't emit a comma after the last
enumerator.
From-SVN: r53440
|
|
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
|
|
gotos.
* cfgrtl.c (purge_dead_edges): Handle abnormal call edges created
by non-local gotos.
* recog.c (peephole2_optimize): Likewise.
From-SVN: r53438
|
|
* doc/contrib.texi: Update my entry.
* wwwdocs/htdocs/bugs.html: Update.
From-SVN: r53437
|
|
O_BINARY.
* cppfiles.c (open_file): Change mode (DJGPP only) of redirected
input to O_BINARY.
From-SVN: r53431
|
|
From-SVN: r53428
|
|
* i386.c (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.
(ia32_multipass_dfa_lookahead): New function.
From-SVN: r53427
|
|
* gcc.c (SWITCH_TAKES_ARG): Remove 'V'.
(translate_options): Remove 'V'.
(process_command): Similarly.
doc:
* invoke.texi: Remove documentation of 'V'.
From-SVN: r53425
|
|
From-SVN: r53421
|
|
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
|
|
* 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
|
|
* 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
|
|
From-SVN: r53415
|
|
* 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
|
|
* 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
|
|
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
|