diff --git a/Modules/_decimal/libmpdec/typearith.h b/Modules/_decimal/libmpdec/typearith.h
index eeba8dd..614812c 100644
--- a/Modules/_decimal/libmpdec/typearith.h
+++ b/Modules/_decimal/libmpdec/typearith.h
@@ -207,10 +207,10 @@
 {
     mpd_uint_t h, l;
 
-    asm ( "mulq %3\n\t"
-          : "=d" (h), "=a" (l)
-          : "%a" (a), "rm" (b)
-          : "cc"
+    __asm__ ( "mulq %3\n\t"
+              : "=d" (h), "=a" (l)
+              : "%a" (a), "rm" (b)
+              : "cc"
     );
 
     *hi = h;
@@ -223,10 +223,10 @@
 {
     mpd_uint_t qq, rr;
 
-    asm ( "divq %4\n\t"
-          : "=a" (qq), "=d" (rr)
-          : "a" (lo), "d" (hi), "rm" (d)
-          : "cc"
+    __asm__ ( "divq %4\n\t"
+              : "=a" (qq), "=d" (rr)
+              : "a" (lo), "d" (hi), "rm" (d)
+              : "cc"
     );
 
     *q = qq;
@@ -464,10 +464,10 @@
 {
     mpd_uint_t h, l;
 
-    asm ( "mull %3\n\t"
-          : "=d" (h), "=a" (l)
-          : "%a" (a), "rm" (b)
-          : "cc"
+    __asm__ ( "mull %3\n\t"
+              : "=d" (h), "=a" (l)
+              : "%a" (a), "rm" (b)
+              : "cc"
     );
 
     *hi = h;
@@ -480,10 +480,10 @@
 {
     mpd_uint_t qq, rr;
 
-    asm ( "divl %4\n\t"
-          : "=a" (qq), "=d" (rr)
-          : "a" (lo), "d" (hi), "rm" (d)
-          : "cc"
+    __asm__ ( "divl %4\n\t"
+              : "=a" (qq), "=d" (rr)
+              : "a" (lo), "d" (hi), "rm" (d)
+              : "cc"
     );
 
     *q = qq;
diff --git a/Modules/_decimal/libmpdec/umodarith.h b/Modules/_decimal/libmpdec/umodarith.h
index 06cde0a..a6aeceb 100644
--- a/Modules/_decimal/libmpdec/umodarith.h
+++ b/Modules/_decimal/libmpdec/umodarith.h
@@ -402,22 +402,22 @@
 {
     mpd_uint_t retval;
 
-    asm (
-        "fildl  %2\n\t"
-        "fildl  %1\n\t"
-        "fmulp  %%st, %%st(1)\n\t"
-        "fldt   (%4)\n\t"
-        "fmul   %%st(1), %%st\n\t"
-        "flds   %5\n\t"
-        "fadd   %%st, %%st(1)\n\t"
-        "fsubrp %%st, %%st(1)\n\t"
-        "fldl   (%3)\n\t"
-        "fmulp  %%st, %%st(1)\n\t"
-        "fsubrp %%st, %%st(1)\n\t"
-        "fistpl %0\n\t"
-        : "=m" (retval)
-        : "m" (a), "m" (b), "r" (dmod), "r" (dinvmod), "m" (MPD_TWO63)
-        : "st", "memory"
+    __asm__ (
+            "fildl  %2\n\t"
+            "fildl  %1\n\t"
+            "fmulp  %%st, %%st(1)\n\t"
+            "fldt   (%4)\n\t"
+            "fmul   %%st(1), %%st\n\t"
+            "flds   %5\n\t"
+            "fadd   %%st, %%st(1)\n\t"
+            "fsubrp %%st, %%st(1)\n\t"
+            "fldl   (%3)\n\t"
+            "fmulp  %%st, %%st(1)\n\t"
+            "fsubrp %%st, %%st(1)\n\t"
+            "fistpl %0\n\t"
+            : "=m" (retval)
+            : "m" (a), "m" (b), "r" (dmod), "r" (dinvmod), "m" (MPD_TWO63)
+            : "st", "memory"
     );
 
     return retval;
@@ -432,33 +432,33 @@
 ppro_mulmod2c(mpd_uint_t *a0, mpd_uint_t *a1, mpd_uint_t w,
               double *dmod, uint32_t *dinvmod)
 {
-    asm (
-        "fildl  %2\n\t"
-        "fildl  (%1)\n\t"
-        "fmul   %%st(1), %%st\n\t"
-        "fxch   %%st(1)\n\t"
-        "fildl  (%0)\n\t"
-        "fmulp  %%st, %%st(1) \n\t"
-        "fldt   (%4)\n\t"
-        "flds   %5\n\t"
-        "fld    %%st(2)\n\t"
-        "fmul   %%st(2)\n\t"
-        "fadd   %%st(1)\n\t"
-        "fsub   %%st(1)\n\t"
-        "fmull  (%3)\n\t"
-        "fsubrp %%st, %%st(3)\n\t"
-        "fxch   %%st(2)\n\t"
-        "fistpl (%0)\n\t"
-        "fmul   %%st(2)\n\t"
-        "fadd   %%st(1)\n\t"
-        "fsubp  %%st, %%st(1)\n\t"
-        "fmull  (%3)\n\t"
-        "fsubrp %%st, %%st(1)\n\t"
-        "fistpl (%1)\n\t"
-        : : "r" (a0), "r" (a1), "m" (w),
-            "r" (dmod), "r" (dinvmod),
-            "m" (MPD_TWO63)
-        : "st", "memory"
+    __asm__ (
+            "fildl  %2\n\t"
+            "fildl  (%1)\n\t"
+            "fmul   %%st(1), %%st\n\t"
+            "fxch   %%st(1)\n\t"
+            "fildl  (%0)\n\t"
+            "fmulp  %%st, %%st(1) \n\t"
+            "fldt   (%4)\n\t"
+            "flds   %5\n\t"
+            "fld    %%st(2)\n\t"
+            "fmul   %%st(2)\n\t"
+            "fadd   %%st(1)\n\t"
+            "fsub   %%st(1)\n\t"
+            "fmull  (%3)\n\t"
+            "fsubrp %%st, %%st(3)\n\t"
+            "fxch   %%st(2)\n\t"
+            "fistpl (%0)\n\t"
+            "fmul   %%st(2)\n\t"
+            "fadd   %%st(1)\n\t"
+            "fsubp  %%st, %%st(1)\n\t"
+            "fmull  (%3)\n\t"
+            "fsubrp %%st, %%st(1)\n\t"
+            "fistpl (%1)\n\t"
+            : : "r" (a0), "r" (a1), "m" (w),
+                "r" (dmod), "r" (dinvmod),
+                "m" (MPD_TWO63)
+            : "st", "memory"
     );
 }
 
@@ -471,41 +471,41 @@
 ppro_mulmod2(mpd_uint_t *a0, mpd_uint_t b0, mpd_uint_t *a1, mpd_uint_t b1,
              double *dmod, uint32_t *dinvmod)
 {
-    asm (
-        "fildl  %3\n\t"
-        "fildl  (%2)\n\t"
-        "fmulp  %%st, %%st(1)\n\t"
-        "fildl  %1\n\t"
-        "fildl  (%0)\n\t"
-        "fmulp  %%st, %%st(1)\n\t"
-        "fldt   (%5)\n\t"
-        "fld    %%st(2)\n\t"
-        "fmul   %%st(1), %%st\n\t"
-        "fxch   %%st(1)\n\t"
-        "fmul   %%st(2), %%st\n\t"
-        "flds   %6\n\t"
-        "fldl   (%4)\n\t"
-        "fxch   %%st(3)\n\t"
-        "fadd   %%st(1), %%st\n\t"
-        "fxch   %%st(2)\n\t"
-        "fadd   %%st(1), %%st\n\t"
-        "fxch   %%st(2)\n\t"
-        "fsub   %%st(1), %%st\n\t"
-        "fxch   %%st(2)\n\t"
-        "fsubp  %%st, %%st(1)\n\t"
-        "fxch   %%st(1)\n\t"
-        "fmul   %%st(2), %%st\n\t"
-        "fxch   %%st(1)\n\t"
-        "fmulp  %%st, %%st(2)\n\t"
-        "fsubrp %%st, %%st(3)\n\t"
-        "fsubrp %%st, %%st(1)\n\t"
-        "fxch   %%st(1)\n\t"
-        "fistpl (%2)\n\t"
-        "fistpl (%0)\n\t"
-        : : "r" (a0), "m" (b0), "r" (a1), "m" (b1),
-            "r" (dmod), "r" (dinvmod),
-            "m" (MPD_TWO63)
-        : "st", "memory"
+    __asm__ (
+            "fildl  %3\n\t"
+            "fildl  (%2)\n\t"
+            "fmulp  %%st, %%st(1)\n\t"
+            "fildl  %1\n\t"
+            "fildl  (%0)\n\t"
+            "fmulp  %%st, %%st(1)\n\t"
+            "fldt   (%5)\n\t"
+            "fld    %%st(2)\n\t"
+            "fmul   %%st(1), %%st\n\t"
+            "fxch   %%st(1)\n\t"
+            "fmul   %%st(2), %%st\n\t"
+            "flds   %6\n\t"
+            "fldl   (%4)\n\t"
+            "fxch   %%st(3)\n\t"
+            "fadd   %%st(1), %%st\n\t"
+            "fxch   %%st(2)\n\t"
+            "fadd   %%st(1), %%st\n\t"
+            "fxch   %%st(2)\n\t"
+            "fsub   %%st(1), %%st\n\t"
+            "fxch   %%st(2)\n\t"
+            "fsubp  %%st, %%st(1)\n\t"
+            "fxch   %%st(1)\n\t"
+            "fmul   %%st(2), %%st\n\t"
+            "fxch   %%st(1)\n\t"
+            "fmulp  %%st, %%st(2)\n\t"
+            "fsubrp %%st, %%st(3)\n\t"
+            "fsubrp %%st, %%st(1)\n\t"
+            "fxch   %%st(1)\n\t"
+            "fistpl (%2)\n\t"
+            "fistpl (%0)\n\t"
+            : : "r" (a0), "m" (b0), "r" (a1), "m" (b1),
+                "r" (dmod), "r" (dinvmod),
+                "m" (MPD_TWO63)
+            : "st", "memory"
     );
 }
 /* END PPRO GCC ASM */
