Commit Graph

108689 Commits

Author SHA1 Message Date
Ian Lance Taylor
7fc2f86b5f Use backend interface for named types and array types.
* go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
	(Gcc_backend::fill_in_struct): New function.
	(Gcc_backend::array_type): Implement.
	(Gcc_backend::fill_in_array): New function.
	(Gcc_backend::placeholder_pointer_type): New function.
	(Gcc_backend::set_placeholder_pointer_type): New function.
	(Gcc_backend::set_placeholder_function_type): New function.
	(Gcc_backend::placeholder_struct_type): New function.
	(Gcc_backend::set_placeholder_struct_type): New function.
	(Gcc_backend::placeholder_array_type): New function.
	(Gcc_backend::set_placeholder_array_type): New function.
	(Gcc_backend::named_type): New function.
	(Gcc_backend::circular_pointer_type): New function.
	(Gcc_backend::is_circular_pointer_type): New function.

From-SVN: r173380
2011-05-04 15:42:18 +00:00
Richard Guenther
f81b1a3d37 coverage.c (tree_coverage_counter_ref): Use integer_type_node for array-ref indices.
2011-05-04  Richard Guenther  <rguenther@suse.de>

	* coverage.c (tree_coverage_counter_ref): Use integer_type_node
	for array-ref indices.
	(tree_coverage_counter_addr): Likewise.
	(build_fn_info_type): Use size_int for index types.
	(build_gcov_info): Likewise.

From-SVN: r173379
2011-05-04 14:58:51 +00:00
Richard Guenther
c62c040f16 c-decl.c (check_bitfield_type_and_width): Do not pass NULL to build_int_cst.
2011-05-04  Richard Guenther  <rguenther@suse.de>

	* c-decl.c (check_bitfield_type_and_width): Do not pass NULL
	to build_int_cst.
	* c-typeck.c (really_start_incremental_init): Use bitsize_int
	for constructor indices.
	(push_init_level): Likewise.

	c-family/
	* c-common.c (fix_string_type): Use size_int for index type bounds.
	(start_fname_decls): Do not pass NULL to build_int_cst.
	(c_init_attributes): Likewise.
	* c-lex.c (c_lex_with_flags): Likewise.

From-SVN: r173378
2011-05-04 14:56:14 +00:00
Richard Guenther
1e3287d0e9 explow.c (promote_mode): Move variable declarations before code.
2011-05-04  Richard Guenther  <rguenther@suse.de>

        * explow.c (promote_mode): Move variable declarations before code.

From-SVN: r173376
2011-05-04 13:51:01 +00:00
Nathan Froyd
6c32445bf5 tree.h (build_function_type_array): Declare.
gcc/
	* tree.h (build_function_type_array): Declare.
	(build_varargs_function_type_array): Declare.
	(build_function_type_vec, build_varargs_function_type_vec): Define.
	* tree.c (build_function_type_array_1): New function.
	(build_function_type_array): New function.
	(build_varargs_function_type_array): New function.

gcc/fortran/
	* trans-decl.c (build_library_function_decl_1): Call
	build_function_type_vec.  Adjust argument list building accordingly.
	* trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl): Likewise.
	* trans-types.c (gfc_get_function_type): Likewise.

