@specy/risc-v 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.js +559 -544
  2. package/dist/index.mjs +559 -544
  3. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -3286,8 +3286,8 @@ var asr_JsRiscV__clinit_ = () => {
3286
3286
  jnc_CodingErrorAction__clinit_();
3287
3287
  jnc_CoderResult__clinit_();
3288
3288
  jn_ByteOrder__clinit_();
3289
- asrjt_Float32__clinit_();
3290
3289
  asrjt_Float64__clinit_();
3290
+ asrjt_Float32__clinit_();
3291
3291
  jm_BigInteger__clinit_();
3292
3292
  asrjo_Arithmetic__clinit_();
3293
3293
  asrj_RoundingMode__clinit_();
@@ -7447,25 +7447,20 @@ function asr_JsCompilationResult() {
7447
7447
  }
7448
7448
  var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
7449
7449
  let var$2, var$3, var$4;
7450
- var$2 = asr_ErrorList_generateReport($errorReport, 1);
7451
- var$3 = asr_ErrorList_generateReport($errorReport, 0);
7452
- var$4 = new jl_StringBuilder();
7453
- jl_AbstractStringBuilder__init_(var$4);
7454
- jl_StringBuilder_append(jl_StringBuilder_append(var$4, var$2), var$3);
7455
- $this.$report = jl_AbstractStringBuilder_toString(var$4);
7450
+ $this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
7456
7451
  $errorReport = ju_Collection_stream($errorReport.$messages);
7457
- var$4 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7458
- var$4.$_06 = $this;
7459
- $errorReport = jusi_SimpleStreamImpl_map($errorReport, var$4);
7460
- var$4 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7452
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7453
+ var$2.$_06 = $this;
7454
+ $errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
7455
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7461
7456
  $errorReport = $errorReport;
7462
7457
  var$3 = ju_ArrayList__init_();
7463
- var$2 = $errorReport;
7458
+ var$4 = $errorReport;
7464
7459
  while (true) {
7465
7460
  $errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7466
- $errorReport.$_08 = var$4;
7461
+ $errorReport.$_08 = var$2;
7467
7462
  $errorReport.$_12 = var$3;
7468
- if (!jusi_WrappingStreamImpl_next(var$2, $errorReport))
7463
+ if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
7469
7464
  break;
7470
7465
  }
7471
7466
  $this.$errors1 = var$3;
@@ -7493,7 +7488,7 @@ function asr_AssemblyException() {
7493
7488
  this.$errs = null;
7494
7489
  }
7495
7490
  var asr_AssemblyException__init_0 = ($this, $errs) => {
7496
- jl_Throwable__init_($this);
7491
+ jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
7497
7492
  $this.$errs = $errs;
7498
7493
  };
7499
7494
  var asr_AssemblyException__init_ = (var_0) => {
@@ -10102,28 +10097,30 @@ var asrri_JAL__init_ = () => {
10102
10097
  return var_0;
10103
10098
  };
10104
10099
  var asrri_JAL_simulate = ($this, $statement) => {
10105
- let $operands, $address, var$4, var$5, var$6, var$7, var$8, var$9, var$10, var$11;
10100
+ let $operands, $address, var$4, var$5, var$6, var$7, var$8, var$9, var$10;
10106
10101
  $operands = $statement.$operands.data;
10107
10102
  asrr_InstructionSet_processReturnAddress($operands[0]);
10108
10103
  $address = (asrrh_RegisterFile_getProgramCounter() - 4 | 0) + $operands[1] | 0;
10109
- var$4 = new asrrh_StackFrame();
10110
- var$5 = asrrh_RegisterFile_getProgramCounter();
10111
- var$6 = Long_lo(asrrh_RegisterFile_getStackPointerRegister().$getValue());
10112
- var$7 = Long_lo(asrrh_RegisterBlock_getRegister(asrrh_RegisterFile_instance, $rt_s(212)).$getValue());
10113
- var$8 = asrrh_RegisterFile_instance.$regFile.data.length;
10114
- var$9 = $rt_createIntArray(var$8);
10115
- var$10 = var$9.data;
10116
- var$11 = 0;
10117
- while (var$11 < var$8) {
10118
- var$10[var$11] = Long_lo(asrrh_RegisterFile_instance.$regFile.data[var$11].$getValue());
10119
- var$11 = var$11 + 1 | 0;
10120
- }
10121
- var$4.$pc4 = var$5;
10122
- var$4.$sp0 = var$6;
10123
- var$4.$fp0 = var$7;
10124
- var$4.$toAddress = $address;
10125
- var$4.$registers0 = var$9;
10126
- ju_ArrayList_add(asrrh_Stack_callStack, var$4);
10104
+ if ($operands[0] == 1) {
10105
+ var$4 = new asrrh_StackFrame();
10106
+ var$5 = asrrh_RegisterFile_getProgramCounter();
10107
+ var$6 = Long_lo(asrrh_RegisterFile_getStackPointerRegister().$getValue());
10108
+ var$7 = Long_lo(asrrh_RegisterBlock_getRegister(asrrh_RegisterFile_instance, $rt_s(212)).$getValue());
10109
+ var$8 = asrrh_RegisterFile_instance.$regFile.data.length;
10110
+ $operands = $rt_createIntArray(var$8);
10111
+ var$9 = $operands.data;
10112
+ var$10 = 0;
10113
+ while (var$10 < var$8) {
10114
+ var$9[var$10] = Long_lo(asrrh_RegisterFile_instance.$regFile.data[var$10].$getValue());
10115
+ var$10 = var$10 + 1 | 0;
10116
+ }
10117
+ var$4.$pc4 = var$5;
10118
+ var$4.$sp0 = var$6;
10119
+ var$4.$fp0 = var$7;
10120
+ var$4.$toAddress = $address;
10121
+ var$4.$registers0 = $operands;
10122
+ ju_ArrayList_add(asrrh_Stack_callStack, var$4);
10123
+ }
10127
10124
  asrr_InstructionSet_processJump($address);
10128
10125
  };
10129
10126
  var asrri_JALR = $rt_classWithoutFields(asrr_BasicInstruction);
@@ -11828,6 +11825,15 @@ var asr_ErrorList_getErrorLimit = ($this) => {
11828
11825
  asr_Globals_$callClinit();
11829
11826
  return asr_Globals_maximumErrorMessages;
11830
11827
  };
11828
+ var asr_ErrorList_generateErrorAndWarningReport = ($this) => {
11829
+ let var$1, var$2, var$3;
11830
+ var$1 = asr_ErrorList_generateReport($this, 1);
11831
+ var$2 = asr_ErrorList_generateReport($this, 0);
11832
+ var$3 = new jl_StringBuilder();
11833
+ jl_AbstractStringBuilder__init_(var$3);
11834
+ jl_StringBuilder_append(jl_StringBuilder_append(var$3, var$1), var$2);
11835
+ return jl_AbstractStringBuilder_toString(var$3);
11836
+ };
11831
11837
  var asr_ErrorList_generateReport = ($this, $isWarning) => {
11832
11838
  let $report, var$3, $m;
11833
11839
  $report = jl_StringBuilder__init_0($rt_s(3));
@@ -23506,17 +23512,60 @@ var asr_ErrorMessage__init_1 = ($this, $isWarning, $sourceProgram, $line, $posit
23506
23512
  }
23507
23513
  $this.$macroExpansionHistory = $sourceProgram;
23508
23514
  };
23509
- var asr_ErrorMessage__init_2 = (var_0, var_1, var_2, var_3, var_4) => {
23515
+ var asr_ErrorMessage__init_3 = (var_0, var_1, var_2, var_3, var_4) => {
23510
23516
  let var_5 = new asr_ErrorMessage();
23511
23517
  asr_ErrorMessage__init_1(var_5, var_0, var_1, var_2, var_3, var_4);
23512
23518
  return var_5;
23513
23519
  };
23520
+ var asr_ErrorMessage__init_2 = ($this, $statement, $message) => {
23521
+ let var$3, var$4, $defineLine, var$6, $$je;
23522
+ $this.$isWarning = 0;
23523
+ var$3 = $statement.$sourceProgram0;
23524
+ $this.$filename0 = var$3 === null ? $rt_s(3) : var$3.$filename;
23525
+ $this.$position2 = 0;
23526
+ $this.$message0 = $message;
23527
+ var$3 = $statement.$source;
23528
+ $message = jur_Pattern_matcher(jur_Pattern_compile($rt_s(1495)), var$3);
23529
+ var$4 = jl_String_trim(jl_String__init_0(var$3));
23530
+ $defineLine = ju_ArrayList__init_();
23531
+ a: {
23532
+ while (true) {
23533
+ if (!jur_Matcher_find($message))
23534
+ break a;
23535
+ var$3 = jur_Matcher_group($message, 0);
23536
+ if (jl_String_indexOf0(var$4, var$3))
23537
+ break a;
23538
+ try {
23539
+ ju_ArrayList_add($defineLine, jl_Integer_valueOf(jl_Integer_parseInt0(jl_String_substring(var$3, 1, jl_String_length(var$3) - 1 | 0))));
23540
+ } catch ($$e) {
23541
+ $$je = $rt_wrapException($$e);
23542
+ if ($$je instanceof jl_NumberFormatException) {
23543
+ break;
23544
+ } else {
23545
+ throw $$e;
23546
+ }
23547
+ }
23548
+ var$4 = jl_String_trim(jl_String_substring0(var$4, var$3.$nativeString.length));
23549
+ }
23550
+ }
23551
+ if (!$defineLine.$size0) {
23552
+ $this.$line = $statement.$sourceLine0;
23553
+ $this.$macroExpansionHistory = $rt_s(3);
23554
+ } else {
23555
+ $this.$line = ju_ArrayList_get($defineLine, 0).$value1;
23556
+ var$6 = $statement.$sourceLine0;
23557
+ $statement = new jl_StringBuilder();
23558
+ jl_AbstractStringBuilder__init_($statement);
23559
+ jl_AbstractStringBuilder_append($statement, var$6);
23560
+ $this.$macroExpansionHistory = jl_AbstractStringBuilder_toString($statement);
23561
+ }
23562
+ };
23514
23563
  var asr_ErrorMessage_generateReport = ($this) => {
23515
23564
  let var$1, var$2, var$3, var$4;
23516
- var$1 = !$this.$isWarning ? $rt_s(1495) : $rt_s(1496);
23565
+ var$1 = !$this.$isWarning ? $rt_s(1496) : $rt_s(1497);
23517
23566
  var$2 = new jl_StringBuilder();
23518
23567
  jl_AbstractStringBuilder__init_(var$2);
23519
- jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1497));
23568
+ jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1498));
23520
23569
  var$1 = jl_AbstractStringBuilder_toString(var$2);
23521
23570
  if ($this.$filename0.$nativeString.length > 0) {
23522
23571
  var$3 = $this.$filename0;
@@ -23530,14 +23579,14 @@ var asr_ErrorMessage_generateReport = ($this) => {
23530
23579
  var$4 = $this.$line;
23531
23580
  var$3 = new jl_StringBuilder();
23532
23581
  jl_AbstractStringBuilder__init_(var$3);
23533
- jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, var$1), $rt_s(1498)), var$2), var$4);
23582
+ jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, var$1), $rt_s(1499)), var$2), var$4);
23534
23583
  var$1 = jl_AbstractStringBuilder_toString(var$3);
23535
23584
  }
23536
23585
  var$4 = $this.$position2;
23537
23586
  if (var$4 > 0) {
23538
23587
  var$2 = new jl_StringBuilder();
23539
23588
  jl_AbstractStringBuilder__init_(var$2);
23540
- jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1499)), var$4);
23589
+ jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1500)), var$4);
23541
23590
  var$1 = jl_AbstractStringBuilder_toString(var$2);
23542
23591
  }
23543
23592
  var$3 = $this.$message0;
@@ -23922,9 +23971,9 @@ var asrs_Simulator$SimThread_handleTrap = ($this, $se, $pc) => {
23922
23971
  let $utvec, $base, $exceptionHandler, var$6, $$je;
23923
23972
  $utvec = asrs_Simulator$SimThread_$assertionsDisabled;
23924
23973
  if (!$utvec && $se.$cause == -1)
23925
- $rt_throw(jl_AssertionError__init_($rt_s(1500)));
23926
- if (!$utvec && $se.$cause < 0)
23927
23974
  $rt_throw(jl_AssertionError__init_($rt_s(1501)));
23975
+ if (!$utvec && $se.$cause < 0)
23976
+ $rt_throw(jl_AssertionError__init_($rt_s(1502)));
23928
23977
  a: {
23929
23978
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1113), Long_fromInt($se.$cause));
23930
23979
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(676), Long_fromInt($pc));
@@ -23963,10 +24012,10 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
23963
24012
  let $mode, $code, $utvec, $base, $exceptionHandler, var$9, $$je;
