[llvm-branch-commits] [cfe-branch] r310294 - Merging r310191:

Hans Wennborg via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Aug 7 13:15:58 PDT 2017


Author: hans
Date: Mon Aug  7 13:15:58 2017
New Revision: 310294

URL: http://llvm.org/viewvc/llvm-project?rev=310294&view=rev
Log:
Merging r310191:
------------------------------------------------------------------------
r310191 | ctopper | 2017-08-05 16:35:54 -0700 (Sat, 05 Aug 2017) | 18 lines

[X86] Enable isel to use the PAUSE instruction even when SSE2 is disabled. Clang part

Summary:
On older processors this instruction encoding is treated as a NOP.

MSVC doesn't disable intrinsics based on features the way clang/gcc does. Because the PAUSE instruction encoding doesn't crash older processors, some software out there uses these intrinsics without checking for SSE2.

This change also seems to also be consistent with gcc behavior.

Fixes PR34079

Reviewers: RKSimon, zvi

Reviewed By: RKSimon

Subscribers: cfe-commits

Differential Revision: https://reviews.llvm.org/D36362
------------------------------------------------------------------------

Added:
    cfe/branches/release_50/test/CodeGen/pause.c
      - copied unchanged from r310191, cfe/trunk/test/CodeGen/pause.c
Modified:
    cfe/branches/release_50/   (props changed)
    cfe/branches/release_50/include/clang/Basic/BuiltinsX86.def

Propchange: cfe/branches/release_50/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Aug  7 13:15:58 2017
@@ -1,4 +1,4 @@
 /cfe/branches/type-system-rewrite:134693-134817
-/cfe/trunk:308455,308824,308897,308996,309058,309112-309113,309226,309327,309382-309383,309488,309503,309523,309722,309752,309975,310057
+/cfe/trunk:308455,308824,308897,308996,309058,309112-309113,309226,309327,309382-309383,309488,309503,309523,309722,309752,309975,310057,310191
 /cfe/trunk/test:170344
 /cfe/trunk/test/SemaTemplate:126920

Modified: cfe/branches/release_50/include/clang/Basic/BuiltinsX86.def
URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_50/include/clang/Basic/BuiltinsX86.def?rev=310294&r1=310293&r2=310294&view=diff
==============================================================================
--- cfe/branches/release_50/include/clang/Basic/BuiltinsX86.def (original)
+++ cfe/branches/release_50/include/clang/Basic/BuiltinsX86.def Mon Aug  7 13:15:58 2017
@@ -338,8 +338,8 @@ TARGET_BUILTIN(__builtin_ia32_lfence, "v
 TARGET_HEADER_BUILTIN(_mm_lfence, "v", "h", "emmintrin.h", ALL_LANGUAGES, "sse2")
 TARGET_BUILTIN(__builtin_ia32_mfence, "v", "", "sse2")
 TARGET_HEADER_BUILTIN(_mm_mfence, "v", "h", "emmintrin.h", ALL_LANGUAGES, "sse2")
-TARGET_BUILTIN(__builtin_ia32_pause, "v", "", "sse2")
-TARGET_HEADER_BUILTIN(_mm_pause, "v", "h", "emmintrin.h", ALL_LANGUAGES, "sse2")
+TARGET_BUILTIN(__builtin_ia32_pause, "v", "", "")
+TARGET_HEADER_BUILTIN(_mm_pause, "v", "h", "emmintrin.h", ALL_LANGUAGES, "")
 TARGET_BUILTIN(__builtin_ia32_pmuludq128, "V2LLiV4iV4i", "", "sse2")
 TARGET_BUILTIN(__builtin_ia32_psraw128, "V8sV8sV8s", "", "sse2")
 TARGET_BUILTIN(__builtin_ia32_psrad128, "V4iV4iV4i", "", "sse2")




More information about the llvm-branch-commits mailing list