From-SVN: r173375
2011-05-04 13:44:48 +00:00
Richard Guenther
df09d1d51c trans-array.c (gfc_trans_array_constructor_value): Use size_int for bounds of range types.
2011-05-04  Richard Guenther  <rguenther@suse.de>

	* trans-array.c (gfc_trans_array_constructor_value): Use
	size_int for bounds of range types.
	(gfc_trans_array_constructor_value): Use size_type_node
	for memcpy argument.
	* trans-common.c (build_field): Use gfc_charlen_type_node
	for lengths.
	* trans-openmp.c (gfc_trans_omp_clauses): Do not pass NULL
	as type to build_int_cst.
	* trans-const.c (gfc_build_string_const): Use size_int
	for bounds of range types.
	(gfc_build_wide_string_const): Likewise.
	* trans-stmt.c (gfc_trans_label_assign): Use gfc_charlen_type_node
	for lengths.
	(gfc_trans_character_select): Likewise.
	(gfc_trans_character_select): Do not pass NULL
	as type to build_int_cst.
	(gfc_trans_character_select): Use size_int for bounds of range types.
	* trans-io.c (gfc_build_io_library_fndecls): Likewise.
	(add_case): Do not pass NULL as type to build_int_cst.
	(transfer_expr): Likewise.
	(transfer_array_desc): Likewise.
	* trans-decl.c (gfc_add_assign_aux_vars): Use gfc_charlen_type_node
	for lengths.
	(gfc_trans_assign_aux_var): Likewise.
	(create_main_function): Use size_int for bounds of range types.
	* trans-intrinsic.c (gfc_conv_intrinsic_minmax_char): Do not pass
	NULL as type to build_int_cst.
	(gfc_conv_intrinsic_spacing): Likewise.
	(gfc_conv_intrinsic_rrspacing): Likewise.
	(gfc_conv_intrinsic_len): Use gfc_charlen_type_node for lengths.

From-SVN: r173374
2011-05-04 13:18:34 +00:00
Richard Sandiford
fdabf26955 tree-vect-loop.c (vectorizable_reduction): Check reduction cost before setting STMT_VINFO_TYPE.
gcc/
	* tree-vect-loop.c (vectorizable_reduction): Check reduction cost
	before setting STMT_VINFO_TYPE.

From-SVN: r173373
2011-05-04 13:09:26 +00:00
Ulrich Weigand
a207915ac3 spu.c (spu_gimplify_va_arg_expr): Call pass_by_reference instead of spu_pass_by_reference.
* config/spu/spu.c (spu_gimplify_va_arg_expr): Call pass_by_reference
	instead of spu_pass_by_reference.

From-SVN: r173372
2011-05-04 12:43:05 +00:00
Andreas Krebbel
5e617be801 calls.c (emit_library_call_value_1): Invoke promote_function_mode hook on libcall arguments.
2011-05-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* calls.c (emit_library_call_value_1): Invoke
	promote_function_mode hook on libcall arguments.
	* explow.c (promote_function_mode, promote_mode): Handle TYPE
	argument being NULL.
	* targhooks.c (default_promote_function_mode): Lisewise.
	* config/s390/s390.c (s390_promote_function_mode): Likewise.
	* config/sparc/sparc.c (sparc_promote_function_mode): Likewise.

	* doc/tm.texi: Document that TYPE argument might be NULL.

From-SVN: r173371
2011-05-04 12:01:21 +00:00
Stuart Henderson
23ee028b82 mcpu-bf512.c: Update to latest silicon revision and remove duplication.
2011-05-04  Stuart Henderson  <shenders@gcc.gnu.org>

        * gcc.target/bfin/mcpu-bf512.c: Update to latest silicon revision and
        remove duplication.
        * gcc.target/bfin/mcpu-bf514.c: Likewise.
        * gcc.target/bfin/mcpu-bf516.c: Likewise.
        * gcc.target/bfin/mcpu-bf518.c: Likewise.

From-SVN: r173370
2011-05-04 11:40:32 +00:00
Stuart Henderson
486d04be58 bfin.c (bfin_cpus): Update silicon revisions.
2011-05-04  Stuart Henderson  <shenders@gcc.gnu.org>

        * config/bfin/bfin.c (bfin_cpus): Update silicon revisions.

From-SVN: r173369
2011-05-04 11:25:58 +00:00
Stuart Henderson
9b19b02628 2011-05-04 Stuart Henderson <shenders@gcc.gnu.org>
From Bernd Schmidt
        * config/bfin/bfin.md (addsi3): Add an alternative for IREGS.