23964
24013
  $mode = asrs_Simulator$SimThread_$assertionsDisabled;
23965
24014
  if (!$mode && !($cause & -2147483648))
23966
- $rt_throw(jl_AssertionError__init_($rt_s(1502)));
24015
+ $rt_throw(jl_AssertionError__init_($rt_s(1503)));
23967
24016
  $code = $cause & 2147483647;
23968
24017
  if (!$mode && !(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(675)) & 1 && asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1110)) & 1 << $code))
23969
- $rt_throw(jl_AssertionError__init_($rt_s(1503)));
24018
+ $rt_throw(jl_AssertionError__init_($rt_s(1504)));
23970
24019
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1113), Long_fromInt($cause));
23971
24020
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(676), Long_fromInt($pc));
23972
24021
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1114), Long_fromInt($value));
@@ -24001,7 +24050,7 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
24001
24050
  var$9.$cause = -1;
24002
24051
  var$9.$value5 = 0;
24003
24052
  var$9.$message = null;
24004
- var$9.$message = asr_ErrorMessage__init_0(null, 0, 0, $rt_s(1504));
24053
+ var$9.$message = asr_ErrorMessage__init_0(null, 0, 0, $rt_s(1505));
24005
24054
  $this.$pe = var$9;
24006
24055
  asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_EXCEPTION);
24007
24056
  return 0;
@@ -24268,7 +24317,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
24268
24317
  throw $$e;
24269
24318
  }
24270
24319
  }
24271
- $tmp_0 = $e.$type1 != 5 ? asr_SimulationException__init_5($rt_s(1505), 0) : asr_SimulationException__init_5($rt_s(1506), 1);
24320
+ $tmp_0 = $e.$type1 != 5 ? asr_SimulationException__init_5($rt_s(1506), 0) : asr_SimulationException__init_5($rt_s(1507), 1);
24272
24321
  if (!asrrh_InterruptController_registerSynchronousTrap($tmp_0, $this.$pc0)) {
24273
24322
  $this.$pe = $tmp_0;
24274
24323
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(676), Long_fromInt($this.$pc0));
@@ -24295,7 +24344,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
24295
24344
  $instruction = new asr_SimulationException();
24296
24345
  $e = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
24297
24346
  $tmp_0 = jl_StringBuilder__init_();
24298
- jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($tmp_0, $rt_s(1507)), $e), var$5);
24347
+ jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($tmp_0, $rt_s(1508)), $e), var$5);
24299
24348
  asr_SimulationException__init_4($instruction, $se, jl_StringBuilder_toString($tmp_0), 2);
24300
24349
  $rt_throw($instruction);
24301
24350
  } catch ($$e) {
@@ -24813,7 +24862,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24813
24862
  $machineList = ju_ArrayList__init_();
24814
24863
  $this.$errors = asr_ErrorList__init_();
24815
24864
  if (asr_Globals_debug)
24816
- otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1508));
24865
+ otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1509));
24817
24866
  $statement = $tokenizedProgramFiles;
24818
24867
  $theTokenList = ju_AbstractList_iterator($statement);
24819
24868
  a: {
@@ -24857,7 +24906,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24857
24906
  $tokenizedProgramFiles = $this.$errors;
24858
24907
  $sourceLineList = new asr_ErrorMessage();
24859
24908
  $tokenList = $this.$fileCurrentlyBeingAssembled;
24860
- asr_ErrorMessage__init_($sourceLineList, $tokenList, asra_Macro_getFromLine(asra_MacroPool_getCurrent(asr_RISCVprogram_getLocalMacroPool($tokenList))), 0, $rt_s(1509));
24909
+ asr_ErrorMessage__init_($sourceLineList, $tokenList, asra_Macro_getFromLine(asra_MacroPool_getCurrent(asr_RISCVprogram_getLocalMacroPool($tokenList))), 0, $rt_s(1510));
24861
24910
  asr_ErrorList_add($tokenizedProgramFiles, $sourceLineList);
24862
24911
  }
24863
24912
  asra_Assembler_transferGlobals($this);
@@ -24871,7 +24920,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24871
24920
  if (asr_ErrorList_errorsOccurred($this.$errors))
24872
24921
  $rt_throw(asr_AssemblyException__init_($this.$errors));
24873
24922
  if (asr_Globals_debug)
24874
- otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1510));
24923
+ otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1511));
24875
24924
  $statements = ju_AbstractList_iterator($statement);
24876
24925
  c: {
24877
24926
  d: while (true) {
@@ -24906,7 +24955,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24906
24955
  if (asr_Globals_debug) {
24907
24956
  $tokenList = jl_System_out();
24908
24957
  $tokenizedProgramFiles = jl_StringBuilder__init_();
24909
- jl_StringBuilder_append(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1511)), $instruction);
24958
+ jl_StringBuilder_append(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1512)), $instruction);
24910
24959
  $tokenizedProgramFiles = jl_StringBuilder_toString($tokenizedProgramFiles);
24911
24960
  otcic_JsConsolePrintStream_println($tokenList, $tokenizedProgramFiles);
24912
24961
  }
@@ -24925,7 +24974,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24925
24974
  $rt_throw(asr_AssemblyException__init_($this.$errors));
24926
24975
  }
24927
24976
  if (asr_Globals_debug)
24928
- otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1512));
24977
+ otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1513));
24929
24978
  $tokenList = ju_AbstractList_iterator($machineList);
24930
24979
  f: {
24931
24980
  while (true) {
@@ -24957,7 +25006,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24957
25006
  $i = asra_Token_getStartPos($t);
24958
25007
  $sourceLine = asrrh_AddressErrorException_getAddress($e);
24959
25008
  $tokenizedProgramFiles = jl_StringBuilder__init_();
24960
- jl_StringBuilder_append0(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1513)), $sourceLine);
25009
+ jl_StringBuilder_append0(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1514)), $sourceLine);
24961
25010
  asr_ErrorMessage__init_($statements, $t_0, $extendedAssemblerEnabled, $i, jl_StringBuilder_toString($tokenizedProgramFiles));
24962
25011
  asr_ErrorList_add($parsedList, $statements);
24963
25012
  }
@@ -24988,14 +25037,14 @@ var asra_Assembler_catchDuplicateAddresses = ($this, $instructions, $errors) =>
24988
25037
  $ps2 = $ps1.$sourceProgram0;
24989
25038
  var$11 = $ps2 === null ? $rt_s(3) : $ps2.$filename;
24990
25039
  var$12 = $ps1.$sourceLine0;
24991
- $ps2 = !asrrh_Memory_inTextSegment(var$7) ? $rt_s(1514) : $rt_s(1422);
25040
+ $ps2 = !asrrh_Memory_inTextSegment(var$7) ? $rt_s(1515) : $rt_s(1422);
24992
25041
  $ps1 = new jl_StringBuilder();
24993
25042
  jl_AbstractStringBuilder__init_($ps1);
24994
- var$13 = jl_StringBuilder_append($ps1, $rt_s(1515));
25043
+ var$13 = jl_StringBuilder_append($ps1, $rt_s(1516));
24995
25044
  jl_AbstractStringBuilder_append(var$13, var$7);
24996
- var$13 = jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1516)), var$11), $rt_s(1498));
25045
+ var$13 = jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1517)), var$11), $rt_s(1499));
24997
25046
  jl_AbstractStringBuilder_append(var$13, var$12);
24998
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1517)), $ps2), $rt_s(1518));
25047
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1518)), $ps2), $rt_s(1519));
24999
25048
  asr_ErrorMessage__init_(var$8, var$9, var$10, 0, jl_AbstractStringBuilder_toString($ps1));
25000
25049
  asr_ErrorList_add($errors, var$8);
25001
25050
  }
@@ -25077,7 +25126,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25077
25126
  $i = 0;
25078
25127
  }
25079
25128
  if ($i)
25080
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, asra_TokenList_get($instrMatches, 0).$sourceLine, 0, $rt_s(1519)));
25129
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, asra_TokenList_get($instrMatches, 0).$sourceLine, 0, $rt_s(1520)));
25081
25130
  else {
25082
25131
  $i = $macro.$fromLine + 1 | 0;
25083
25132
  var$17 = Long_fromInt($counter);
@@ -25090,7 +25139,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25090
25139
  $counter = ($i - $macro.$fromLine | 0) + asra_Macro_getOriginalFromLine($macro) | 0;
25091
25140
  $inst = jl_String_trim($substituted);
25092
25141
  $programStatement = jl_StringBuilder__init_();
25093
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append1($programStatement, 60), $counter), $rt_s(1520)), $inst);
25142
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append1($programStatement, 60), $counter), $rt_s(1521)), $inst);
25094
25143
  $statements = asra_Assembler_parseLine($this, $tokenList2, jl_StringBuilder_toString($programStatement), $sourceLineNumber, $extendedAssemblerEnabled);
25095
25144
  if ($statements !== null)
25096
25145
  ju_AbstractCollection_addAll($source, $statements);
@@ -25108,7 +25157,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25108
25157
  $i = asra_Token_getStartPos($token);
25109
25158
  $macro = asra_Token_getValue($token);
25110
25159
  $inst = jl_StringBuilder__init_();
25111
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($inst, $rt_s(1521)), $macro), $rt_s(1522));
25160
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($inst, $rt_s(1522)), $macro), $rt_s(1523));
25112
25161
  asr_ErrorMessage__init_1($source, 1, $instrMatches, $extendedAssemblerEnabled, $i, jl_StringBuilder_toString($inst));
25113
25162
  asr_ErrorList_add($tokenList, $source);
25114
25163
  return null;
@@ -25123,7 +25172,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25123
25172
  return $ret;
25124
25173
  $inst = asra_OperandFormat_bestOperandMatch($tokens, $instrMatches);
25125
25174
  if ($inst instanceof asrr_ExtendedInstruction && !$extendedAssemblerEnabled)
25126
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1523)));
25175
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1524)));
25127
25176
  if (asra_OperandFormat_tokenOperandMatch($tokens, $inst, $this.$errors)) {
25128
25177
  $programStatement = asr_ProgramStatement__init_0($this.$fileCurrentlyBeingAssembled, $source, $tokenList, $tokens, $inst, asra_Assembler$AddressSpace_get($this.$textAddress), $sourceLineNumber);
25129
25178
  $instLength = $inst.$getInstructionLength();
@@ -25149,7 +25198,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25149
25198
  $i = asra_Token_getSourceLine($token);
25150
25199
  $section = jl_String_valueOf($direct);
25151
25200
  $str = jl_StringBuilder__init_();
25152
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append($str, $rt_s(1524)), $i), $rt_s(1525)), $section);
25201
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append($str, $rt_s(1525)), $i), $rt_s(1526)), $section);
25153
25202
  $section = jl_StringBuilder_toString($str);
25154
25203
  otcic_JsConsolePrintStream_println($label, $section);
25155
25204
  }
@@ -25161,7 +25210,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25161
25210
  $size = asra_Token_getStartPos($token);
25162
25211
  $token = asra_Token_getValue($token);
25163
25212
  $section = jl_StringBuilder__init_();
25164
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1526));
25213
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1527));
25165
25214
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25166
25215
  asr_ErrorList_add($tokens, $direct);
25167
25216
  return;
@@ -25178,7 +25227,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25178
25227
  $size = asra_Token_getStartPos($token);
25179
25228
  $token = asra_Token_getValue($token);
25180
25229
  $section = jl_StringBuilder__init_();
25181
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1527));
25230
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1528));
25182
25231
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25183
25232
  asr_ErrorList_add($tokens, $direct);
25184
25233
  return;
@@ -25191,13 +25240,13 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25191
25240
  $size = asra_Token_getStartPos(asra_TokenList_get($tokens, 1));
25192
25241
  $tokens = asra_Token_getValue(asra_TokenList_get($tokens, 1));
25193
25242
  $token = jl_StringBuilder__init_();
25194
- jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1528)), $tokens), 34);
25243
+ jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1529)), $tokens), 34);
25195
25244
  asr_ErrorMessage__init_($label, $section, $i, $size, jl_StringBuilder_toString($token));
25196
25245
  asr_ErrorList_add($direct, $label);
25197
25246
  return;
25198
25247
  }
25199
25248
  if ($this.$inMacroSegment) {
25200
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1529)));
25249
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1530)));
25201
25250
  return;
25202
25251
  }
25203
25252
  $this.$inMacroSegment = 1;
@@ -25215,7 +25264,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25215
25264
  $size = asra_Token_getStartPos($arg);
25216
25265
  $label = asra_Token_getValue($arg);
25217
25266
  $section = jl_StringBuilder__init_();
25218
- jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($section, $rt_s(1530)), $label), 39);
25267
+ jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($section, $rt_s(1531)), $label), 39);
25219
25268
  asr_ErrorMessage__init_($token, $direct, $i, $size, jl_StringBuilder_toString($section));
