forked from OSchip/llvm-project
Revert "builtins: relax __iso_volatile_{load,store}32"
This reverts commit SVN r364137. This seems to be cause problems with casting in C. llvm-svn: 364147
This commit is contained in:
parent
cf92a1f6eb
commit
6281ccea02
|
@ -827,11 +827,11 @@ LANGBUILTIN(_interlockedbittestandset_nf, "UcNiD*Ni", "n", ALL_MS_LANGUAGES)
|
|||
LANGBUILTIN(_interlockedbittestandset_rel, "UcNiD*Ni", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_load8, "ccCD*", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_load16, "ssCD*", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_load32, "LiLiCD*", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_load32, "iiCD*", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_load64, "LLiLLiCD*", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_store8, "vcD*c", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_store16, "vsD*s", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_store32, "vLiD*Li", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_store32, "viD*i", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__iso_volatile_store64, "vLLiD*LLi", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__noop, "i.", "n", ALL_MS_LANGUAGES)
|
||||
LANGBUILTIN(__lzcnt16, "UsUs", "nc", ALL_MS_LANGUAGES)
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
// RUN: %clang_cc1 -fms-compatibility -fsyntax-only %s -verify
|
||||
// expected-no-diagnostics
|
||||
|
||||
struct S {
|
||||
mutable long _Spinlock = 0;
|
||||
void _Unlock() {
|
||||
__iso_volatile_store32(&_Spinlock, 0);
|
||||
}
|
||||
int _Reset() {
|
||||
long v = __iso_volatile_load32(&_Spinlock);
|
||||
__iso_volatile_store32(&_Spinlock, 0);
|
||||
return v;
|
||||
}
|
||||
};
|
||||
|
||||
S s;
|
||||
|
Loading…
Reference in New Issue