From-SVN: r173368
2011-05-04 11:14:54 +00:00
Rainer Orth
502bc3dfa2 * config/alpha/alpha.h (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB)
(MIPS_UNMARK_STAB, SHASH_SIZE, THASH_SIZE, ALIGN_SYMTABLE_OFFSET):
	Move ...
	* mips-tfile.c: ... here.
	Don't include coretypes.h, tm.h, filenames.h.
	(saber_stop): Remove definition and all calls.
	[__SABER__]: Remove.
	(__LINE__): Remove default.
	(Size_t, Ptrdiff_t): Remove definitions.
	Replace by size_t, ptrdiff_t.
	[!MIPS_DEBUGGING_INFO]: Remove.
	(SHASH_SIZE, THASH_SIZE): Remove defaults.
	(progname): Add const.
	(STATIC): Remove.
	Replace all uses by static.
	(ALIGN_SYMTABLE_OFFSET): Remove default.
	* mips-tdump.c: Don't include coretypes.h, tm.h.
	Remove !MIPS_IS_STAB guard.
	* Makefile.in (mips-tfile.o): Remove $(RTL_H), coretypes.h,
	$(TM_H), filenames.h dependencies.
	(mips-tdump.o): Remove $(RTL_H), coretypes.h, $(TM_H) dependencies.

From-SVN: r173367
2011-05-04 11:04:50 +00:00
Stuart Henderson
991eb6effe 2011-05-04 Stuart Henderson <shenders@gcc.gnu.org>
From Jie Zhang
        *config/bfin/bfin.c (bfin_extra_live_on_entry): New.
        (TARGET_EXTRA_LIVE_ON_ENTRY): Define.

