|
10 | 10 | (type $none_=>_i32 (func (result i32)))
|
11 | 11 | (type $i64_=>_i32 (func (param i64) (result i32)))
|
12 | 12 | (type $i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32) (result i32)))
|
13 |
| - (type $i32_i32_i32_i32_i32_i32_f64_=>_f64 (func (param i32 i32 i32 i32 i32 i32 f64) (result f64))) |
14 |
| - (import "Date" "UTC" (func $~lib/bindings/Date/UTC (param i32 i32 i32 i32 i32 i32 f64) (result f64))) |
| 13 | + (type $i32_i32_i32_i32_i32_i32_i32_=>_i64 (func (param i32 i32 i32 i32 i32 i32 i32) (result i64))) |
15 | 14 | (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
|
16 | 15 | (memory $0 1)
|
17 | 16 | (data (i32.const 1036) ",")
|
|
100 | 99 | (global $~started (mut i32) (i32.const 0))
|
101 | 100 | (export "memory" (memory $0))
|
102 | 101 | (export "_start" (func $~start))
|
| 102 | + (func $~lib/date/daysSinceEpoch (param $0 i32) (param $1 i32) (param $2 i32) (result i32) |
| 103 | + (local $3 i32) |
| 104 | + local.get $0 |
| 105 | + local.get $1 |
| 106 | + i32.const 2 |
| 107 | + i32.le_s |
| 108 | + i32.sub |
| 109 | + local.tee $0 |
| 110 | + local.get $0 |
| 111 | + i32.const 399 |
| 112 | + i32.sub |
| 113 | + local.get $0 |
| 114 | + i32.const 0 |
| 115 | + i32.ge_s |
| 116 | + select |
| 117 | + i32.const 400 |
| 118 | + i32.div_s |
| 119 | + local.tee $3 |
| 120 | + i32.const 146097 |
| 121 | + i32.mul |
| 122 | + local.get $2 |
| 123 | + local.get $1 |
| 124 | + i32.const -3 |
| 125 | + i32.const 9 |
| 126 | + local.get $1 |
| 127 | + i32.const 2 |
| 128 | + i32.gt_s |
| 129 | + select |
| 130 | + i32.add |
| 131 | + i32.const 153 |
| 132 | + i32.mul |
| 133 | + i32.const 2 |
| 134 | + i32.add |
| 135 | + i32.const 5 |
| 136 | + i32.div_s |
| 137 | + i32.add |
| 138 | + local.get $0 |
| 139 | + local.get $3 |
| 140 | + i32.const 400 |
| 141 | + i32.mul |
| 142 | + i32.sub |
| 143 | + local.tee $0 |
| 144 | + i32.const 365 |
| 145 | + i32.mul |
| 146 | + local.get $0 |
| 147 | + i32.const 4 |
| 148 | + i32.div_s |
| 149 | + i32.add |
| 150 | + local.get $0 |
| 151 | + i32.const 100 |
| 152 | + i32.div_s |
| 153 | + i32.sub |
| 154 | + i32.add |
| 155 | + i32.add |
| 156 | + i32.const 719469 |
| 157 | + i32.sub |
| 158 | + ) |
| 159 | + (func $~lib/date/epochMillis (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) (param $6 i32) (result i64) |
| 160 | + local.get $6 |
| 161 | + i64.extend_i32_s |
| 162 | + local.get $5 |
| 163 | + i32.const 1000 |
| 164 | + i32.mul |
| 165 | + i64.extend_i32_s |
| 166 | + local.get $4 |
| 167 | + i32.const 60000 |
| 168 | + i32.mul |
| 169 | + i64.extend_i32_s |
| 170 | + local.get $3 |
| 171 | + i32.const 3600000 |
| 172 | + i32.mul |
| 173 | + i64.extend_i32_s |
| 174 | + local.get $0 |
| 175 | + local.get $1 |
| 176 | + local.get $2 |
| 177 | + call $~lib/date/daysSinceEpoch |
| 178 | + i64.extend_i32_s |
| 179 | + i64.const 86400000 |
| 180 | + i64.mul |
| 181 | + i64.add |
| 182 | + i64.add |
| 183 | + i64.add |
| 184 | + i64.add |
| 185 | + ) |
103 | 186 | (func $~lib/rt/itcms/initLazy (param $0 i32) (result i32)
|
104 | 187 | local.get $0
|
105 | 188 | local.get $0
|
|
1877 | 1960 | if
|
1878 | 1961 | i32.const 1504
|
1879 | 1962 | i32.const 1568
|
1880 |
| - i32.const 195 |
| 1963 | + i32.const 193 |
1881 | 1964 | i32.const 39
|
1882 | 1965 | call $~lib/builtins/abort
|
1883 | 1966 | unreachable
|
|
2176 | 2259 | end
|
2177 | 2260 | end
|
2178 | 2261 | )
|
2179 |
| - (func $~lib/date/daysSinceEpoch (param $0 i32) (param $1 i32) (param $2 i32) (result i32) |
2180 |
| - (local $3 i32) |
2181 |
| - local.get $0 |
2182 |
| - local.get $1 |
2183 |
| - i32.const 2 |
2184 |
| - i32.le_s |
2185 |
| - i32.sub |
2186 |
| - local.tee $0 |
2187 |
| - local.get $0 |
2188 |
| - i32.const 399 |
2189 |
| - i32.sub |
2190 |
| - local.get $0 |
2191 |
| - i32.const 0 |
2192 |
| - i32.ge_s |
2193 |
| - select |
2194 |
| - i32.const 400 |
2195 |
| - i32.div_s |
2196 |
| - local.tee $3 |
2197 |
| - i32.const 146097 |
2198 |
| - i32.mul |
2199 |
| - local.get $2 |
2200 |
| - local.get $1 |
2201 |
| - i32.const -3 |
2202 |
| - i32.const 9 |
2203 |
| - local.get $1 |
2204 |
| - i32.const 2 |
2205 |
| - i32.gt_s |
2206 |
| - select |
2207 |
| - i32.add |
2208 |
| - i32.const 153 |
2209 |
| - i32.mul |
2210 |
| - i32.const 2 |
2211 |
| - i32.add |
2212 |
| - i32.const 5 |
2213 |
| - i32.div_s |
2214 |
| - i32.add |
2215 |
| - local.get $0 |
2216 |
| - local.get $3 |
2217 |
| - i32.const 400 |
2218 |
| - i32.mul |
2219 |
| - i32.sub |
2220 |
| - local.tee $0 |
2221 |
| - i32.const 365 |
2222 |
| - i32.mul |
2223 |
| - local.get $0 |
2224 |
| - i32.const 4 |
2225 |
| - i32.div_s |
2226 |
| - i32.add |
2227 |
| - local.get $0 |
2228 |
| - i32.const 100 |
2229 |
| - i32.div_s |
2230 |
| - i32.sub |
2231 |
| - i32.add |
2232 |
| - i32.add |
2233 |
| - i32.const 719469 |
2234 |
| - i32.sub |
2235 |
| - ) |
2236 | 2262 | (func $~lib/date/Date#setUTCDate (param $0 i32) (param $1 i32)
|
2237 | 2263 | (local $2 i32)
|
2238 | 2264 | (local $3 i32)
|
|
4099 | 4125 | i32.store offset=16
|
4100 | 4126 | local.get $1
|
4101 | 4127 | call $~lib/util/string/strtol<i32>
|
4102 |
| - local.set $6 |
4103 | 4128 | local.get $0
|
4104 | 4129 | i32.const 1
|
4105 | 4130 | call $~lib/array/Array<~lib/string/String>#__get
|
|
4109 | 4134 | i32.store offset=16
|
4110 | 4135 | local.get $1
|
4111 | 4136 | call $~lib/util/string/strtol<i32>
|
4112 |
| - local.set $1 |
4113 | 4137 | local.get $0
|
4114 | 4138 | i32.const 2
|
4115 | 4139 | call $~lib/array/Array<~lib/string/String>#__get
|
4116 | 4140 | local.set $0
|
4117 | 4141 | global.get $~lib/memory/__stack_pointer
|
4118 | 4142 | local.get $0
|
4119 | 4143 | i32.store offset=16
|
4120 |
| - local.get $5 |
4121 |
| - i64.extend_i32_s |
4122 |
| - local.get $2 |
4123 |
| - i32.const 1000 |
4124 |
| - i32.mul |
4125 |
| - i64.extend_i32_s |
4126 |
| - local.get $4 |
4127 |
| - i32.const 60000 |
4128 |
| - i32.mul |
4129 |
| - i64.extend_i32_s |
4130 |
| - local.get $3 |
4131 |
| - i32.const 3600000 |
4132 |
| - i32.mul |
4133 |
| - i64.extend_i32_s |
4134 |
| - local.get $6 |
4135 |
| - local.get $1 |
4136 | 4144 | local.get $0
|
4137 | 4145 | call $~lib/util/string/strtol<i32>
|
4138 |
| - call $~lib/date/daysSinceEpoch |
4139 |
| - i64.extend_i32_s |
4140 |
| - i64.const 86400000 |
4141 |
| - i64.mul |
4142 |
| - i64.add |
4143 |
| - i64.add |
4144 |
| - i64.add |
4145 |
| - i64.add |
| 4146 | + local.get $3 |
| 4147 | + local.get $4 |
| 4148 | + local.get $2 |
| 4149 | + local.get $5 |
| 4150 | + call $~lib/date/epochMillis |
4146 | 4151 | call $~lib/date/Date#constructor
|
4147 | 4152 | global.get $~lib/memory/__stack_pointer
|
4148 | 4153 | i32.const 32
|
|
4164 | 4169 | i32.const 0
|
4165 | 4170 | i32.store offset=8
|
4166 | 4171 | i32.const 1970
|
4167 |
| - i32.const 0 |
4168 | 4172 | i32.const 1
|
| 4173 | + i32.const 1 |
| 4174 | + i32.const 0 |
4169 | 4175 | i32.const 0
|
4170 | 4176 | i32.const 0
|
4171 | 4177 | i32.const 0
|
4172 |
| - f64.const 0 |
4173 |
| - call $~lib/bindings/Date/UTC |
4174 |
| - i64.trunc_f64_s |
| 4178 | + call $~lib/date/epochMillis |
4175 | 4179 | i64.eqz
|
4176 | 4180 | i32.eqz
|
4177 | 4181 | if
|
|
4183 | 4187 | unreachable
|
4184 | 4188 | end
|
4185 | 4189 | i32.const 1970
|
4186 |
| - i32.const 0 |
4187 | 4190 | i32.const 1
|
| 4191 | + i32.const 1 |
| 4192 | + i32.const 0 |
4188 | 4193 | i32.const 0
|
4189 | 4194 | i32.const 0
|
4190 | 4195 | i32.const 0
|
4191 |
| - f64.const 0 |
4192 |
| - call $~lib/bindings/Date/UTC |
4193 |
| - i64.trunc_f64_s |
| 4196 | + call $~lib/date/epochMillis |
4194 | 4197 | i64.eqz
|
4195 | 4198 | i32.eqz
|
4196 | 4199 | if
|
|
4202 | 4205 | unreachable
|
4203 | 4206 | end
|
4204 | 4207 | i32.const 2018
|
4205 |
| - i32.const 10 |
| 4208 | + i32.const 11 |
4206 | 4209 | i32.const 10
|
4207 | 4210 | i32.const 11
|
4208 | 4211 | i32.const 0
|
4209 | 4212 | i32.const 0
|
4210 |
| - f64.const 1 |
4211 |
| - call $~lib/bindings/Date/UTC |
4212 |
| - i64.trunc_f64_s |
| 4213 | + i32.const 1 |
| 4214 | + call $~lib/date/epochMillis |
4213 | 4215 | i64.const 1541847600001
|
4214 | 4216 | i64.ne
|
4215 | 4217 | if
|
|
0 commit comments