25220
25269
  asr_ErrorList_add($tokens, $token);
25221
25270
  return;
@@ -25228,7 +25277,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25228
25277
  }
25229
25278
  if ($direct === asra_Directives_END_MACRO) {
25230
25279
  if (asra_TokenList_size($tokens) > 1) {
25231
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1531)));
25280
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1532)));
25232
25281
  return;
25233
25282
  }
25234
25283
  if ($this.$inMacroSegment) {
@@ -25236,7 +25285,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25236
25285
  asra_MacroPool_commitMacro(asr_RISCVprogram_getLocalMacroPool($this.$fileCurrentlyBeingAssembled), $token);
25237
25286
  break a;
25238
25287
  }
25239
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1532)));
25288
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1533)));
25240
25289
  return;
25241
25290
  }
25242
25291
  if ($this.$inMacroSegment)
@@ -25262,15 +25311,15 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25262
25311
  }
25263
25312
  if ($direct === asra_Directives_SECTION) {
25264
25313
  if (asra_TokenList_size($tokens) < 2) {
25265
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_2(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1533)));
25314
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_3(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1534)));
25266
25315
  break a;
25267
25316
  }
25268
25317
  $section = asra_TokenList_get($tokens, 1);
25269
25318
  if (asra_Token_getType($section) !== asra_TokenTypes_QUOTED_STRING && asra_Token_getType($section) !== asra_TokenTypes_IDENTIFIER)
25270
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1534)));
25319
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1535)));
25271
25320
  else {
25272
25321
  $str = asra_Token_getValue($section);
25273
- if (!jl_String_startsWith($str, $rt_s(1420)) && !jl_String_startsWith($str, $rt_s(1535)) && !jl_String_startsWith($str, $rt_s(1536))) {
25322
+ if (!jl_String_startsWith($str, $rt_s(1420)) && !jl_String_startsWith($str, $rt_s(1536)) && !jl_String_startsWith($str, $rt_s(1537))) {
25274
25323
  if (jl_String_startsWith($str, $rt_s(1422)))
25275
25324
  $this.$inDataSegment0 = 0;
25276
25325
  else {
@@ -25280,7 +25329,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25280
25329
  $size = asra_Token_getSourceLine($token);
25281
25330
  $value = asra_Token_getStartPos($token);
25282
25331
  $token = jl_StringBuilder__init_();
25283
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1537)), $str), $rt_s(1538));
25332
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1538)), $str), $rt_s(1539));
25284
25333
  asr_ErrorMessage__init_1($direct, 1, $label, $size, $value, jl_StringBuilder_toString($token));
25285
25334
  asr_ErrorList_add($tokens, $direct);
25286
25335
  }
@@ -25314,7 +25363,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25314
25363
  $size = asra_Token_getStartPos($token);
25315
25364
  $token = asra_Token_getValue($token);
25316
25365
  $section = jl_StringBuilder__init_();
25317
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1539));
25366
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1540));
25318
25367
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25319
25368
  asr_ErrorList_add($tokens, $direct);
25320
25369
  return;
@@ -25322,7 +25371,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25322
25371
  if (asra_TokenTypes_isIntegerTokenType(asra_Token_getType(asra_TokenList_get($tokens, 1))) && asru_Binary_stringToInt(asra_Token_getValue(asra_TokenList_get($tokens, 1))) >= 0) {
25323
25372
  $value = asru_Binary_stringToInt(asra_Token_getValue(asra_TokenList_get($tokens, 1)));
25324
25373
  if ($value < 2 && !$this.$inDataSegment0) {
25325
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_2(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1540)));
25374
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_3(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1541)));
25326
25375
  $tokens = $this.$dataAddress;
25327
25376
  asra_Assembler$AddressSpace_set($tokens, asra_Assembler_alignToBoundary($this, asra_Assembler$AddressSpace_get($tokens), 4));
25328
25377
  } else if (!$value)
@@ -25340,7 +25389,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25340
25389
  $size = asra_Token_getStartPos($token);
25341
25390
  $token = asra_Token_getValue($token);
25342
25391
  $section = jl_StringBuilder__init_();
25343
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1541));
25392
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1542));
25344
25393
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25345
25394
  asr_ErrorList_add($tokens, $direct);
25346
25395
  return;
@@ -25356,7 +25405,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25356
25405
  $size = asra_Token_getStartPos($token);
25357
25406
  $token = asra_Token_getValue($token);
25358
25407
  $section = jl_StringBuilder__init_();
25359
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1539));
25408
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1540));
25360
25409
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25361
25410
  asr_ErrorList_add($tokens, $direct);
25362
25411
  return;
@@ -25373,7 +25422,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25373
25422
  $size = asra_Token_getStartPos($token);
25374
25423
  $token = asra_Token_getValue($token);
25375
25424
  $section = jl_StringBuilder__init_();
25376
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1541));
25425
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1542));
25377
25426
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25378
25427
  asr_ErrorList_add($tokens, $direct);
25379
25428
  return;
@@ -25387,7 +25436,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25387
25436
  $size = asra_Token_getStartPos($token);
25388
25437
  $token = asra_Token_getValue($token);
25389
25438
  $section = jl_StringBuilder__init_();
25390
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1542));
25439
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1543));
25391
25440
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25392
25441
  asr_ErrorList_add($tokens, $direct);
25393
25442
  return;
@@ -25407,7 +25456,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25407
25456
  $size = asra_Token_getStartPos($token);
25408
25457
  $token = asra_Token_getValue($token);
25409
25458
  $section = jl_StringBuilder__init_();
25410
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1543));
25459
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1544));
25411
25460
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25412
25461
  asr_ErrorList_add($tokens, $direct);
25413
25462
  return;
@@ -25420,7 +25469,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25420
25469
  $size = asra_Token_getStartPos($token);
25421
25470
  $token = asra_Token_getValue($token);
25422
25471
  $section = jl_StringBuilder__init_();
25423
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1544));
25472
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1545));
25424
25473
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25425
25474
  asr_ErrorList_add($tokens, $direct);
25426
25475
  break a;
@@ -25433,7 +25482,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25433
25482
  $size = asra_Token_getStartPos($token);
25434
25483
  $token = asra_Token_getValue($token);
25435
25484
  $section = jl_StringBuilder__init_();
25436
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1527));
25485
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1528));
25437
25486
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25438
25487
  asr_ErrorList_add($tokens, $direct);
25439
25488
  return;
@@ -25449,7 +25498,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25449
25498
  $size = asra_Token_getStartPos($token);
25450
25499
  $token = asra_Token_getValue($token);
25451
25500
  $section = jl_StringBuilder__init_();
25452
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1545));
25501
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1546));
25453
25502
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25454
25503
  asr_ErrorList_add($tokens, $direct);
25455
25504
  return;
@@ -25475,7 +25524,7 @@ var asra_Assembler_transferGlobals = ($this) => {
25475
25524
  $symtabEntry = new jl_StringBuilder();
25476
25525
  jl_AbstractStringBuilder__init_($symtabEntry);
25477
25526
  jl_AbstractStringBuilder_append0($symtabEntry, 34);
25478
- jl_StringBuilder_append(jl_StringBuilder_append($symtabEntry, $label), $rt_s(1546));
25527
+ jl_StringBuilder_append(jl_StringBuilder_append($symtabEntry, $label), $rt_s(1547));
25479
25528
  asr_ErrorMessage__init_(var$5, var$6, var$7, var$8, jl_AbstractStringBuilder_toString($symtabEntry));
25480
25529
  asr_ErrorList_add(var$4, var$5);
25481
25530
  } else {
@@ -25490,7 +25539,7 @@ var asra_Assembler_transferGlobals = ($this) => {
25490
25539
  $label = new jl_StringBuilder();
25491
25540
  jl_AbstractStringBuilder__init_($label);
25492
25541
  jl_AbstractStringBuilder_append0($label, 34);
25493
- jl_StringBuilder_append(jl_StringBuilder_append($label, $symtabEntry), $rt_s(1547));
25542
+ jl_StringBuilder_append(jl_StringBuilder_append($label, $symtabEntry), $rt_s(1548));
25494
25543
  asr_ErrorMessage__init_(var$5, var$6, var$7, var$8, jl_AbstractStringBuilder_toString($label));
25495
25544
  asr_ErrorList_add(var$4, var$5);
25496
25545
  } else {
@@ -25512,7 +25561,7 @@ var asra_Assembler_transferGlobals = ($this) => {
25512
25561
  var$4 = var$6.$filename1;
25513
25562
  var$6 = new jl_StringBuilder();
25514
25563
  jl_AbstractStringBuilder__init_(var$6);
25515
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(79)), var$5), $rt_s(1548)), var$4), $rt_s(82));
25564
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(79)), var$5), $rt_s(1549)), var$4), $rt_s(82));
25516
25565
  var$5 = jl_AbstractStringBuilder_toString(var$6);
25517
25566
  otcic_JsConsolePrintStream_println(var$9, var$5);
25518
25567
  }
@@ -25546,7 +25595,7 @@ var asra_Assembler_matchInstruction = ($this, $token) => {
25546
25595
  var$8 = $token.$value;
25547
25596
  $token = new jl_StringBuilder();
25548
25597
  jl_AbstractStringBuilder__init_($token);
25549
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1549)), var$8), $rt_s(1550));
25598
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1550)), var$8), $rt_s(1551));
25550
25599
  asr_ErrorMessage__init_(var$4, var$5, var$6, var$7, jl_AbstractStringBuilder_toString($token));
25551
25600
  asr_ErrorList_add(var$3, var$4);
25552
25601
  }
@@ -25574,7 +25623,7 @@ var asra_Assembler_matchInstruction = ($this, $token) => {
25574
25623
  $token = new jl_StringBuilder();
25575
25624
  jl_AbstractStringBuilder__init_($token);
25576
25625
  jl_AbstractStringBuilder_append0($token, 34);
25577
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$10), $rt_s(1551));
25626
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$10), $rt_s(1552));
25578
25627
  asr_ErrorMessage__init_(var$3, var$4, var$9, var$6, jl_AbstractStringBuilder_toString($token));
25579
25628
  asr_ErrorList_add($inst, var$3);
25580
25629
  } else {
@@ -25586,7 +25635,7 @@ var asra_Assembler_matchInstruction = ($this, $token) => {
25586
25635
  var$10 = $token.$value;
25587
25636
  $token = new jl_StringBuilder();
25588
25637
  jl_AbstractStringBuilder__init_($token);
25589
- jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1552)), var$10), 34);
25638
+ jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1553)), var$10), 34);
25590
25639
  asr_ErrorMessage__init_(var$3, var$8, var$9, var$6, jl_AbstractStringBuilder_toString($token));
25591
25640
  asr_ErrorList_add($inst, var$3);
25592
25641
  }
@@ -25617,7 +25666,7 @@ var asra_Assembler_storeNumeric = ($this, $tokens, $directive, $errors) => {
25617
25666
  if (asra_TokenTypes_isIntegerTokenType($repetitionsToken.$type)) {
25618
25667
  $repetitions = asru_Binary_stringToInt($repetitionsToken.$value);
25619
25668
  if ($repetitions <= 0) {
25620
- asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $repetitionsToken.$sourceLine, $repetitionsToken.$sourcePos, $rt_s(1553)));
25669
+ asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $repetitionsToken.$sourceLine, $repetitionsToken.$sourcePos, $rt_s(1554)));
25621
25670
  return;
25622
25671
  }
25623
25672
  b: {
@@ -25641,7 +25690,7 @@ var asra_Assembler_storeNumeric = ($this, $tokens, $directive, $errors) => {
25641
25690
  return;
25642
25691
  }
25643
25692
  }
25644
- asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $valueToken.$sourceLine, $valueToken.$sourcePos, $rt_s(1554)));
25693
+ asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $valueToken.$sourceLine, $valueToken.$sourcePos, $rt_s(1555)));
25645
25694
  return;
25646
25695
  }
25647
25696
  while ($i < asra_TokenList_size($tokens)) {
@@ -25666,7 +25715,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25666
25715
  $token = new jl_StringBuilder();
25667
25716
  jl_AbstractStringBuilder__init_($token);
25668
25717
  jl_AbstractStringBuilder_append0($token, 34);
25669
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1555));
25718
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1556));
25670
25719
  asr_ErrorMessage__init_($directive, var$5, var$6, $dataAddress, jl_AbstractStringBuilder_toString($token));
25671
25720
  asr_ErrorList_add($errors, $directive);
25672
25721
  } else if (!$this.$inDataSegment0) {
@@ -25678,7 +25727,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25678
25727
  $token = new jl_StringBuilder();
25679
25728
  jl_AbstractStringBuilder__init_($token);
25680
25729
  jl_AbstractStringBuilder_append0($token, 34);
25681
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1556));
25730
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1557));
25682
25731
  asr_ErrorMessage__init_($directive, var$5, var$6, $dataAddress, jl_AbstractStringBuilder_toString($token));
