diff --git a/include/clang/Basic/Attr.td b/include/clang/Basic/Attr.td
index 8a3e788..a65ffa4 100644
--- a/include/clang/Basic/Attr.td
+++ b/include/clang/Basic/Attr.td
@@ -220,7 +220,8 @@
 }
 
 def CDecl : InheritableAttr {
-  let Spellings = [GNU<"cdecl">, CXX11<"gnu", "cdecl">, Keyword<"__cdecl">];
+  let Spellings = [GNU<"cdecl">, CXX11<"gnu", "cdecl">, Keyword<"__cdecl">,
+                   Keyword<"_cdecl">];
 }
 
 // cf_audited_transfer indicates that the given function has been
@@ -340,7 +341,7 @@
 
 def FastCall : InheritableAttr {
   let Spellings = [GNU<"fastcall">, CXX11<"gnu", "fastcall">,
-                   Keyword<"__fastcall">];
+                   Keyword<"__fastcall">, Keyword<"_fastcall">];
 }
 
 def Final : InheritableAttr {
@@ -638,16 +639,16 @@
 
 def StdCall : InheritableAttr {
   let Spellings = [GNU<"stdcall">, CXX11<"gnu", "stdcall">,
-                   Keyword<"__stdcall">];
+                   Keyword<"__stdcall">, Keyword<"_stdcall">];
 }
 
 def ThisCall : InheritableAttr {
   let Spellings = [GNU<"thiscall">, CXX11<"gnu", "thiscall">,
-                   Keyword<"__thiscall">];
+                   Keyword<"__thiscall">, Keyword<"_thiscall">];
 }
 
 def Pascal : InheritableAttr {
-  let Spellings = [GNU<"pascal">, Keyword<"__pascal">];
+  let Spellings = [GNU<"pascal">, Keyword<"__pascal">, Keyword<"_pascal">];
 }
 
 def TransparentUnion : InheritableAttr {
diff --git a/lib/Sema/SemaDeclAttr.cpp b/lib/Sema/SemaDeclAttr.cpp
index 12483a3..a4b8c35 100644
--- a/lib/Sema/SemaDeclAttr.cpp
+++ b/lib/Sema/SemaDeclAttr.cpp
@@ -4759,13 +4759,6 @@
   if (Attr.isInvalid())
     return;
 
-  // FIXME: Ignore unknown keyword attributes for now. We see this in the case
-  // of some Borland attributes, like __pascal.
-  // FIXME: Add these attributes to Attr.td and mark as ignored!
-  if (Attr.isKeywordAttribute() &&
-      Attr.getKind() == AttributeList::UnknownAttribute)
-    return;
-
   // Ignore C++11 attributes on declarator chunks: they appertain to the type
   // instead.
   if (Attr.isCXX11Attribute() && !IncludeCXX11Attributes)
diff --git a/test/SemaCXX/borland-extensions.cpp b/test/SemaCXX/borland-extensions.cpp
index f9414f8..d214473 100644
--- a/test/SemaCXX/borland-extensions.cpp
+++ b/test/SemaCXX/borland-extensions.cpp
@@ -7,6 +7,7 @@
 int dummy_function() { return 0; }
 
 // 2. test __pascal
+// expected-warning@+1 {{calling convention '_pascal' ignored for this target}}
 int _pascal f2();
 
 // expected-warning@+1 {{calling convention '__pascal' ignored for this target}}
@@ -33,7 +34,9 @@
 
 // 3. test other calling conventions
 int _cdecl fa3();
+// expected-warning@+1 {{calling convention '_fastcall' ignored for this target}}
 int _fastcall fc3();
+// expected-warning@+1 {{calling convention '_stdcall' ignored for this target}}
 int _stdcall fd3();
 
 // 4. test __uuidof()
