File tree 2 files changed +33
-23
lines changed
2 files changed +33
-23
lines changed Original file line number Diff line number Diff line change @@ -39,27 +39,27 @@ ld_read ENDP
39
39
40
40
; long long ld_readll(longdouble* ld);
41
41
; rcx: ld
42
- ld_readll PROC
43
- fld tbyte ptr [ rcx ]
44
- push rax
45
- fistp qword ptr [ rsp ]
46
- pop rax
47
- ret
48
- ld_readll ENDP
42
+ ; ld_readll PROC
43
+ ; fld tbyte ptr [rcx]
44
+ ; push rax
45
+ ; fistp qword ptr [rsp]
46
+ ; pop rax
47
+ ; ret
48
+ ; ld_readll ENDP
49
49
50
50
; unsigned long long ld_readull(longdouble* ld);
51
51
; rcx: ld
52
- ld_readull PROC
53
- fld tbyte ptr [ rcx ]
54
- push rax
55
- lea rax , twoPow63
56
- fld tbyte ptr [ rax ]
57
- fsubp ST( 1 ) , ST( 0 ) ; move it into signed range
58
- fistp qword ptr [ rsp ]
59
- pop rax
60
- btc rax , 63
61
- ret
62
- ld_readull ENDP
52
+ ; ld_readull PROC
53
+ ; fld tbyte ptr [rcx]
54
+ ; push rax
55
+ ; lea rax,twoPow63
56
+ ; fld tbyte ptr [rax]
57
+ ; fsubp ST(1),ST(0) ; move it into signed range
58
+ ; fistp qword ptr [rsp]
59
+ ; pop rax
60
+ ; btc rax,63
61
+ ; ret
62
+ ; ld_readull ENDP
63
63
64
64
; void ld_set(longdouble* ld, double d);
65
65
; rcx: ld
@@ -79,8 +79,8 @@ ld_set ENDP
79
79
ld_setll PROC
80
80
push rdx
81
81
fild qword ptr [ rsp ]
82
- fstp tbyte ptr [ rcx ]
83
- pop rax
82
+ fstp tbyte ptr [ rcx ]
83
+ pop rax
84
84
ret
85
85
ld_setll ENDP
86
86
@@ -94,8 +94,8 @@ ld_setull PROC
94
94
lea rax , twoPow63
95
95
fld tbyte ptr [ rax ]
96
96
faddp ST( 1 ) , ST( 0 )
97
- fstp tbyte ptr [ rcx ]
98
- pop rax
97
+ fstp tbyte ptr [ rcx ]
98
+ pop rax
99
99
ret
100
100
ld_setull ENDP
101
101
@@ -109,7 +109,7 @@ ld_expl PROC
109
109
fscale ; ST(0) = ST(0) * (2**ST(1))
110
110
fstp ST( 1 )
111
111
fstp tbyte ptr [ rcx ]
112
- pop rax
112
+ pop rax
113
113
ret
114
114
ld_expl ENDP
115
115
Original file line number Diff line number Diff line change 13
13
#pragma warning(disable:4189) // local variable is initialized but not referenced
14
14
#pragma warning(disable:4102) // unreferenced label
15
15
#pragma warning(disable:4800) // forcing value to bool 'true' or 'false' (performance warning)
16
+ #pragma warning(disable:4804) // '+=' : unsafe use of type 'bool' in operation
16
17
#pragma warning(disable:4390) // ';' : empty controlled statement found; is this the intent?
17
18
#pragma warning(disable:4702) // unreachable code
18
19
#pragma warning(disable:4703) // potentially uninitialized local pointer variable 'm' used
20
+ #pragma warning(disable:4063) // case '0' is not a valid value for switch of enum
21
+ #pragma warning(disable:4305) // 'initializing' : truncation from 'double' to 'float'
22
+ #pragma warning(disable:4309) // 'initializing' : truncation of constant value
23
+ #pragma warning(disable:4310) // cast truncates constant value
24
+ #pragma warning(disable:4806) // '^' : unsafe operation: no value of type 'bool' promoted to type 'int' can equal the given constant
25
+ #pragma warning(disable:4060) // switch statement contains no 'case' or 'default' labels
26
+ #pragma warning(disable:4099) // type name first seen using 'struct' now seen using 'class'
27
+ #pragma warning(disable:4725) // instruction may be inaccurate on some Pentiums
19
28
20
29
#ifdef _WIN64
21
30
#pragma warning(disable:4366) // The result of the unary '&' operator may be unaligned
28
37
#define MARS 1
29
38
#define UNITTEST 1
30
39
#define _M_I86 1
40
+ #define DM_TARGET_CPU_X86 1
You can’t perform that action at this time.
0 commit comments