25683
25732
  asr_ErrorList_add($errors, $directive);
25684
25733
  } else {
@@ -25722,7 +25771,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25722
25771
  var$18 = asru_Binary_intToHexString($value);
25723
25772
  var$19 = new jl_StringBuilder();
25724
25773
  jl_AbstractStringBuilder__init_(var$19);
25725
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$19, $rt_s(1557)), var$17), $rt_s(1558)), var$18);
25774
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$19, $rt_s(1558)), var$17), $rt_s(1559)), var$18);
25726
25775
  asr_ErrorMessage__init_1(var$8, 1, var$5, var$11, var$12, jl_AbstractStringBuilder_toString(var$19));
25727
25776
  asr_ErrorList_add($errors, var$8);
25728
25777
  }
@@ -25762,7 +25811,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25762
25811
  var$18 = asru_Binary_intToHexString($dataAddress);
25763
25812
  var$5 = new jl_StringBuilder();
25764
25813
  jl_AbstractStringBuilder__init_(var$5);
25765
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1557)), var$8), $rt_s(1558)), var$18);
25814
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1558)), var$8), $rt_s(1559)), var$18);
25766
25815
  asr_ErrorMessage__init_1($directive, 1, var$20, var$11, var$12, jl_AbstractStringBuilder_toString(var$5));
25767
25816
  asr_ErrorList_add($errors, $directive);
25768
25817
  }
@@ -25784,7 +25833,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25784
25833
  jl_AbstractStringBuilder__init_($token);
25785
25834
  jl_AbstractStringBuilder_append0($token, 34);
25786
25835
  jl_AbstractStringBuilder_append($token, $dataAddress);
25787
- jl_StringBuilder_append($token, $rt_s(1559));
25836
+ jl_StringBuilder_append($token, $rt_s(1560));
25788
25837
  asr_ErrorMessage__init_($directive, var$18, var$12, var$6, jl_AbstractStringBuilder_toString($token));
25789
25838
  asr_ErrorList_add($errors, $directive);
25790
25839
  return;
@@ -25813,7 +25862,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25813
25862
  var$8 = new jl_StringBuilder();
25814
25863
  jl_AbstractStringBuilder__init_(var$8);
25815
25864
  jl_AbstractStringBuilder_append0(var$8, 34);
25816
- jl_StringBuilder_append(jl_StringBuilder_append(var$8, $token), $rt_s(1560));
25865
+ jl_StringBuilder_append(jl_StringBuilder_append(var$8, $token), $rt_s(1561));
25817
25866
  asr_ErrorMessage__init_(var$6, $directive, var$7, $lengthInBytes, jl_AbstractStringBuilder_toString(var$8));
25818
25867
  asr_ErrorList_add($errors, var$6);
25819
25868
  return;
@@ -25837,7 +25886,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25837
25886
  $token = new jl_StringBuilder();
25838
25887
  jl_AbstractStringBuilder__init_($token);
25839
25888
  jl_AbstractStringBuilder_append0($token, 34);
25840
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1560));
25889
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1561));
25841
25890
  asr_ErrorMessage__init_($directive, var$9, var$10, var$7, jl_AbstractStringBuilder_toString($token));
25842
25891
  asr_ErrorList_add($errors, $directive);
25843
25892
  return;
@@ -25864,7 +25913,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25864
25913
  $token = new jl_StringBuilder();
25865
25914
  jl_AbstractStringBuilder__init_($token);
25866
25915
  jl_AbstractStringBuilder_append0($token, 34);
25867
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1561));
25916
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1562));
25868
25917
  asr_ErrorMessage__init_($directive, var$9, var$10, var$7, jl_AbstractStringBuilder_toString($token));
25869
25918
  asr_ErrorList_add($errors, $directive);
25870
25919
  return;
@@ -25902,7 +25951,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25902
25951
  jl_AbstractStringBuilder__init_($token);
25903
25952
  jl_AbstractStringBuilder_append0($token, 34);
25904
25953
  jl_AbstractStringBuilder_append($token, var$7);
25905
- jl_StringBuilder_append($token, $rt_s(1562));
25954
+ jl_StringBuilder_append($token, $rt_s(1563));
25906
25955
  asr_ErrorMessage__init_($directive, var$8, var$11, var$10, jl_AbstractStringBuilder_toString($token));
25907
25956
  asr_ErrorList_add($errors, $directive);
25908
25957
  }
@@ -25924,7 +25973,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
25924
25973
  $token = new jl_StringBuilder();
25925
25974
  jl_AbstractStringBuilder__init_($token);
25926
25975
  jl_AbstractStringBuilder_append0($token, 34);
25927
- jl_StringBuilder_append(jl_StringBuilder_append($token, $invalidCodePoint), $rt_s(1563));
25976
+ jl_StringBuilder_append(jl_StringBuilder_append($token, $invalidCodePoint), $rt_s(1564));
25928
25977
  asr_ErrorMessage__init_($codePoint, var$7, var$8, $j, jl_AbstractStringBuilder_toString($token));
25929
25978
  asr_ErrorList_add($errors, $codePoint);
25930
25979
  } else {
@@ -25990,7 +26039,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
25990
26039
  var$8 = $token.$sourcePos;
25991
26040
  var$15 = new jl_StringBuilder();
25992
26041
  jl_AbstractStringBuilder__init_(var$15);
25993
- jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1564)), $codePoint), 34);
26042
+ jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1565)), $codePoint), 34);
25994
26043
  asr_ErrorMessage__init_($invalidCodePoint, var$14, $theChar, var$8, jl_AbstractStringBuilder_toString(var$15));
25995
26044
  asr_ErrorList_add($errors, $invalidCodePoint);
25996
26045
  $theChar = var$13;
@@ -26003,7 +26052,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
26003
26052
  $theChar = $token.$sourcePos;
26004
26053
  var$15 = new jl_StringBuilder();
26005
26054
  jl_AbstractStringBuilder__init_(var$15);
26006
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1565)), $invalidCodePoint), $rt_s(1566));
26055
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1566)), $invalidCodePoint), $rt_s(1567));
26007
26056
  asr_ErrorMessage__init_($codePoint, var$14, $b, $theChar, jl_AbstractStringBuilder_toString(var$15));
26008
26057
  asr_ErrorList_add($errors, $codePoint);
26009
26058
  $theChar = var$8;
@@ -26049,7 +26098,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
26049
26098
  jl_AbstractStringBuilder__init_($invalidCodePoint);
26050
26099
  jl_AbstractStringBuilder_append0($invalidCodePoint, 34);
26051
26100
  jl_AbstractStringBuilder_append($invalidCodePoint, var$8);
26052
- jl_StringBuilder_append($invalidCodePoint, $rt_s(1562));
26101
+ jl_StringBuilder_append($invalidCodePoint, $rt_s(1563));
26053
26102
  asr_ErrorMessage__init_($codePoint, var$7, $b, $theChar, jl_AbstractStringBuilder_toString($invalidCodePoint));
26054
26103
  asr_ErrorList_add($errors, $codePoint);
26055
26104
  }
@@ -26077,7 +26126,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
26077
26126
  jl_AbstractStringBuilder__init_($token);
26078
26127
  jl_AbstractStringBuilder_append0($token, 34);
26079
26128
  jl_AbstractStringBuilder_append($token, $j);
26080
- jl_StringBuilder_append($token, $rt_s(1562));
26129
+ jl_StringBuilder_append($token, $rt_s(1563));
26081
26130
  asr_ErrorMessage__init_($codePoint, var$15, $theChar, var$8, jl_AbstractStringBuilder_toString($token));
26082
26131
  asr_ErrorList_add($errors, $codePoint);
26083
26132
  }
@@ -26100,7 +26149,7 @@ var asra_Assembler_passesDataSegmentCheck = ($this, $token) => {
26100
26149
  var$7 = new jl_StringBuilder();
26101
26150
  jl_AbstractStringBuilder__init_(var$7);
26102
26151
  jl_AbstractStringBuilder_append0(var$7, 34);
26103
- jl_StringBuilder_append(jl_StringBuilder_append(var$7, $token), $rt_s(1567));
26152
+ jl_StringBuilder_append(jl_StringBuilder_append(var$7, $token), $rt_s(1568));
26104
26153
  asr_ErrorMessage__init_(var$3, var$4, var$5, var$6, jl_AbstractStringBuilder_toString(var$7));
26105
26154
  asr_ErrorList_add(var$2, var$3);
26106
26155
  return 0;
@@ -26137,7 +26186,7 @@ var asra_Assembler_writeToDataSegment = ($this, $value, $lengthInBytes, $token,
26137
26186
  jl_AbstractStringBuilder__init_($token);
26138
26187
  jl_AbstractStringBuilder_append0($token, 34);
26139
26188
  jl_AbstractStringBuilder_append($token, $lengthInBytes);
26140
- jl_StringBuilder_append($token, $rt_s(1562));
26189
+ jl_StringBuilder_append($token, $rt_s(1563));
26141
26190
  asr_ErrorMessage__init_(var$5, var$7, var$8, $address, jl_AbstractStringBuilder_toString($token));
26142
26191
  asr_ErrorList_add($errors, var$5);
26143
26192
  return $this.$dataAddress.$address;
@@ -26307,7 +26356,7 @@ var asra_Macro_getSubstitutedLine = ($this, $line, $args, $counter, $errors) =>
26307
26356
  if ($j != -1)
26308
26357
  $substitute = asra_TokenList_get($args, $j + 1 | 0).$value;
26309
26358
  else
26310
- asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$program, $token.$sourceLine, $token.$sourcePos, $rt_s(1568)));
26359
+ asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$program, $token.$sourceLine, $token.$sourcePos, $rt_s(1569)));
26311
26360
  $s = asra_Macro_replaceToken($this, $s, $token, $substitute);
26312
26361
  } else {
26313
26362
  $substitute = $token.$value;
@@ -26348,7 +26397,7 @@ var asra_Macro_getSubstitutedLine = ($this, $line, $args, $counter, $errors) =>
26348
26397
  var$13 = $token.$value;
26349
26398
  var$5 = new jl_StringBuilder();
26350
26399
  jl_AbstractStringBuilder__init_(var$5);
26351
- jl_StringBuilder_append3(jl_StringBuilder_append(jl_StringBuilder_append(var$5, var$13), $rt_s(1569)), $counter);
26400
+ jl_StringBuilder_append3(jl_StringBuilder_append(jl_StringBuilder_append(var$5, var$13), $rt_s(1570)), $counter);
26352
26401
  $s = asra_Macro_replaceToken($this, $s, $token, jl_AbstractStringBuilder_toString(var$5));
26353
26402
  }
26354
26403
  }
