Jan Hubicka
956741d54f
Fotgotten changelog entry:
...
* gengenrtl.c (gendecl, gendef): Output the gens annotated for
statistics.
(genheader): Include statistics.h.
From-SVN: r125029
2007-05-24 15:47:07 +00:00
Paolo Carlini
f697c80d81
c_locale.h (__convert_from_v): Only switch to the "C" locale if the current one isn't already "C" (for old glibcs).
...
2007-05-24 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/c_locale.h (__convert_from_v): Only switch to the
"C" locale if the current one isn't already "C" (for old glibcs).
* config/os/gnu-linux/ctype_noninline.h (ctype<char>::classic_table,
ctype<char>::ctype(__c_locale, const mask*, bool, size_t),
ctype<char>::ctype(const mask*, bool, size_t)): Likewise, for generic
locale model.
* config/locale/gnu/messages_members.h
(messages<>::messages(__c_locale, const char*, size_t),
messages_byname<_CharT>::messages_byname(const char*, size_t)):
Only dynamically allocate memory if __s != "C".
* config/locale/gnu/time_members.h
(__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
Likewise.
* config/locale/generic/time_members.h
(__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
Likewise.
* testsuite/util/testsuite_allocator.h: Revert last change.
From-SVN: r125028
2007-05-24 14:49:45 +00:00
H.J. Lu
cb8b507b65
target-def.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Correct default hook.
...
2007-05-24 H.J. Lu <hongjiu.lu@intel.com>
* target-def.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Correct
default hook.
From-SVN: r125027
2007-05-24 07:35:00 -07:00
Jan Hubicka
9dbe7947ab
invoke.texi (-fdump-unnumbered): Update docs when line number notes are gone.
...
* doc/invoke.texi (-fdump-unnumbered): Update docs when line number
notes are gone.
* print-rtl.c (flag_dump_unnumbered): Update comments.
(print_rtl): Fix my previous change.
* emit-rtl.c (emit_note_before, emit_note_after): Clear out note
specific data.
From-SVN: r125026
2007-05-24 14:21:14 +00:00
H.J. Lu
7544f94a79
re PR testsuite/32062 (Some MASKs aren't sufficient in certain sse4_1 tests)
...
2007-05-24 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/32062
* gcc.target/i386/sse4_1-check.h (MASK): New.
From-SVN: r125025
2007-05-24 07:12:18 -07:00
Zdenek Dvorak
561e8a90fd
re PR middle-end/32018 (ICE on optimization)
...
PR middle-end/32018
* tree-ssa-threadupdate.c (thread_through_loop_header): Use
set_loop_copy.
(thread_through_all_blocks): Call initialize_original_copy_tables
and free_original_copy_tables.
* cfgloopmanip.c (duplicate_loop, duplicate_loop_to_header_edge):
Use set_loop_copy.
* tree-cfg.c (tree_duplicate_sese_region): Ditto.
* cfghooks.c (duplicate_block): Use get_loop_copy.
* cfg.c: Include cfgloop.h.
(loop_copy): New hash table.
(initialize_original_copy_tables): Initialize loop_copy table.
(free_original_copy_tables): Free loop_copy table.
(copy_original_table_clear, copy_original_table_set,
set_loop_copy, get_loop_copy): New functions.
(set_bb_original, set_bb_copy): Use copy_original_table_set.
* cfgloop.h (struct loop): Remove copy field.
* Makefile.in (cfg.o): Add CFGLOOP_H dependency.
* basic-block.h (set_loop_copy, get_loop_copy): Declare.
From-SVN: r125024
2007-05-24 14:02:12 +00:00
H.J. Lu
66da42bc85
i386.c (ix86_handle_option): Handle SSE4.1 for -msse/-msse2/-msse3.
...
2007-05-24 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_handle_option): Handle SSE4.1 for
-msse/-msse2/-msse3.
From-SVN: r125023
2007-05-24 06:31:05 -07:00
H.J. Lu
5691b85a26
i386.c (ix86_init_mmx_sse_builtins): Mark __builtin_ia32_vec_set_v2di with MASK_64BIT.
...
2007-05-24 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_init_mmx_sse_builtins): Mark
__builtin_ia32_vec_set_v2di with MASK_64BIT.
From-SVN: r125022
2007-05-24 06:28:49 -07:00
Danny Smith
5234b8f573
re PR target/27067 (Compile errors with multiple inheritance where the stdcall attribute is applied to virtual functions.)
...
ChangeLog
PR target/27067
* doc/tm.texi (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Document.
* targhooks.h (default_mangle_decl_assembler_name): Declare
default hook.
* targhooks.c (default_mangle_decl_assembler_name): Define
default hook.
* target-def.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME) New. Set to
default hook.
* target.h (struct gcc_target): Add mangle_decl_assembler_name field.
* langhooks.c (lhd_set_decl_assembler_name): Call
targetm.mangle_decl_assembler_name for names with global scope.
* config/i386/cygming.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME) Override
default.
(ASM_OUTPUT_DEF_FROM_DECLS): Simplify to use DECL_ASSEMBLER_NAME.
* config/i386/i386-protos.h (i386_pe_mangle_decl_assembler_name):
Declare.
* config/i386/winnt.c (i386_pe_maybe_mangle_decl_assembler_name):
New. Factored out of i386_pe_encode_section_info.
(gen_stdcall_or_fastcall_suffix): Get name identifier as argument.
Move check for prior decoration of stdcall
symbols to i386_pe_encode_section_info.
(i386_pe_encode_section_info): Adjust call to
gen_stdcall_or_fastcall_suffix. Use
i386_pe_maybe_mangle_decl_assembler_name, if needed.
(i386_pe_mangle_decl_assembler_name): New. Wrap
i386_pe_maybe_mangle_decl_assembler_name.
cp/ChangeLog
* mangle.c (mangle_decl): Call targetm.mangle_decl_assembler_name.
From-SVN: r125020
2007-05-24 10:11:49 +00:00
Francois-Xavier Coudert
4f5497a924
re PR testsuite/32038 (gfortran.dg/pr25603.f is invalid code)
...
PR fortran/32038
* gfortran.dg/pr25603.f: Initialize integer variables.
From-SVN: r125019
2007-05-24 09:56:50 +00:00
Jerry DeLisle
1505f3b58e
re PR fortran/31716 (segfault with real array bounds)
...
2007-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/31716
* array.c (spec_dimen_size): Test for correct BT_INTEGER type.
From-SVN: r125013
2007-05-24 05:03:51 +00:00
Rafael Avila de Espindola
1e2041330f
c-common.c (c_common_signed_or_unsigned_type): Delay the check for INTEGRAL_TYPE_P and TYPE_UNSIGNED.
...
* c-common.c (c_common_signed_or_unsigned_type): Delay the check for
INTEGRAL_TYPE_P and TYPE_UNSIGNED.
* langhooks.c (get_signed_or_unsigned_type): Don't check for
INTEGRAL_TYPE_P or TYPE_UNSIGNED.
(lhd_signed_or_unsigned_type): Check for INTEGRAL_TYPE_P and
TYPE_UNSIGNED.
From-SVN: r125012
2007-05-24 04:38:27 +00:00
GCC Administrator
b9061212fa
Daily bump.
...
From-SVN: r125010
2007-05-24 00:17:24 +00:00
Ian Lance Taylor
b9a97851b5
* g++.dg/other/vrp1.C: New test.
...
From-SVN: r125007
2007-05-23 23:00:54 +00:00
Simon Martin
126e073b22
re PR preprocessor/20077 (GCC accepts macro definitions that fail a constraint)
...
2007-05-23 Simon Martin <simartin@users.sourceforge.net>
PR preprocessor/20077
* macro.c (create_iso_definition): Fixed the method to determine whether
the token-pasting operator appears at the beginning or the end of a macro.
From-SVN: r125000
2007-05-23 20:58:34 +00:00
Sandra Loosemore
a38e0142a8
Fix up MIPS16 hard float and add support for complex.
...
2007-05-23 Sandra Loosemore <sandra@codesourcery.com>
Nigel Stephens <nigel@mips.com>
Richard Sandiford <richard@codesourcery.com>
gcc/
Fix up MIPS16 hard float and add support for complex.
* config/mips/mips.h (TARGET_HARD_FLOAT_ABI): New.
(TARGET_SOFT_FLOAT_ABI): New.
(TARGET_CPU_CPP_BUILTINS): Define __mips_hard_float and
__mips_soft_float to reflect the ABI in use, not whether the
FPU is directly accessible (e.g., in MIPS16 mode).
(UNITS_PER_HWFPVALUE): Use TARGET_SOFT_FLOAT_ABI.
(UNITS_PER_FPVALUE): Likewise.
* config/mips/mips.c (mips_expand_call): Remove redundant
TARGET_MIPS16 check.
(mips_arg_regno): New.
(function_arg_advance): When setting bits in cum->fp_code for
MIPS16, don't subtract 1 from cum->arg_number, since it is now
zero-based.
(function_arg): Use mips_arg_regno.
(mips_return_mode_in_fpr_p): New.
(mips16_call_stub_mode_suffix): New.
(mips16_cfun_returns_in_fpr_p): New.
(mips_save_reg_p): Use mips16_cfun_returns_in_fpr_p.
(mips_output_function_prologue): Test mips16_hard_float, not
!TARGET_SOFT_FLOAT, to decide when a function stub is required.
(mips_expand_epilogue): Call MIPS16 helper routines to copy
return value into a floating-point register.
(mips_can_use_return_insn): Use mips16_cfun_returns_in_fpr_p.
(mips_function_value): Rewrite to use mips_return_mode_in_fpr_p.
(mips16_fp_args): Handle MIPS32r2 ISA which supports
TARGET_FLOAT64, and use mfhc1/mthc1 to copy the most significant
word of double arguments from or to the high bits of 64-bit
floating point registers.
(build_mips16_function_stub): Fill in DECL_RESULT for stubdecl.
(mips16_fpret_double): New helper function.
(build_mips16_call_stub): Use mips16_return_mode_in_fpr_p. Add
support for complex modes. Fill in DECL_RESULT for stubdecl.
(mips_init_libfuncs): Remove redundant TARGET_MIPS16 check.
* config/mips/mips16.S
(RET, ARG1, ARG2): New.
(MERGE_GPRf, MERGE_GPRt): New.
(DELAYt, DELAYf): New.
(MOVE_SF_BYTE0, MOVE_SI_BYTE0): New.
(MOVE_SF_BYTE4, MOVE_SF_BYTE8): New.
(MOVE_DF_BYTE0, MOVE_DF_BYTE8): New.
(MOVE_SF_RET, MOVE_SC_RET, MOVE_DF_RET, MOVE_DC_RET, MOVE_SI_RET): New.
(SFOP): Renamed to...
(OPSF3): This, and macro-ified. Updated all uses.
(SFOP2): Renamed to...
(OPSF2): This, and macro-ified. Updated all uses.
(SFCMP): Renamed to...
(CMPSF): This, and macro-ified. Updated all uses.
(SFREVCMP): Renamed to...
(REVCMPSF): This, and macro-ified. Updated all uses.
(__mips16_floatsisf, __mips16_fix_truncsfsi): Macro-ified.
(LDDBL1, LDDBL2, RETDBL): Deleted.
(DFOP): Renamed to...
(OPDF3): This, and macro-ified. Updated all uses.
(DFOP2): Renamed to...
(OPDF2): This, and macro-ified. Updated all uses.
(__mips16_extendsfdf2, __mips16_truncdfsf2): Macro-ified.
(DFCMP): Renamed to...
(CMPDF): This, and macro-ified. Updated all uses.
(DFREVCMP): Renamed to...
(REVCMPDF): This, and macro-ified. Updated all uses.
(__mips16_floatsidf, __mips16_fix_truncdfsi): Macro-ified.
(RET_FUNCTION): New.
(__mips16_ret_sf, __mips16_ret_df): Macro-ified.
(__mips16_ret_sc, __mips16_ret_dc): New.
(STUB_ARGS_0, STUB_ARGS_1, STUB_ARGS_5, STUB_ARGS_9, STUB_ARGS_2,
STUB_ARGS_6, STUB_ARGS_10): New.
(CALL_STUB_NO_RET): New.
(__mips16_call_stub_1): Macro-ified.
(__mips16_call_stub_5): Macro-ified.
(__mips16_call_stub_2): Macro-ified.
(__mips16_call_stub_6): Macro-ified.
(__mips16_call_stub_9): Macro-ified.
(__mips16_call_stub_10): Macro-ified.
(CALL_STUB_RET): New.
(__mips16_call_stub_sf_0): Macro-ified.
(__mips16_call_stub_sf_1): Macro-ified.
(__mips16_call_stub_sf_5): Macro-ified.
(__mips16_call_stub_sf_2): Macro-ified.
(__mips16_call_stub_sf_6): Macro-ified.
(__mips16_call_stub_sf_9): Macro-ified.
(__mips16_call_stub_sf_10): Macro-ified.
(__mips16_call_stub_df_0): Macro-ified.
(__mips16_call_stub_df_1): Macro-ified.
(__mips16_call_stub_df_5): Macro-ified.
(__mips16_call_stub_df_2): Macro-ified.
(__mips16_call_stub_df_6): Macro-ified.
(__mips16_call_stub_df_9): Macro-ified.
(__mips16_call_stub_df_10): Macro-ified.
(__mips16_call_stub_sc_0): New.
(__mips16_call_stub_sc_1): New.
(__mips16_call_stub_sc_5): New.
(__mips16_call_stub_sc_2): New.
(__mips16_call_stub_sc_6): New.
(__mips16_call_stub_sc_9): New.
(__mips16_call_stub_sc_10): New.
(__mips16_call_stub_dc_0): New.
(__mips16_call_stub_dc_1): New.
(__mips16_call_stub_dc_5): New.
(__mips16_call_stub_dc_2): New.
(__mips16_call_stub_dc_6): New.
(__mips16_call_stub_dc_9): New.
(__mips16_call_stub_dc_10): New.
* config/mips/t-elf (LIB1ASMFUNCS): Add MIPS16 floating-point stubs.
* config/mips/t-isa3264 (LIB1ASMFUNCS): Likewise.
* config/mips/t-r2900 (LIB1ASMFUNCS): Likewise.
gcc/testsuite/
* gcc.target/mips/inter/mips16_stubs_1_main.c: New.
* gcc.target/mips/inter/mips16_stubs_1_x.c: New.
* gcc.target/mips/inter/mips16_stubs_1_y.c: New.
* gcc.target/mips/inter/mips16-inter.exp: New.
Co-Authored-By: Nigel Stephens <nigel@mips.com>
Co-Authored-By: Richard Sandiford <richard@codesourcery.com>
From-SVN: r124999
2007-05-23 16:03:00 -04:00
Kazu Hirata
70c1e0331b
* gcc.dg/bf-spl1.c, gcc.dg/m68k-pic-1.c: Enable on fido-*-*.
...
From-SVN: r124996
2007-05-23 16:32:04 +00:00
Ian Lance Taylor
70f57af18f
invoke.texi (Invoking GCC): Document that the order of the -l option matters.
...
* doc/invoke.texi (Invoking GCC): Document that the order of the
-l option matters.
From-SVN: r124995
2007-05-23 15:55:34 +00:00
H.J. Lu
8d8aad9734
sse3-addsubpd.c: Don't include stdlib.h nor i386-cpuid.h.
...
2007-05-23 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/sse3-addsubpd.c: Don't include stdlib.h
nor i386-cpuid.h. Include sse3-check.h. Remove main ().
* gcc.target/i386/sse3-addsubps.c: Likewise.
* gcc.target/i386/sse3-haddpd.c: Likewise.
* gcc.target/i386/sse3-haddps.c: Likewise.
* gcc.target/i386/sse3-hsubpd.c: Likewise.
* gcc.target/i386/sse3-hsubps.c: Likewise.
* gcc.target/i386/sse3-lddqu.c: Likewise.
* gcc.target/i386/sse3-movddup.c: Likewise.
* gcc.target/i386/sse3-movshdup.c: Likewise.
* gcc.target/i386/sse3-movsldup.c: Likewise.
* gcc.target/i386/ssse3-pabsb.c: Don't include stdlib.h
nor i386-cpuid.h. Include ssse3-check.h. Remove main ().
* gcc.target/i386/ssse3-pabsd.c: Likewise.
* gcc.target/i386/ssse3-pabsw.c: Likewise.
* gcc.target/i386/ssse3-palignr.c: Likewise.
* gcc.target/i386/ssse3-phaddd.c: Likewise.
* gcc.target/i386/ssse3-phaddsw.c: Likewise.
* gcc.target/i386/ssse3-phaddw.c: Likewise.
* gcc.target/i386/ssse3-phsubd.c: Likewise.
* gcc.target/i386/ssse3-phsubsw.c: Likewise.
* gcc.target/i386/ssse3-phsubw.c: Likewise.
* gcc.target/i386/ssse3-pmaddubsw.c: Likewise.
* gcc.target/i386/ssse3-pmulhrsw.c: Likewise.
* gcc.target/i386/ssse3-pshufb.c: Likewise.
* gcc.target/i386/ssse3-psignb.c: Likewise.
* gcc.target/i386/ssse3-psignd.c: Likewise.
* gcc.target/i386/ssse3-psignw.c: Likewise.
* gcc.target/i386/ssse3-vals.h: Likewise.
* gcc.target/i386/sse3-check.h: New file.
* gcc.target/i386/ssse3-check.h: Likewise.
From-SVN: r124994
2007-05-23 08:25:16 -07:00
Paolo Bonzini
7e25695e8c
re PR bootstrap/32009 (building gcc4-4.3/4.4.0-20070518 failed on OSX 10.3.9)
...
2007-05-23 Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/32009
* mh-ppc-darwin: Temporarily disable.
From-SVN: r124990
2007-05-23 14:26:31 +00:00
Francois-Xavier Coudert
7c57b2f1f4
re PR fortran/32046 (wrong code with -O2 for gfortran.dg/interface_12.f90 & result_in_spec_1.f90)
...
PR fortran/32046
* trans-expr.c (gfc_trans_zero_assign): Convert the result of
TYPE_SIZE_UNIT into a signed type.
(gfc_trans_array_copy): Likewise.
(gfc_trans_array_constructor_copy): Likewise.
* trans-array.c (gfc_trans_create_temp_array): Likewise.
(gfc_grow_array): Likewise.
(gfc_array_init_size): Likewise.
(gfc_duplicate_allocatable): Likewise.
* trans-stmt.c (allocate_temp_for_forall_nest_1): Likewise.
From-SVN: r124985
2007-05-23 08:25:05 +00:00
Chen Liqin
6d0ceb7638
re PR target/30987 (Problem while compiling gcc for score)
...
2007-05-23 Chen Liqin <liqin@sunnorth.com.cn>
PR target/30987
* config/score/misc.md (bitclr_c, bitset_c, bittgl_c): remove.
* config/score/predicate.md (const_pow2, const_npow2): remove.
* config/score/score.h (ASM_OUTPUT_EXTERNAL): add ASM_OUTPUT_EXTERNAL undef.
PR target/30474
* config/score/score.c (score_print_operand): makes sure that only lower
bits are used.
From-SVN: r124983
2007-05-23 06:09:20 +00:00
Ian Lance Taylor
b80cca7b47
tree-vrp.c (avoid_overflow_infinity): New static function, broken out of set_value_range_to_value.
...
* tree-vrp.c (avoid_overflow_infinity): New static function,
broken out of set_value_range_to_value.
(set_value_range_to_value): Call avoid_overflow_infinity.
(extract_range_from_assert): Likewise.
From-SVN: r124981
2007-05-23 05:53:21 +00:00
Jerry DeLisle
24016fdb16
re PR fortran/18923 (segfault after subroutine name confusion)
...
2007-05-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/18923
* resolve.c (resolve_function): Don't call resolve_global_procedure if
there is no name. Delete duplicated statement in ELSE clause.
Co-Authored-By: Daniel Franke <franke.daniel@gmail.com>
From-SVN: r124979
2007-05-23 04:15:25 +00:00
Andrew Pinski
1809a5208f
re PR middle-end/31095 (ICE in expand_expr_real_1, at expr.c:8786)
...
2007-05-22 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/31095
* builtins.c (expand_builtin_memmove_args): Strip nops that don't
change the type before looking for a COMPOUND_EXPR.
2007-05-22 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/31095
* gcc.c-torture/compile/bcopy-1.c: New testcase.
From-SVN: r124975
2007-05-22 18:17:14 -07:00
GCC Administrator
6a57dd4f38
Daily bump.
...
From-SVN: r124973
2007-05-23 00:18:45 +00:00
Ian Lance Taylor
1570a70441
lower-subreg.c (decompose_multiword_subregs): If we change an insn, call remove_retval_note on it.
...
* lower-subreg.c (decompose_multiword_subregs): If we change an
insn, call remove_retval_note on it.
From-SVN: r124969
2007-05-22 23:42:17 +00:00
Andrew Pinski
1897129fc1
re PR tree-optimization/31606 (ICE in try_instantiate_multiple_fields, at tree-sra.c:1601)
...
2007-05-22 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/31606
* gcc.c-torture/20070522-1.c: New testcase.
From-SVN: r124968
2007-05-22 16:05:40 -07:00
H.J. Lu
a9535314ca
sse4_1-check.h: Don't include <stdio.h>.
...
2007-05-22 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/sse4_1-check.h: Don't include <stdio.h>.
From-SVN: r124967
2007-05-22 15:58:32 -07:00
Paolo Carlini
b0e94ec920
testsuite_allocator.h (check_new): Assign false to new_called.
...
2007-05-22 Paolo Carlini <pcarlini@suse.de>
* testsuite/util/testsuite_allocator.h (check_new): Assign false
to new_called.
(check_delete): Likewise for delete_called.
From-SVN: r124966
2007-05-22 22:43:22 +00:00
Kazu Hirata
0a2acc8a59
20000320-1.x, [...]: XFAIL on m68k-*-* and check_effective_target_coldfire_fpu.
...
* gcc.c-torture/execute/ieee/20000320-1.x,
gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: XFAIL on
m68k-*-* and check_effective_target_coldfire_fpu.
From-SVN: r124964
2007-05-22 21:06:22 +00:00
Ollie Wild
8e89cbfe6c
name-lookup.c (ambiguous_decl): Adds check for hidden types.
...
* name-lookup.c (ambiguous_decl): Adds check for hidden types.
(unqualified_namespace_lookup): Adds check for hidden types.
* g++.dg/lookup/hidden-class10.C: New test.
* g++.dg/lookup/hidden-class11.C: New test.
From-SVN: r124963
2007-05-22 21:05:01 +00:00
Tobias Burnus
6b12f000e0
libgfortran.h: Mark stop_numeric as noreturn.
...
2007-05-22 Tobias Burnus <burnus@net-b.de>
* libgfortran.h: Mark stop_numeric as noreturn.
From-SVN: r124962
2007-05-22 22:55:53 +02:00
Richard Sandiford
09e18274fd
regs.h (end_hard_regno): New function.
...
gcc/
* regs.h (end_hard_regno): New function.
(END_HARD_REGNO, END_REGNO): New macros.
(add_to_hard_reg_set): New function.
(remove_from_hard_reg_set): Likewise.
(in_hard_reg_set_p): Likewise.
(overlaps_hard_reg_set_p): Likewise.
* bt-load.c (find_btr_reference): Use overlaps_hard_reg_set_p.
(note_btr_set): Use END_HARD_REGNO.
* caller-save.c (setup_save_areas): Use end_hard_regno.
(mark_set_regs): Use END_HARD_REGNO.
(add_stored_regs): Use end_hard_regno.
(mark_referenced_regs): Use add_to_hard_reg_set.
* combine.c (update_table_tick): Use END_REGNO.
(record_value_for_reg): Likewise.
(record_dead_and_set_regs): Likewise.
(get_last_value_validate): Likewise.
(use_crosses_set_p): Likewise.
(reg_dead_at_p_1): Likewise.
(reg_dead_at_p): Likewise.
(mark_used_regs_combine): Use add_to_hard_reg_set.
(move_deaths): Use END_HARD_REGNO.
(reg_bitfield_target_p): Use end_hard_regno.
(distribute_notes): Use END_HARD_REGNO.
* cse.c (mention_regs): Use END_REGNO.
(insert): Use add_to_hard_reg_set.
(invalidate): Use END_HARD_REGNO.
(invalidate_for_call): Likewise.
(exp_equiv_p): Use END_REGNO.
(cse_insn): Likewise.
* cselib.c (cselib_invalidate_regno): Use end_hard_regno.
* df-problems.c (df_urec_mark_reg_change): Use END_HARD_REGNO.
* df-scan.c (df_ref_record): Use END_HARD_REGNO.
* function.c (keep_stack_depressed): Use end_hard_regno.
* global.c (global_alloc): Use end_hard_regno.
(global_conflicts): Use add_to_hard_reg_set instead of
mark_reg_live_nc.
(find_reg): Likewise.
(mark_reg_store): Likewise.
(mark_reg_conflicts): Likewise.
(mark_reg_death): Use remove_from_hard_reg_set.
(mark_reg_live_nc): Delete.
(set_preference): Use end_hard_regno.
* local-alloc.c (mark_life): Use add_to_hard_reg_set and
remove_from_hard_reg_set.
(post_mark_life): Use add_to_hard_reg_set.
* mode-switching.c (reg_dies): Use remove_from_hard_reg_set.
(reg_becomes_live): Use add_to_hard_reg_set.
* recog.c (reg_fits_class_p): Use in_hard_reg_set_p.
(peep2_find_free_register): Use add_to_hard_reg_set.
* reg-stack.c (convert_regs_exit): Use END_HARD_REGNO.
* regclass.c (record_reg_classes): Use in_hard_reg_set_p.
* regrename.c (note_sets): Use add_to_hard_reg_set.
(clear_dead_regs): Use remove_from_hard_reg_set.
(regrename_optimize): Use add_to_hard_reg_set.
(find_oldest_value_reg): Use in_hard_reg_set_p.
* reload.c (push_reload): Use in_hard_reg_set_p and end_hard_regno.
(hard_reg_set_here_p): Use end_hard_regno.
(decompose): Likewise.
(reg_overlap_mentioned_for_reload_p): Use END_HARD_REGNO.
(find_equiv_reg): Use in_hard_reg_set_p and end_hard_regno.
* reload1.c (compute_use_by_pseudos): Use add_to_hard_reg_set.
(mark_home_live): Use end_hard_regno.
(spill_hard_reg): Likewise.
(clear_reload_reg_in_use): Likewise.
* reorg.c (delete_prior_computation): Use END_REGNO.
* resource.c (update_live_status): Use END_HARD_REGNO.
(mark_referenced_resources): Use add_to_hard_reg_set.
(mark_set_resources): Likewise.
(mark_target_live_regs): Likewise. Use remove_from_hard_reg_set.
* rtlanal.c (refers_to_regno_p): Use END_REGNO.
(reg_overlap_mentioned_p): Likewise.
(dead_or_set_p): Likewise. Use an exclusive upper loop bound.
(covers_regno_no_parallel_p): Use END_REGNO.
(find_regno_note): Likewise.
(find_reg_fusage): Use END_HARD_REGNO.
* stmt.c (decl_overlaps_hard_reg_set_p): Use overlaps_hard_reg_set_p.
* var-tracking.c (emit_note_insn_var_location): Use end_hard_regno.
From-SVN: r124961
2007-05-22 20:52:39 +00:00
Ollie Wild
6936461f13
decl.c (duplicate_decls): Verify namespace names are unique.
...
* decl.c (duplicate_decls): Verify namespace names are unique.
* g++.dg/lookup/name-clash5.C: New test.
* g++.dg/lookup/name-clash6.C: New test.
From-SVN: r124960
2007-05-22 20:36:49 +00:00
H.J. Lu
3f457a0db8
i386-2.C: Update comments on header files tested.
...
2007-05-22 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/other/i386-2.C: Update comments on header files tested.
Use -msse4.1 instead of -mssse3. Include <smmintrin.h> instead
of <tmmintrin.h>.
* gcc.target/i386/sse-12.c: Likewise.
* gcc.target/i386/sse-13.c: Likewise.
* gcc.target/i386/sse-14.c: Likewise.
* gcc.target/i386/sse-13.c (__builtin_ia32_pblendw128): New.
Redefined to test with immediate operand.
(__builtin_ia32_blendps): Likewise.
(__builtin_ia32_blendpd): Likewise.
(__builtin_ia32_dpps): Likewise.
(__builtin_ia32_dpps): Likewise.
(__builtin_ia32_insertps128): Likewise.
(__builtin_ia32_vec_ext_v4sf): Likewise.
(__builtin_ia32_vec_set_v16qi): Likewise.
(__builtin_ia32_vec_set_v4si): Likewise.
(__builtin_ia32_vec_set_v2di): Likewise.
(__builtin_ia32_vec_ext_v16qi): Likewise.
(__builtin_ia32_vec_ext_v4si): Likewise.
(__builtin_ia32_vec_ext_v2di): Likewise.
(__builtin_ia32_roundpd): Likewise.
(__builtin_ia32_roundsd): Likewise.
(__builtin_ia32_roundps): Likewise.
(__builtin_ia32_roundss): Likewise.
(__builtin_ia32_mpsadbw128): Likewise.
From-SVN: r124959
2007-05-22 13:25:48 -07:00
Ollie Wild
ce3fcf8c5f
* MAINTAINERS (Write After Approval): Add myself.
...
From-SVN: r124958
2007-05-22 20:16:21 +00:00
H.J. Lu
f0de03cf1c
sse4_1-check.h: Don't include ../auto-host.h.
...
2007-05-22 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/sse4_1-check.h: Don't include ../auto-host.h.
From-SVN: r124957
2007-05-22 12:50:17 -07:00
Richard Sandiford
408bed3c38
mode-switching.c (reg_dies): Change type of second argument to "HARD_REG_SET *".
...
gcc/
* mode-switching.c (reg_dies): Change type of second argument to
"HARD_REG_SET *".
(optimize_mode_switching): Update accordingly.
From-SVN: r124955
2007-05-22 19:41:10 +00:00
Richard Sandiford
56b138aed2
hard-reg-set.h (GO_IF_HARD_REG_SUBSET, [...]): Delete in favor of...
...
gcc/
* hard-reg-set.h (GO_IF_HARD_REG_SUBSET, GO_IF_HARD_REG_EQUAL): Delete
in favor of...
(hard_reg_subset_p, hard_reg_sets_equal_p, hard_reg_sets_intersect_p)
(hard_reg_set_empty_p): ...these new functions.
* bt-load.c (choose_btr): Use hard_reg_subset_p instead of
GO_IF_HARD_REG_SUBSET.
* cfgcleanup.c (old_insns_match_p): Use hard_reg_sets_equal_p
instead of GO_IF_HARD_REG_EQUAL.
* df-problems.c (df_urec_local_compute): Use hard_reg_set_empty_p
instead of GO_IF_HARD_REG_EQUAL.
* global.c (find_reg): Use hard_reg_set_empty_p instead of
GO_IF_HARD_REG_SUBSET.
(modify_reg_pav): Use hard_reg_set_empty_p instead of
GO_IF_HARD_REG_EQUAL.
* local-alloc.c (find_free_reg): Use hard_reg_subset_p instead
of GO_IF_HARD_REG_SUBSET.
* reg-stack.c (change_stack, convert_regs_1): Use hard_reg_sets_equal_p
instead of GO_IF_HARD_REG_EQUAL.
* regclass.c (init_reg_sets_1, reg_scan_mark_refs): Use
hard_reg_subset_p instead of GO_IF_HARD_REG_SUBSET.
(reg_classes_intersect_p): Use hard_reg_sets_intersect_p instead
of GO_IF_HARD_REG_SUBSET,
* reload1.c (finish_spills): Use hard_reg_subset_p instead of
GO_IF_HARD_REG_SUBSET.
* struct-equiv.c (death_notes_match_p): Use hard_reg_sets_equal_p
instead of GO_IF_HARD_REG_EQUAL.
* config/sh/sh.c (push_regs, calc_live_regs): Use
hard_reg_sets_intersect_p instead of hard_regs_intersect_p.
(hard_regs_intersect_p): Delete.
From-SVN: r124954
2007-05-22 19:33:37 +00:00
Janis Johnson
965ff67081
func-array.c: Support -DDBG to report individual failures.
...
* gcc.dg/dfp/func-array.c: Support -DDBG to report individual failures.
* gcc.dg/dfp/func-struct.c: Ditto.
* gcc.dg/dfp/operator-assignment.c: Ditto.
* gcc.dg/dfp/convert-bfp.c: Ditto.
* gcc.dg/dfp/convert-int.c: Ditto.
* gcc.dg/dfp/convert-int-max.c: Ditto.
* gcc.dg/dfp/func-scalar.c: Ditto.
* gcc.dg/dfp/cast.c: Ditto.
* gcc.dg/dfp/func-mixed.c: Support -DDBG to report individual
failures, and fix a typo in return type of arg1_128.
* gcc.dg/dfp/convert-dfp.c: Support -DDBG to report individual
failures, and fix a typo in a constant suffix.
* gcc.dg/dfp/func-vararg-dfp.c: Return zero at the end.
* gcc.dg/dfp/convert-complex.c: With -DDBG, abort for failures.
From-SVN: r124953
2007-05-22 18:08:48 +00:00
Janis Johnson
ba2f32a925
gcc/
...
* doc/sourcebuild.texi (Test Directives) Add dg-message.
gcc/testsuite/
* lib/gcc-dg.exp(process_message): New proc.
(dg-message): New test directive.
* gcc.dg/always_inline.c: Use dg-message.
* gcc.dg/always_inline2.c: Ditto.
* gcc.dg/always_inline3.c: Ditto.
* gcc.dg/invalid-call-1.c: Ditto.
* gcc.dg/pr17506.c: Ditto.
* gcc.dg/simd-5.c: Ditto.
* gcc.dg/simd-6.c: Ditto.
* gcc.dg/va-arg-2.c: Ditto.
* gcc.dg/cpp/syshdr.c: Ditto.
* gcc.dg/cpp/unc4.c: Ditto.
* gcc.dg/cpp/trad/mi1.c: Ditto.
* gcc.dg/cpp/trad/mi5.c: Ditto.
* gcc.dg/cpp/trad/mi7.c: Ditto.
* gcc.test-framework/dg-outexistsnot-exp-P.c: Ditto.
* gcc.test-framework/dg-outexists-exp-F.c: Ditto.
* gcc.test-framework/test-framework.awk: Special-case outexists
tests.
Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r124952
2007-05-22 18:01:12 +00:00
Tobias Burnus
1f801ab788
re PR libfortran/31295 (Uninitialized variable in libgfortran's _gfortran_eoshift0_4)
...
2007-05-22 Tobias Burnus <burnus@net-b.de>
PR libgfortran/31295
* intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
* intrinsics/eoshift2.c (eoshift2): Ditto.
From-SVN: r124948
2007-05-22 18:19:09 +02:00
H.J. Lu
056299563b
i386-cpuid.h (bit_SSE4_1): New.
...
2007-05-22 H.J. Lu <hongjiu.lu@intel.com>
* gcc.dg/i386-cpuid.h (bit_SSE4_1): New.
(bit_SSE4_2): Likewise.
(bit_POPCNT): Likewise.
* gcc.target/i386/i386.exp (check_effective_target_sse4): New.
Check if assembler supports SSE4 instructions.
* gcc.target/i386/sse4_1-blendpd.c: New file.
* gcc.target/i386/sse4_1-blendps.c: Likewise.
* gcc.target/i386/sse4_1-blendvpd.c: Likewise.
* gcc.target/i386/sse4_1-blendvps.c: Likewise.
* gcc.target/i386/sse4_1-check.h: Likewise.
* gcc.target/i386/sse4_1-dppd-1.c: Likewise.
* gcc.target/i386/sse4_1-dppd-2.c: Likewise.
* gcc.target/i386/sse4_1-dpps-1.c: Likewise.
* gcc.target/i386/sse4_1-dpps-2.c: Likewise.
* gcc.target/i386/sse4_1-extractps.c: Likewise.
* gcc.target/i386/sse4_1-insertps-1.c: Likewise.
* gcc.target/i386/sse4_1-insertps-2.c: Likewise.
* gcc.target/i386/sse4_1-movntdqa.c: Likewise.
* gcc.target/i386/sse4_1-mpsadbw.c: Likewise.
* gcc.target/i386/sse4_1-packusdw.c: Likewise.
* gcc.target/i386/sse4_1-pblendvb.c: Likewise.
* gcc.target/i386/sse4_1-pblendw.c: Likewise.
* gcc.target/i386/sse4_1-pcmpeqq.c: Likewise.
* gcc.target/i386/sse4_1-pextrb.c: Likewise.
* gcc.target/i386/sse4_1-pextrd.c: Likewise.
* gcc.target/i386/sse4_1-pextrq.c: Likewise.
* gcc.target/i386/sse4_1-pextrw.c: Likewise.
* gcc.target/i386/sse4_1-phminposuw.c: Likewise.
* gcc.target/i386/sse4_1-pinsrb.c: Likewise.
* gcc.target/i386/sse4_1-pinsrd.c: Likewise.
* gcc.target/i386/sse4_1-pinsrq.c: Likewise.
* gcc.target/i386/sse4_1-pmaxsb.c: Likewise.
* gcc.target/i386/sse4_1-pmaxsd.c: Likewise.
* gcc.target/i386/sse4_1-pmaxud.c: Likewise.
* gcc.target/i386/sse4_1-pmaxuw.c: Likewise.
* gcc.target/i386/sse4_1-pminsb.c: Likewise.
* gcc.target/i386/sse4_1-pminsd.c: Likewise.
* gcc.target/i386/sse4_1-pminud.c: Likewise.
* gcc.target/i386/sse4_1-pminuw.c: Likewise.
* gcc.target/i386/sse4_1-pmovsxbd.c: Likewise.
* gcc.target/i386/sse4_1-pmovsxbq.c: Likewise.
* gcc.target/i386/sse4_1-pmovsxbw.c: Likewise.
* gcc.target/i386/sse4_1-pmovsxdq.c: Likewise.
* gcc.target/i386/sse4_1-pmovsxwd.c: Likewise.
* gcc.target/i386/sse4_1-pmovsxwq.c: Likewise.
* gcc.target/i386/sse4_1-pmovzxbd.c: Likewise.
* gcc.target/i386/sse4_1-pmovzxbq.c: Likewise.
* gcc.target/i386/sse4_1-pmovzxbw.c: Likewise.
* gcc.target/i386/sse4_1-pmovzxdq.c: Likewise.
* gcc.target/i386/sse4_1-pmovzxwd.c: Likewise.
* gcc.target/i386/sse4_1-pmovzxwq.c: Likewise.
* gcc.target/i386/sse4_1-pmuldq.c: Likewise.
* gcc.target/i386/sse4_1-pmulld.c: Likewise.
* gcc.target/i386/sse4_1-ptest-1.c: Likewise.
* gcc.target/i386/sse4_1-ptest-2.c: Likewise.
* gcc.target/i386/sse4_1-ptest-3.c: Likewise.
* gcc.target/i386/sse4_1-round.h: Likewise.
* gcc.target/i386/sse4_1-roundpd-1.c: Likewise.
* gcc.target/i386/sse4_1-roundpd-2.c: Likewise.
* gcc.target/i386/sse4_1-roundpd-3.c: Likewise.
* gcc.target/i386/sse4_1-roundps-1.c: Likewise.
* gcc.target/i386/sse4_1-roundps-2.c: Likewise.
* gcc.target/i386/sse4_1-roundps-3.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-1.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-2.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-3.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-4.c: Likewise.
* gcc.target/i386/sse4_1-roundss-1.c: Likewise.
* gcc.target/i386/sse4_1-roundss-2.c: Likewise.
* gcc.target/i386/sse4_1-roundss-3.c: Likewise.
* gcc.target/i386/sse4_1-roundss-4.c: Likewise.
From-SVN: r124947
2007-05-22 09:14:13 -07:00
H.J. Lu
9a5cee0228
config.gcc (i[34567]86-*-*): Add smmintrin.h to extra_headers.
...
2007-05-22 H.J. Lu <hongjiu.lu@intel.com>
Richard Henderson <rth@redhat.com>
* config.gcc (i[34567]86-*-*): Add smmintrin.h to
extra_headers.
(x86_64-*-*): Likewise.
* i386/i386-modes.def (V2QI): New.
* config/i386/i386.c (ix86_handle_option): Handle SSE4.1 and
SSE4A.
(override_options): Support SSE4.1.
(IX86_BUILTIN_BLENDPD): New for SSE4.1.
(IX86_BUILTIN_BLENDPS): Likewise.
(IX86_BUILTIN_BLENDVPD): Likewise.
(IX86_BUILTIN_BLENDVPS): Likewise.
(IX86_BUILTIN_PBLENDVB128): Likewise.
(IX86_BUILTIN_PBLENDW128): Likewise.
(IX86_BUILTIN_DPPD): Likewise.
(IX86_BUILTIN_DPPS): Likewise.
(IX86_BUILTIN_INSERTPS128): Likewise.
(IX86_BUILTIN_MOVNTDQA): Likewise.
(IX86_BUILTIN_MPSADBW128): Likewise.
(IX86_BUILTIN_PACKUSDW128): Likewise.
(IX86_BUILTIN_PCMPEQQ): Likewise.
(IX86_BUILTIN_PHMINPOSUW128): Likewise.
(IX86_BUILTIN_PMAXSB128): Likewise.
(IX86_BUILTIN_PMAXSD128): Likewise.
(IX86_BUILTIN_PMAXUD128): Likewise.
(IX86_BUILTIN_PMAXUW128): Likewise.
(IX86_BUILTIN_PMINSB128): Likewise.
(IX86_BUILTIN_PMINSD128): Likewise.
(IX86_BUILTIN_PMINUD128): Likewise.
(IX86_BUILTIN_PMINUW128): Likewise.
(IX86_BUILTIN_PMOVSXBW128): Likewise.
(IX86_BUILTIN_PMOVSXBD128): Likewise.
(IX86_BUILTIN_PMOVSXBQ128): Likewise.
(IX86_BUILTIN_PMOVSXWD128): Likewise.
(IX86_BUILTIN_PMOVSXWQ128): Likewise.
(IX86_BUILTIN_PMOVSXDQ128): Likewise.
(IX86_BUILTIN_PMOVZXBW128): Likewise.
(IX86_BUILTIN_PMOVZXBD128): Likewise.
(IX86_BUILTIN_PMOVZXBQ128): Likewise.
(IX86_BUILTIN_PMOVZXWD128): Likewise.
(IX86_BUILTIN_PMOVZXWQ128): Likewise.
(IX86_BUILTIN_PMOVZXDQ128): Likewise.
(IX86_BUILTIN_PMULDQ128): Likewise.
(IX86_BUILTIN_PMULLD128): Likewise.
(IX86_BUILTIN_ROUNDPD): Likewise.
(IX86_BUILTIN_ROUNDPS): Likewise.
(IX86_BUILTIN_ROUNDSD): Likewise.
(IX86_BUILTIN_ROUNDSS): Likewise.
(IX86_BUILTIN_PTESTZ): Likewise.
(IX86_BUILTIN_PTESTC): Likewise.
(IX86_BUILTIN_PTESTNZC): Likewise.
(IX86_BUILTIN_VEC_EXT_V16QI): Likewise.
(IX86_BUILTIN_VEC_SET_V2DI): Likewise.
(IX86_BUILTIN_VEC_SET_V4SF): Likewise.
(IX86_BUILTIN_VEC_SET_V4SI): Likewise.
(IX86_BUILTIN_VEC_SET_V16QI): Likewise.
(bdesc_ptest): New.
(bdesc_sse_3arg): Likewise.
(bdesc_2arg): Likewise.
(bdesc_1arg): Likewise.
(ix86_init_mmx_sse_builtins): Support SSE4.1. Handle SSE builtins
with 3 args.
(ix86_expand_sse_4_operands_builtin): New.
(ix86_expand_unop_builtin): Support 2 arg builtins with a constant
smaller than 8 bits as the 2nd arg.
(ix86_expand_sse_ptest): New.
(ix86_expand_builtin): Support SSE4.1. Support 3 arg SSE builtins.
(ix86_expand_vector_set): Support SSE4.1.
(ix86_expand_vector_extract): Likewise.
* config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
__SSE4_1__ for -msse4.1.
* config/i386/i386.md (UNSPEC_BLENDV): New for SSE4.1.
(UNSPEC_INSERTPS): Likewise.
(UNSPEC_DP): Likewise.
(UNSPEC_MOVNTDQA): Likewise.
(UNSPEC_MPSADBW): Likewise.
(UNSPEC_PHMINPOSUW): Likewise.
(UNSPEC_PTEST): Likewise.
(UNSPEC_ROUNDP): Likewise.
(UNSPEC_ROUNDS): Likewise.
* config/i386/i386.opt (msse4.1): New for SSE4.1.
* config/i386/predicates.md (const_pow2_1_to_2_operand): New.
(const_pow2_1_to_32768_operand): Likewise.
* config/i386/smmintrin.h: New. The SSE4.1 intrinsic header
file.
* config/i386/sse.md (*vec_setv4sf_sse4_1): New pattern for
SSE4.1.
(sse4_1_insertps): Likewise.
(*sse4_1_extractps): Likewise.
(sse4_1_ptest): Likewise.
(sse4_1_mulv2siv2di3): Likewise.
(*sse4_1_mulv4si3): Likewise.
(*sse4_1_smax<mode>3): Likewise.
(*sse4_1_umax<mode>3): Likewise.
(*sse4_1_smin<mode>3): Likewise.
(*sse4_1_umin<mode>3): Likewise.
(sse4_1_eqv2di3): Likewise.
(*sse4_1_pinsrb): Likewise.
(*sse4_1_pinsrd): Likewise.
(*sse4_1_pinsrq): Likewise.
(*sse4_1_pextrb): Likewise.
(*sse4_1_pextrb_memory): Likewise.
(*sse4_1_pextrw_memory): Likewise.
(*sse4_1_pextrq): Likewise.
(sse4_1_blendpd): Likewise.
(sse4_1_blendps): Likewise.
(sse4_1_blendvpd): Likewise.
(sse4_1_blendvps): Likewise.
(sse4_1_dppd): Likewise.
(sse4_1_dpps): Likewise.
(sse4_1_movntdqa): Likewise.
(sse4_1_mpsadbw): Likewise.
(sse4_1_packusdw): Likewise.
(sse4_1_pblendvb): Likewise.
(sse4_1_pblendw): Likewise.
(sse4_1_phminposuw): Likewise.
(sse4_1_extendv8qiv8hi2): Likewise.
(*sse4_1_extendv8qiv8hi2): Likewise.
(sse4_1_extendv4qiv4si2): Likewise.
(*sse4_1_extendv4qiv4si2): Likewise.
(sse4_1_extendv2qiv2di2): Likewise.
(*sse4_1_extendv2qiv2di2): Likewise.
(sse4_1_extendv4hiv4si2): Likewise.
(*sse4_1_extendv4hiv4si2): Likewise.
(sse4_1_extendv2hiv2di2): Likewise.
(*sse4_1_extendv2hiv2di2): Likewise.
(sse4_1_extendv2siv2di2): Likewise.
(*sse4_1_extendv2siv2di2): Likewise.
(sse4_1_zero_extendv8qiv8hi2): Likewise.
(*sse4_1_zero_extendv8qiv8hi2): Likewise.
(sse4_1_zero_extendv4qiv4si2): Likewise.
(*sse4_1_zero_extendv4qiv4si2): Likewise.
(sse4_1_zero_extendv2qiv2di2): Likewise.
(*sse4_1_zero_extendv2qiv2di2): Likewise.
(sse4_1_zero_extendv4hiv4si2): Likewise.
(*sse4_1_zero_extendv4hiv4si2): Likewise.
(sse4_1_zero_extendv2hiv2di2): Likewise.
(*sse4_1_zero_extendv2hiv2di2): Likewise.
(sse4_1_zero_extendv2siv2di2): Likewise.
(*sse4_1_zero_extendv2siv2di2): Likewise.
(sse4_1_roundpd): Likewise.
(sse4_1_roundps): Likewise.
(sse4_1_roundsd): Likewise.
(sse4_1_roundss): Likewise.
(mulv4si3): Don't expand for SSE4.1.
(smax<mode>3): Likewise.
(umaxv4si3): Likewise.
(uminv16qi3): Likewise.
(umin<mode>3): Likewise.
(umaxv8hi3): Rewrite. Only enabled for SSE4.1.
* doc/extend.texi: Document SSE4.1 built-in functions.
* doc/invoke.texi: Document -msse4.1.
Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r124945
2007-05-22 07:37:19 -07:00
Francois-Xavier Coudert
c099916d62
re PR fortran/31627 ([4.1/4.2 only] -bounds-check doesn't check lower bound of assumed-sized array)
...
PR fortran/31627
* trans-array.c (gfc_trans_array_bound_check): Take extra argument to
indicate whether we should check the upper bound in that dimension.
(gfc_conv_array_index_offset): Check only the lower bound of the
last dimension for assumed-size arrays.
(gfc_conv_array_ref): Likewise.
(gfc_conv_ss_startstride): Likewise.
* gfortran.dg/bounds_check_7.f90: New test.
From-SVN: r124940
2007-05-22 09:27:15 +00:00
Uros Bizjak
0f86970940
i386.exp (check_effective_target_ssse3): New.
...
* gcc.target/i386/i386.exp (check_effective_target_ssse3): New.
(check_effective_target_sse4a): Ditto.
* gcc.target/i386/ssse3-phsubw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-phaddd.c: Require effective target ssse3.
* gcc.target/i386/ssse3-pabsb.c: Require effective target ssse3.
* gcc.target/i386/ssse3-psignb.c: Require effective target ssse3.
* gcc.target/i386/ssse3-phaddsw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-pabsd.c: Require effective target ssse3.
* gcc.target/i386/ssse3-psignd.c: Require effective target ssse3.
* gcc.target/i386/ssse3-pmaddubsw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-pmulhrsw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-phaddw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-phsubd.c: Require effective target ssse3.
* gcc.target/i386/ssse3-pabsw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-psignw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-pshufb.c: Require effective target ssse3.
* gcc.target/i386/ssse3-phsubsw.c: Require effective target ssse3.
* gcc.target/i386/ssse3-palignr.c: Require effective target ssse3.
* gcc.target/i386/sse4a-insert.c: Require effective target sse4a.
* gcc.target/i386/sse4a-extract.c: Require effective target sse4a.
* gcc.target/i386/sse4a-montss.c: Require effective target sse4a.
* gcc.target/i386/sse4a-montsd.c: Require effective target sse4a.
From-SVN: r124939
2007-05-22 10:15:13 +02:00
Alexandre Oliva
dbc30a9698
* misc.c (enumerate_modes): Consider log2_b to always be one.
...
From-SVN: r124938
2007-05-22 07:00:22 +00:00
Nathan Sidwell
bebb3a98ce
linux.h (ASM_SPEC): Add asm_pcrel_spec.
...
* config/m68k/linux.h (ASM_SPEC): Add asm_pcrel_spec.
* config/m68k/m68k-none.h (ASM_SPEC): Don't override here.
* config/m68k/m68k.h (ASM_PCREL_SPEC): New.
(ASM_SPEC): Add asm_pcrel_spec.
(EXTRA_SPECS): Add asm_pcrel_spec.
From-SVN: r124937
2007-05-22 06:55:27 +00:00
David Daney
c076e75f30
install.texi (Building a cross compiler): Add requirements for Java cross compiler.
...
* doc/install.texi (Building a cross compiler): Add requirements
for Java cross compiler.
From-SVN: r124936
2007-05-22 04:06:06 +00:00