Age | Commit message (Collapse) | Author | Files | Lines |
|
* arm.md (smaxsi3): Make aware of smax_m1.
(smax_m1): New.
From-SVN: r110443
|
|
From-SVN: r110440
|
|
2006-01-31 Richard Guenther <rguenther@suse.de>
* doc/invoke.texi (-msselibm): Document.
* target.h (expand_library_builtin): New target hook.
* builtins.c (expand_builtin): Use expand_library_builtin.
(default_expand_library_builtin): New function.
* gcc.c (LINK_GCC_MATH_SPEC): Define.
(LINK_COMMAND_SPEC): Handle %(link_gcc_math).
(link_gcc_math_spec): Declare.
(static_specs): Add link_gcc_math_spec.
* expr.h (default_expand_library_builtin): Declare.
* target-def.h (TARGET_EXPAND_LIBRARY_BUILTIN): Define.
(TARGET_INITIALIZER): Add TARGET_EXPAND_LIBRARY_BUILTIN.
* config/i386/i386.h: Provide LINK_GCC_MATH_SPEC.
* config/i386/i386.opt (msselibm): New target option.
* config/i386/i386.c (ix86_builtin_function_variants): New array.
(ix86_init_sse_abi_builtins): New function.
(ix86_expand_library_builtin): Likewise.
(TARGET_EXPAND_LIBRARY_BUILTIN): Define.
(override_options): Handle error conditions wrt -msselibm.
(ix86_builtins): Add function codes for SSE2 ABI builtins.
(ix86_init_builtins): Call ix86_init_sse_abi_builtins.
* doc/extend.texi (__builtin_sse2_*): Document new target specific
builtins.
* gcc.target/i386/sselibm-1.c: New testcase.
* gcc.target/i386/sselibm-2.c: Likewise.
* gcc.target/i386/sselibm-3.c: Likewise.
* gcc.target/i386/sselibm-4.c: Likewise.
* gcc.target/i386/sselibm-5.c: Likewise.
From-SVN: r110439
|
|
2006-01-31 Richard Guenther <rguenther@suse.de>
Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (target_modules): Add libgcc-math target module.
* configure.in (target_libraries): Add libgcc-math target library.
(--enable-libgcc-math): New configure switch.
* Makefile.in: Re-generate.
* configure: Re-generate.
* libgcc-math: New toplevel directory.
* doc/install.texi (--disable-libgcc-math): Document.
libgcc-math/
* configure.ac: New file.
* Makefile.am: Likewise.
* configure: New generated file.
* Makefile.in: Likewise.
* aclocal.m4: Likewise.
* libtool-version: New file.
* include/ieee754.h: New file.
* include/libc-symbols.h: Likewise.
* include/math_private.h: Likewise.
* i386/Makefile.am: New file.
* i386/Makefile.in: New generated file.
* i386/sse2.h: New file.
* i386/endian.h: Likewise.
* i386/sse2.map: Linker script for SSE2 ABI math intrinsics.
* flt-32/: Import from glibc.
* dbl-64/: Likewise.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r110434
|
|
2006-01-30 Marcin Dalecki <martin@dalecki.de>
* expr.h (expand_normal): new inline function.
* builtins.c: use it, use EXPAND_NORMAL explicitely.
* dojump.c: use it.
* dwarf2out.c: use it.
* expr.c: use it.
* calls.c: use it.
* expmed.c: use it.
* except.c: use it.
* config/sparc/sparc.c: use it.
* config/i386/i386.c: use it.
* config/rs6000/rs6000.c: use it.
* config/arm/arm.c: use it.
* config/mips/mips.c: use it.
* stmt.c: use it, use EXPAND_NORMAL explicitely.
From-SVN: r110428
|
|
* config/i386/cygwin.h (GCC_DRIVER_HOST_INITIALIZATION): Cast
argv to the appropriate type.
From-SVN: r110427
|
|
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Remove
unreachable code.
From-SVN: r110426
|
|
PR target/26018
* config/s390/s390.c (struct machine_function): New flag
decomposed_literal_pool_addresses_ok_p.
(s390_reorg): Set it before final stage of literal pool transforms.
(s390_decompose_address): Only accept displacements of the form
(minus (label_ref ...) (label_ref ...)) if that flag is set.
From-SVN: r110422
|
|
From-SVN: r110420
|
|
From-SVN: r110413
|
|
elements of a user defined type)
fortran/
2005-01-30 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/24266
* trans-io.c (set_internal_unit): Check the rank of the
expression node itself instead of its symbol.
testsuite/
2005-01-30 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/24266
* gfortran.dg/arrayio_derived_2.f90: New.
From-SVN: r110412
|
|
comparison routine return.
gcc/
2006-01-30 Carlos O'Donell <carlos@codesourcery.com>
* optabs.c (prepare_cmp_insn): If unbaised and unsigned then bias
the comparison routine return.
gcc/testsuite/
2006-01-30 Carlos O'Donell <carlos@codesourcery.com>
* gcc.dg/unsigned-long-compare.c: New test.
From-SVN: r110409
|
|
* global.c (find_reg): Only evict for global regs.
Take n_refs into account and dump more info.
From-SVN: r110407
|
|
PR testsuite/25318
* lib/target-supports.exp (check_effective_target_freorder):
Check to see if target supports -freorder-blocks-and-partition.
* g++.dg/other/pr22003.C: Use "dg-require-effective-target freorder"
instead of "dg-require-named-sections".
From-SVN: r110405
|
|
2006-01-30 Andrew Haley <aph@redhat.com>
PR java/21428
* parse.y: (source_start_java_method): Mark DECL_ARTIFICIAL("this").
From-SVN: r110400
|
|
doesn't get resetted.)
PR target/14798:
gcc:
* sh.c (pragma_interrupt, trap_exit, sp_switch): Remove variable.
(pragma_trap, pragma_nosave_low_regs): Likewise.
(current_function_anonymous_args): Likewise.
(sh_deferred_function_attributes): New variable.
(sh_deferred_function_attributes_tail): Likewise.
(print_operand): For '@', look up trap_exit attribute.
(calc_live_regs): Look up trapa_handler attribute. For trapa
handlers, save/restore fpscr, but don't do any other
interrupt-specific saves.
Don't save r0..r7 if the nosave_low_regs attribute is in effect.
Fix check for partially saved registers to check for SHmedia.
(sh_expand_prologue, sh_expand_epilogue): Look up sp_switch attribute.
(sh_output_function_epilogue): Don't clear any of the removed
variables.
(sh_insert_attributes): Don't check pragma_interrupt.
Insert deferred attributes. Check that interrupt attribute is
present for other attributes that require its presence.
(sh_attribute_table): Add new attributes trapa_handler and
nosave_low_regs.
(sh_handle_sp_switch_attribute, sh_handle_trap_exit_attribute):
Don't check for pragma_interrupt. Don't store argument.
* sh.h (pragma_interrupt, sp_switch): Don't declare.
(sh_deferred_function_attributes): Declare.
(sh_deferred_function_attributes_tail): Likewise.
* sh.md (sp_switch_1): Add operand. Change generator caller.
(sh_pr_interrupt, sh_pr_trapa, sh_pr_nosave_low_regs): Remove.
(*return_i): Don't use when trap_exit attribute is in effect.
(*return_trapa): New insn pattern.
* sh-c.c: New file.
* config.gcc (sh[123456ble]*-* | sh-*-*): New trailer stanza,
setting c_target_objs and cxx_target_objs.
* t-sh: Add rule for sh-c.o.
gcc/testsuite:
* gcc.dg/pragma-isr.c: Added target sh[1234ble]*-*-*.
* gcc.dg/pragma-isr2.c, gcc.dg/pragma-isr-trapa.c: New tests.
* gcc.dg/pragma-isr-trapa2.c: Likewise.
* gcc.dg/pragma-isr-nosave_low_regs.c: Likewise.
* gcc.dg/pragma-isr-trap_exit.c: Likewise.
* gcc.dg/attr-isr.c, gcc.dg/attr-isr-trapa.c: Likewise.
* gcc.dg/attr-isr-trap_exit.c: Likewise.
* gcc.dg/attr-isr-nosave_low_regs.c: Likewise.
From-SVN: r110398
|
|
by value)
2006-01-30 Richard Guenther <rguenther@suse.de>
PR c++/23372
* gimplify.c (gimplify_target_expr): Handle easy cases
without creating a temporary.
* gcc.dg/pr23372-1.C: New testcase.
From-SVN: r110396
|
|
From-SVN: r110395
|
|
PR 25874
* omp-low.c (execute_expand_omp): Move CFG cleanup code ...
(expand_omp): ... here.
(expand_omp_parallel): Only remove barriers for combined
parallel+workshare constructs.
* gcc.dg/gomp/pr25874.c: New test.
From-SVN: r110393
|
|
From-SVN: r110390
|
|
From-SVN: r110384
|
|
2005-11-09 Eric Botcazou <ebotcazou@adacore.com>
* tree.c (build_qualified_type): Chain the new type to the original
type's TYPE_NEXT_PTR_TO or TYPE_NEXT_REF_TO linked lists if it is
a POINTER_TYPE or a REFERENCE_TYPE respectively.
(build_pointer_type_for_mode): Only return unqualified types.
(build_reference_type_for_mode): Likewise.
From-SVN: r110382
|
|
* configure.ac (cxx_compat_warn): Set if -Wc++-compat is supported.
* Makefile.in (CXX_COMPAT_WARN): Define.
* configure: Regenerate.
cp/
* Make-lang.in (cp-warn): Include CXX_COMPAT_WARN.
* repo.c (extract_string, afgets): Use cast when converting from
void *.
From-SVN: r110380
|
|
PR tree-opt/25911
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Change assert
to an if check.
From-SVN: r110377
|
|
2006-01-29 Paul Thomas <pault@gcc.gnu.org>
PR fortran/18578
PR fortran/18579
PR fortran/20857
PR fortran/20885
* interface.c (compare_actual_formal): Error for INTENT(OUT or INOUT)
if actual argument is not a variable.
2006-01-29 Paul Thomas <pault@gcc.gnu.org>
PR fortran/18578
PR fortran/18579
PR fortran/20857
PR fortran/20885
* gfortran.dg/intent_out_1.f90: New test.
From-SVN: r110376
|
|
From-SVN: r110374
|
|
* toplev.c (floor_log2, exact_log2): Don't define if __cplusplus.
(push_srcloc): Use XNEW.
(init_asm_output, default_get_pch_validity): Use XNEWVEC.
Co-Authored-By: Marcin Dalecki <martin@dalecki.de>
From-SVN: r110372
|
|
2006-01-29 Kenneth Zadeck <zadeck@naturalbridge.com>
* df-core.c (df_set_blocks): Deleted all variable.
From-SVN: r110368
|
|
* call.c (alloc_conversion): Use cast when converting from
void *.
(alloc_conversions): Likewise.
(add_candidate): Likewise.
(print_z_candidates): Likewise.
(add_warning): Likewise.
* pt.c (retrieve_local_specialization): Likewise.
(process_partial_specialization): Likewise.
(mangle_class_name_for_template): Likewise.
(tsubst_template_args): Likewise.
* typeck2.c (pat_calc_hash): Likewise.
(pat_compare): Likewise.
(abstract_virtuals_error): Likewise.
* class.c (method_name_cmp): Likewise.
(resort_method_name_cmp): Likewise.
(get_vfield_name): Likewise.
* decl2.c (generate_ctor_and_dtor_functions_for_priority):
Likewise.
* lex.c (init_reswords): Likewise.
* rtti.c (create_pseudo_type_info): Likewise.
* search.c (dfs_lookup_base): Likewise.
(dfs_dcast_hint_pre): Likewise.
(dfs_dcast_hint_post): Likewise.
* tree.c (hash_tree_cons): Likewise.
* repo.c (extract_string): Likewise.
(afgets): Likewise.
* cp-objcp-common.c (decl_shadowed_for_var_lookup): Likewise.
* g++spec.c (lang_specific_driver): Likewise.
From-SVN: r110366
|
|
2006-01-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/17911
* expr.c (gfc_check_assign, gfc_check_pointer_assign): Emit error if
the lvalue is a use associated procedure.
PR fortran/20895
PR fortran/25030
* expr.c (gfc_check_pointer_assign): Emit error if lvalue and rvalue
character lengths are not the same. Use gfc_dep_compare_expr for the
comparison.
* gfortran.h: Add prototype for gfc_dep_compare_expr.
* dependency.h: Remove prototype for gfc_dep_compare_expr.
2006-01-29 Paul Thomas <pault@gcc.gnu.org>
PR fortran/17911
* gfortran.dg/procedure_lvalue.f90: New test.
PR fortran/20895
PR fortran/25030
* gfortran.dg/char_pointer_assign_2.f90: New test.
* gfortran.dg/char_result_1.f90: Correct unequal charlen pointer
assignment to be consistent with standard.
* gfortran.dg/char_result_2.f90: The same.
* gfortran.dg/char_result_8.f90: The same.
From-SVN: r110365
|
|
cgraph_output_pending_asms.
* cgraphunit.c (cgraph_assemble_pending_functions): Call
cgraph_output_pending_asms.
From-SVN: r110364
|
|
gcc:
* c.opt: Add -W(no-)overlength-strings.
* doc/invoke.texi: Document it.
* c-opts.c (c_common_handle_option): -pedantic implies
-Woverlength-strings, if not explicitly disabled already.
(c_common_post_options): -Woverlength-strings defaults to off, and
is always off for C++.
* c-common.c (fix_string_type): Issue warning about strings longer
than is portable only if warn_overlength_strings. Rearrange code
a little for clarity.
* configure.in: Check for -Wno-overlength-strings as well before
enabling -pedantic in stage 1.
* Makefile.in (STRICT2_WARN): Add -Wno-overlength-strings.
(gcc.o-warn, insn-automata.o-warn, build/gencondmd.o-warn): Delete.
* genconditions.c (write_header, write_one_condition)
(write_conditions, write_writer): Consolidate very long strings
that were broken up to fit in C89 portable limit. Don't use
printf when fputs will do.
gcc/testsuite:
* gcc.dg/Woverlength-strings.c
* gcc.dg/Woverlength-strings-pedantic-c89.c
* gcc.dg/Woverlength-strings-pedantic-c89-no.c
* gcc.dg/Woverlength-strings-pedantic-c99.c
* gcc.dg/Woverlength-strings-pedantic-c99-no.c: New tests.
==================================================================
From-SVN: r110360
|
|
From-SVN: r110359
|
|
start using a subreg.
* combine.c (simplify_comparison <AND>): Check
TRULY_NOOP_TRUNCATION before start using a subreg.
* config/mips/mips.md (*branch_zero<mode>,
*branch_zero<mode>_inverted, *branch_equality<mode>,
*branch_equality<mode>_inverted, *branch_equality<mode>_mips16):
Remove mode check from comparisons.
From-SVN: r110358
|
|
2006-01-28 Kenneth Zadeck <zadeck@naturalbridge.com>
* config/mips/mips-protos.h (mips_set_live_on_entry): Deleted.
From-SVN: r110357
|
|
From-SVN: r110356
|
|
From-SVN: r110354
|
|
* hooks.c (hook_bool_rtx_int_false): Remove.
* hooks.h: Remove the prototype for hook_bool_rtx_int_false.
From-SVN: r110348
|
|
* class.c (check_bases): Likewise.
(maybe_warn_about_overly_private_class): Likewise.
(check_field_decls): Likewise.
(layout_empty_base): Likewise.
(layout_virtual_bases): Likewise.
(layout_class_type): Likewise.
* call.c (joust): Pass option code to warning. Use inform for
explanation.
From-SVN: r110342
|
|
PR c++/25999
* decl.c (start_preparsed_function): Call maybe_apply_pragma_weak
here, not ...
(start_function): ... here.
PR c++/25999
* g++.dg/ext/pragmaweak1.C: New test.
From-SVN: r110340
|
|
* modulo-sched.c (create_partial_schedule,
free_partial_schedule, reset_partial_schedule): Make them
static.
From-SVN: r110338
|
|
* integrate.h: Remove the prototype for
copy_decl_for_inlining.
* rtl.h: Remove the prototype for mark_constant_function.
* tree-vectorizer.h: Remove the prototype for
vect_strip_conversion.
From-SVN: r110336
|
|
* recog.c (validate_replace_rtx_subexp): Remove.
* recog.h: Remove the prototype for
validate_replace_rtx_subexp.
From-SVN: r110335
|
|
* expmed.c (const_mult_add_overflow_p): Remove.
* expr.h: Remove the prototype for const_mult_add_overflow_p.
From-SVN: r110334
|
|
incompatible.
* config/rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): -msoft-float
and -mlong-double-128 are incompatible.
* config/rs6000/aix52.h (SUBTARGET_OVERRIDE_OPTIONS): Same.
* config/rs6000/t-aix43 (LIB2FUNCS_EXTRA): Add ppc64-fp.c.
(TARGET_LIBGCC2_CFLAGS): Define.
* config/rs6000/t-aix52 (LIB2FUNCS_EXTRA): Same.
(TARGET_LIBGCC2_CFLAGS): Same.
* config/rs6000/ppc64-fp.c: Compile for 64-bit AIX.
From-SVN: r110333
|
|
PR c++/25855
* class.c (resolve_address_of_overloaded_function): Adjust use of
return value from most_specialized_instantiation.
* pt.c (determine_specialization): Avoid multiple calls to
get_bindings.
(most_specialized_instantiation): When a tie occurs, set the
current presumed champion to the next template. Return the
TREE_LIST node containing the template, rather than the template
itself.
(most_specialized): Remove.
* name-lookup.c (push_overloaded_decl): When duplicate_decls
indicates a failed redeclaration, report that to callers.
PR c++/25855
* g++.dg/template/spec29.C: New test.
From-SVN: r110332
|
|
* recog.c (peephole2_optimize): Make it static.
* recog.h: Remove the prototype for peephole2_optimize.
From-SVN: r110327
|
|
* emit-rtl.c (init_virtual_regs): Make it static.
* function.h: Remove the prototype for init_virtual_regs.
From-SVN: r110326
|
|
* cfgloop.c (flow_loop_outside_edge_p): Remove.
* cfgloop.h: Remove the prototype for
flow_loop_outside_edge_p.
From-SVN: r110325
|
|
* cfgloopmanip.c (split_loop_bb): Remove.
* cfgloop.h: Remove the prototype for split_loop_bb.
From-SVN: r110324
|