@@ -29480,37 +29529,37 @@ var asrs_BackStepper$Action_values = () => {
29480
29529
  var asrs_BackStepper$Action__clinit_ = () => {
29481
29530
  let var$1, var$2, var$3;
29482
29531
  var$1 = new asrs_BackStepper$Action();
29483
- jl_Enum__init_(var$1, $rt_s(1570), 0);
29532
+ jl_Enum__init_(var$1, $rt_s(1571), 0);
29484
29533
  asrs_BackStepper$Action_MEMORY_RESTORE_RAW_WORD = var$1;
29485
29534
  var$1 = new asrs_BackStepper$Action();
29486
- jl_Enum__init_(var$1, $rt_s(1571), 1);
29535
+ jl_Enum__init_(var$1, $rt_s(1572), 1);
29487
29536
  asrs_BackStepper$Action_MEMORY_RESTORE_DOUBLE_WORD = var$1;
29488
29537
  var$1 = new asrs_BackStepper$Action();
29489
- jl_Enum__init_(var$1, $rt_s(1572), 2);
29538
+ jl_Enum__init_(var$1, $rt_s(1573), 2);
29490
29539
  asrs_BackStepper$Action_MEMORY_RESTORE_WORD = var$1;
29491
29540
  var$1 = new asrs_BackStepper$Action();
29492
- jl_Enum__init_(var$1, $rt_s(1573), 3);
29541
+ jl_Enum__init_(var$1, $rt_s(1574), 3);
29493
29542
  asrs_BackStepper$Action_MEMORY_RESTORE_HALF = var$1;
29494
29543
  var$1 = new asrs_BackStepper$Action();
29495
- jl_Enum__init_(var$1, $rt_s(1574), 4);
29544
+ jl_Enum__init_(var$1, $rt_s(1575), 4);
29496
29545
  asrs_BackStepper$Action_MEMORY_RESTORE_BYTE = var$1;
29497
29546
  var$1 = new asrs_BackStepper$Action();
29498
- jl_Enum__init_(var$1, $rt_s(1575), 5);
29547
+ jl_Enum__init_(var$1, $rt_s(1576), 5);
29499
29548
  asrs_BackStepper$Action_REGISTER_RESTORE = var$1;
29500
29549
  var$1 = new asrs_BackStepper$Action();
29501
- jl_Enum__init_(var$1, $rt_s(1576), 6);
29550
+ jl_Enum__init_(var$1, $rt_s(1577), 6);
29502
29551
  asrs_BackStepper$Action_PC_RESTORE = var$1;
29503
29552
  var$1 = new asrs_BackStepper$Action();
29504
- jl_Enum__init_(var$1, $rt_s(1577), 7);
29553
+ jl_Enum__init_(var$1, $rt_s(1578), 7);
29505
29554
  asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_RESTORE = var$1;
29506
29555
  var$1 = new asrs_BackStepper$Action();
29507
- jl_Enum__init_(var$1, $rt_s(1578), 8);
29556
+ jl_Enum__init_(var$1, $rt_s(1579), 8);
29508
29557
  asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_BACKDOOR = var$1;
29509
29558
  var$1 = new asrs_BackStepper$Action();
29510
- jl_Enum__init_(var$1, $rt_s(1579), 9);
29559
+ jl_Enum__init_(var$1, $rt_s(1580), 9);
29511
29560
  asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE = var$1;
29512
29561
  var$1 = new asrs_BackStepper$Action();
29513
- jl_Enum__init_(var$1, $rt_s(1580), 10);
29562
+ jl_Enum__init_(var$1, $rt_s(1581), 10);
29514
29563
  asrs_BackStepper$Action_DO_NOTHING = var$1;
29515
29564
  var$2 = $rt_createArray(asrs_BackStepper$Action, 11);
29516
29565
  var$3 = var$2.data;
@@ -29554,58 +29603,24 @@ var asr_SimulationException__init_ = (var_0, var_1, var_2) => {
29554
29603
  return var_3;
29555
29604
  };
29556
29605
  var asr_SimulationException__init_0 = ($this, $ps, $m) => {
29557
- let var$3, var$4, var$5, var$6, var$7, var$8, $$je;
29558
- jl_Throwable__init_($this);
29559
- $this.$cause = -1;
29560
- $this.$value5 = 0;
29561
- $this.$message = null;
29606
+ let var$3, var$4, var$5, var$6;
29562
29607
  var$3 = new asr_ErrorMessage();
29563
29608
  var$4 = asru_Binary_intToHexString(asrrh_RegisterFile_getProgramCounter() - 4 | 0);
29564
29609
  var$5 = new jl_StringBuilder();
29565
29610
  jl_AbstractStringBuilder__init_(var$5);
29566
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1581)), var$4), $rt_s(11)), $m);
29567
- var$6 = jl_AbstractStringBuilder_toString(var$5);
29568
- var$3.$isWarning = 0;
29569
- $m = $ps.$sourceProgram0;
29570
- var$3.$filename0 = $m === null ? $rt_s(3) : $m.$filename;
29571
- var$3.$position2 = 0;
29572
- var$3.$message0 = var$6;
29573
- var$4 = $ps.$source;
29574
- $m = jur_Pattern_matcher(jur_Pattern_compile($rt_s(1582)), var$4);
29575
- var$6 = jl_String_trim(jl_String__init_0(var$4));
29576
- var$4 = ju_ArrayList__init_();
29577
- a: {
29578
- while (true) {
29579
- if (!jur_Matcher_find($m))
29580
- break a;
29581
- var$7 = jur_Matcher_group($m, 0);
29582
- if (jl_String_indexOf0(var$6, var$7))
29583
- break a;
29584
- try {
29585
- ju_ArrayList_add(var$4, jl_Integer_valueOf(jl_Integer_parseInt0(jl_String_substring(var$7, 1, jl_String_length(var$7) - 1 | 0))));
29586
- } catch ($$e) {
29587
- $$je = $rt_wrapException($$e);
29588
- if ($$je instanceof jl_NumberFormatException) {
29589
- break;
29590
- } else {
29591
- throw $$e;
29592
- }
29593
- }
29594
- var$6 = jl_String_trim(jl_String_substring0(var$6, var$7.$nativeString.length));
29595
- }
29596
- }
29597
- if (!var$4.$size0) {
29598
- var$3.$line = $ps.$sourceLine0;
29599
- var$3.$macroExpansionHistory = $rt_s(3);
29600
- } else {
29601
- var$3.$line = ju_ArrayList_get(var$4, 0).$value1;
29602
- var$8 = $ps.$sourceLine0;
29603
- $ps = new jl_StringBuilder();
29604
- jl_AbstractStringBuilder__init_($ps);
29605
- jl_AbstractStringBuilder_append($ps, var$8);
29606
- var$3.$macroExpansionHistory = jl_AbstractStringBuilder_toString($ps);
29607
- }
29608
- $this.$message = var$3;
29611
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1582)), var$4), $rt_s(11)), $m);
29612
+ asr_ErrorMessage__init_2(var$3, $ps, jl_AbstractStringBuilder_toString(var$5));
29613
+ jl_Throwable__init_0($this, asr_ErrorMessage_generateReport(var$3));
29614
+ $this.$cause = -1;
29615
+ $this.$value5 = 0;
29616
+ $this.$message = null;
29617
+ var$5 = new asr_ErrorMessage();
29618
+ var$6 = asru_Binary_intToHexString(asrrh_RegisterFile_getProgramCounter() - 4 | 0);
29619
+ var$4 = new jl_StringBuilder();
29620
+ jl_AbstractStringBuilder__init_(var$4);
29621
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(1582)), var$6), $rt_s(11)), $m);
29622
+ asr_ErrorMessage__init_2(var$5, $ps, jl_AbstractStringBuilder_toString(var$4));
29623
+ $this.$message = var$5;
29609
29624
  };