From-SVN: r173366
2011-05-04 11:03:00 +00:00
Stuart Henderson
420ccc84ea 2011-05-04 Stuart Henderson <shenders@gcc.gnu.org>
From Bernd Schmidt
        * config/bfin/bfin.h (FUNCTION_PROFILER): Take TARGET_LONG_CALLS into
        account and save/restore RETS.
        (PROFILE_BEFORE_PROLOGUE): Define.
        (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Add tab character.  Correct
        the push insn to use predecrement.

From-SVN: r173365
2011-05-04 10:48:55 +00:00
Stuart Henderson
9f8d69ee24 2011-05-04 Stuart Henderson <shenders@gcc.gnu.org>
From Jie Zhang
        * config/bfin/bfin.c (bfin_expand_prologue): Don't clobber P2.

From-SVN: r173364
2011-05-04 10:42:59 +00:00
Uros Bizjak
5b56b9d2e7 * config/i386/i386.md: Fix typo in comment.
From-SVN: r173363
2011-05-04 12:09:42 +02:00
Nick Clifton
662c03f460 mn10300.c: Include cfgloop.h.
* config/mn10300/mn10300.c: Include cfgloop.h.
	(DUMP): New macro.
	(mn10300_insert_setlb_lcc): New function.  Inserts a SETLB and a
	Lcc or a FLcc insn into the instruction stream.
	(mn10300_block_contains_call): New function.  Returns true if the
	given basic block contains a CALL insn.
	(mn10300_loop_contains_call_insn): New function.  Returns true if
	the given loop contains a CALL insn.
	(mn10300_scan_for_setlb_lcc): New function.  Finds opportunities
	to use the SETLB and Lcc or FLcc insns.
	(mn10300_reorg): Invoke mn10300_scan_for_setlb_lcc when optimizing.
	(TARGET_FLAGS): Add MASK_ALLOW_SETLB.
	* config/mn10300/mn10300.opt (msetlb): New option.  Used to
	disable the SETLB optimization.
	* config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Add
	__SETLB__ or __NO_SETLB__.
	* config/mn10300/mn10300.md (UNSPEC_SETLB): New constant.
	(movsf_internal): Handle MDR register.
	(cmpsi): Make visible.
	(setlb): New pattern.
	(Lcc): New pattern.
	(FLcc): New pattern.

From-SVN: r173362
2011-05-04 10:08:09 +00:00
Uros Bizjak
843b691524 re PR target/48860 (r173265 breaks bootstrap on x86_64-apple-darwin10)
PR target/48860
	* config/i386/i386.md (*movdi_internal_rex64) Use %vmovd
	for reg<->xmm moves.
	* config/i386/sse.md (*vec_concatv2di_rex64_sse4_1): Ditto.
	(vec_concatv2di_rex64_sse): Ditto.
	(*sse2_storeq_rex64): Do not emit %v prefix for mov{q} mnemonic.
	(*vec_extractv2di_1_rex64): Ditto.

	Revert:
	2011-05-02  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/mmx.md (*mov<mode>_internal_rex64): Use %vmovq for
	reg<->xmm moves.
	(*movv2sf_internal_rex64): Use %vmovq for reg<->xmm moves.

From-SVN: r173361
2011-05-04 12:05:20 +02:00
Joseph Myers
fbcf0dcae3 configure.ac: Separate libgloss_dir settings from general case over targets.
* configure.ac: Separate libgloss_dir settings from general case
	over targets.
	* configure: Regenerate.

From-SVN: r173360
2011-05-04 10:50:18 +01:00
Richard Guenther
d35936ab70 tree.h (int_const_binop): Remove notrunc argument.
2011-05-04  Richard Guenther  <rguenther@suse.de>

	* tree.h (int_const_binop): Remove notrunc argument.
	* fold-const.c (int_const_binop): Remove notrunc argument.  Always
	create integer constants that are properly truncated.
	(extract_muldiv_1): Expand one notrunc int_const_binop caller.
	(const_binop): Remove zero notrunc argument to int_const_binop.
	(size_binop_loc): Likewise.
	(fold_div_compare): Likewise.
	(maybe_canonicalize_comparison_1): Likewise.
	(fold_comparison): Likewise.
	(fold_binary_loc): Likewise.
	(multiple_of_p): Likewise.
	* expr.c (store_constructor): Likewise.
	* gimple-fold.c (maybe_fold_offset_to_array_ref): Likewise.
	(maybe_fold_stmt_addition): Likewise.
	* ipa-prop.c (ipa_modify_call_arguments): Likewise.
	* stor-layout.c (layout_type): Likewise.
	* tree-data-ref.c (tree_fold_divides_p): Likewise.
	* tree-sra.c (build_ref_for_offset): Likewise.
	(build_user_friendly_ref_for_offset): Likewise.
	* tree-ssa-address.c (maybe_fold_tmr): Likewise.
	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
	* tree-ssa-loop-niter.c (inverse): Likewise.
	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Likewise.
	* tree-ssa.c (maybe_rewrite_mem_ref_base): Likewise.
	* tree-switch-conversion.c (check_range): Likewise.
	(build_constructors): Likewise.
	* tree-vect-generic.c (expand_vector_piecewise): Likewise.
	* tree-vrp.c (set_and_canonicalize_value_range): Likewise.
	(extract_range_from_assert): Likewise.
	(vrp_int_const_binop): Likewise.
	(extract_range_from_binary_expr): Likewise.
	(extract_range_from_unary_expr): Likewise.
	(check_array_ref): Likewise.
	(find_case_label_range): Likewise.
	(simplify_div_or_mod_using_ranges): Likewise.
	* tree-cfg.c (group_case_labels_stmt): Use double-ints for
	comparing case labels for merging.


	ada/
	* gcc-interface/trans.c (gnat_to_gnu): Remove zero notrunc argument to
	int_const_binop.
	(pos_to_constructor): Likewise.

	fortran/
	* trans-types.c (gfc_get_array_type_bounds): Remove zero notrunc
	argument to int_const_binop.

From-SVN: r173356
2011-05-04 09:04:53 +00:00
Mark Wielaard
8992c063a6 Remove unused debug_str_hash_forced from dwarf2out.
* dwarf2out.c (debug_str_hash_forced): Removed.
    (gen_label_for_indirect_string): Removed.
    (get_debug_string_label): Removed.
    (AT_string_form): Generate label directly.
    (output_indirect_string): Test indirect_string_node for
    DW_FORM_strp instead of checking label and refcount.
    (prune_indirect_string): Removed.
    (prune_unused_types): Don't check debug_str_hash_forced or
    call prune_indirect_string.

From-SVN: r173355
2011-05-04 06:59:09 +00:00
Alexandre Oliva
4868e6ea1e re PR other/48093 (-mtls-dialect= is undocumented)
PR other/48093
* doc/invoke.texi: Document -mtls-dialect and GCC_COMPARE_DEBUG.

From-SVN: r173352
2011-05-04 03:37:53 +00:00
Alexandre Oliva
01a5c0abdf re PR debug/47994 (-fcompare-debug failure with -O2 -fpeel-loops -fno-rerun-cse-after-loop -fno-tree-loop-optimize -fno-web)
PR debug/47994
PR debug/47919
* combine.c (try_combine): Skip debug insns at m_split tests.

From-SVN: r173351
2011-05-04 03:37:40 +00:00
GCC Administrator
f7bde72f67 Daily bump.
From-SVN: r173350
2011-05-04 00:19:07 +00:00
Chris Demetriou
6ace0756af morestack.S (__i686.get_pc_thunk.bx): New.
2011-05-03  Chris Demetriou  <cgd@google.com>

        * config/i386/morestack.S (__i686.get_pc_thunk.bx): New.

From-SVN: r173345
2011-05-03 16:22:03 -07:00
Paolo Carlini
8a3cabe30f re PR libstdc++/48848 ([C++0x] std::valarray<T> functions missing)
2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/48848
	* include/std/valarray (valarray<>::valarray(valarray&&),
	valarray<>::operator=(valarray&&), valarray<>::swap): Add.
	* doc/xml/manual/status_cxx200x.xml: Update.
	* testsuite/26_numerics/valarray/moveable.cc: New.
	* testsuite/26_numerics/valarray/swap.cc: Likewise.

From-SVN: r173344
2011-05-03 22:25:24 +00:00
Tobias Burnus
f437d56e2f re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/this_image_1.f90: Remove dg-options.

From-SVN: r173343
2011-05-03 23:56:45 +02:00
Tobias Burnus
0e3184ac54 re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * trans-intrinsic.c (trans_this_image): Implement version with
        coarray argument.

2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/this_image_1.f90: New.

From-SVN: r173342
2011-05-03 23:44:27 +02:00
Tobias Burnus
b0d1c284ed re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/caf.dg: New.
        * gfortran.dg/coarray/image_index_1.f90: New, copied
        from ../coarray_16.f90.

From-SVN: r173341
2011-05-03 23:35:44 +02:00
Mark Wielaard
6ac00218e1 PR42288 emit empty .debug_aranges section.
* dwarf2out.c (dwarf2out_finish): Always call output_aranges ()
  when info_section_emitted.

From-SVN: r173340
2011-05-03 19:36:08 +00:00
Joseph Myers
3af42a7bac mips-opts.h: New.
* config/mips/mips-opts.h: New.
	* config/mips/mips.c (enum mips_r10k_cache_barrier_setting): Move
	to mips-opts.h.
	(mips_abi, mips_code_readable, mips_r10k_cache_barriee): Remove.
	(mips_handle_option): Don't handle OPT_mabi_, OPT_mcode_readable_
	or OPT_mr10k_cache_barrier_ here.  Access mips_cache_flush_func
	via opts pointer.
	* config/mips/mips.h (enum mips_code_readable_setting): Move to
	mips-opts.h.
	(mips_abi, mips_code_readable): Don't declare.
	* config/mips/mips.opt (config/mips/mips-opts.h): New
	HeaderInclude.
	(mabi=): Use Enum and Var.
	(mips_abi): New Enum and EnumValue entries.
	(mcode-readable=): Use Enum and Var.
	(mips_code_readable_setting): New Enum and EnumValue entries.
	(mr10k-cache-barrier=): Use Enum and Var.
	(mips_r10k_cache_barrier_setting): New Enum and EnumValue entries.

From-SVN: r173338
2011-05-03 19:51:49 +01:00
Paolo Carlini
6add7e946e re PR c++/28501 (ICE with __real__ and implicit type conversion)
/cp
2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/28501
	* call.c (add_builtin_candidate): Handle REALPART_EXPR and
	IMAGPART_EXPR.

/testsuite
2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/28501
	* g++.dg/ext/complex9.C: New.

From-SVN: r173337
2011-05-03 18:30:37 +00:00
Jan Hubicka
bb3398ca65 * lto.c (free_ltrans_partitions): Fix accidental commit.
From-SVN: r173336
2011-05-03 18:00:48 +00:00
Jan Hubicka
1cb1a99f77 cgraph.h (cgraph_node_set_def, [...]): Move out of GTY; replace hash by pointer map.
* cgraph.h (cgraph_node_set_def, varpool_node_set_def): Move out of GTY;
	replace hash by pointer map.
	(cgraph_node_set_element_def, cgraph_node_set_element,
	const_cgraph_node_set_element, varpool_node_set_element_def,
	varpool_node_set_element, const_varpool_node_set_element): Remove.
	(free_cgraph_node_set, free_varpool_node_set): New function.
	(cgraph_node_set_size, varpool_node_set_size): Use vector size.
	* tree-emutls.c: Free varpool node set.
	* ipa-utils.c (cgraph_node_set_new, cgraph_node_set_add,
	cgraph_node_set_remove, cgraph_node_set_find, dump_cgraph_node_set,
	debug_cgraph_node_set, free_cgraph_node_set, varpool_node_set_new,
	varpool_node_set_add, varpool_node_set_remove, varpool_node_set_find,
	dump_varpool_node_set, free_varpool_node_set, debug_varpool_node_set):
	Move here from ipa.c; implement using pointer_map
	* ipa.c (cgraph_node_set_new, cgraph_node_set_add,
	cgraph_node_set_remove, cgraph_node_set_find, dump_cgraph_node_set,
	debug_cgraph_node_set, varpool_node_set_new,
	varpool_node_set_add, varpool_node_set_remove, varpool_node_set_find,
	dump_varpool_node_set, debug_varpool_node_set):
	Move to ipa-uitls.c.
	* lto/lto.c (ltrans_partition_def): Remove GTY annotations.
	(ltrans_partitions): Move to heap.
	(new_partition): Update.
	(free_ltrans_partitions): New function.
	(lto_wpa_write_files): Use it.
	* passes.c (ipa_write_summaries): Update.

From-SVN: r173334
2011-05-03 17:22:58 +00:00
Stuart Henderson
b445518d11 2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
From Mike Frysinger
        * gcc.target/bfin/mcpu-bf542.c: Check SILICON_REVISION is 0x0004.
        * gcc.target/bfin/mcpu-bf544.c, gcc.target/bfin/mcpu-bf547.c,
        gcc.target/bfin/mcpu-bf548.c, gcc.target/bfin/mcpu-bf549.c: Likewise.

From-SVN: r173333
2011-05-03 17:22:34 +00:00
Stuart Henderson
7f31f4dbcc 2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
From Mike Frysinger:
        * config/bfin/bfin.c (bfin_cpus[]): Add 0.4 for
        bf542/bf544/bf547/bf548/bf549.

From-SVN: r173332
2011-05-03 17:13:39 +00:00
Uros Bizjak
b70fce6d07 expmed.c (extract_bit_field_1): Remove write-only variable "icode".
* expmed.c (extract_bit_field_1): Remove write-only variable "icode".

From-SVN: r173331
2011-05-03 18:51:24 +02:00
Stuart Henderson
265b1d82bf 2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
From Bernd Schmidt:
        * config/bfin/bfin.md (MOVCC): New mode_macro.
        (mov<mode>cc_insn1, mov<mode>cc_insn2, mov<mode>cc): Renamed from
        movsicc_insn1, movsicc_insn2 and movsicc and macroized.  Remove
        comments from generated assembly.

From-SVN: r173330
2011-05-03 16:50:30 +00:00
Nathan Froyd
c1fd8753c5 trans.c (gigi): Call build_function_type_list instead of build_function_type.
* gcc-interface/trans.c (gigi): Call build_function_type_list instead
	of build_function_type.  Adjust calls to...
	(build_raise_check): ...this.  Do not take a void_tree parameter.
	Call build_function_type_list instead of build_function_type.
	Fix head comment and swap couple of conditional blocks.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r173325
2011-05-03 16:34:20 +00:00
Stuart Henderson
f0b568f3c4 2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
From Bernd Schmidt
        * config/bfin/t-bfin (LIB1ASMFUNCS): Add muldi3 and umulsi3_highpart.
        * config/bfin/t-bfin-elf (LIB1ASMFUNCS): Add muldi3.
        * config/bfin/t-bfin-linux (LIB1ASMFUNCS): Add muldi3.
        * config/bfin/t-bfin-uclinux (LIB1ASMFUNCS): Add muldi3.
        * config/bfin/lib1funcs.asm (___muldi3): New function.

From-SVN: r173323
2011-05-03 16:24:59 +00:00
Stuart Henderson
2f6c3c8206 builtins: Created.
2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

	* gcc.target/bfin/builtins: Created.
	* gcc.target/bfin/hisilh-O0.c: Deleted.
	* gcc.target/bfin/hisilh.c: Moved to...
	* gcc.target/bfin/builtins/hisilh.c: ...here.
	* gcc.target/bfin/builtins/shl_fr1x16-6.c: New test.
	* gcc.target/bfin/builtins/shr_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-9.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-4.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-8.c: Ditto.
	* gcc.target/bfin/builtins/lshl_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/abs_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/norm32-1.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr1x16-3.c: Ditto.
	* gcc.target/bfin/builtins/norm_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/bfin-builtins.exp: Ditto.
	* gcc.target/bfin/builtins/norm16-2.c: Ditto.
	* gcc.target/bfin/builtins/norm32-5.c: Ditto.
	* gcc.target/bfin/builtins/norm_fr1x16-3.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x32x32-2.c: Ditto.
	* gcc.target/bfin/builtins/norm16-6.c: Ditto.
	* gcc.target/bfin/builtins/norm32-9.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/dspsubaddsat_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/min_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/max_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/norm32-10.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-3.c: Ditto.
	* gcc.target/bfin/builtins/mulhisihh_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/diff_hl_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-7.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/mulhisilh_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/lshl_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/cpmlx_mul_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/negate_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/negate_fr1x16-3.c: Ditto.
	* gcc.target/bfin/builtins/abs_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr2x16-4.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/max_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/min_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/max_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x16-3.c: Ditto.
	* gcc.target/bfin/builtins/add_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-6.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x16-7.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-5.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-9.c: Ditto.
	* gcc.target/bfin/builtins/abs_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/lshl_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/abs_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/cpmlx_msu_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/norm32-2.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr1x16-4.c: Ditto.
	* gcc.target/bfin/builtins/norm16-3.c: Ditto.
	* gcc.target/bfin/builtins/norm32-6.c: Ditto.
	* gcc.target/bfin/builtins/norm16-7.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/min_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/add_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/norm32-11.c: Ditto.
	* gcc.target/bfin/builtins/sub_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-4.c: Ditto.
	* gcc.target/bfin/builtins/mulhisihh_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/diff_lh_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-8.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr2x16-3.c: Ditto.
	* gcc.target/bfin/builtins/mulhisilh_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/lshl_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/cpmlx_mac_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/min_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/dspaddsubsat_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/max_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/min_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-3.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x16-4.c: Ditto.
	* gcc.target/bfin/builtins/sub_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/add_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-7.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x16-8.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x16-3.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-6.c: Ditto.
	* gcc.target/bfin/builtins/circptr.c: Ditto.
	* gcc.target/bfin/builtins/negate_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/abs_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/multr_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/sum_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/cpmlx_msu_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/norm32-3.c: Ditto.
	* gcc.target/bfin/builtins/norm_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/norm16-4.c: Ditto.
	* gcc.target/bfin/builtins/norm32-7.c: Ditto.
	* gcc.target/bfin/builtins/norm16-8.c: Ditto.
	* gcc.target/bfin/builtins/add_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/add_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-5.c: Ditto.
	* gcc.target/bfin/builtins/norm32-12.c: Ditto.
	* gcc.target/bfin/builtins/sub_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/diff_lh_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/mulhisihl_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr2x16-4.c: Ditto.
	* gcc.target/bfin/builtins/mulhisill_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/negate_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/multr_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/cpmlx_mac_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x32x32NS-1.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/min_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/dspaddsubsat_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/sub_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-4.c: Ditto.
	* gcc.target/bfin/builtins/sub_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x16-5.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-8.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-3.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x16-4.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr1x32-7.c: Ditto.
	* gcc.target/bfin/builtins/negate_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/multr_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/sum_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/norm_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/norm16-1.c: Ditto.
	* gcc.target/bfin/builtins/norm_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x32x32-1.c: Ditto.
	* gcc.target/bfin/builtins/norm32-4.c: Ditto.
	* gcc.target/bfin/builtins/norm16-5.c: Ditto.
	* gcc.target/bfin/builtins/norm32-8.c: Ditto.
	* gcc.target/bfin/builtins/dspsubaddsat_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/max_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/add_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr2x16-6.c: Ditto.
	* gcc.target/bfin/builtins/diff_hl_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shr_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/mulhisihl_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/negate_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/cpmlx_mul_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/multr_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/mulhisill_fr2x16-2.c: Ditto.
	* gcc.target/bfin/builtins/negate_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/abs_fr2x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shrl_fr2x16-3.c: Ditto.
	* gcc.target/bfin/builtins/mult_fr1x32x32NS-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-1.c: Ditto.
	* gcc.target/bfin/builtins/max_fr1x16-1.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x16-2.c: Ditto.
	* gcc.target/bfin/builtins/sub_fr1x32-2.c: Ditto.
	* gcc.target/bfin/builtins/shl_fr1x32-5.c: Ditto.

From-SVN: r173322
2011-05-03 16:11:55 +00:00
Nathan Froyd
2c67cf6e0e stormy16 (xstormy16_init_builtins): Call build_function_type_list instead of build_function_type.
* config/stormy16/stormy16 (xstormy16_init_builtins): Call
	build_function_type_list instead of build_function_type.
	Rearrange initialization of `args' to do so.

From-SVN: r173321
2011-05-03 15:52:20 +00:00
Nathan Froyd
f9ac28ad2c i386.c (ix86_code_end): Call build_function_type_list instead of build_function_type.
* config/i386/i386.c (ix86_code_end): Call build_function_type_list
	instead of build_function_type.

From-SVN: r173320
2011-05-03 15:51:28 +00:00
Nathan Froyd
22b8798cbe rs6000.c (spe_init_builtins): Call build_function_type_list instead of build_function_type.
* config/rs6000/rs6000.c (spe_init_builtins): Call
	build_function_type_list instead of build_function_type.
	(paired_init_builtins, altivec_init_builtins): Likewise.
	(builtin_function_type): Likewise.

From-SVN: r173319
2011-05-03 15:50:51 +00:00
Nathan Froyd
4cb4452830 sh.c (sh_media_init_builtins): Call build_function_type_list instead of build_function_type.
* config/sh/sh.c (sh_media_init_builtins): Call
	build_function_type_list instead of build_function_type.

From-SVN: r173318
2011-05-03 15:49:22 +00:00
Nathan Froyd
4c203a6ab7 sparc.c (sparc_file_end): Call build_function_type_list instead of build_function_type.
* config/sparc/sparc.c (sparc_file_end): Call
	build_function_type_list instead of build_function_type.

From-SVN: r173317
2011-05-03 15:44:27 +00:00
Nathan Froyd
d6a3d62b5f alpha.c (alpha_init_builtins): Call build_function_type_list instead of build_function_type.
* config/alpha/alpha.c (alpha_init_builtins): Call
	build_function_type_list instead of build_function_type.

From-SVN: r173316
2011-05-03 15:43:49 +00:00
Nathan Froyd
de530b8638 xtensa.c (xtensa_init_builtins): Call build_function_type_list instead of build_function_type.
* config/xtensa/xtensa.c (xtensa_init_builtins): Call
	build_function_type_list instead of build_function_type.

From-SVN: r173315
2011-05-03 15:43:00 +00:00
Nathan Froyd
baeec5f2d8 i2000.c (iq2000_init_builtins): Call build_function_type_list instead of build_function_type.
* config/iq2000/i2000.c (iq2000_init_builtins): Call
	build_function_type_list instead of build_function_type.
	Delete `endlink' variable.

From-SVN: r173314
2011-05-03 15:40:26 +00:00