- 24 May, 2007 7 commits
-
-
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
H.J. Lu committed -
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
H.J. Lu committed -
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
Danny Smith committed -
PR fortran/32038 * gfortran.dg/pr25603.f: Initialize integer variables. From-SVN: r125019
Francois-Xavier Coudert committed -
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
Jerry DeLisle committed -
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
Rafael Avila de Espindola committed -
From-SVN: r125010
GCC Administrator committed
-
- 23 May, 2007 13 commits
-
-
From-SVN: r125007
Ian Lance Taylor committed -
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
Simon Martin committed -
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
Sandra Loosemore committed -
From-SVN: r124996
Kazu Hirata committed -
* doc/invoke.texi (Invoking GCC): Document that the order of the -l option matters. From-SVN: r124995
Ian Lance Taylor committed -
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
H.J. Lu committed -
2007-05-23 Paolo Bonzini <bonzini@gnu.org> PR bootstrap/32009 * mh-ppc-darwin: Temporarily disable. From-SVN: r124990
Paolo Bonzini committed -
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
Francois-Xavier Coudert committed -
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
Chen Liqin committed -
* 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
Ian Lance Taylor committed -
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
Jerry DeLisle committed -
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
Andrew Pinski committed -
From-SVN: r124973
GCC Administrator committed
-
- 22 May, 2007 20 commits
-
-
* lower-subreg.c (decompose_multiword_subregs): If we change an insn, call remove_retval_note on it. From-SVN: r124969
Ian Lance Taylor committed -
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
Andrew Pinski committed -
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
H.J. Lu committed -
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
Paolo Carlini committed -
* 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
Kazu Hirata committed -
* 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
Ollie Wild committed -
2007-05-22 Tobias Burnus <burnus@net-b.de> * libgfortran.h: Mark stop_numeric as noreturn. From-SVN: r124962
Tobias Burnus committed -
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
Richard Sandiford committed -
* 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
Ollie Wild committed -
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
H.J. Lu committed -
From-SVN: r124958
Ollie Wild committed -
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
H.J. Lu committed -
gcc/ * mode-switching.c (reg_dies): Change type of second argument to "HARD_REG_SET *". (optimize_mode_switching): Update accordingly. From-SVN: r124955
Richard Sandiford committed -
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
Richard Sandiford committed -
* 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
Janis Johnson committed -
* 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
Janis Johnson committed -
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
Tobias Burnus committed -
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
H.J. Lu committed -
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
H.J. Lu committed -
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
Francois-Xavier Coudert committed
-