29610
29625
  var asr_SimulationException__init_1 = ($this, $ps, $aee) => {
29611
29626
  asr_SimulationException__init_0($this, $ps, $aee.$message1);
@@ -31180,222 +31195,6 @@ var asrjt_Floating = $rt_classWithoutFields();
31180
31195
  var asrjt_Floating_isFinite = ($this) => {
31181
31196
  return !$this.$isZero() && !$this.$isNormal() && !$this.$isSubnormal() ? 0 : 1;
31182
31197
  };
31183
- function asrjt_Float32() {
31184
- asrjt_Floating.call(this);
31185
- this.$bits0 = 0;
31186
- }
31187
- var asrjt_Float32_Zero = null;
31188
- var asrjt_Float32_NegativeZero = null;
31189
- var asrjt_Float32_NaN = null;
31190
- var asrjt_Float32_Infinity = null;
31191
- var asrjt_Float32_NegativeInfinity = null;
31192
- var asrjt_Float32_$assertionsDisabled = 0;
31193
- var asrjt_Float32__init_2 = ($this, $bits) => {
31194
- $this.$bits0 = $bits;
31195
- };
31196
- var asrjt_Float32__init_ = (var_0) => {
31197
- let var_1 = new asrjt_Float32();
31198
- asrjt_Float32__init_2(var_1, var_0);
31199
- return var_1;
31200
- };
31201
- var asrjt_Float32__init_1 = ($this, $sign, $exponent, $significand) => {
31202
- asrjt_Float32__init_2($this, (!$sign ? 0 : -2147483648) | (($exponent + 127 | 0) & 255) << 23 | $significand & 8388607);
31203
- };
31204
- var asrjt_Float32__init_0 = (var_0, var_1, var_2) => {
31205
- let var_3 = new asrjt_Float32();
31206
- asrjt_Float32__init_1(var_3, var_0, var_1, var_2);
31207
- return var_3;
31208
- };
31209
- var asrjt_Float32_exponent = ($this) => {
31210
- return (($this.$bits0 >>> 23 | 0) & 255) - 127 | 0;
31211
- };
31212
- var asrjt_Float32_negate = ($this) => {
31213
- return asrjt_Float32__init_($this.$bits0 ^ -2147483648);
31214
- };
31215
- var asrjt_Float32_isSignMinus = ($this) => {
31216
- return ($this.$bits0 >>> 31 | 0) != 1 ? 0 : 1;
31217
- };
31218
- var asrjt_Float32_isInfinite = ($this) => {
31219
- return asrjt_Float32_exponent($this) == 128 && !($this.$bits0 & 8388607) ? 1 : 0;
31220
- };
31221
- var asrjt_Float32_isNormal = ($this) => {
31222
- return asrjt_Float32_exponent($this) != -127 && asrjt_Float32_exponent($this) != 128 ? 1 : 0;
31223
- };
31224
- var asrjt_Float32_isSubnormal = ($this) => {
31225
- return asrjt_Float32_exponent($this) == -127 && !asrjt_Float32_isZero($this) ? 1 : 0;
31226
- };
31227
- var asrjt_Float32_isNaN = ($this) => {
31228
- return asrjt_Float32_exponent($this) == 128 && !asrjt_Float32_isInfinite($this) ? 1 : 0;
31229
- };
31230
- var asrjt_Float32_isSignalling = ($this) => {
31231
- if (!asrjt_Float32_isNaN($this))
31232
- return 0;
31233
- return $this.$bits0 & 4194304 ? 0 : 1;
31234
- };
31235
- var asrjt_Float32_isZero = ($this) => {
31236
- let var$1;
31237
- var$1 = $this.$bits0;
31238
- return var$1 && var$1 != -2147483648 ? 0 : 1;
31239
- };
31240
- var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
31241
- let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
31242
- if (asrji_ExactFloat_isZero($ef))
31243
- return !$ef.$sign ? asrjt_Float32_Zero : asrjt_Float32_NegativeZero;
31244
- $ef = asrji_ExactFloat_normalize($ef);
31245
- $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
31246
- if ($normalizedExponent > -126) {
31247
- if ($normalizedExponent > 128) {
31248
- $mainBits = $env.$flags;
31249
- $roundedBits = asrj_Flags_overflow;
31250
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31251
- $mainBits = $env.$flags;
31252
- $roundedBits = asrj_Flags_inexact;
31253
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31254
- asrjt_Float32$1_$callClinit();
31255
- switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31256
- case 1:
31257
- break;
31258
- case 2:
31259
- case 3:
31260
- $normalizedExponent = $ef.$sign;
31261
- if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31262
- return asrjt_Float32__init_0($normalizedExponent, 127, -1);
31263
- return !$normalizedExponent ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31264
- case 4:
31265
- case 5:
31266
- return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31267
- default:
31268
- if (!asrjt_Float32_$assertionsDisabled)
31269
- $rt_throw(jl_AssertionError__init_($rt_s(1617)));
31270
- return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31271
- }
31272
- return asrjt_Float32__init_0($ef.$sign, 127, -1);
31273
- }
31274
- if (jm_BigInteger_bitLength($ef.$significand) <= 24) {
31275
- if (!asrjt_Float32_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -127)
31276
- $rt_throw(jl_AssertionError__init_($rt_s(1618)));
31277
- $a = new asrjt_Float32();
31278
- $normalizedExponent = $ef.$sign;
31279
- $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
31280
- $ef = $ef.$significand;
31281
- asrjt_Float32__init_1($a, $normalizedExponent, $bitsToRound, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef, 24 - jm_BigInteger_bitLength($ef) | 0)) & 8388607);
31282
- return $a;
31283
- }
31284
- $mainBits = $env.$flags;
31285
- $roundedBits = asrj_Flags_inexact;
31286
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31287
- $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 24 | 0;
31288
- $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31289
- $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31290
- $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31291
- $towardsZero = asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)) & 8388607);
31292
- $awayZero = !jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 24 ? asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 24 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($upBits, 1)) & 8388607) : asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact($upBits) & 8388607);
31293
- } else {
31294
- if ($ef.$exponent0 > -150) {
31295
- if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 23)
31296
- $rt_throw(jl_AssertionError__init_($rt_s(1619)));
31297
- return asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef.$significand, 149 + $ef.$exponent0 | 0)));
31298
- }
31299
- $mainBits = $env.$flags;
31300
- $roundedBits = asrj_Flags_inexact;
31301
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31302
- $mainBits = $env.$flags;
31303
- $roundedBits = asrj_Flags_underflow;
31304
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31305
- $bitsToRound = -149 - $ef.$exponent0 | 0;
31306
- $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31307
- $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31308
- $towardsZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
31309
- $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31310
- if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 23)
31311
- $awayZero = asrjt_Float32__init_0($ef.$sign, -126, jm_BigInteger_intValueExact($upBits) & 8388607);
31312
- else {
31313
- if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 23)
31314
- $rt_throw(jl_AssertionError__init_1());
31315
- $awayZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact($upBits));
31316
- }
31317
- }
31318
- asrjt_Float32$1_$callClinit();
31319
- switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31320
- case 1:
31321
- break;
31322
- case 2:
31323
- case 3:
31324
- if ($ef.$sign == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31325
- return $towardsZero;
31326
- return $awayZero;
31327
- default:
31328
- $ef = jm_BigInteger_ONE;
31329
- $normalizedExponent = $bitsToRound - 1 | 0;
31330
- if (!jm_BigInteger_equals($roundedBits, jm_BigInteger_shiftLeft($ef, $normalizedExponent))) {
31331
- if (jm_BigInteger_compareTo($roundedBits, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, $normalizedExponent)) <= 0)
31332
- return $towardsZero;
31333
- return $awayZero;
31334
- }
31335
- if ($env.$mode !== asrj_RoundingMode_away && $awayZero.$bits0 & 1)
31336
- return $towardsZero;
31337
- return $awayZero;
31338
- }
31339
- return $towardsZero;
31340
- };
31341
- var asrjt_Float32_toExactFloat = ($this) => {
31342
- let $sign, $exponent, $significand;
31343
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isInfinite($this))
31344
- $rt_throw(jl_AssertionError__init_($rt_s(1620)));
31345
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isNaN($this))
31346
- $rt_throw(jl_AssertionError__init_($rt_s(1621)));
31347
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isZero($this))
31348
- $rt_throw(jl_AssertionError__init_($rt_s(1622)));
31349
- $sign = asrjt_Float32_isSignMinus($this);
31350
- if (asrjt_Float32_isZero($this)) {
31351
- $exponent = 0;
31352
- $significand = jm_BigInteger_ZERO;
31353
- } else if (asrjt_Float32_isNormal($this)) {
31354
- $exponent = asrjt_Float32_exponent($this) - 23 | 0;
31355
- $significand = jm_BigInteger_valueOf(Long_fromInt(($this.$bits0 & 8388607) + 8388608 | 0));
31356
- } else {
31357
- if (!asrjt_Float32_isSubnormal($this)) {
31358
- if (asrjt_Float32_$assertionsDisabled)
31359
- return null;
31360
- $rt_throw(jl_AssertionError__init_($rt_s(1623)));
31361
- }
31362
- $exponent = asrjt_Float32_exponent($this) - 22 | 0;
31363
- $significand = jm_BigInteger_valueOf(Long_fromInt($this.$bits0 & 8388607));
31364
- }
31365
- return asrji_ExactFloat__init_($sign, $exponent, $significand);
31366
- };
31367
- var asrjt_Float32_maxPrecision = ($this) => {
31368
- return 30;
31369
- };
31370
- var asrjt_Float32_negate0 = ($this) => {
31371
- return asrjt_Float32_negate($this);
31372
- };
31373
- var asrjt_Float32_fromExactFloat = ($this, var$1, var$2) => {
31374
- return asrjt_Float32_fromExactFloat0($this, var$1, var$2);
31375
- };
31376
- var asrjt_Float32_NegativeInfinity0 = ($this) => {
31377
- return asrjt_Float32_NegativeInfinity;
31378
- };
31379
- var asrjt_Float32_Infinity0 = ($this) => {
31380
- return asrjt_Float32_Infinity;
31381
- };
31382
- var asrjt_Float32_NegativeZero0 = ($this) => {
31383
- return asrjt_Float32_NegativeZero;
31384
- };
31385
- var asrjt_Float32_Zero0 = ($this) => {
31386
- return asrjt_Float32_Zero;
31387
- };
31388
- var asrjt_Float32_NaN0 = ($this) => {
31389
- return asrjt_Float32_NaN;
31390
- };
31391
- var asrjt_Float32__clinit_ = () => {
31392
- asrjt_Float32_$assertionsDisabled = 0;
31393
- asrjt_Float32_Zero = asrjt_Float32__init_(0);
31394
- asrjt_Float32_NegativeZero = asrjt_Float32__init_(-2147483648);
31395
- asrjt_Float32_NaN = asrjt_Float32__init_(2143289344);
31396
- asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
31397
- asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
31398
- };
31399
31198
  function asrjt_Float64() {
31400
31199
  asrjt_Floating.call(this);
31401
31200
  this.$bits1 = Long_ZERO;
@@ -31612,6 +31411,330 @@ var asrjt_Float64__clinit_ = () => {
31612
31411
  asrjt_Float64_Infinity = asrjt_Float64__init_(Long_create(0, 2146435072));
31613
31412
  asrjt_Float64_NegativeInfinity = asrjt_Float64__init_(Long_create(0, 4293918720));
31614
31413
  };
31414
+ function asrjt_Float32() {
31415
+ asrjt_Floating.call(this);
31416
+ this.$bits0 = 0;
31417
+ }
31418
+ var asrjt_Float32_Zero = null;
31419
+ var asrjt_Float32_NegativeZero = null;
31420
+ var asrjt_Float32_NaN = null;
31421
+ var asrjt_Float32_Infinity = null;
31422
+ var asrjt_Float32_NegativeInfinity = null;
31423
+ var asrjt_Float32_$assertionsDisabled = 0;
31424
+ var asrjt_Float32__init_2 = ($this, $bits) => {
31425
+ $this.$bits0 = $bits;
31426
+ };
31427
+ var asrjt_Float32__init_ = (var_0) => {
31428
+ let var_1 = new asrjt_Float32();
31429
+ asrjt_Float32__init_2(var_1, var_0);
31430
+ return var_1;
31431
+ };
31432
+ var asrjt_Float32__init_1 = ($this, $sign, $exponent, $significand) => {
31433
+ asrjt_Float32__init_2($this, (!$sign ? 0 : -2147483648) | (($exponent + 127 | 0) & 255) << 23 | $significand & 8388607);
31434
+ };
31435
+ var asrjt_Float32__init_0 = (var_0, var_1, var_2) => {
31436
+ let var_3 = new asrjt_Float32();
31437
+ asrjt_Float32__init_1(var_3, var_0, var_1, var_2);
31438
+ return var_3;
31439
+ };
31440
+ var asrjt_Float32_exponent = ($this) => {
31441
+ return (($this.$bits0 >>> 23 | 0) & 255) - 127 | 0;
31442
+ };
31443
+ var asrjt_Float32_negate = ($this) => {
31444
+ return asrjt_Float32__init_($this.$bits0 ^ -2147483648);
31445
+ };
31446
+ var asrjt_Float32_isSignMinus = ($this) => {
31447
+ return ($this.$bits0 >>> 31 | 0) != 1 ? 0 : 1;
31448
+ };
31449
+ var asrjt_Float32_isInfinite = ($this) => {
31450
+ return asrjt_Float32_exponent($this) == 128 && !($this.$bits0 & 8388607) ? 1 : 0;
31451
+ };
31452
+ var asrjt_Float32_isNormal = ($this) => {
31453
+ return asrjt_Float32_exponent($this) != -127 && asrjt_Float32_exponent($this) != 128 ? 1 : 0;
31454
+ };
31455
+ var asrjt_Float32_isSubnormal = ($this) => {
31456
+ return asrjt_Float32_exponent($this) == -127 && !asrjt_Float32_isZero($this) ? 1 : 0;
31457
+ };
31458
+ var asrjt_Float32_isNaN = ($this) => {
31459
+ return asrjt_Float32_exponent($this) == 128 && !asrjt_Float32_isInfinite($this) ? 1 : 0;
31460
+ };
31461
+ var asrjt_Float32_isSignalling = ($this) => {
31462
+ if (!asrjt_Float32_isNaN($this))
31463
+ return 0;
31464
+ return $this.$bits0 & 4194304 ? 0 : 1;
31465
+ };
31466
+ var asrjt_Float32_isZero = ($this) => {
31467
+ let var$1;
31468
+ var$1 = $this.$bits0;
31469
+ return var$1 && var$1 != -2147483648 ? 0 : 1;
31470
+ };
31471
+ var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
31472
+ let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
31473
+ if (asrji_ExactFloat_isZero($ef))
31474
+ return !$ef.$sign ? asrjt_Float32_Zero : asrjt_Float32_NegativeZero;
31475
+ $ef = asrji_ExactFloat_normalize($ef);
31476
+ $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
31477
+ if ($normalizedExponent > -126) {
31478
+ if ($normalizedExponent > 128) {
31479
+ $mainBits = $env.$flags;
31480
+ $roundedBits = asrj_Flags_overflow;
31481
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31482
+ $mainBits = $env.$flags;
31483
+ $roundedBits = asrj_Flags_inexact;
31484
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31485
+ asrjt_Float32$1_$callClinit();
31486
+ switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31487
+ case 1:
31488
+ break;
31489
+ case 2:
31490
+ case 3:
31491
+ $normalizedExponent = $ef.$sign;
31492
+ if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31493
+ return asrjt_Float32__init_0($normalizedExponent, 127, -1);
31494
+ return !$normalizedExponent ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31495
+ case 4:
31496
+ case 5:
31497
+ return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31498
+ default:
31499
+ if (!asrjt_Float32_$assertionsDisabled)
31500
+ $rt_throw(jl_AssertionError__init_($rt_s(1617)));
31501
+ return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31502
+ }
31503
+ return asrjt_Float32__init_0($ef.$sign, 127, -1);
31504
+ }
31505
+ if (jm_BigInteger_bitLength($ef.$significand) <= 24) {
31506
+ if (!asrjt_Float32_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -127)
31507
+ $rt_throw(jl_AssertionError__init_($rt_s(1618)));
31508
+ $a = new asrjt_Float32();
31509
+ $normalizedExponent = $ef.$sign;
31510
+ $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
31511
+ $ef = $ef.$significand;
31512
+ asrjt_Float32__init_1($a, $normalizedExponent, $bitsToRound, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef, 24 - jm_BigInteger_bitLength($ef) | 0)) & 8388607);
31513
+ return $a;
31514
+ }
31515
+ $mainBits = $env.$flags;
31516
+ $roundedBits = asrj_Flags_inexact;
31517
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31518
+ $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 24 | 0;
31519
+ $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31520
+ $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31521
+ $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31522
+ $towardsZero = asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)) & 8388607);
31523
+ $awayZero = !jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 24 ? asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 24 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($upBits, 1)) & 8388607) : asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact($upBits) & 8388607);
31524
+ } else {
31525
+ if ($ef.$exponent0 > -150) {
31526
+ if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 23)
31527
+ $rt_throw(jl_AssertionError__init_($rt_s(1619)));
31528
+ return asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef.$significand, 149 + $ef.$exponent0 | 0)));
31529
+ }
31530
+ $mainBits = $env.$flags;
31531
+ $roundedBits = asrj_Flags_inexact;
31532
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31533
+ $mainBits = $env.$flags;
31534
+ $roundedBits = asrj_Flags_underflow;
31535
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31536
+ $bitsToRound = -149 - $ef.$exponent0 | 0;
31537
+ $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31538
+ $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31539
+ $towardsZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
31540
+ $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31541
+ if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 23)
31542
+ $awayZero = asrjt_Float32__init_0($ef.$sign, -126, jm_BigInteger_intValueExact($upBits) & 8388607);
31543
+ else {
31544
+ if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 23)
31545
+ $rt_throw(jl_AssertionError__init_1());
31546
+ $awayZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact($upBits));
31547
+ }
31548
+ }
31549
+ asrjt_Float32$1_$callClinit();
31550
+ switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31551
+ case 1:
31552
+ break;
31553
+ case 2:
31554
+ case 3:
31555
+ if ($ef.$sign == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31556
+ return $towardsZero;
31557
+ return $awayZero;
31558
+ default:
31559
+ $ef = jm_BigInteger_ONE;
31560
+ $normalizedExponent = $bitsToRound - 1 | 0;
31561
+ if (!jm_BigInteger_equals($roundedBits, jm_BigInteger_shiftLeft($ef, $normalizedExponent))) {
31562
+ if (jm_BigInteger_compareTo($roundedBits, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, $normalizedExponent)) <= 0)
31563
+ return $towardsZero;
31564
+ return $awayZero;
31565
+ }
31566
+ if ($env.$mode !== asrj_RoundingMode_away && $awayZero.$bits0 & 1)
31567
+ return $towardsZero;
31568
+ return $awayZero;
31569
+ }
31570
+ return $towardsZero;
31571
+ };
31572
+ var asrjt_Float32_toExactFloat = ($this) => {
31573
+ let $sign, $exponent, $significand;
31574
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isInfinite($this))
31575
+ $rt_throw(jl_AssertionError__init_($rt_s(1620)));
31576
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isNaN($this))
31577
+ $rt_throw(jl_AssertionError__init_($rt_s(1621)));
31578
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isZero($this))
31579
+ $rt_throw(jl_AssertionError__init_($rt_s(1622)));
31580
+ $sign = asrjt_Float32_isSignMinus($this);
31581
+ if (asrjt_Float32_isZero($this)) {
31582
+ $exponent = 0;
31583
+ $significand = jm_BigInteger_ZERO;
31584
+ } else if (asrjt_Float32_isNormal($this)) {
31585
+ $exponent = asrjt_Float32_exponent($this) - 23 | 0;
31586
+ $significand = jm_BigInteger_valueOf(Long_fromInt(($this.$bits0 & 8388607) + 8388608 | 0));
31587
+ } else {
31588
+ if (!asrjt_Float32_isSubnormal($this)) {
31589
+ if (asrjt_Float32_$assertionsDisabled)
31590
+ return null;
31591
+ $rt_throw(jl_AssertionError__init_($rt_s(1623)));
31592
+ }
31593
+ $exponent = asrjt_Float32_exponent($this) - 22 | 0;
31594
+ $significand = jm_BigInteger_valueOf(Long_fromInt($this.$bits0 & 8388607));
31595
+ }
31596
+ return asrji_ExactFloat__init_($sign, $exponent, $significand);
31597
+ };
31598
+ var asrjt_Float32_maxPrecision = ($this) => {
31599
+ return 30;
31600
+ };
31601
+ var asrjt_Float32_negate0 = ($this) => {
31602
+ return asrjt_Float32_negate($this);
31603
+ };
31604
+ var asrjt_Float32_fromExactFloat = ($this, var$1, var$2) => {
31605
+ return asrjt_Float32_fromExactFloat0($this, var$1, var$2);
31606
+ };
31607
+ var asrjt_Float32_NegativeInfinity0 = ($this) => {
31608
+ return asrjt_Float32_NegativeInfinity;
31609
+ };
31610
+ var asrjt_Float32_Infinity0 = ($this) => {
31611
+ return asrjt_Float32_Infinity;
31612
+ };
31613
+ var asrjt_Float32_NegativeZero0 = ($this) => {
31614
+ return asrjt_Float32_NegativeZero;
31615
+ };
31616
+ var asrjt_Float32_Zero0 = ($this) => {
31617
+ return asrjt_Float32_Zero;
31618
+ };
31619
+ var asrjt_Float32_NaN0 = ($this) => {
31620
+ return asrjt_Float32_NaN;
31621
+ };
31622
+ var asrjt_Float32__clinit_ = () => {
31623
+ asrjt_Float32_$assertionsDisabled = 0;
31624
+ asrjt_Float32_Zero = asrjt_Float32__init_(0);
31625
+ asrjt_Float32_NegativeZero = asrjt_Float32__init_(-2147483648);
31626
+ asrjt_Float32_NaN = asrjt_Float32__init_(2143289344);
31627
+ asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
31628
+ asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
31629
+ };
31630
+ var asrjo_Conversions = $rt_classWithoutFields();
31631
+ var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
31632
+ let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
31633
+ if ($f.$isNaN()) {
31634
+ $f = $env.$flags;
31635
+ $min = asrj_Flags_invalid;
31636
+ ju_GenericEnumSet_add($f, $min);
31637
+ return $max;
31638
+ }
31639
+ if ($f.$isInfinite()) {
31640
+ $env = $env.$flags;
31641
+ $copy = asrj_Flags_invalid;
31642
+ ju_GenericEnumSet_add($env, $copy);
31643
+ if ($f.$isSignMinus())
31644
+ $max = $min;
31645
+ return $max;
31646
+ }
31647
+ $copy = asrj_Environment__init_();
31648
+ $copy.$mode = $env.$mode;
31649
+ if ($f.$isZero())
31650
+ $rounded = jm_BigInteger_ZERO;
31651
+ else {
31652
+ $f = $f.$toExactFloat();
31653
+ if (asrji_ExactFloat_isZero($f))
31654
+ $rounded = jm_BigInteger_ZERO;
31655
+ else {
31656
+ if (asrji_ExactFloat_isZero($f))
31657
+ $rounded = $f;
31658
+ else {
31659
+ $rounded = asrji_ExactFloat_normalize($f);
31660
+ var$8 = $rounded.$exponent0;
31661
+ if (var$8 < 0) {
31662
+ var$8 = -var$8 | 0;
31663
+ var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
31664
+ var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
31665
+ var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
31666
+ var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
31667
+ var$12 = $env.$mode;
31668
+ if (var$12 === asrj_RoundingMode_zero)
31669
+ $rounded = var$9;
31670
+ else {
31671
+ var$13 = asrj_RoundingMode_max;
31672
+ if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
31673
+ $rounded = jm_BigInteger_ONE;
31674
+ var$8 = var$8 - 1 | 0;
31675
+ $rounded = !jm_BigInteger_equals(var$10, jm_BigInteger_shiftLeft($rounded, var$8)) ? jm_BigInteger_compareTo(var$10, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, var$8)) <= 0 ? var$9 : var$11 : $env.$mode !== asrj_RoundingMode_away && !jm_BigInteger_testBit(var$9.$significand, 0) ? var$9 : var$11;
31676
+ } else
31677
+ $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
31678
+ }
31679
+ }
31680
+ }
31681
+ $rounded = asrji_ExactFloat_normalize($rounded);
31682
+ if (asrji_ExactFloat_compareTo($rounded, $f)) {
31683
+ var$9 = $env.$flags;
31684
+ var$10 = asrj_Flags_inexact;
31685
+ ju_GenericEnumSet_add(var$9, var$10);
31686
+ }
31687
+ if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
31688
+ $rt_throw(jl_AssertionError__init_($rt_s(1624)));
31689
+ $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
31690
+ }
31691
+ }
31692
+ if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
31693
+ $f = $env.$flags;
31694
+ $env = asrj_Flags_invalid;
31695
+ ju_GenericEnumSet_add($f, $env);
31696
+ } else if (!$quiet) {
31697
+ $f = $copy.$flags;
31698
+ $copy = asrj_Flags_inexact;
31699
+ if (ju_GenericEnumSet_contains($f, $copy)) {
31700
+ $f = $env.$flags;
31701
+ $env = asrj_Flags_inexact;
31702
+ ju_GenericEnumSet_add($f, $env);
31703
+ }
31704
+ }
31705
+ if (jm_BigInteger_compareTo($rounded, $max) == -1)
31706
+ $max = $rounded;
31707
+ if (jm_BigInteger_compareTo($max, $min) == 1)
31708
+ $min = $max;
31709
+ return $min;
31710
+ };
31711
+ var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
31712
+ return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
31713
+ };
31714
+ var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
31715
+ return Long_lo(Long_and(jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 0)), jm_BigInteger_ZERO, $env, $quiet)), Long_create(4294967295, 0)));
31716
+ };
31717
+ var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
31718
+ return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
31719
+ };
31720
+ var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
31721
+ return jm_BigInteger_longValue(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_add(jm_BigInteger_valueOf(Long_fromInt(-1)), jm_BigInteger_shiftLeft(jm_BigInteger_ONE, 64)), jm_BigInteger_ZERO, $env, $quiet));
31722
+ };
31723
+ var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
31724
+ let var$4;
31725
+ if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
31726
+ return $helper.$Zero();
31727
+ var$4 = new asrji_ExactFloat();
31728
+ if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
31729
+ var$4.$sign = 0;
31730
+ else {
31731
+ var$4.$sign = 1;
31732
+ $i = jm_BigInteger_negate($i);
31733
+ }
31734
+ var$4.$exponent0 = 0;
31735
+ var$4.$significand = $i;
31736
+ return $helper.$fromExactFloat(var$4, $env);
31737
+ };
31615
31738
  var asrjo_Comparisons = $rt_classWithoutFields();
