[PATCH] D36111: [COFF, ARM64] Add MS builtins __dmb, __dsb, __isb
    Mandeep Singh Grang via Phabricator via cfe-commits 
    cfe-commits at lists.llvm.org
       
    Mon Jul 31 13:48:34 PDT 2017
    
    
  
mgrang added inline comments.
================
Comment at: include/clang/Basic/BuiltinsAArch64.def:49
 // Memory barrier
+BUILTIN(__dmb, "vUi", "nc")
+BUILTIN(__dsb, "vUi", "nc")
----------------
mstorsjo wrote:
> Shouldn't these be limited to MSVC mode only? Have a look at `BuiltinsARM.def`, where there's cases like `LANGBUILTIN(__dmb, "vUi", "nc", ALL_MS_LANGUAGES)` instead.
I do see LANGBUILTIN in BuiltinsARM.def however it is defined as follows:
```
#   define LANGBUILTIN(ID, TYPE, ATTRS, BUILTIN_LANG) BUILTIN(ID, TYPE, ATTRS)
```
So it seems the BUILTIN_LANG is never really used. Moreover, using LANGBUILTIN in BuiltinsAArch64.def I run into compilation error like this:
```
BuiltinsAArch64.def:65:12: error: expected '= constant-expression' or end of enumerator definition
LANGBUILTIN(__dmb, "vUi", "nc", ALL_MS_LANGUAGES)
```
https://reviews.llvm.org/D36111
    
    
More information about the cfe-commits
mailing list