mirror of
https://github.com/roc-lang/roc.git
synced 2025-08-03 19:58:18 +00:00

* Add `Num.[f32,f64,dec]_[to,from]_bits` builtins * Update mono tests * Deprecate `Num.[f32,f64]_[to,from]_parts`
285 lines
10 KiB
Text
Generated
285 lines
10 KiB
Text
Generated
procedure Bool.1 ():
|
|
let Bool.21 : Int1 = false;
|
|
ret Bool.21;
|
|
|
|
procedure Bool.9 (#Attr.2, #Attr.3):
|
|
let Bool.22 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
|
ret Bool.22;
|
|
|
|
procedure Bool.9 (#Attr.2, #Attr.3):
|
|
let Bool.23 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
|
ret Bool.23;
|
|
|
|
procedure Inspect.245 (Inspect.246, Inspect.244):
|
|
let Inspect.317 : Str = "\"";
|
|
let Inspect.316 : Str = CallByName Inspect.63 Inspect.246 Inspect.317;
|
|
dec Inspect.317;
|
|
let Inspect.312 : Str = CallByName Inspect.63 Inspect.316 Inspect.244;
|
|
let Inspect.313 : Str = "\"";
|
|
let Inspect.311 : Str = CallByName Inspect.63 Inspect.312 Inspect.313;
|
|
dec Inspect.313;
|
|
ret Inspect.311;
|
|
|
|
procedure Inspect.30 (Inspect.147):
|
|
ret Inspect.147;
|
|
|
|
procedure Inspect.33 (Inspect.152):
|
|
let Inspect.300 : Str = CallByName Inspect.5 Inspect.152;
|
|
let Inspect.299 : Str = CallByName Inspect.64 Inspect.300;
|
|
ret Inspect.299;
|
|
|
|
procedure Inspect.39 (Inspect.296):
|
|
let Inspect.306 : Str = "";
|
|
ret Inspect.306;
|
|
|
|
procedure Inspect.47 (Inspect.243):
|
|
let Inspect.327 : Str = "\u{feff}";
|
|
let Inspect.328 : Str = "\\u(feff)";
|
|
let Inspect.324 : Str = CallByName Str.45 Inspect.243 Inspect.327 Inspect.328;
|
|
dec Inspect.327;
|
|
dec Inspect.328;
|
|
let Inspect.325 : Str = "\u{200b}";
|
|
let Inspect.326 : Str = "\\u(200b)";
|
|
let Inspect.321 : Str = CallByName Str.45 Inspect.324 Inspect.325 Inspect.326;
|
|
dec Inspect.326;
|
|
dec Inspect.325;
|
|
let Inspect.322 : Str = "\u{200c}";
|
|
let Inspect.323 : Str = "\\u(200c)";
|
|
let Inspect.318 : Str = CallByName Str.45 Inspect.321 Inspect.322 Inspect.323;
|
|
dec Inspect.322;
|
|
dec Inspect.323;
|
|
let Inspect.319 : Str = "\u{200d}";
|
|
let Inspect.320 : Str = "\\u(200d)";
|
|
let Inspect.244 : Str = CallByName Str.45 Inspect.318 Inspect.319 Inspect.320;
|
|
dec Inspect.319;
|
|
dec Inspect.320;
|
|
let Inspect.308 : Str = CallByName Inspect.30 Inspect.244;
|
|
ret Inspect.308;
|
|
|
|
procedure Inspect.5 (Inspect.150):
|
|
let Inspect.307 : Str = CallByName Inspect.47 Inspect.150;
|
|
let Inspect.304 : {} = Struct {};
|
|
let Inspect.303 : Str = CallByName Inspect.39 Inspect.304;
|
|
let Inspect.302 : Str = CallByName Inspect.245 Inspect.303 Inspect.307;
|
|
dec Inspect.307;
|
|
ret Inspect.302;
|
|
|
|
procedure Inspect.63 (Inspect.295, Inspect.291):
|
|
let Inspect.315 : Str = CallByName Str.3 Inspect.295 Inspect.291;
|
|
ret Inspect.315;
|
|
|
|
procedure Inspect.64 (Inspect.297):
|
|
ret Inspect.297;
|
|
|
|
procedure Num.20 (#Attr.2, #Attr.3):
|
|
let Num.294 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
|
ret Num.294;
|
|
|
|
procedure Num.22 (#Attr.2, #Attr.3):
|
|
let Num.296 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
|
ret Num.296;
|
|
|
|
procedure Num.23 (#Attr.2, #Attr.3):
|
|
let Num.298 : Int1 = lowlevel NumLte #Attr.2 #Attr.3;
|
|
ret Num.298;
|
|
|
|
procedure Num.25 (#Attr.2, #Attr.3):
|
|
let Num.295 : Int1 = lowlevel NumGte #Attr.2 #Attr.3;
|
|
ret Num.295;
|
|
|
|
procedure Num.51 (#Attr.2, #Attr.3):
|
|
let Num.292 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
|
ret Num.292;
|
|
|
|
procedure Num.53 (#Attr.2, #Attr.3):
|
|
let Num.297 : U64 = lowlevel NumAddSaturated #Attr.2 #Attr.3;
|
|
ret Num.297;
|
|
|
|
procedure Num.77 (#Attr.2, #Attr.3):
|
|
let Num.299 : U64 = lowlevel NumSubSaturated #Attr.2 #Attr.3;
|
|
ret Num.299;
|
|
|
|
procedure Str.20 (#Attr.2):
|
|
let Str.456 : Str = lowlevel StrWithCapacity #Attr.2;
|
|
ret Str.456;
|
|
|
|
procedure Str.3 (#Attr.2, #Attr.3):
|
|
let Str.388 : Str = lowlevel StrConcat #Attr.2 #Attr.3;
|
|
ret Str.388;
|
|
|
|
procedure Str.35 (#Attr.2, #Attr.3):
|
|
let Str.446 : U8 = lowlevel StrGetUnsafe #Attr.2 #Attr.3;
|
|
ret Str.446;
|
|
|
|
procedure Str.36 (#Attr.2):
|
|
let Str.408 : U64 = lowlevel StrCountUtf8Bytes #Attr.2;
|
|
ret Str.408;
|
|
|
|
procedure Str.37 (#Attr.2, #Attr.3, #Attr.4):
|
|
let Str.406 : Str = lowlevel StrSubstringUnsafe #Attr.2 #Attr.3 #Attr.4;
|
|
ret Str.406;
|
|
|
|
procedure Str.38 (Str.215, Str.216):
|
|
let Str.402 : [C , C U64] = CallByName Str.66 Str.215 Str.216;
|
|
let Str.415 : U8 = 1i64;
|
|
let Str.416 : U8 = GetTagId Str.402;
|
|
let Str.417 : Int1 = lowlevel Eq Str.415 Str.416;
|
|
if Str.417 then
|
|
let Str.217 : U64 = UnionAtIndex (Id 1) (Index 0) Str.402;
|
|
let Str.411 : U64 = CallByName Str.36 Str.215;
|
|
let Str.412 : U64 = CallByName Str.36 Str.216;
|
|
let Str.410 : U64 = CallByName Num.20 Str.411 Str.412;
|
|
let Str.218 : U64 = CallByName Num.20 Str.410 Str.217;
|
|
let Str.409 : U64 = 0i64;
|
|
inc Str.215;
|
|
let Str.219 : Str = CallByName Str.37 Str.215 Str.409 Str.217;
|
|
let Str.407 : U64 = CallByName Str.36 Str.216;
|
|
let Str.405 : U64 = CallByName Num.51 Str.217 Str.407;
|
|
let Str.220 : Str = CallByName Str.37 Str.215 Str.405 Str.218;
|
|
let Str.404 : {Str, Str} = Struct {Str.220, Str.219};
|
|
let Str.403 : [C {}, C {Str, Str}] = TagId(1) Str.404;
|
|
ret Str.403;
|
|
else
|
|
dec Str.215;
|
|
let Str.414 : {} = Struct {};
|
|
let Str.413 : [C {}, C {Str, Str}] = TagId(0) Str.414;
|
|
ret Str.413;
|
|
|
|
procedure Str.45 (Str.194, Str.195, Str.196):
|
|
inc Str.194;
|
|
let Str.484 : [C {}, C {Str, Str}] = CallByName Str.38 Str.194 Str.195;
|
|
let Str.492 : U8 = 1i64;
|
|
let Str.493 : U8 = GetTagId Str.484;
|
|
let Str.494 : Int1 = lowlevel Eq Str.492 Str.493;
|
|
if Str.494 then
|
|
let Str.491 : {Str, Str} = UnionAtIndex (Id 1) (Index 0) Str.484;
|
|
let Str.198 : Str = StructAtIndex 0 Str.491;
|
|
let Str.197 : Str = StructAtIndex 1 Str.491;
|
|
let Str.489 : U64 = CallByName Str.36 Str.194;
|
|
dec Str.194;
|
|
let Str.488 : Str = CallByName Str.20 Str.489;
|
|
let Str.487 : Str = CallByName Str.3 Str.488 Str.197;
|
|
dec Str.197;
|
|
let Str.486 : Str = CallByName Str.3 Str.487 Str.196;
|
|
let Str.485 : Str = CallByName Str.65 Str.486 Str.198 Str.195 Str.196;
|
|
ret Str.485;
|
|
else
|
|
dec Str.484;
|
|
ret Str.194;
|
|
|
|
procedure Str.65 (Bool.24, Bool.25, Bool.26, Bool.27):
|
|
joinpoint Str.392 Str.199 Str.200 Str.201 Str.202:
|
|
inc Str.200;
|
|
let Str.393 : [C {}, C {Str, Str}] = CallByName Str.38 Str.200 Str.201;
|
|
let Str.399 : U8 = 1i64;
|
|
let Str.400 : U8 = GetTagId Str.393;
|
|
let Str.401 : Int1 = lowlevel Eq Str.399 Str.400;
|
|
if Str.401 then
|
|
dec Str.200;
|
|
let Str.398 : {Str, Str} = UnionAtIndex (Id 1) (Index 0) Str.393;
|
|
let Str.204 : Str = StructAtIndex 0 Str.398;
|
|
let Str.203 : Str = StructAtIndex 1 Str.398;
|
|
let Str.396 : Str = CallByName Str.3 Str.199 Str.203;
|
|
dec Str.203;
|
|
let Str.395 : Str = CallByName Str.3 Str.396 Str.202;
|
|
jump Str.392 Str.395 Str.204 Str.201 Str.202;
|
|
else
|
|
dec Str.201;
|
|
dec Str.202;
|
|
dec Str.393;
|
|
let Str.397 : Str = CallByName Str.3 Str.199 Str.200;
|
|
dec Str.200;
|
|
ret Str.397;
|
|
in
|
|
inc Bool.26;
|
|
inc Bool.27;
|
|
jump Str.392 Bool.24 Bool.25 Bool.26 Bool.27;
|
|
|
|
procedure Str.66 (Str.224, Str.225):
|
|
let Str.226 : U64 = CallByName Str.36 Str.224;
|
|
let Str.227 : U64 = CallByName Str.36 Str.225;
|
|
let Str.228 : U64 = CallByName Num.77 Str.226 Str.227;
|
|
let Str.419 : U64 = 0i64;
|
|
let Str.418 : [C , C U64] = CallByName Str.67 Str.224 Str.225 Str.419 Str.228;
|
|
ret Str.418;
|
|
|
|
procedure Str.67 (Bool.28, Bool.29, Bool.30, Bool.31):
|
|
joinpoint Str.420 Str.229 Str.230 Str.231 Str.232:
|
|
let Str.422 : Int1 = CallByName Num.23 Str.231 Str.232;
|
|
if Str.422 then
|
|
let Str.426 : Int1 = CallByName Str.71 Str.229 Str.231 Str.230;
|
|
if Str.426 then
|
|
dec Str.230;
|
|
dec Str.229;
|
|
let Str.427 : [C , C U64] = TagId(1) Str.231;
|
|
ret Str.427;
|
|
else
|
|
let Str.425 : U64 = 1i64;
|
|
let Str.424 : U64 = CallByName Num.51 Str.231 Str.425;
|
|
jump Str.420 Str.229 Str.230 Str.424 Str.232;
|
|
else
|
|
dec Str.230;
|
|
dec Str.229;
|
|
let Str.421 : [C , C U64] = TagId(0) ;
|
|
ret Str.421;
|
|
in
|
|
inc Bool.29;
|
|
inc Bool.28;
|
|
jump Str.420 Bool.28 Bool.29 Bool.30 Bool.31;
|
|
|
|
procedure Str.70 (Str.255, Str.256):
|
|
let Str.451 : Int1 = CallByName Num.22 Str.255 Str.256;
|
|
if Str.451 then
|
|
ret Str.255;
|
|
else
|
|
ret Str.256;
|
|
|
|
procedure Str.71 (Str.257, Str.258, Str.259):
|
|
let Str.260 : U64 = CallByName Str.36 Str.257;
|
|
let Str.261 : U64 = CallByName Str.36 Str.259;
|
|
let Str.449 : U64 = CallByName Num.53 Str.258 Str.261;
|
|
let Str.262 : U64 = CallByName Str.70 Str.449 Str.260;
|
|
let Str.448 : U64 = 0i64;
|
|
inc Str.257;
|
|
inc Str.259;
|
|
let Str.429 : {U64, Str, U64, Str, U64, U64} = Struct {Str.262, Str.257, Str.258, Str.259, Str.448, Str.261};
|
|
let Str.428 : Int1 = CallByName Str.72 Str.429;
|
|
ret Str.428;
|
|
|
|
procedure Str.72 (Str.263):
|
|
let Str.269 : U64 = StructAtIndex 0 Str.263;
|
|
let Str.264 : Str = StructAtIndex 1 Str.263;
|
|
let Str.265 : U64 = StructAtIndex 2 Str.263;
|
|
let Str.266 : Str = StructAtIndex 3 Str.263;
|
|
let Str.267 : U64 = StructAtIndex 4 Str.263;
|
|
let Str.268 : U64 = StructAtIndex 5 Str.263;
|
|
let Str.270 : Int1 = CallByName Num.25 Str.265 Str.269;
|
|
if Str.270 then
|
|
dec Str.266;
|
|
dec Str.264;
|
|
let Str.271 : Int1 = CallByName Bool.9 Str.267 Str.268;
|
|
ret Str.271;
|
|
else
|
|
let Str.444 : U8 = CallByName Str.35 Str.264 Str.265;
|
|
let Str.445 : U8 = CallByName Str.35 Str.266 Str.267;
|
|
let Str.272 : Int1 = CallByName Bool.9 Str.444 Str.445;
|
|
let Str.434 : U64 = StructAtIndex 0 Str.263;
|
|
let Str.435 : Str = StructAtIndex 1 Str.263;
|
|
let Str.437 : Str = StructAtIndex 3 Str.263;
|
|
let Str.439 : U64 = StructAtIndex 5 Str.263;
|
|
let Str.443 : U64 = 1i64;
|
|
let Str.441 : U64 = CallByName Num.51 Str.267 Str.443;
|
|
let Str.442 : U64 = 1i64;
|
|
let Str.440 : U64 = CallByName Num.51 Str.265 Str.442;
|
|
let Str.433 : {U64, Str, U64, Str, U64, U64} = Struct {Str.434, Str.435, Str.440, Str.437, Str.441, Str.439};
|
|
let Str.273 : Int1 = CallByName Str.72 Str.433;
|
|
if Str.272 then
|
|
ret Str.273;
|
|
else
|
|
let Str.431 : Int1 = CallByName Bool.1;
|
|
ret Str.431;
|
|
|
|
procedure Test.0 ():
|
|
let Test.2 : Str = "abc";
|
|
let Test.1 : Str = CallByName Inspect.33 Test.2;
|
|
ret Test.1;
|