31616
31739
  var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
31617
31740
  if ($a.$isZero()) {
@@ -31916,7 +32039,7 @@ var jm_BigInteger_testBit = ($this, $n) => {
31916
32039
  return !($this.$digits.data[0] & 1) ? 0 : 1;
31917
32040
  if ($n < 0) {
31918
32041
  var$2 = new jl_ArithmeticException();
31919
- jl_Throwable__init_0(var$2, $rt_s(1624));
32042
+ jl_Throwable__init_0(var$2, $rt_s(1625));
31920
32043
  $rt_throw(var$2);
31921
32044
  }
31922
32045
  $intCount = $n >> 5;
@@ -31944,7 +32067,7 @@ var jm_BigInteger_intValueExact = ($this) => {
31944
32067
  if ($this.$numberLength <= 1 && jm_BigInteger_bitLength($this) <= 31)
31945
32068
  return $rt_imul($this.$sign0, $this.$digits.data[0]);
31946
32069
  var$1 = new jl_ArithmeticException();
31947
- jl_Throwable__init_0(var$1, $rt_s(1625));
32070
+ jl_Throwable__init_0(var$1, $rt_s(1626));
31948
32071
  $rt_throw(var$1);
31949
32072
  };
31950
32073
  var jm_BigInteger_longValue = ($this) => {
@@ -31962,7 +32085,7 @@ var jm_BigInteger_longValueExact = ($this) => {
31962
32085
  if ($this.$numberLength <= 2 && jm_BigInteger_bitLength($this) <= 63)
31963
32086
  return jm_BigInteger_longValue($this);
31964
32087
  var$1 = new jl_ArithmeticException();
31965
- jl_Throwable__init_0(var$1, $rt_s(1626));
32088
+ jl_Throwable__init_0(var$1, $rt_s(1627));
31966
32089
  $rt_throw(var$1);
31967
32090
  };
31968
32091
  var jm_BigInteger_compareTo = ($this, $val) => {
@@ -32083,114 +32206,6 @@ var jm_BigInteger__clinit_ = () => {
32083
32206
  $i = $i + 1 | 0;
32084
32207
  }
32085
32208
  };
32086
- var asrjo_Conversions = $rt_classWithoutFields();
32087
- var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
32088
- let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
32089
- if ($f.$isNaN()) {
32090
- $f = $env.$flags;
32091
- $min = asrj_Flags_invalid;
32092
- ju_GenericEnumSet_add($f, $min);
32093
- return $max;
32094
- }
32095
- if ($f.$isInfinite()) {
32096
- $env = $env.$flags;
32097
- $copy = asrj_Flags_invalid;
32098
- ju_GenericEnumSet_add($env, $copy);
32099
- if ($f.$isSignMinus())
32100
- $max = $min;
32101
- return $max;
32102
- }
32103
- $copy = asrj_Environment__init_();
32104
- $copy.$mode = $env.$mode;
32105
- if ($f.$isZero())
32106
- $rounded = jm_BigInteger_ZERO;
32107
- else {
32108
- $f = $f.$toExactFloat();
32109
- if (asrji_ExactFloat_isZero($f))
32110
- $rounded = jm_BigInteger_ZERO;
32111
- else {
32112
- if (asrji_ExactFloat_isZero($f))
32113
- $rounded = $f;
32114
- else {
32115
- $rounded = asrji_ExactFloat_normalize($f);
32116
- var$8 = $rounded.$exponent0;
32117
- if (var$8 < 0) {
32118
- var$8 = -var$8 | 0;
32119
- var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
32120
- var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
32121
- var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
32122
- var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
32123
- var$12 = $env.$mode;
32124
- if (var$12 === asrj_RoundingMode_zero)
32125
- $rounded = var$9;
32126
- else {
32127
- var$13 = asrj_RoundingMode_max;
32128
- if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
32129
- $rounded = jm_BigInteger_ONE;
32130
- var$8 = var$8 - 1 | 0;
32131
- $rounded = !jm_BigInteger_equals(var$10, jm_BigInteger_shiftLeft($rounded, var$8)) ? jm_BigInteger_compareTo(var$10, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, var$8)) <= 0 ? var$9 : var$11 : $env.$mode !== asrj_RoundingMode_away && !jm_BigInteger_testBit(var$9.$significand, 0) ? var$9 : var$11;
32132
- } else
32133
- $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
32134
- }
32135
- }
32136
- }
32137
- $rounded = asrji_ExactFloat_normalize($rounded);
32138
- if (asrji_ExactFloat_compareTo($rounded, $f)) {
32139
- var$9 = $env.$flags;
32140
- var$10 = asrj_Flags_inexact;
32141
- ju_GenericEnumSet_add(var$9, var$10);
32142
- }
32143
- if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
32144
- $rt_throw(jl_AssertionError__init_($rt_s(1627)));
32145
- $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
32146
- }
32147
- }
32148
- if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
32149
- $f = $env.$flags;
32150
- $env = asrj_Flags_invalid;
32151
- ju_GenericEnumSet_add($f, $env);
32152
- } else if (!$quiet) {
32153
- $f = $copy.$flags;
32154
- $copy = asrj_Flags_inexact;
32155
- if (ju_GenericEnumSet_contains($f, $copy)) {
32156
- $f = $env.$flags;
32157
- $env = asrj_Flags_inexact;
32158
- ju_GenericEnumSet_add($f, $env);
32159
- }
32160
- }
32161
- if (jm_BigInteger_compareTo($rounded, $max) == -1)
32162
- $max = $rounded;
32163
- if (jm_BigInteger_compareTo($max, $min) == 1)
32164
- $min = $max;
32165
- return $min;
32166
- };
32167
- var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
32168
- return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
32169
- };
32170
- var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
32171
- return Long_lo(Long_and(jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 0)), jm_BigInteger_ZERO, $env, $quiet)), Long_create(4294967295, 0)));
32172
- };
32173
- var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
32174
- return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
32175
- };
32176
- var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
32177
- return jm_BigInteger_longValue(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_add(jm_BigInteger_valueOf(Long_fromInt(-1)), jm_BigInteger_shiftLeft(jm_BigInteger_ONE, 64)), jm_BigInteger_ZERO, $env, $quiet));
32178
- };
32179
- var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32180
- let var$4;
32181
- if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
32182
- return $helper.$Zero();
32183
- var$4 = new asrji_ExactFloat();
32184
- if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
32185
- var$4.$sign = 0;
32186
- else {
32187
- var$4.$sign = 1;
32188
- $i = jm_BigInteger_negate($i);
32189
- }
32190
- var$4.$exponent0 = 0;
32191
- var$4.$significand = $i;
32192
- return $helper.$fromExactFloat(var$4, $env);
32193
- };
32194
32209
  var asrjo_Arithmetic = $rt_classWithoutFields();
