1 --- geos-3.8.1/include/geos/algorithm/ttmath/ttmathtypes.h.orig 2019-09-18 23:38:19.000000000 +0200
2 +++ geos-3.8.1/include/geos/algorithm/ttmath/ttmathtypes.h 2020-11-08 20:39:00.133786117 +0100
5 #if !defined TTMATH_PLATFORM32 && !defined TTMATH_PLATFORM64
7 - #if !defined _M_X64 && !defined __x86_64__
8 + #if !defined _M_X64 && !defined __x86_64__ || defined __ILP32__
11 other platforms than x86 and amd64 are not recognized at the moment
12 --- geos-3.8.1/include/geos/algorithm/ttmath/ttmathuint_x86.h.orig 2019-09-18 23:38:19.000000000 +0200
13 +++ geos-3.8.1/include/geos/algorithm/ttmath/ttmathuint_x86.h 2020-11-08 21:56:34.060500817 +0100
15 uint dummy1, dummy2, dummy3;
23 "xor %%edx, %%edx \n" // edx = 0, cf = 0
25 "mov (%%esi,%%edx,4), %%eax \n"
29 "adc %%ecx, %%ecx \n" // ecx has the cf state
31 + "pop %%rax \n" // eax = rest
33 "pop %%eax \n" // eax = rest
39 uint dummy1, dummy2, dummy3;
47 "xor %%edx, %%edx \n" // edx = 0, cf = 0
49 "mov (%%esi,%%edx,4), %%eax \n"
53 "adc %%ecx, %%ecx \n" // ecx has the cf state
55 + "pop %%rax \n" // eax = rest
57 "pop %%eax \n" // eax = rest
62 @@ -1141,7 +1157,11 @@
72 "movl %%ecx, %%esi \n"
74 @@ -1171,7 +1191,11 @@
84 : "=a" (c), "=D" (dummy), "=S" (dummy2), "=d" (dummy3)
85 : "0" (c), "1" (b), "b" (p1), "c" (bits)
86 @@ -1272,7 +1296,11 @@
96 "movl %%ecx, %%esi \n"
98 @@ -1305,7 +1333,11 @@
108 : "=a" (c), "=D" (dummy), "=S" (dummy2), "=d" (dummy3)
109 : "0" (c), "1" (b), "b" (p1), "c" (bits)