Jerry DeLisle
246d24e984
re PR fortran/41909 (ICE with "call foo" in "program foo")
...
2009-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41909
* gfortran.dg/recursive_check_15.f90: New test.
From-SVN: r153990
2009-11-07 02:35:06 +00:00
Jerry DeLisle
b44bb2a118
Fix changelog.
...
From-SVN: r153989
2009-11-07 02:32:35 +00:00
Jerry DeLisle
6f7e06ce63
resolve.c (is_illegal_recursion): Return false if sym is program.
...
2009-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* resolve.c (is_illegal_recursion): Return false if sym is program.
From-SVN: r153988
2009-11-07 02:30:08 +00:00
Jan Kratochvil
d3b31d8b01
largefile.m4: New file.
...
* largefile.m4: New file.
Co-Authored-By: Joel Brobecker <brobecker@adacore.com>
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r153987
2009-11-07 01:59:54 +00:00
GCC Administrator
406464edd9
Daily bump.
...
From-SVN: r153985
2009-11-07 00:16:54 +00:00
Steven G. Kargl
800cee345f
2009-11-06 Steven G. Kargl <kargl@gcc.gnu.org>
...
resolve.c (check_typebound_override): Remove duplicate "in" in error
message.
From-SVN: r153982
2009-11-06 23:47:51 +00:00
Benjamin Kosnik
8e32aa11c7
user.cfg.in: Adjust includes.
...
2009-11-06 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Adjust includes.
* doc/doxygen/doxygroups.cc: Move group markup.
* include/tr1_impl/regex: Change " to '. Add group markup.
* include/std/utility: Same.
* include/std/type_traits: Same.
* include/std/streambuf: Same.
* include/std/iosfwd: Same.
* include/std/limits: Same.
* include/std/sstream: Same.
* include/profile/impl/profiler_state.h: Same.
* include/profile/impl/profiler_hashtable_size.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/streambuf_iterator.h: Same.
* libsupc++/exception: Same.
* libsupc++/cxxabi.h: Same.
* include/tr1_impl/type_traits: Same.
* include/parallel/multiway_merge.h: Change @__c to @c, @__f to @f.
* include/parallel/list_partition.h: Same.
* include/parallel/for_each.h: Same.
* include/parallel/workstealing.h: Same.
* include/parallel/base.h: Same.
* include/parallel/equally_split.h: Same.
* include/parallel/random_shuffle.h: Same.
* include/parallel/balanced_quicksort.h: Same.
* include/parallel/merge.h: Same.
* include/parallel/multiway_mergesort.h: Same.
* include/parallel/compatibility.h: Same.
* include/parallel/queue.h: Same.
* include/parallel/checkers.h: Same.
* include/parallel/random_number.h: Same.
* include/c_global/csignal: Change # to \#.
* include/c_global/cstdlib: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cstdatomic: Same.
* include/c_global/cmath: Same.
* include/c_global/ciso646: Same.
* include/c_global/ctime: Same.
* include/c_global/clocale: Same.
* include/c_global/climits: Same.
* include/c_global/cassert: Same.
* include/c_global/csetjmp: Same.
* include/c_global/cwchar: Same.
* include/c_global/cfloat: Same.
* include/c_global/cstring: Same.
* include/c_global/cstddef: Same.
* include/c_global/cwctype: Same.
* include/std/memory: Only dance around boost_sp_counted_base.h.
* include/tr1_impl/boost_sp_counted_base.h: Add markup.
* include/tr1/shared_ptr.h: Strip markup.
* include/bits/shared_ptr.h: Move base types...
* include/bits/shared_ptr_base.h: ...here.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* configure: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
From-SVN: r153980
2009-11-06 22:15:17 +00:00
Jason Merrill
2fdbecf6fe
add missing changelog line
...
From-SVN: r153979
2009-11-06 16:36:56 -05:00
Jason Merrill
e1faa105c1
re PR c++/15946 (Unhelpful error message when "typename" is omitted)
...
PR c++/15946
* parser.c (cp_parser_check_template_parameters): Don't talk about
specialization at function scope.
(cp_parser_diagnose_invalid_type_name): Handle dependent scope.
(cp_parser_parse_and_diagnose_invalid_type_name): Likewise.
(cp_parser_expression_statement): Suggest typename.
* error.c (dump_decl) [SCOPE_REF]: Print the type here.
(dump_expr) [SCOPE_REF]: Call it.
(dump_type) [UNBOUND_CLASS_TEMPLATE]: Check TFF_UNQUALIFIED_NAME.
* cxx-pretty-print.c (pp_cxx_unqualified_id): Print class template
args.
From-SVN: r153978
2009-11-06 16:18:42 -05:00
Jason Merrill
3c3905fc17
re PR c++/9381 (attribute on member function pointer have no effect)
...
PR c++/9381
* decl2.c (build_memfn_type): Preserve attributes.
(cp_reconstruct_complex_type): Likewise.
(maybe_retrofit_in_chrg): Likewise.
* call.c (standard_conversion): Use build_memfn_type.
* pt.c (tsubst): Likewise.
* decl.c (build_ptrmem_type): Likewise
(check_function_type): Preserve attributes.
* tree.c (cp_build_type_attribute_variant): Propagate exception
specs on METHOD_TYPE, too.
(strip_typedefs): Preserve exception specs and attributes.
From-SVN: r153977
2009-11-06 16:18:35 -05:00
Basile Starynkevitch
7ac8318c2d
plugins.texi (Plugin callbacks): added PLUGIN_PRAGMAS.
...
2009-11-06 Basile Starynkevitch <basile@starynkevitch.net>
* doc/plugins.texi (Plugin callbacks): added PLUGIN_PRAGMAS.
* c-pragma.c: Include "plugin.h".
(init_pragma): Invoke PLUGIN_PRAGMAS.
* gcc-plugin.h: Added PLUGIN_PRAGMAS.
* plugin.c (plugin_event_name): Added PLUGIN_PRAGMAS & the missing
PLUGIN_ATTRIBUTES.
(register_callback): Added PLUGIN_PRAGMAS. Fixed typo in message
error for unknown callback event.
(invoke_plugin_callbacks): Added PLUGIN_PRAGMAS.
* Makefile.in (c-pragma.o): Added dependency upon plugin.h.
(PLUGIN_HEADERS): added plugin.h.
2009-11-06 Basile Starynkevitch <basile@starynkevitch.net>
* g++.dg/plugin/pragma_plugin-test-1.C: new testcase for
PLUGIN_PRAGMAS.
* g++.dg/plugin/pragma_plugin.c: new test plugin for
PLUGIN_PRAGMAS.
* g++.dg/plugin/plugin.exp (plugin_test_list): Add pragma_plugin.c and
pragma_plugin-test-1.C.
From-SVN: r153975
2009-11-06 19:20:39 +00:00
Andrew Pinski
87e9286428
re PR c++/41536 (always_inline does not work always with constructors)
...
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* optimize.c (maybe_clone_body): Copy DECL_ATTRIBUTES and
DECL_DISREGARD_INLINE_LIMITS also.
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* g++.dg/ext/always_inline-5.C: New test.
From-SVN: r153974
2009-11-06 11:10:07 -08:00
Jakub Jelinek
2e3135726b
re PR c++/41967 (gcc get into endless loop when compiling an openmp program)
...
PR c++/41967
* parser.c (cp_parser_omp_for_loop): After diagnosing not perfectly
nested loop and parsing statements, don't cp_parser_require }, instead
exit the loop if next token is CPP_EOF.
* g++.dg/gomp/pr41967.C: New test.
From-SVN: r153972
2009-11-06 18:51:20 +01:00
Michael Matz
79af7c1f6d
re PR middle-end/41963 (177.mesa in SPEC CPU 2K is miscompiled)
...
PR middle-end/41963
* tree-ssa-math-opts.c (execute_cse_reciprocals): Check all uses
of a potential reciprocal to really be reciprocals.
testsuite/
* gcc.dg/pr41963.c: New test.
From-SVN: r153971
2009-11-06 15:05:20 +00:00
Jonas Maebe
9cd4e79ba8
Checking this in for: Jonas Maebe <jonas.maebe@elis.ugent.be>
...
Add DWARF attribute value for the "Borland fastcall" calling
convention.
* elf/dwarf2.h: Add DW_CC_GNU_borland_fastcall_i386 constant.
From-SVN: r153970
2009-11-06 14:36:57 +00:00
Paolo Carlini
77d16198fc
multiway_merge.h: Simple formatting and uglification fixes.
...
2009-11-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/find_selectors.h: Likewise.
* include/parallel/losertree.h: Likewise.
* include/parallel/list_partition.h: Likewise.
* include/parallel/for_each.h: Likewise.
* include/parallel/multiseq_selection.h: Likewise.
* include/parallel/workstealing.h: Likewise.
* include/parallel/par_loop.h: Likewise.
* include/parallel/numeric: Likewise.
* include/parallel/quicksort.h: Likewise.
* include/parallel/equally_split.h: Likewise.
* include/parallel/omp_loop_static.h: Likewise.
* include/parallel/random_shuffle.h: Likewise.
* include/parallel/balanced_quicksort.h: Likewise.
* include/parallel/tags.h: Likewise.
* include/parallel/set_operations.h: Likewise.
* include/parallel/merge.h: Likewise.
* include/parallel/unique_copy.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/search.h: Likewise.
* include/parallel/partition.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/find.h: Likewise.
* include/parallel/queue.h: Likewise.
* include/parallel/omp_loop.h: Likewise.
* include/parallel/checkers.h: Likewise.
* include/parallel/sort.h: Likewise.
From-SVN: r153966
2009-11-06 11:39:35 +00:00
Jakub Jelinek
b169fe9de8
x86intrin.h: Include fma4intrin.h, xopintrin.h and lwpintrin.h after immintrin.h.
...
* config/i386/x86intrin.h: Include fma4intrin.h, xopintrin.h and
lwpintrin.h after immintrin.h.
* config/i386/fma4intrin.h (__v8sf, __v4df, __m256, __m256d): Remove
typedefs.
From-SVN: r153965
2009-11-06 11:33:33 +01:00
Ozkan Sezer
5d571eaa95
configure.ac (FLAGS_FOR_TARGET): Add -L and -isystem paths for *-w64-mingw* and x86_64-*mingw*.
...
2009-11-06 Ozkan Sezer <sezeroz@gmail.com>
* configure.ac (FLAGS_FOR_TARGET): Add -L and -isystem
paths for *-w64-mingw* and x86_64-*mingw*.
* configure: Regenerated.
From-SVN: r153964
2009-11-06 11:16:30 +01:00
Jakub Jelinek
d32599a6e9
re PR c/41935 (ICE : tree check: expected integer_cst, have nop_expr in int_cst_value, at tree.c:8301)
...
PR middle-end/41935
* c-common.c (fold_offsetof_1) <case ARRAY_REF>: Don't crash for VLAs
or non-constant index, allow index one past the last element and
allow exceeding array bound in arrays that might be used as flexible
array members.
* gcc.dg/pr41935.c: New test.
* c-c++-common/pr41935.c: New test.
* c-c++-common/builtin-offsetof.c (f0): Allow index one past the last
element.
* gcc.c-torture/execute/pr41935.c: New test.
From-SVN: r153962
2009-11-06 09:46:45 +01:00
Jonathan Wakely
21a15d9f83
re PR libstdc++/41949 (std::endl documentation contains bad link)
...
2009-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/41949
* include/std/ostream: Adjust link.
From-SVN: r153961
2009-11-06 08:38:02 +00:00
Jason Merrill
11f18e1daf
re PR c++/34180 (Default copy constructor copies const auto_ptr members)
...
PR c++/34180
* method.c (do_build_copy_constructor): Don't drop cv-quals from
the field type.
From-SVN: r153960
2009-11-05 23:32:13 -05:00
Jason Merrill
040ca4b38f
re PR c++/7046 (#pragma pack(1) context evaluated at point of instantiation rather than declaration)
...
PR c++/7046
* class.c (finish_struct): Store maximum_field_alignment in
TYPE_PRECISION.
* pt.c (instantiate_class_template): Set maximum_field_alignment.
From-SVN: r153959
2009-11-05 22:33:17 -05:00
Jason Merrill
2395cd2e91
re PR c++/34870 (argument-dependent lookup fails to find friend declaration)
...
PR c++/34870
* name-lookup.c (arg_assoc_class): Call complete_type.
* pt.c (instantiate_class_template): Call uses_template_parms
instead of dependent_type_p.
From-SVN: r153958
2009-11-05 22:33:06 -05:00
Jason Merrill
9d79aec313
re PR c++/41703 (Problems with SFINAE. Source works at gcc 3.4.6 but fails at 4.2.1 and 4.5.0.20091008)
...
PR c++/41703
* pt.c (check_undeduced_parms): New subroutine of...
(more_specialized_fn): ...here. Undeduced template parms can make
a template less specialized than another.
From-SVN: r153957
2009-11-05 22:32:55 -05:00
GCC Administrator
57201d0267
Daily bump.
...
From-SVN: r153956
2009-11-06 00:16:52 +00:00
Richard Henderson
7a14a9dad8
* config/i386/ia32intrin.h: Protect CRC32 builtins with __SSE4_2__.
...
From-SVN: r153953
2009-11-05 15:27:52 -08:00
Steven G. Kargl
ad6d42e16a
re PR fortran/41918 (Superflous warning "was declared INTENT(OUT) but was not set")
...
2009-11-03 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/41918
* fortran/trans-decl.c: Silence intent(out) warning for derived type
dummy arguments with default initialization.
From-SVN: r153952
2009-11-05 20:57:12 +00:00
Eric Botcazou
2799d18c92
* gcc-interface/utils.c (gnat_type_for_mode): Handle vector modes.
...
From-SVN: r153949
2009-11-05 18:26:21 +00:00
Eric Botcazou
22d12fc2cb
trans.c (lvalue_required_p): New case.
...
* gcc-interface/trans.c (lvalue_required_p) <N_Unchecked_Conversion>:
New case.
From-SVN: r153948
2009-11-05 18:25:10 +00:00
Janus Weil
4b7dd692c2
re PR fortran/41556 ([OOP] Errors in applying operator/assignment to an abstract type)
...
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
* interface.c (matching_typebound_op,gfc_extend_assign): Handle CLASS
variables.
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
* gfortran.dg/class_12.f03: New test.
From-SVN: r153946
2009-11-05 16:31:07 +01:00
Jakub Jelinek
5ddf025851
i386.exp (check_effective_target_xop): Fix typo in builtin's name.
...
* gcc.target/i386/i386.exp (check_effective_target_xop): Fix typo
in builtin's name.
From-SVN: r153943
2009-11-05 15:54:19 +01:00
Paul Brook
d79f303241
arm.c (arm_fp_model, [...]): Remove.
...
2009-11-05 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.c (arm_fp_model, arm_fpu_arch, arm_fpu_tune): Remove.
(arm_fpu_desc): New.
(all_fpus): Add FPU details.
(fp_model_for_fpu): Remove.
(arm_override_options): Set and use arm_fpu_desc and arm_fpu_attr.
(arm_output_epilogue, arm_save_coproc_regs): Use TARGET_FPA_EMU2.
(arm_file_start): Use arm_fpu_desc.
* config/arm/arm.h (TARGET_FPA, TARGET_MAVERICK, TARGET_VFP,
TARGET_VFPD32, TARGET_VFP3, TARGET_NEON_FP16, TARGET_NEON): Use
arm_fpu_desc.
(TARGET_FPA_EMU2): Define.
(arm_fp_model, fputype, arm_fpu_tune): Remove.
(vfp_reg_type, arm_fpu_desc): New.
* config/arm/arm.md (attr fpu): Simplify.
* config/arm/fpa.md (movxf_fpa): Use TARGET_FPA_EMU2.
* config/arm/linux-elf.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/bpabi.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/netbsd-elf.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/vxworks.h (FPUTYPE_DEFAULT): Use string value.
From-SVN: r153942
2009-11-05 14:47:45 +00:00
Michael Matz
79e22ff8a4
i386.c (ix86_builtin_reciprocal): Remove dependency on TARGET_RECIP.
...
* config/i386/i386.c (ix86_builtin_reciprocal): Remove dependency
on TARGET_RECIP.
* doc/invoke.texi (-mrecip): Clarify that we don't need -mrecip
for 1/sqrtf.
From-SVN: r153940
2009-11-05 14:11:26 +00:00
Paolo Carlini
338311e5d7
multiway_merge.h: Simple formatting and uglification fixes.
...
2009-11-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/losertree.h: Likewise.
* include/parallel/base.h: Likewise.
* include/parallel/par_loop.h: Likewise.
* include/parallel/omp_loop_static.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/omp_loop.h: Likewise.
From-SVN: r153939
2009-11-05 14:06:13 +00:00
Rafael Avila de Espindola
94086ef69c
lto-plugin.c (temp_obj_dir_name): Remove.
...
2009-11-05 Rafael Avila de Espindola <espindola@google.com>
* lto-plugin.c (temp_obj_dir_name): Remove.
(arguments_file_name): New.
(free_2): Free arguments_file_name instead of temp_obj_dir_name.
(exec_lto_wrapper): Create arguments file with make_temp_file.
(cleanup_handler): Don't remove the temporary directory. Remove the
arguments file.
(onload): Don't create the temporary directory.
From-SVN: r153938
2009-11-05 13:59:54 +00:00
Joern Rennecke
3be9759a01
* MAINTAINERS (Write After Approval): Add entry for my INRIA work.
...
From-SVN: r153937
2009-11-05 13:41:46 +00:00
Jason Merrill
5ab8b6b550
re PR c++/36912 (ICE with "-frounding-math -g")
...
PR c++/36912
* varasm.c (initializer_constant_valid_p): A PLUS_EXPR
or MINUS_EXPR of REAL_TYPE is not a valid constant initializer.
(output_constant): Avoid crash after error.
From-SVN: r153936
2009-11-05 08:11:42 -05:00
Martin Jambor
30a20e9731
tree-sra.c (struct access): Changed comment of next_sibling field.
...
2009-11-04 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): Changed comment of next_sibling field.
(analyze_modified_params): Loop over accesses of a group rather than
over all with the ame base, pass a common bitmap to
walk_aliased_vdefs.
(unmodified_by_ref_scalar_representative): Build link lists of
accesses of a group.
(splice_param_accesses): Likewise.
From-SVN: r153935
2009-11-05 13:09:08 +01:00
Janus Weil
8bae6273fb
re PR fortran/41556 ([OOP] Errors in applying operator/assignment to an abstract type)
...
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41873
* resolve.c (resolve_function,resolve_call): Prevent abstract interfaces
from being called, but allow deferred type-bound procedures with
abstract interface.
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41873
* gfortran.dg/interface_abstract_4.f90: New test.
From-SVN: r153934
2009-11-05 11:42:48 +01:00
Maxim Kuvyrkov
eb6219852b
* gcc.target/m68k/pr41302.c: Fix target triplet.
...
From-SVN: r153933
2009-11-05 10:22:27 +00:00
Benjamin Kosnik
dc5de59088
009-11-04 Benjamin Kosnik <bkoz@redhat.com>
...
* testsuite/25_algorithms/fill/5.cc: Move...
* testsuite/25_algorithms/fill_n/1.cc: ...here.
From-SVN: r153929
2009-11-05 02:55:08 +00:00
GCC Administrator
d5bcfb20ba
Daily bump.
...
From-SVN: r153928
2009-11-05 00:16:41 +00:00
Kenneth Zadeck
4f2da32b77
df-scan.c (df-uses-record): Add case zero_extract of mem.
...
2009-11-04 Kenneth Zadeck <zadeck@naturalbridge.com>
* df-scan.c (df-uses-record): Add case zero_extract of mem.
From-SVN: r153924
2009-11-04 23:17:54 +00:00
Jason Merrill
cb5f207480
Revert untested varasm.c change
...
From-SVN: r153923
2009-11-04 18:14:56 -05:00
Jason Merrill
be998fb7bc
fix
...
From-SVN: r153922
2009-11-04 18:14:14 -05:00
Jason Merrill
e3503aa8cf
re PR c++/36912 (ICE with "-frounding-math -g")
...
PR c++/36912
* varasm.c (initializer_constant_valid_p): A PLUS_EXPR
or MINUS_EXPR of REAL_TYPE is not a valid constant initializer.
(output_constant): Avoid crash after error.
From-SVN: r153921
2009-11-04 18:13:23 -05:00
Jason Merrill
f4ecc8fd6b
re PR c++/39413 (static_assert and SFINAE)
...
PR c++/39413
* search.c (lookup_base): Don't complete_type (base).
From-SVN: r153920
2009-11-04 17:29:35 -05:00
Eric Botcazou
f96b189564
Fix nit
...
From-SVN: r153919
2009-11-04 21:50:31 +00:00
Eric Botcazou
35a07c37da
re PR target/10127 (-fstack-check let's program crash)
...
PR target/10127
PR ada/20548
* config/i386/i386.md (probe_stack_range): New expander.
(logical operation peepholes): Do not split stack checking probes.
From-SVN: r153918
2009-11-04 21:45:54 +00:00
Harsha Jagasia
3e901069e7
invoke.texi (-mlwp): Add documentation.
...
2009-11-04 Harsha Jagasia <harsha.jagasia@amd.com>
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
* doc/invoke.texi (-mlwp): Add documentation.
* doc/extend.texi (x86 intrinsics): Add LWP intrinsics.
* config.gcc (i[34567]86-*-*): Include lwpintrin.h.
(x86_64-*-*): Ditto.
* config/i386/lwpintrin.h: New file, provide x86 compiler
intrinisics for LWP.
* config/i386/cpuid.h (bit_LWP): Define LWP bit.
* config/i386/x86intrin.h: Add LWP check and lwpintrin.h.
* config/i386/i386-c.c (ix86_target_macros_internal): Check
ISA_FLAG for LWP.
* config/i386/i386.h (TARGET_LWP): New macro for LWP.
* config/i386/i386.opt (-mlwp): New switch for LWP support.
* config/i386/i386.c (OPTION_MASK_ISA_LWP_SET): New.
(OPTION_MASK_ISA_LWP_UNSET): New.
(ix86_handle_option): Handle -mlwp.
(isa_opts): Handle -mlwp.
(enum pta_flags): Add PTA_LWP.
(override_options): Add LWP support.
(IX86_BUILTIN_LLWPCB16): New for LWP intrinsic.
(IX86_BUILTIN_LLWPCB32): Ditto.
(IX86_BUILTIN_LLWPCB64): Ditto.
(IX86_BUILTIN_SLWPCB16): Ditto.
(IX86_BUILTIN_SLWPCB32): Ditto.
(IX86_BUILTIN_SLWPCB64): Ditto.
(IX86_BUILTIN_LWPVAL16): Ditto.
(IX86_BUILTIN_LWPVAL32): Ditto.
(IX86_BUILTIN_LWPVAL64): Ditto.
(IX86_BUILTIN_LWPINS16): Ditto.
(IX86_BUILTIN_LWPINS32): Ditto.
(IX86_BUILTIN_LWPINS64): Ditto.
(enum ix86_special_builtin_type): Add LWP intrinsic support.
(builtin_description): Ditto.
(ix86_init_mmx_sse_builtins): Ditto.
(ix86_expand_special_args_builtin): Ditto.
* config/i386/i386.md (UNSPEC_LLWP_INTRINSIC): Add new UNSPEC
for LWP support.
(UNSPEC_SLWP_INTRINSIC): Ditto.
(UNSPECV_LWPVAL_INTRINSIC): Ditto.
(UNSPECV_LWPINS_INTRINSIC): Ditto.
(lwp_llwpcbhi1): New lwp pattern.
(lwp_llwpcbsi1): Ditto.
(lwp_llwpcbdi1): Ditto.
(lwp_slwpcbhi1): Ditto.
(lwp_slwpcbsi1): Ditto.
(lwp_slwpcbdi1): Ditto.
(lwp_lwpvalhi3): Ditto.
(lwp_lwpvalsi3): Ditto.
(lwp_lwpvaldi3): Ditto.
(lwp_lwpinshi3): Ditto.
(lwp_lwpinssi3): Ditto.
(lwp_lwpinsdi3): Ditto.
Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
From-SVN: r153917
2009-11-04 21:15:42 +00:00