32195
32210
  var asrjo_Arithmetic_$assertionsDisabled = 0;
32196
32211
  var asrjo_Arithmetic_add = ($a, $b, $env) => {
@@ -32715,6 +32730,7 @@ var jm_Elementary_subtract = ($a, $aSize, $b, $bSize) => {
32715
32730
  }
32716
32731
  return $res;
32717
32732
  };
32733
+ var jl_ArithmeticException = $rt_classWithoutFields(jl_RuntimeException);
32718
32734
  var jm_BitLevel = $rt_classWithoutFields();
32719
32735
  var jm_BitLevel_shiftLeft = ($source, $count) => {
32720
32736
  let $intCount, var$4, var$5, $resLength, $resDigits, var$8, var$9, var$10, var$11, var$12, $result;
@@ -32829,7 +32845,6 @@ var jm_BitLevel_shiftRight = ($source, $count) => {
32829
32845
  jm_BigInteger_cutOffLeadingZeroes($result);
32830
32846
  return $result;
32831
32847
  };
32832
- var jl_ArithmeticException = $rt_classWithoutFields(jl_RuntimeException);
32833
32848
  var asrrs_NullString = $rt_classWithoutFields();
32834
32849
  var asrrs_NullString_get = ($statement) => {
32835
32850
  return asrrs_NullString_get0($statement, $rt_s(220));
@@ -40630,7 +40645,7 @@ $rt_metadata([
40630
40645
  0,
40631
40646
  0,
40632
40647
  0,
40633
- asrjt_Float32,
40648
+ asrjt_Float64,
40634
40649
  0,
40635
40650
  asrjt_Floating,
40636
40651
  [],
@@ -40640,39 +40655,39 @@ $rt_metadata([
40640
40655
  0,
40641
40656
  [
40642
40657
  "$isSignMinus",
40643
- $rt_wrapFunction0(asrjt_Float32_isSignMinus),
40658
+ $rt_wrapFunction0(asrjt_Float64_isSignMinus),
40644
40659
  "$isInfinite",
40645
- $rt_wrapFunction0(asrjt_Float32_isInfinite),
40660
+ $rt_wrapFunction0(asrjt_Float64_isInfinite),
40646
40661
  "$isNormal",
40647
- $rt_wrapFunction0(asrjt_Float32_isNormal),
40662
+ $rt_wrapFunction0(asrjt_Float64_isNormal),
40648
40663
  "$isSubnormal",
40649
- $rt_wrapFunction0(asrjt_Float32_isSubnormal),
40664
+ $rt_wrapFunction0(asrjt_Float64_isSubnormal),
40650
40665
  "$isNaN",
40651
- $rt_wrapFunction0(asrjt_Float32_isNaN),
40666
+ $rt_wrapFunction0(asrjt_Float64_isNaN),
40652
40667
  "$isSignalling",
40653
- $rt_wrapFunction0(asrjt_Float32_isSignalling),
40668
+ $rt_wrapFunction0(asrjt_Float64_isSignalling),
40654
40669
  "$isZero",
40655
- $rt_wrapFunction0(asrjt_Float32_isZero),
40670
+ $rt_wrapFunction0(asrjt_Float64_isZero),
40656
40671
  "$toExactFloat",
40657
- $rt_wrapFunction0(asrjt_Float32_toExactFloat),
40672
+ $rt_wrapFunction0(asrjt_Float64_toExactFloat),
40658
40673
  "$maxPrecision",
40659
- $rt_wrapFunction0(asrjt_Float32_maxPrecision),
40674
+ $rt_wrapFunction0(asrjt_Float64_maxPrecision),
40660
40675
  "$negate2",
40661
- $rt_wrapFunction0(asrjt_Float32_negate0),
40676
+ $rt_wrapFunction0(asrjt_Float64_negate0),
40662
40677
  "$fromExactFloat",
40663
- $rt_wrapFunction2(asrjt_Float32_fromExactFloat),
40678
+ $rt_wrapFunction2(asrjt_Float64_fromExactFloat),
40664
40679
  "$NegativeInfinity",
40665
- $rt_wrapFunction0(asrjt_Float32_NegativeInfinity0),
40680
+ $rt_wrapFunction0(asrjt_Float64_NegativeInfinity0),
40666
40681
  "$Infinity",
40667
- $rt_wrapFunction0(asrjt_Float32_Infinity0),
40682
+ $rt_wrapFunction0(asrjt_Float64_Infinity0),
40668
40683
  "$NegativeZero",
40669
- $rt_wrapFunction0(asrjt_Float32_NegativeZero0),
40684
+ $rt_wrapFunction0(asrjt_Float64_NegativeZero0),
40670
40685
  "$Zero",
40671
- $rt_wrapFunction0(asrjt_Float32_Zero0),
40686
+ $rt_wrapFunction0(asrjt_Float64_Zero0),
40672
40687
  "$NaN",
40673
- $rt_wrapFunction0(asrjt_Float32_NaN0)
40688
+ $rt_wrapFunction0(asrjt_Float64_NaN0)
40674
40689
  ],
40675
- asrjt_Float64,
40690
+ asrjt_Float32,
40676
40691
  0,
40677
40692
  asrjt_Floating,
40678
40693
  [],
@@ -40682,39 +40697,39 @@ $rt_metadata([
40682
40697
  0,
40683
40698
  [
40684
40699
  "$isSignMinus",
40685
- $rt_wrapFunction0(asrjt_Float64_isSignMinus),
40700
+ $rt_wrapFunction0(asrjt_Float32_isSignMinus),
40686
40701
  "$isInfinite",
40687
- $rt_wrapFunction0(asrjt_Float64_isInfinite),
40702
+ $rt_wrapFunction0(asrjt_Float32_isInfinite),
40688
40703
  "$isNormal",
40689
- $rt_wrapFunction0(asrjt_Float64_isNormal),
40704
+ $rt_wrapFunction0(asrjt_Float32_isNormal),
40690
40705
  "$isSubnormal",
40691
- $rt_wrapFunction0(asrjt_Float64_isSubnormal),
40706
+ $rt_wrapFunction0(asrjt_Float32_isSubnormal),
40692
40707
  "$isNaN",
40693
- $rt_wrapFunction0(asrjt_Float64_isNaN),
40708
+ $rt_wrapFunction0(asrjt_Float32_isNaN),
40694
40709
  "$isSignalling",
40695
- $rt_wrapFunction0(asrjt_Float64_isSignalling),
40710
+ $rt_wrapFunction0(asrjt_Float32_isSignalling),
40696
40711
  "$isZero",
40697
- $rt_wrapFunction0(asrjt_Float64_isZero),
40712
+ $rt_wrapFunction0(asrjt_Float32_isZero),
40698
40713
  "$toExactFloat",
40699
- $rt_wrapFunction0(asrjt_Float64_toExactFloat),
40714
+ $rt_wrapFunction0(asrjt_Float32_toExactFloat),
40700
40715
  "$maxPrecision",
40701
- $rt_wrapFunction0(asrjt_Float64_maxPrecision),
40716
+ $rt_wrapFunction0(asrjt_Float32_maxPrecision),
40702
40717
  "$negate2",
40703
- $rt_wrapFunction0(asrjt_Float64_negate0),
40718
+ $rt_wrapFunction0(asrjt_Float32_negate0),
40704
40719
  "$fromExactFloat",
40705
- $rt_wrapFunction2(asrjt_Float64_fromExactFloat),
40720
+ $rt_wrapFunction2(asrjt_Float32_fromExactFloat),
40706
40721
  "$NegativeInfinity",
40707
- $rt_wrapFunction0(asrjt_Float64_NegativeInfinity0),
40722
+ $rt_wrapFunction0(asrjt_Float32_NegativeInfinity0),
40708
40723
  "$Infinity",
40709
- $rt_wrapFunction0(asrjt_Float64_Infinity0),
40724
+ $rt_wrapFunction0(asrjt_Float32_Infinity0),
40710
40725
  "$NegativeZero",
40711
- $rt_wrapFunction0(asrjt_Float64_NegativeZero0),
40726
+ $rt_wrapFunction0(asrjt_Float32_NegativeZero0),
40712
40727
  "$Zero",
40713
- $rt_wrapFunction0(asrjt_Float64_Zero0),
40728
+ $rt_wrapFunction0(asrjt_Float32_Zero0),
40714
40729
  "$NaN",
40715
- $rt_wrapFunction0(asrjt_Float64_NaN0)
40730
+ $rt_wrapFunction0(asrjt_Float32_NaN0)
40716
40731
  ],
40717
- asrjo_Comparisons,
40732
+ asrjo_Conversions,
40718
40733
  0,
40719
40734
  jl_Object,
40720
40735
  [],
@@ -40723,19 +40738,19 @@ $rt_metadata([
40723
40738
  0,
40724
40739
  0,
40725
40740
  0,
40726
- jm_BigInteger,
40741
+ asrjo_Comparisons,
40727
40742
  0,
40728
- jl_Number,
40729
- [jl_Comparable, ji_Serializable],
40743
+ jl_Object,
40744
+ [],
40730
40745
  0,
40731
40746
  3,
40732
40747
  0,
40733
40748
  0,
40734
40749
  0,
40735
- asrjo_Conversions,
40750
+ jm_BigInteger,
40736
40751
  0,
40737
- jl_Object,
40738
- [],
40752
+ jl_Number,
40753
+ [jl_Comparable, ji_Serializable],
40739
40754
  0,
40740
40755
  3,
40741
40756
  0,
@@ -40824,21 +40839,21 @@ $rt_metadata([
40824
40839
  0,
40825
40840
  0,
40826
40841
  0,
40827
- jm_BitLevel,
40842
+ jl_ArithmeticException,
40828
40843
  0,
40829
- jl_Object,
40844
+ jl_RuntimeException,
40830
40845
  [],
40831
40846
  0,
40847
+ 3,
40832
40848
  0,
40833
40849
  0,
40834
40850
  0,
40851
+ jm_BitLevel,
40835
40852
  0,
40836
- jl_ArithmeticException,
40837
- 0,
40838
- jl_RuntimeException,
40853
+ jl_Object,
40839
40854
  [],
40840
40855
  0,
40841
- 3,
40856
+ 0,
40842
40857
  0,
40843
40858
  0,
40844
40859
  0,
@@ -42591,6 +42606,7 @@ $rt_stringPool([
42591
42606
  "LO",
42592
42607
  "TAG",
42593
42608
  "->",
42609
+ "<\\d+>",
42594
42610
  "Error",
42595
42611
  "Warning",
42596
42612
  " in ",
@@ -42678,7 +42694,6 @@ $rt_stringPool([
42678
42694
  "FLOATING_POINT_REGISTER_RESTORE",
42679
42695
  "DO_NOTHING",
42680
42696
  "Runtime exception at ",
42681
- "<\\d+>",
42682
42697
  "Too many or incorrectly formatted operands. Expected: ",
42683
42698
  "Too few or incorrectly formatted operands. Expected: ",
42684
42699
  "Unsigned value is too large to fit into a sign-extended immediate",
@@ -42720,10 +42735,10 @@ $rt_stringPool([
42720
42735
  "NaNs are not exact",
42721
42736
  "Zeros should be handled explicitly",
42722
42737
  "This should not be reachable",
42738
+ "There can't be any fractions at this point",
42723
42739
  "Negative bit address",
42724
42740
  "BigInteger out of int range",
42725
42741
  "BigInteger out of long range",
42726
- "There can't be any fractions at this point",
42727
42742
  "Square root of a negative number is not real",
42728
42743
  "Cannot get here",
42729
42744
  "Both should definitely be finite by this point",