@specy/risc-v 3.6.0 → 3.6.2
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.
- package/dist/index.js +1665 -1655
- package/dist/index.mjs +1665 -1655
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -17255,6 +17255,121 @@ var otci_Base46_decode = ($seq) => {
|
|
|
17255
17255
|
$result = -$result | 0;
|
|
17256
17256
|
return $result;
|
|
17257
17257
|
};
|
|
17258
|
+
function asr_JsProgramStatement() {
|
|
17259
|
+
let a = this;
|
|
17260
|
+
jl_Object.call(a);
|
|
17261
|
+
a.$sourceLine5 = 0;
|
|
17262
|
+
a.$sourcePath2 = null;
|
|
17263
|
+
a.$address2 = 0;
|
|
17264
|
+
a.$binaryStatement0 = 0;
|
|
17265
|
+
a.$source2 = null;
|
|
17266
|
+
a.$assemblyStatement = null;
|
|
17267
|
+
a.$machineStatement0 = null;
|
|
17268
|
+
}
|
|
17269
|
+
var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
|
|
17270
|
+
let var$2, var$3, var$4, var$5, var$6;
|
|
17271
|
+
$this.$sourceLine5 = $programStatement.$sourceLine1;
|
|
17272
|
+
$this.$sourcePath2 = $programStatement.$sourcePath;
|
|
17273
|
+
$this.$address2 = $programStatement.$textAddress0;
|
|
17274
|
+
$this.$binaryStatement0 = $programStatement.$binaryStatement;
|
|
17275
|
+
$this.$source2 = $programStatement.$source;
|
|
17276
|
+
var$2 = $programStatement.$basicStatementList;
|
|
17277
|
+
var$3 = asr_Globals_getSettings();
|
|
17278
|
+
asr_Settings$Bool_$callClinit();
|
|
17279
|
+
var$4 = !asr_Settings_getBooleanSetting(var$3, asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
17280
|
+
var$5 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
17281
|
+
var$3 = new jl_StringBuffer();
|
|
17282
|
+
jl_AbstractStringBuilder__init_(var$3);
|
|
17283
|
+
var$6 = ju_AbstractList_iterator(var$2.$list);
|
|
17284
|
+
while (ju_AbstractList$1_hasNext(var$6)) {
|
|
17285
|
+
a: {
|
|
17286
|
+
var$2 = ju_AbstractList$1_next(var$6);
|
|
17287
|
+
switch (var$2.$type3) {
|
|
17288
|
+
case 0:
|
|
17289
|
+
break;
|
|
17290
|
+
case 1:
|
|
17291
|
+
if (var$4 == 10) {
|
|
17292
|
+
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
17293
|
+
break a;
|
|
17294
|
+
}
|
|
17295
|
+
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
17296
|
+
break a;
|
|
17297
|
+
case 2:
|
|
17298
|
+
if (var$5 == 10) {
|
|
17299
|
+
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
17300
|
+
break a;
|
|
17301
|
+
}
|
|
17302
|
+
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
17303
|
+
break a;
|
|
17304
|
+
case 3:
|
|
17305
|
+
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
17306
|
+
break a;
|
|
17307
|
+
default:
|
|
17308
|
+
break a;
|
|
17309
|
+
}
|
|
17310
|
+
jl_AbstractStringBuilder_append1(var$3, var$2.$sValue);
|
|
17311
|
+
}
|
|
17312
|
+
}
|
|
17313
|
+
$this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$3);
|
|
17314
|
+
$this.$machineStatement0 = $programStatement.$machineStatement;
|
|
17315
|
+
};
|
|
17316
|
+
var asr_JsProgramStatement__init_ = (var_0) => {
|
|
17317
|
+
let var_1 = new asr_JsProgramStatement();
|
|
17318
|
+
asr_JsProgramStatement__init_0(var_1, var_0);
|
|
17319
|
+
return var_1;
|
|
17320
|
+
};
|
|
17321
|
+
var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
|
|
17322
|
+
return var$1.$sourceLine5;
|
|
17323
|
+
};
|
|
17324
|
+
var asr_JsProgramStatement_getSourcePath$exported$1 = (var$1) => {
|
|
17325
|
+
return $rt_ustr(var$1.$sourcePath2);
|
|
17326
|
+
};
|
|
17327
|
+
var asr_JsProgramStatement_getAssemblyStatement$exported$2 = (var$1) => {
|
|
17328
|
+
return $rt_ustr(var$1.$assemblyStatement);
|
|
17329
|
+
};
|
|
17330
|
+
var asr_JsProgramStatement_getSource$exported$3 = (var$1) => {
|
|
17331
|
+
return $rt_ustr(var$1.$source2);
|
|
17332
|
+
};
|
|
17333
|
+
var asr_JsProgramStatement_getAddress$exported$4 = (var$1) => {
|
|
17334
|
+
return var$1.$address2;
|
|
17335
|
+
};
|
|
17336
|
+
var asr_JsProgramStatement_getBinaryStatement$exported$5 = (var$1) => {
|
|
17337
|
+
return var$1.$binaryStatement0;
|
|
17338
|
+
};
|
|
17339
|
+
var asr_JsProgramStatement_getMachineStatement$exported$6 = (var$1) => {
|
|
17340
|
+
return $rt_ustr(var$1.$machineStatement0);
|
|
17341
|
+
};
|
|
17342
|
+
var ju_Observer = $rt_classWithoutFields(0);
|
|
17343
|
+
function asr_JsMemoryObserver() {
|
|
17344
|
+
let a = this;
|
|
17345
|
+
jl_Object.call(a);
|
|
17346
|
+
a.$handle = 0;
|
|
17347
|
+
a.$startAddress = 0;
|
|
17348
|
+
a.$endAddress = 0;
|
|
17349
|
+
a.$onRead = null;
|
|
17350
|
+
a.$onWrite = null;
|
|
17351
|
+
a.$reportsLength = 0;
|
|
17352
|
+
}
|
|
17353
|
+
var asr_JsMemoryObserver__init_0 = ($this, $handle, $startAddress, $endAddress, $onRead, $onWrite, $reportsLength) => {
|
|
17354
|
+
$this.$handle = $handle;
|
|
17355
|
+
$this.$startAddress = $startAddress;
|
|
17356
|
+
$this.$endAddress = $endAddress;
|
|
17357
|
+
if (asr_JsMemoryObserver_isNullish$js_body$_1($onRead) ? 1 : 0)
|
|
17358
|
+
$onRead = null;
|
|
17359
|
+
$this.$onRead = $onRead;
|
|
17360
|
+
if (asr_JsMemoryObserver_isNullish$js_body$_1($onWrite) ? 1 : 0)
|
|
17361
|
+
$onWrite = null;
|
|
17362
|
+
$this.$onWrite = $onWrite;
|
|
17363
|
+
$this.$reportsLength = $reportsLength;
|
|
17364
|
+
};
|
|
17365
|
+
var asr_JsMemoryObserver__init_ = (var_0, var_1, var_2, var_3, var_4, var_5) => {
|
|
17366
|
+
let var_6 = new asr_JsMemoryObserver();
|
|
17367
|
+
asr_JsMemoryObserver__init_0(var_6, var_0, var_1, var_2, var_3, var_4, var_5);
|
|
17368
|
+
return var_6;
|
|
17369
|
+
};
|
|
17370
|
+
var asr_JsMemoryObserver_isNullish$js_body$_1 = (var$1) => {
|
|
17371
|
+
return var$1 === null || var$1 === void 0;
|
|
17372
|
+
};
|
|
17258
17373
|
var asrrh_ControlAndStatusRegisterFile = $rt_classWithoutFields();
|
|
17259
17374
|
var asrrh_ControlAndStatusRegisterFile_instance = null;
|
|
17260
17375
|
var asrrh_ControlAndStatusRegisterFile_pendingCounterTicks = 0;
|
|
@@ -17262,14 +17377,14 @@ var asrrh_ControlAndStatusRegisterFile_$callClinit = () => {
|
|
|
17262
17377
|
asrrh_ControlAndStatusRegisterFile_$callClinit = $rt_eraseClinit(asrrh_ControlAndStatusRegisterFile);
|
|
17263
17378
|
asrrh_ControlAndStatusRegisterFile__clinit_();
|
|
17264
17379
|
};
|
|
17265
|
-
var asrrh_ControlAndStatusRegisterFile_updateRegister0 = ($
|
|
17380
|
+
var asrrh_ControlAndStatusRegisterFile_updateRegister0 = (var$1, $val) => {
|
|
17266
17381
|
let $target, $old, var$5, var$6;
|
|
17267
17382
|
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17268
17383
|
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17269
|
-
$target = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, $
|
|
17384
|
+
$target = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, var$1);
|
|
17270
17385
|
if ($target instanceof asrrh_ReadOnlyRegister)
|
|
17271
17386
|
return 1;
|
|
17272
|
-
if ($
|
|
17387
|
+
if (var$1 >= 3200 && var$1 <= 3202)
|
|
17273
17388
|
return 1;
|
|
17274
17389
|
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()) && $target !== null) {
|
|
17275
17390
|
$old = asrrh_RegisterBlock_updateRegister0(asrrh_ControlAndStatusRegisterFile_instance, $target, $val);
|
|
@@ -17277,7 +17392,7 @@ var asrrh_ControlAndStatusRegisterFile_updateRegister0 = ($num, $val) => {
|
|
|
17277
17392
|
$val = $target.$getValueNoNotify();
|
|
17278
17393
|
var$6 = var$5.$backSteps;
|
|
17279
17394
|
asrs_BackStepper$Action_$callClinit();
|
|
17280
|
-
asrs_BackStepper$BackstepStack_push(var$6, asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_RESTORE, asrs_BackStepper_pc(var$5), $
|
|
17395
|
+
asrs_BackStepper$BackstepStack_push(var$6, asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_RESTORE, asrs_BackStepper_pc(var$5), var$1, $old, 0, $val);
|
|
17281
17396
|
} else
|
|
17282
17397
|
asrrh_RegisterBlock_updateRegister0(asrrh_ControlAndStatusRegisterFile_instance, $target, $val);
|
|
17283
17398
|
return 0;
|
|
@@ -17287,19 +17402,19 @@ var asrrh_ControlAndStatusRegisterFile_updateRegister = ($name, $val) => {
|
|
|
17287
17402
|
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17288
17403
|
asrrh_ControlAndStatusRegisterFile_updateRegister0(asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $name).$number, $val);
|
|
17289
17404
|
};
|
|
17290
|
-
var asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor = ($register, $val) => {
|
|
17291
|
-
let $old, var$
|
|
17405
|
+
var asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor = ($register, $val, $programCounter) => {
|
|
17406
|
+
let $old, var$5, var$6;
|
|
17292
17407
|
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17293
17408
|
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17294
17409
|
$old = asrrh_Register_setValueBackdoor($register, $val);
|
|
17295
17410
|
if (Long_eq($old, $val))
|
|
17296
17411
|
return;
|
|
17297
17412
|
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings())) {
|
|
17298
|
-
var$
|
|
17299
|
-
var$
|
|
17300
|
-
var$
|
|
17413
|
+
var$5 = asr_Globals_program.$backStepper;
|
|
17414
|
+
var$6 = $register.$number;
|
|
17415
|
+
var$5 = var$5.$backSteps;
|
|
17301
17416
|
asrs_BackStepper$Action_$callClinit();
|
|
17302
|
-
asrs_BackStepper$BackstepStack_push(var$
|
|
17417
|
+
asrs_BackStepper$BackstepStack_push(var$5, asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_BACKDOOR, $programCounter, var$6, $old, 0, $val);
|
|
17303
17418
|
}
|
|
17304
17419
|
};
|
|
17305
17420
|
var asrrh_ControlAndStatusRegisterFile_orRegister0 = ($num, $val) => {
|
|
@@ -17496,6 +17611,10 @@ var asrrh_RegisterFile_resetRegisters = () => {
|
|
|
17496
17611
|
asr_Settings$Bool_$callClinit();
|
|
17497
17612
|
asrrh_RegisterFile_initializeProgramCounter0(asr_Settings_getBooleanSetting(var$1, asr_Settings$Bool_START_AT_MAIN));
|
|
17498
17613
|
};
|
|
17614
|
+
var asrrh_RegisterFile_incrementPC = () => {
|
|
17615
|
+
asrrh_RegisterFile_$callClinit();
|
|
17616
|
+
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
17617
|
+
};
|
|
17499
17618
|
var asrrh_RegisterFile__clinit_ = () => {
|
|
17500
17619
|
let var$1, var$2, var$3, var$4;
|
|
17501
17620
|
var$1 = new asrrh_RegisterBlock();
|
|
@@ -17541,209 +17660,662 @@ var asrrh_RegisterFile__clinit_ = () => {
|
|
|
17541
17660
|
asrrh_RegisterFile_programCounter = asrrh_Register__init_($rt_s(542), -1, Long_fromInt(asrrh_Memory_textBaseAddress));
|
|
17542
17661
|
asrrh_RegisterFile_programCounterValue = asrrh_Memory_textBaseAddress;
|
|
17543
17662
|
};
|
|
17544
|
-
|
|
17663
|
+
var juf_ToIntFunction = $rt_classWithoutFields(0);
|
|
17664
|
+
var asr_JsRiscV$getRegistersValues$lambda$_28_0 = $rt_classWithoutFields();
|
|
17665
|
+
var otjc_JSArrayReader = $rt_classWithoutFields(0);
|
|
17666
|
+
var otjc_JSArray = $rt_classWithoutFields();
|
|
17667
|
+
var otjc_JSArray_of = ($items) => {
|
|
17668
|
+
let var$2, $array, $i, var$5;
|
|
17669
|
+
$items = $items.data;
|
|
17670
|
+
var$2 = $items.length;
|
|
17671
|
+
$array = new Array(var$2);
|
|
17672
|
+
$i = 0;
|
|
17673
|
+
while ($i < var$2) {
|
|
17674
|
+
var$5 = $items[$i];
|
|
17675
|
+
$array[$i] = otji_JSWrapper_javaToJs(var$5);
|
|
17676
|
+
$i = $i + 1 | 0;
|
|
17677
|
+
}
|
|
17678
|
+
return $array;
|
|
17679
|
+
};
|
|
17680
|
+
function asrs_BackStepper() {
|
|
17545
17681
|
let a = this;
|
|
17546
|
-
|
|
17547
|
-
a.$
|
|
17548
|
-
a.$
|
|
17549
|
-
a.$
|
|
17550
|
-
a.$
|
|
17551
|
-
a.$
|
|
17682
|
+
jl_Object.call(a);
|
|
17683
|
+
a.$lastStatementPc = 0;
|
|
17684
|
+
a.$lastStatement = null;
|
|
17685
|
+
a.$engaged = 0;
|
|
17686
|
+
a.$backSteps = null;
|
|
17687
|
+
a.$pokeGroup = 0;
|
|
17688
|
+
a.$pokeRestores = null;
|
|
17552
17689
|
}
|
|
17553
|
-
var
|
|
17554
|
-
var
|
|
17555
|
-
|
|
17556
|
-
|
|
17557
|
-
var jm_BigInteger_MINUS_ONE = null;
|
|
17558
|
-
var jm_BigInteger_SMALL_VALUES = null;
|
|
17559
|
-
var jm_BigInteger_TWO_POWS = null;
|
|
17560
|
-
var jm_BigInteger_$callClinit = () => {
|
|
17561
|
-
jm_BigInteger_$callClinit = $rt_eraseClinit(jm_BigInteger);
|
|
17562
|
-
jm_BigInteger__clinit_();
|
|
17690
|
+
var asrs_BackStepper_nextPokeGroup = 0;
|
|
17691
|
+
var asrs_BackStepper_$callClinit = () => {
|
|
17692
|
+
asrs_BackStepper_$callClinit = $rt_eraseClinit(asrs_BackStepper);
|
|
17693
|
+
asrs_BackStepper__clinit_();
|
|
17563
17694
|
};
|
|
17564
|
-
var
|
|
17565
|
-
let var$
|
|
17566
|
-
|
|
17567
|
-
|
|
17568
|
-
|
|
17569
|
-
|
|
17570
|
-
|
|
17571
|
-
|
|
17572
|
-
|
|
17695
|
+
var asrs_BackStepper_applyRestore = ($action, $param1, $param2) => {
|
|
17696
|
+
let var$4, var$5, var$6, var$7;
|
|
17697
|
+
asrs_BackStepper_$callClinit();
|
|
17698
|
+
a: {
|
|
17699
|
+
switch ($action.$ordinal0) {
|
|
17700
|
+
case 0:
|
|
17701
|
+
asr_Globals_$callClinit();
|
|
17702
|
+
$action = asr_Globals_memory;
|
|
17703
|
+
var$4 = Long_lo($param2);
|
|
17704
|
+
var$5 = asrrh_Memory_storeRawWord($action, $param1, var$4);
|
|
17705
|
+
asrrh_Memory_notifyAnyObservers($action, 1, $param1, 4, var$4);
|
|
17706
|
+
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings())) {
|
|
17707
|
+
var$6 = asr_Globals_program.$backStepper;
|
|
17708
|
+
var$7 = var$6.$backSteps;
|
|
17709
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17710
|
+
asrs_BackStepper$BackstepStack_push(var$7, asrs_BackStepper$Action_MEMORY_RESTORE_RAW_WORD, asrs_BackStepper_pc(var$6), $param1, Long_fromInt(var$5), var$4, Long_ZERO);
|
|
17711
|
+
}
|
|
17712
|
+
break a;
|
|
17713
|
+
case 1:
|
|
17714
|
+
asr_Globals_$callClinit();
|
|
17715
|
+
asrrh_Memory_setDoubleWord(asr_Globals_memory, $param1, $param2);
|
|
17716
|
+
break a;
|
|
17717
|
+
case 2:
|
|
17718
|
+
asr_Globals_$callClinit();
|
|
17719
|
+
asrrh_Memory_setWord(asr_Globals_memory, $param1, Long_lo($param2));
|
|
17720
|
+
break a;
|
|
17721
|
+
case 3:
|
|
17722
|
+
asr_Globals_$callClinit();
|
|
17723
|
+
asrrh_Memory_setHalf(asr_Globals_memory, $param1, Long_lo($param2));
|
|
17724
|
+
break a;
|
|
17725
|
+
case 4:
|
|
17726
|
+
asr_Globals_$callClinit();
|
|
17727
|
+
asrrh_Memory_setByte(asr_Globals_memory, $param1, Long_lo($param2));
|
|
17728
|
+
break a;
|
|
17729
|
+
case 5:
|
|
17730
|
+
asrrh_RegisterFile_updateRegister($param1, $param2);
|
|
17731
|
+
break a;
|
|
17732
|
+
case 6:
|
|
17733
|
+
asrrh_RegisterFile_setProgramCounter($param1);
|
|
17734
|
+
break a;
|
|
17735
|
+
case 7:
|
|
17736
|
+
asrrh_ControlAndStatusRegisterFile_updateRegister0($param1, $param2);
|
|
17737
|
+
break a;
|
|
17738
|
+
case 8:
|
|
17739
|
+
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17740
|
+
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17741
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor(asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, $param1), $param2, asrrh_RegisterFile_getProgramCounter() - 4 | 0);
|
|
17742
|
+
break a;
|
|
17743
|
+
case 9:
|
|
17744
|
+
asrrh_FloatingPointRegisterFile_updateRegisterLong($param1, $param2);
|
|
17745
|
+
break a;
|
|
17746
|
+
case 10:
|
|
17747
|
+
break;
|
|
17748
|
+
case 11:
|
|
17749
|
+
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17750
|
+
$param1 = asrrh_ControlAndStatusRegisterFile_pendingCounterTicks;
|
|
17751
|
+
if ($param1 > 0)
|
|
17752
|
+
asrrh_ControlAndStatusRegisterFile_pendingCounterTicks = $param1 - 1 | 0;
|
|
17753
|
+
else {
|
|
17754
|
+
$action = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(494));
|
|
17755
|
+
var$7 = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(495));
|
|
17756
|
+
asrrh_Register_setValueBackdoor($action, Long_sub($action.$getValueNoNotify(), Long_fromInt(1)));
|
|
17757
|
+
asrrh_Register_setValueBackdoor(var$7, Long_sub(var$7.$getValueNoNotify(), Long_fromInt(1)));
|
|
17758
|
+
}
|
|
17759
|
+
break a;
|
|
17760
|
+
case 12:
|
|
17761
|
+
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17762
|
+
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17763
|
+
$action = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, $param1);
|
|
17764
|
+
if ($action !== null)
|
|
17765
|
+
$action.$setValue($param2);
|
|
17766
|
+
break a;
|
|
17767
|
+
case 13:
|
|
17768
|
+
break a;
|
|
17769
|
+
default:
|
|
17770
|
+
break a;
|
|
17771
|
+
}
|
|
17772
|
+
}
|
|
17573
17773
|
};
|
|
17574
|
-
var
|
|
17575
|
-
|
|
17576
|
-
|
|
17577
|
-
|
|
17774
|
+
var asrs_BackStepper_sameGroup = ($one, $other) => {
|
|
17775
|
+
asrs_BackStepper_$callClinit();
|
|
17776
|
+
if (!asrs_BackStepper$BackStep_isPoke($one) && !asrs_BackStepper$BackStep_isPoke($other))
|
|
17777
|
+
return $one.$ps !== $other.$ps ? 0 : 1;
|
|
17778
|
+
return 0;
|
|
17578
17779
|
};
|
|
17579
|
-
var
|
|
17580
|
-
|
|
17581
|
-
$this.$firstNonzeroDigit = -2;
|
|
17582
|
-
$this.$sign0 = $sign;
|
|
17583
|
-
$this.$numberLength = $numberLength;
|
|
17584
|
-
$this.$digits = $digits;
|
|
17780
|
+
var asrs_BackStepper_pc = ($this) => {
|
|
17781
|
+
return asrrh_RegisterFile_getProgramCounter() - 4 | 0;
|
|
17585
17782
|
};
|
|
17586
|
-
var
|
|
17587
|
-
let
|
|
17588
|
-
|
|
17589
|
-
|
|
17783
|
+
var asrs_BackStepper_addFloatingPointRestore = ($this, $register, $value, $newValue) => {
|
|
17784
|
+
let var$4;
|
|
17785
|
+
var$4 = $this.$backSteps;
|
|
17786
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17787
|
+
asrs_BackStepper$BackstepStack_push(var$4, asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE, asrs_BackStepper_pc($this), $register, $value, 0, $newValue);
|
|
17788
|
+
return $value;
|
|
17590
17789
|
};
|
|
17591
|
-
var
|
|
17592
|
-
let var$
|
|
17593
|
-
|
|
17594
|
-
|
|
17595
|
-
|
|
17596
|
-
|
|
17597
|
-
$this.$numberLength = 1;
|
|
17598
|
-
var$3 = $rt_createIntArray(1);
|
|
17599
|
-
var$3.data[0] = Long_lo($val);
|
|
17600
|
-
$this.$digits = var$3;
|
|
17601
|
-
} else {
|
|
17602
|
-
$this.$numberLength = 2;
|
|
17603
|
-
$this.$digits = $rt_createIntArrayFromData([Long_lo($val), Long_hi($val)]);
|
|
17790
|
+
var asrs_BackStepper_addDoNothing = ($this, $pc) => {
|
|
17791
|
+
let var$2;
|
|
17792
|
+
if (!(!asrs_BackStepper$BackstepStack_empty($this.$backSteps) && asrs_BackStepper$BackstepStack_peek($this.$backSteps).$pc1 == $pc)) {
|
|
17793
|
+
var$2 = $this.$backSteps;
|
|
17794
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17795
|
+
asrs_BackStepper$BackstepStack_push0(var$2, asrs_BackStepper$Action_DO_NOTHING, $pc);
|
|
17604
17796
|
}
|
|
17605
17797
|
};
|
|
17606
|
-
var
|
|
17607
|
-
|
|
17608
|
-
jm_BigInteger__init_3(var_2, var_0, var_1);
|
|
17609
|
-
return var_2;
|
|
17798
|
+
var asrs_BackStepper__clinit_ = () => {
|
|
17799
|
+
asrs_BackStepper_nextPokeGroup = -2;
|
|
17610
17800
|
};
|
|
17611
|
-
var
|
|
17612
|
-
|
|
17613
|
-
|
|
17614
|
-
|
|
17615
|
-
|
|
17616
|
-
|
|
17801
|
+
var asr_JsBackStep = $rt_classWithoutFields();
|
|
17802
|
+
var asr_JsBackStep_of = ($backStep) => {
|
|
17803
|
+
let var$2, var$3, var$4, var$5, var$6, var$7, var$8;
|
|
17804
|
+
var$2 = $backStep.$action;
|
|
17805
|
+
var$3 = var$2 === null ? -1 : var$2.$ordinal0;
|
|
17806
|
+
var$4 = $backStep.$pc1;
|
|
17807
|
+
var$5 = $backStep.$param1;
|
|
17808
|
+
var$6 = $backStep.$param2;
|
|
17809
|
+
var$7 = Long_lo(var$6);
|
|
17810
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17811
|
+
if (var$2 === asrs_BackStepper$Action_PC_RESTORE)
|
|
17812
|
+
var$6 = Long_fromInt(var$5);
|
|
17813
|
+
a: {
|
|
17814
|
+
var$8 = jl_Long_toString(var$6);
|
|
17815
|
+
switch ($backStep.$action.$ordinal0) {
|
|
17816
|
+
case 0:
|
|
17817
|
+
case 2:
|
|
17818
|
+
case 3:
|
|
17819
|
+
case 4:
|
|
17820
|
+
case 6:
|
|
17821
|
+
var$6 = Long_fromInt($backStep.$param3Int);
|
|
17822
|
+
break a;
|
|
17823
|
+
case 1:
|
|
17824
|
+
case 5:
|
|
17825
|
+
case 7:
|
|
17826
|
+
case 8:
|
|
17827
|
+
case 9:
|
|
17828
|
+
break;
|
|
17829
|
+
default:
|
|
17830
|
+
var$6 = Long_ZERO;
|
|
17831
|
+
break a;
|
|
17832
|
+
}
|
|
17833
|
+
var$6 = $backStep.$param3Long;
|
|
17617
17834
|
}
|
|
17618
|
-
|
|
17619
|
-
return jm_BigInteger__init_1(1, $val);
|
|
17620
|
-
return jm_BigInteger_SMALL_VALUES.data[Long_lo($val)];
|
|
17835
|
+
return asr_JsBackStep_create$js_body$_2(var$3, var$4, var$5, var$7, $rt_ustr(var$8), $rt_ustr(jl_Long_toString(var$6)), !!asrs_BackStepper$BackStep_isPoke($backStep));
|
|
17621
17836
|
};
|
|
17622
|
-
var
|
|
17623
|
-
|
|
17624
|
-
$this = jm_BigInteger__init_0(1, $this.$numberLength, $this.$digits);
|
|
17625
|
-
return $this;
|
|
17837
|
+
var asr_JsBackStep_create$js_body$_2 = (var$1, var$2, var$3, var$4, var$5, var$6, var$7) => {
|
|
17838
|
+
return { action: var$1, pc: var$2, param1: var$3, param2: var$4, oldValue: var$5, newValue: var$6, isPoke: var$7 };
|
|
17626
17839
|
};
|
|
17627
|
-
var
|
|
17628
|
-
|
|
17629
|
-
var$1
|
|
17630
|
-
return !var$1 ? $this : jm_BigInteger__init_0(-var$1 | 0, $this.$numberLength, $this.$digits);
|
|
17840
|
+
var asr_JsUndoGroup = $rt_classWithoutFields();
|
|
17841
|
+
var asr_JsUndoGroup_create$js_body$_3 = (var$1, var$2, var$3, var$4) => {
|
|
17842
|
+
return { kind: var$1, pc: var$2, steps: var$3, writes: var$4 };
|
|
17631
17843
|
};
|
|
17632
|
-
var
|
|
17633
|
-
|
|
17634
|
-
a
|
|
17635
|
-
|
|
17636
|
-
|
|
17637
|
-
|
|
17638
|
-
|
|
17639
|
-
|
|
17640
|
-
|
|
17641
|
-
|
|
17642
|
-
|
|
17643
|
-
|
|
17644
|
-
|
|
17645
|
-
|
|
17646
|
-
|
|
17647
|
-
|
|
17648
|
-
|
|
17649
|
-
|
|
17650
|
-
|
|
17651
|
-
|
|
17652
|
-
|
|
17653
|
-
|
|
17654
|
-
|
|
17655
|
-
|
|
17656
|
-
|
|
17657
|
-
|
|
17658
|
-
|
|
17659
|
-
|
|
17660
|
-
|
|
17661
|
-
|
|
17662
|
-
|
|
17663
|
-
|
|
17664
|
-
|
|
17665
|
-
|
|
17666
|
-
var$9 = jm_Elementary_subtract($val.$digits, var$5, $this.$digits, var$4);
|
|
17667
|
-
var$2 = var$3;
|
|
17668
|
-
} else
|
|
17669
|
-
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
17670
|
-
}
|
|
17671
|
-
var$10 = var$9.data;
|
|
17672
|
-
$val = jm_BigInteger__init_0(var$2, var$10.length, var$9);
|
|
17673
|
-
jm_BigInteger_cutOffLeadingZeroes($val);
|
|
17844
|
+
var asr_JsRiscV$Body = $rt_classWithoutFields(0);
|
|
17845
|
+
function asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0() {
|
|
17846
|
+
let a = this;
|
|
17847
|
+
jl_Object.call(a);
|
|
17848
|
+
a.$_05 = null;
|
|
17849
|
+
a.$_12 = 0;
|
|
17850
|
+
a.$_2 = null;
|
|
17851
|
+
}
|
|
17852
|
+
var asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0_run = (var$0) => {
|
|
17853
|
+
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
17854
|
+
$ptr = 0;
|
|
17855
|
+
if ($rt_resuming()) {
|
|
17856
|
+
let $thread = $rt_nativeThread();
|
|
17857
|
+
$ptr = $thread.pop();
|
|
17858
|
+
var$4 = $thread.pop();
|
|
17859
|
+
var$3 = $thread.pop();
|
|
17860
|
+
var$2 = $thread.pop();
|
|
17861
|
+
var$1 = $thread.pop();
|
|
17862
|
+
var$0 = $thread.pop();
|
|
17863
|
+
}
|
|
17864
|
+
main: while (true) {
|
|
17865
|
+
switch ($ptr) {
|
|
17866
|
+
case 0:
|
|
17867
|
+
var$1 = var$0.$_05;
|
|
17868
|
+
var$2 = var$0.$_12;
|
|
17869
|
+
var$3 = var$0.$_2;
|
|
17870
|
+
var$1 = var$1.$main;
|
|
17871
|
+
asr_RARS_requireAssembled(var$1);
|
|
17872
|
+
var$4 = var$1.$main0;
|
|
17873
|
+
$ptr = 1;
|
|
17874
|
+
case 1:
|
|
17875
|
+
$tmp = asr_RISCVprogram_simulate(var$4, var$2, var$3);
|
|
17876
|
+
if ($rt_suspending()) {
|
|
17877
|
+
break main;
|
|
17674
17878
|
}
|
|
17675
|
-
|
|
17879
|
+
var$4 = $tmp;
|
|
17880
|
+
var$1.$stopReason = var$4;
|
|
17881
|
+
return var$4.$ordinal0;
|
|
17882
|
+
default:
|
|
17883
|
+
$rt_invalidPointer();
|
|
17676
17884
|
}
|
|
17677
17885
|
}
|
|
17678
|
-
|
|
17886
|
+
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
17679
17887
|
};
|
|
17680
|
-
|
|
17681
|
-
|
|
17682
|
-
|
|
17683
|
-
|
|
17684
|
-
|
|
17685
|
-
|
|
17686
|
-
|
|
17687
|
-
|
|
17688
|
-
|
|
17689
|
-
|
|
17690
|
-
|
|
17691
|
-
|
|
17692
|
-
|
|
17693
|
-
|
|
17694
|
-
|
|
17695
|
-
|
|
17696
|
-
|
|
17697
|
-
|
|
17698
|
-
|
|
17699
|
-
|
|
17700
|
-
|
|
17701
|
-
|
|
17702
|
-
|
|
17703
|
-
|
|
17704
|
-
var$9 = var$2 != var$3 ? jm_Elementary_add($val.$digits, var$5, $this.$digits, var$4) : jm_Elementary_subtract($val.$digits, var$5, $this.$digits, var$4);
|
|
17705
|
-
} else if (var$2 != var$3) {
|
|
17706
|
-
var$9 = jm_Elementary_add($this.$digits, var$4, $val.$digits, var$5);
|
|
17707
|
-
var$8 = var$2;
|
|
17708
|
-
} else {
|
|
17709
|
-
if (!var$8) {
|
|
17710
|
-
jm_BigInteger_$callClinit();
|
|
17711
|
-
$this = jm_BigInteger_ZERO;
|
|
17712
|
-
break a;
|
|
17713
|
-
}
|
|
17714
|
-
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
17715
|
-
var$8 = var$2;
|
|
17716
|
-
}
|
|
17717
|
-
var$10 = var$9.data;
|
|
17718
|
-
$this = jm_BigInteger__init_0(var$8, var$10.length, var$9);
|
|
17719
|
-
jm_BigInteger_cutOffLeadingZeroes($this);
|
|
17888
|
+
function asr_JsRiscV$simulate$lambda$_12_0() {
|
|
17889
|
+
jl_Object.call(this);
|
|
17890
|
+
this.$_06 = null;
|
|
17891
|
+
}
|
|
17892
|
+
var asr_JsRiscV$simulate$lambda$_12_0_run = (var$0) => {
|
|
17893
|
+
let var$1, var$2, $ptr, $tmp;
|
|
17894
|
+
$ptr = 0;
|
|
17895
|
+
if ($rt_resuming()) {
|
|
17896
|
+
let $thread = $rt_nativeThread();
|
|
17897
|
+
$ptr = $thread.pop();
|
|
17898
|
+
var$2 = $thread.pop();
|
|
17899
|
+
var$1 = $thread.pop();
|
|
17900
|
+
var$0 = $thread.pop();
|
|
17901
|
+
}
|
|
17902
|
+
main: while (true) {
|
|
17903
|
+
switch ($ptr) {
|
|
17904
|
+
case 0:
|
|
17905
|
+
var$1 = var$0.$_06.$main;
|
|
17906
|
+
var$2 = -1;
|
|
17907
|
+
$ptr = 1;
|
|
17908
|
+
case 1:
|
|
17909
|
+
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
17910
|
+
if ($rt_suspending()) {
|
|
17911
|
+
break main;
|
|
17720
17912
|
}
|
|
17721
|
-
|
|
17913
|
+
var$1 = $tmp;
|
|
17914
|
+
return var$1.$ordinal0;
|
|
17915
|
+
default:
|
|
17916
|
+
$rt_invalidPointer();
|
|
17722
17917
|
}
|
|
17723
17918
|
}
|
|
17724
|
-
|
|
17725
|
-
};
|
|
17726
|
-
var jm_BigInteger_shiftRight = ($this, $n) => {
|
|
17727
|
-
if ($n && $this.$sign0)
|
|
17728
|
-
return $n > 0 ? jm_BitLevel_shiftRight($this, $n) : jm_BitLevel_shiftLeft($this, -$n | 0);
|
|
17729
|
-
return $this;
|
|
17730
|
-
};
|
|
17731
|
-
var jm_BigInteger_shiftLeft = ($this, $n) => {
|
|
17732
|
-
if ($n && $this.$sign0)
|
|
17733
|
-
return $n > 0 ? jm_BitLevel_shiftLeft($this, $n) : jm_BitLevel_shiftRight($this, -$n | 0);
|
|
17734
|
-
return $this;
|
|
17919
|
+
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
17735
17920
|
};
|
|
17736
|
-
|
|
17737
|
-
let
|
|
17738
|
-
|
|
17739
|
-
|
|
17740
|
-
|
|
17741
|
-
|
|
17742
|
-
|
|
17743
|
-
|
|
17744
|
-
|
|
17745
|
-
|
|
17746
|
-
|
|
17921
|
+
function asr_JsCompilationResult() {
|
|
17922
|
+
let a = this;
|
|
17923
|
+
jl_Object.call(a);
|
|
17924
|
+
a.$report = null;
|
|
17925
|
+
a.$errors1 = null;
|
|
17926
|
+
}
|
|
17927
|
+
var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
|
|
17928
|
+
let var$2, var$3, var$4;
|
|
17929
|
+
$this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
|
|
17930
|
+
$errorReport = ju_Collection_stream($errorReport.$messages);
|
|
17931
|
+
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
|
|
17932
|
+
var$2.$_019 = $this;
|
|
17933
|
+
$errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
|
|
17934
|
+
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
|
|
17935
|
+
$errorReport = $errorReport;
|
|
17936
|
+
var$3 = ju_ArrayList__init_();
|
|
17937
|
+
var$4 = $errorReport;
|
|
17938
|
+
while (true) {
|
|
17939
|
+
$errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
|
|
17940
|
+
$errorReport.$_024 = var$2;
|
|
17941
|
+
$errorReport.$_19 = var$3;
|
|
17942
|
+
if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
|
|
17943
|
+
break;
|
|
17944
|
+
}
|
|
17945
|
+
$this.$errors1 = var$3;
|
|
17946
|
+
};
|
|
17947
|
+
var asr_JsCompilationResult__init_ = (var_0) => {
|
|
17948
|
+
let var_1 = new asr_JsCompilationResult();
|
|
17949
|
+
asr_JsCompilationResult__init_0(var_1, var_0);
|
|
17950
|
+
return var_1;
|
|
17951
|
+
};
|
|
17952
|
+
var asr_JsCompilationResult_hasWarnings$exported$0 = (var$1) => {
|
|
17953
|
+
let var$2;
|
|
17954
|
+
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
17955
|
+
var$2 = new asr_JsCompilationResult$hasWarnings$lambda$_3_0();
|
|
17956
|
+
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
17957
|
+
};
|
|
17958
|
+
var asr_JsCompilationResult_getErrors$exported$1 = (var$1) => {
|
|
17959
|
+
let var$2;
|
|
17960
|
+
var$1 = var$1.$errors1;
|
|
17961
|
+
var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
|
|
17962
|
+
return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
|
|
17963
|
+
};
|
|
17964
|
+
var asr_JsCompilationResult_hasErrors$exported$2 = (var$1) => {
|
|
17965
|
+
let var$2;
|
|
17966
|
+
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
17967
|
+
var$2 = new asr_JsCompilationResult$hasErrors$lambda$_2_0();
|
|
17968
|
+
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
17969
|
+
};
|
|
17970
|
+
var asr_JsCompilationResult_getReport$exported$3 = (var$1) => {
|
|
17971
|
+
return $rt_ustr(var$1.$report);
|
|
17972
|
+
};
|
|
17973
|
+
function asr_AssemblyException() {
|
|
17974
|
+
jl_Exception.call(this);
|
|
17975
|
+
this.$errs = null;
|
|
17976
|
+
}
|
|
17977
|
+
var asr_AssemblyException__init_0 = ($this, $errs) => {
|
|
17978
|
+
jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
|
|
17979
|
+
$this.$errs = $errs;
|
|
17980
|
+
};
|
|
17981
|
+
var asr_AssemblyException__init_ = (var_0) => {
|
|
17982
|
+
let var_1 = new asr_AssemblyException();
|
|
17983
|
+
asr_AssemblyException__init_0(var_1, var_0);
|
|
17984
|
+
return var_1;
|
|
17985
|
+
};
|
|
17986
|
+
var asrrh_FloatingPointRegisterFile = $rt_classWithoutFields();
|
|
17987
|
+
var asrrh_FloatingPointRegisterFile_instance = null;
|
|
17988
|
+
var asrrh_FloatingPointRegisterFile_$callClinit = () => {
|
|
17989
|
+
asrrh_FloatingPointRegisterFile_$callClinit = $rt_eraseClinit(asrrh_FloatingPointRegisterFile);
|
|
17990
|
+
asrrh_FloatingPointRegisterFile__clinit_();
|
|
17991
|
+
};
|
|
17992
|
+
var asrrh_FloatingPointRegisterFile_setRegisterToFloat = ($reg, $val) => {
|
|
17993
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
17994
|
+
asrrh_FloatingPointRegisterFile_updateRegister($reg, $rt_floatToRawIntBits($val));
|
|
17995
|
+
};
|
|
17996
|
+
var asrrh_FloatingPointRegisterFile_updateRegister = ($num, $val) => {
|
|
17997
|
+
let $lval;
|
|
17998
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
17999
|
+
$lval = Long_or(Long_fromInt($val), Long_create(0, 4294967295));
|
|
18000
|
+
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18001
|
+
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval);
|
|
18002
|
+
else
|
|
18003
|
+
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval), $lval);
|
|
18004
|
+
};
|
|
18005
|
+
var asrrh_FloatingPointRegisterFile_updateRegisterLong = ($num, $val) => {
|
|
18006
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18007
|
+
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18008
|
+
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val);
|
|
18009
|
+
else
|
|
18010
|
+
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val), $val);
|
|
18011
|
+
};
|
|
18012
|
+
var asrrh_FloatingPointRegisterFile_getValue = ($num) => {
|
|
18013
|
+
let $lval;
|
|
18014
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18015
|
+
$lval = asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18016
|
+
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18017
|
+
return 2143289344;
|
|
18018
|
+
return Long_lo($lval);
|
|
18019
|
+
};
|
|
18020
|
+
var asrrh_FloatingPointRegisterFile_getValueLong = ($num) => {
|
|
18021
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18022
|
+
return asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18023
|
+
};
|
|
18024
|
+
var asrrh_FloatingPointRegisterFile_getValue0 = ($name) => {
|
|
18025
|
+
let $lval;
|
|
18026
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18027
|
+
$lval = asrrh_RegisterBlock_getValue0(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18028
|
+
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18029
|
+
return 2143289344;
|
|
18030
|
+
return Long_lo($lval);
|
|
18031
|
+
};
|
|
18032
|
+
var asrrh_FloatingPointRegisterFile_getRegisters = () => {
|
|
18033
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18034
|
+
return asrrh_FloatingPointRegisterFile_instance.$regFile;
|
|
18035
|
+
};
|
|
18036
|
+
var asrrh_FloatingPointRegisterFile_getRegister = ($name) => {
|
|
18037
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18038
|
+
return asrrh_RegisterBlock_getRegister(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18039
|
+
};
|
|
18040
|
+
var asrrh_FloatingPointRegisterFile__clinit_ = () => {
|
|
18041
|
+
let var$1, var$2, var$3;
|
|
18042
|
+
var$1 = new asrrh_RegisterBlock();
|
|
18043
|
+
var$2 = $rt_createArray(asrrh_Register, 32);
|
|
18044
|
+
var$3 = var$2.data;
|
|
18045
|
+
var$3[0] = asrrh_Register__init_($rt_s(543), 0, Long_ZERO);
|
|
18046
|
+
var$3[1] = asrrh_Register__init_($rt_s(544), 1, Long_ZERO);
|
|
18047
|
+
var$3[2] = asrrh_Register__init_($rt_s(545), 2, Long_ZERO);
|
|
18048
|
+
var$3[3] = asrrh_Register__init_($rt_s(546), 3, Long_ZERO);
|
|
18049
|
+
var$3[4] = asrrh_Register__init_($rt_s(547), 4, Long_ZERO);
|
|
18050
|
+
var$3[5] = asrrh_Register__init_($rt_s(548), 5, Long_ZERO);
|
|
18051
|
+
var$3[6] = asrrh_Register__init_($rt_s(549), 6, Long_ZERO);
|
|
18052
|
+
var$3[7] = asrrh_Register__init_($rt_s(550), 7, Long_ZERO);
|
|
18053
|
+
var$3[8] = asrrh_Register__init_($rt_s(551), 8, Long_ZERO);
|
|
18054
|
+
var$3[9] = asrrh_Register__init_($rt_s(552), 9, Long_ZERO);
|
|
18055
|
+
var$3[10] = asrrh_Register__init_($rt_s(553), 10, Long_ZERO);
|
|
18056
|
+
var$3[11] = asrrh_Register__init_($rt_s(554), 11, Long_ZERO);
|
|
18057
|
+
var$3[12] = asrrh_Register__init_($rt_s(555), 12, Long_ZERO);
|
|
18058
|
+
var$3[13] = asrrh_Register__init_($rt_s(556), 13, Long_ZERO);
|
|
18059
|
+
var$3[14] = asrrh_Register__init_($rt_s(557), 14, Long_ZERO);
|
|
18060
|
+
var$3[15] = asrrh_Register__init_($rt_s(558), 15, Long_ZERO);
|
|
18061
|
+
var$3[16] = asrrh_Register__init_($rt_s(559), 16, Long_ZERO);
|
|
18062
|
+
var$3[17] = asrrh_Register__init_($rt_s(560), 17, Long_ZERO);
|
|
18063
|
+
var$3[18] = asrrh_Register__init_($rt_s(561), 18, Long_ZERO);
|
|
18064
|
+
var$3[19] = asrrh_Register__init_($rt_s(562), 19, Long_ZERO);
|
|
18065
|
+
var$3[20] = asrrh_Register__init_($rt_s(563), 20, Long_ZERO);
|
|
18066
|
+
var$3[21] = asrrh_Register__init_($rt_s(564), 21, Long_ZERO);
|
|
18067
|
+
var$3[22] = asrrh_Register__init_($rt_s(565), 22, Long_ZERO);
|
|
18068
|
+
var$3[23] = asrrh_Register__init_($rt_s(566), 23, Long_ZERO);
|
|
18069
|
+
var$3[24] = asrrh_Register__init_($rt_s(567), 24, Long_ZERO);
|
|
18070
|
+
var$3[25] = asrrh_Register__init_($rt_s(568), 25, Long_ZERO);
|
|
18071
|
+
var$3[26] = asrrh_Register__init_($rt_s(569), 26, Long_ZERO);
|
|
18072
|
+
var$3[27] = asrrh_Register__init_($rt_s(570), 27, Long_ZERO);
|
|
18073
|
+
var$3[28] = asrrh_Register__init_($rt_s(571), 28, Long_ZERO);
|
|
18074
|
+
var$3[29] = asrrh_Register__init_($rt_s(572), 29, Long_ZERO);
|
|
18075
|
+
var$3[30] = asrrh_Register__init_($rt_s(573), 30, Long_ZERO);
|
|
18076
|
+
var$3[31] = asrrh_Register__init_($rt_s(574), 31, Long_ZERO);
|
|
18077
|
+
asrrh_RegisterBlock__init_(var$1, 102, var$2);
|
|
18078
|
+
asrrh_FloatingPointRegisterFile_instance = var$1;
|
|
18079
|
+
};
|
|
18080
|
+
function asr_JsRiscV$simulateWithLimit$lambda$_13_0() {
|
|
18081
|
+
let a = this;
|
|
18082
|
+
jl_Object.call(a);
|
|
18083
|
+
a.$_022 = null;
|
|
18084
|
+
a.$_112 = 0;
|
|
18085
|
+
}
|
|
18086
|
+
var asr_JsRiscV$simulateWithLimit$lambda$_13_0_run = (var$0) => {
|
|
18087
|
+
let var$1, var$2, $ptr, $tmp;
|
|
18088
|
+
$ptr = 0;
|
|
18089
|
+
if ($rt_resuming()) {
|
|
18090
|
+
let $thread = $rt_nativeThread();
|
|
18091
|
+
$ptr = $thread.pop();
|
|
18092
|
+
var$2 = $thread.pop();
|
|
18093
|
+
var$1 = $thread.pop();
|
|
18094
|
+
var$0 = $thread.pop();
|
|
18095
|
+
}
|
|
18096
|
+
main: while (true) {
|
|
18097
|
+
switch ($ptr) {
|
|
18098
|
+
case 0:
|
|
18099
|
+
var$1 = var$0.$_022;
|
|
18100
|
+
var$2 = var$0.$_112;
|
|
18101
|
+
var$1 = var$1.$main;
|
|
18102
|
+
$ptr = 1;
|
|
18103
|
+
case 1:
|
|
18104
|
+
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
18105
|
+
if ($rt_suspending()) {
|
|
18106
|
+
break main;
|
|
18107
|
+
}
|
|
18108
|
+
var$1 = $tmp;
|
|
18109
|
+
return var$1.$ordinal0;
|
|
18110
|
+
default:
|
|
18111
|
+
$rt_invalidPointer();
|
|
18112
|
+
}
|
|
18113
|
+
}
|
|
18114
|
+
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
18115
|
+
};
|
|
18116
|
+
function jm_BigInteger() {
|
|
18117
|
+
let a = this;
|
|
18118
|
+
jl_Number.call(a);
|
|
18119
|
+
a.$digits = null;
|
|
18120
|
+
a.$numberLength = 0;
|
|
18121
|
+
a.$sign0 = 0;
|
|
18122
|
+
a.$firstNonzeroDigit = 0;
|
|
18123
|
+
a.$hashCode1 = 0;
|
|
18124
|
+
}
|
|
18125
|
+
var jm_BigInteger_ZERO = null;
|
|
18126
|
+
var jm_BigInteger_ONE = null;
|
|
18127
|
+
var jm_BigInteger_TWO = null;
|
|
18128
|
+
var jm_BigInteger_TEN = null;
|
|
18129
|
+
var jm_BigInteger_MINUS_ONE = null;
|
|
18130
|
+
var jm_BigInteger_SMALL_VALUES = null;
|
|
18131
|
+
var jm_BigInteger_TWO_POWS = null;
|
|
18132
|
+
var jm_BigInteger_$callClinit = () => {
|
|
18133
|
+
jm_BigInteger_$callClinit = $rt_eraseClinit(jm_BigInteger);
|
|
18134
|
+
jm_BigInteger__clinit_();
|
|
18135
|
+
};
|
|
18136
|
+
var jm_BigInteger__init_4 = ($this, $sign, $value) => {
|
|
18137
|
+
let var$3;
|
|
18138
|
+
jm_BigInteger_$callClinit();
|
|
18139
|
+
$this.$firstNonzeroDigit = -2;
|
|
18140
|
+
$this.$sign0 = $sign;
|
|
18141
|
+
$this.$numberLength = 1;
|
|
18142
|
+
var$3 = $rt_createIntArray(1);
|
|
18143
|
+
var$3.data[0] = $value;
|
|
18144
|
+
$this.$digits = var$3;
|
|
18145
|
+
};
|
|
18146
|
+
var jm_BigInteger__init_ = (var_0, var_1) => {
|
|
18147
|
+
let var_2 = new jm_BigInteger();
|
|
18148
|
+
jm_BigInteger__init_4(var_2, var_0, var_1);
|
|
18149
|
+
return var_2;
|
|
18150
|
+
};
|
|
18151
|
+
var jm_BigInteger__init_2 = ($this, $sign, $numberLength, $digits) => {
|
|
18152
|
+
jm_BigInteger_$callClinit();
|
|
18153
|
+
$this.$firstNonzeroDigit = -2;
|
|
18154
|
+
$this.$sign0 = $sign;
|
|
18155
|
+
$this.$numberLength = $numberLength;
|
|
18156
|
+
$this.$digits = $digits;
|
|
18157
|
+
};
|
|
18158
|
+
var jm_BigInteger__init_0 = (var_0, var_1, var_2) => {
|
|
18159
|
+
let var_3 = new jm_BigInteger();
|
|
18160
|
+
jm_BigInteger__init_2(var_3, var_0, var_1, var_2);
|
|
18161
|
+
return var_3;
|
|
18162
|
+
};
|
|
18163
|
+
var jm_BigInteger__init_3 = ($this, $sign, $val) => {
|
|
18164
|
+
let var$3;
|
|
18165
|
+
jm_BigInteger_$callClinit();
|
|
18166
|
+
$this.$firstNonzeroDigit = -2;
|
|
18167
|
+
$this.$sign0 = $sign;
|
|
18168
|
+
if (Long_eq(Long_and($val, Long_create(0, 4294967295)), Long_ZERO)) {
|
|
18169
|
+
$this.$numberLength = 1;
|
|
18170
|
+
var$3 = $rt_createIntArray(1);
|
|
18171
|
+
var$3.data[0] = Long_lo($val);
|
|
18172
|
+
$this.$digits = var$3;
|
|
18173
|
+
} else {
|
|
18174
|
+
$this.$numberLength = 2;
|
|
18175
|
+
$this.$digits = $rt_createIntArrayFromData([Long_lo($val), Long_hi($val)]);
|
|
18176
|
+
}
|
|
18177
|
+
};
|
|
18178
|
+
var jm_BigInteger__init_1 = (var_0, var_1) => {
|
|
18179
|
+
let var_2 = new jm_BigInteger();
|
|
18180
|
+
jm_BigInteger__init_3(var_2, var_0, var_1);
|
|
18181
|
+
return var_2;
|
|
18182
|
+
};
|
|
18183
|
+
var jm_BigInteger_valueOf = ($val) => {
|
|
18184
|
+
jm_BigInteger_$callClinit();
|
|
18185
|
+
if (Long_lt($val, Long_ZERO)) {
|
|
18186
|
+
if (Long_eq($val, Long_fromInt(-1)))
|
|
18187
|
+
return jm_BigInteger_MINUS_ONE;
|
|
18188
|
+
return jm_BigInteger__init_1(-1, Long_neg($val));
|
|
18189
|
+
}
|
|
18190
|
+
if (Long_gt($val, Long_fromInt(10)))
|
|
18191
|
+
return jm_BigInteger__init_1(1, $val);
|
|
18192
|
+
return jm_BigInteger_SMALL_VALUES.data[Long_lo($val)];
|
|
18193
|
+
};
|
|
18194
|
+
var jm_BigInteger_abs = ($this) => {
|
|
18195
|
+
if ($this.$sign0 < 0)
|
|
18196
|
+
$this = jm_BigInteger__init_0(1, $this.$numberLength, $this.$digits);
|
|
18197
|
+
return $this;
|
|
18198
|
+
};
|
|
18199
|
+
var jm_BigInteger_negate = ($this) => {
|
|
18200
|
+
let var$1;
|
|
18201
|
+
var$1 = $this.$sign0;
|
|
18202
|
+
return !var$1 ? $this : jm_BigInteger__init_0(-var$1 | 0, $this.$numberLength, $this.$digits);
|
|
18203
|
+
};
|
|
18204
|
+
var jm_BigInteger_add = ($this, $val) => {
|
|
18205
|
+
let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9, var$10;
|
|
18206
|
+
a: {
|
|
18207
|
+
var$2 = $this.$sign0;
|
|
18208
|
+
var$3 = $val.$sign0;
|
|
18209
|
+
if (var$2) {
|
|
18210
|
+
if (!var$3)
|
|
18211
|
+
$val = $this;
|
|
18212
|
+
else {
|
|
18213
|
+
var$4 = $this.$numberLength;
|
|
18214
|
+
var$5 = $val.$numberLength;
|
|
18215
|
+
if ((var$4 + var$5 | 0) == 2) {
|
|
18216
|
+
var$6 = Long_and(Long_fromInt($this.$digits.data[0]), Long_create(4294967295, 0));
|
|
18217
|
+
var$7 = Long_and(Long_fromInt($val.$digits.data[0]), Long_create(4294967295, 0));
|
|
18218
|
+
if (var$2 != var$3)
|
|
18219
|
+
$val = jm_BigInteger_valueOf(var$2 >= 0 ? Long_sub(var$6, var$7) : Long_sub(var$7, var$6));
|
|
18220
|
+
else {
|
|
18221
|
+
var$6 = Long_add(var$6, var$7);
|
|
18222
|
+
var$8 = Long_lo(var$6);
|
|
18223
|
+
var$4 = Long_hi(var$6);
|
|
18224
|
+
$val = !var$4 ? jm_BigInteger__init_(var$2, var$8) : jm_BigInteger__init_0(var$2, 2, $rt_createIntArrayFromData([var$8, var$4]));
|
|
18225
|
+
}
|
|
18226
|
+
} else {
|
|
18227
|
+
if (var$2 == var$3)
|
|
18228
|
+
var$9 = var$4 < var$5 ? jm_Elementary_add($val.$digits, var$5, $this.$digits, var$4) : jm_Elementary_add($this.$digits, var$4, $val.$digits, var$5);
|
|
18229
|
+
else {
|
|
18230
|
+
var$8 = $rt_compare(var$4, var$5);
|
|
18231
|
+
var$8 = !var$8 ? jm_Elementary_compareArrays($this.$digits, $val.$digits, var$4) : var$8 <= 0 ? -1 : 1;
|
|
18232
|
+
if (!var$8) {
|
|
18233
|
+
jm_BigInteger_$callClinit();
|
|
18234
|
+
$val = jm_BigInteger_ZERO;
|
|
18235
|
+
break a;
|
|
18236
|
+
}
|
|
18237
|
+
if (var$8 != 1) {
|
|
18238
|
+
var$9 = jm_Elementary_subtract($val.$digits, var$5, $this.$digits, var$4);
|
|
18239
|
+
var$2 = var$3;
|
|
18240
|
+
} else
|
|
18241
|
+
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
18242
|
+
}
|
|
18243
|
+
var$10 = var$9.data;
|
|
18244
|
+
$val = jm_BigInteger__init_0(var$2, var$10.length, var$9);
|
|
18245
|
+
jm_BigInteger_cutOffLeadingZeroes($val);
|
|
18246
|
+
}
|
|
18247
|
+
}
|
|
18248
|
+
}
|
|
18249
|
+
}
|
|
18250
|
+
return $val;
|
|
18251
|
+
};
|
|
18252
|
+
var jm_BigInteger_subtract = ($this, $val) => {
|
|
18253
|
+
let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9, var$10;
|
|
18254
|
+
a: {
|
|
18255
|
+
var$2 = $this.$sign0;
|
|
18256
|
+
var$3 = $val.$sign0;
|
|
18257
|
+
if (var$3) {
|
|
18258
|
+
if (!var$2)
|
|
18259
|
+
$this = jm_BigInteger_negate($val);
|
|
18260
|
+
else {
|
|
18261
|
+
var$4 = $this.$numberLength;
|
|
18262
|
+
var$5 = $val.$numberLength;
|
|
18263
|
+
if ((var$4 + var$5 | 0) == 2) {
|
|
18264
|
+
var$6 = Long_and(Long_fromInt($this.$digits.data[0]), Long_create(4294967295, 0));
|
|
18265
|
+
var$7 = Long_and(Long_fromInt($val.$digits.data[0]), Long_create(4294967295, 0));
|
|
18266
|
+
if (var$2 < 0)
|
|
18267
|
+
var$6 = Long_neg(var$6);
|
|
18268
|
+
if (var$3 < 0)
|
|
18269
|
+
var$7 = Long_neg(var$7);
|
|
18270
|
+
$this = jm_BigInteger_valueOf(Long_sub(var$6, var$7));
|
|
18271
|
+
} else {
|
|
18272
|
+
var$8 = $rt_compare(var$4, var$5);
|
|
18273
|
+
var$8 = !var$8 ? jm_Elementary_compareArrays($this.$digits, $val.$digits, var$4) : var$8 <= 0 ? -1 : 1;
|
|
18274
|
+
if (var$8 == -1) {
|
|
18275
|
+
var$8 = -var$3 | 0;
|
|
18276
|
+
var$9 = var$2 != var$3 ? jm_Elementary_add($val.$digits, var$5, $this.$digits, var$4) : jm_Elementary_subtract($val.$digits, var$5, $this.$digits, var$4);
|
|
18277
|
+
} else if (var$2 != var$3) {
|
|
18278
|
+
var$9 = jm_Elementary_add($this.$digits, var$4, $val.$digits, var$5);
|
|
18279
|
+
var$8 = var$2;
|
|
18280
|
+
} else {
|
|
18281
|
+
if (!var$8) {
|
|
18282
|
+
jm_BigInteger_$callClinit();
|
|
18283
|
+
$this = jm_BigInteger_ZERO;
|
|
18284
|
+
break a;
|
|
18285
|
+
}
|
|
18286
|
+
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
18287
|
+
var$8 = var$2;
|
|
18288
|
+
}
|
|
18289
|
+
var$10 = var$9.data;
|
|
18290
|
+
$this = jm_BigInteger__init_0(var$8, var$10.length, var$9);
|
|
18291
|
+
jm_BigInteger_cutOffLeadingZeroes($this);
|
|
18292
|
+
}
|
|
18293
|
+
}
|
|
18294
|
+
}
|
|
18295
|
+
}
|
|
18296
|
+
return $this;
|
|
18297
|
+
};
|
|
18298
|
+
var jm_BigInteger_shiftRight = ($this, $n) => {
|
|
18299
|
+
if ($n && $this.$sign0)
|
|
18300
|
+
return $n > 0 ? jm_BitLevel_shiftRight($this, $n) : jm_BitLevel_shiftLeft($this, -$n | 0);
|
|
18301
|
+
return $this;
|
|
18302
|
+
};
|
|
18303
|
+
var jm_BigInteger_shiftLeft = ($this, $n) => {
|
|
18304
|
+
if ($n && $this.$sign0)
|
|
18305
|
+
return $n > 0 ? jm_BitLevel_shiftLeft($this, $n) : jm_BitLevel_shiftRight($this, -$n | 0);
|
|
18306
|
+
return $this;
|
|
18307
|
+
};
|
|
18308
|
+
var jm_BigInteger_bitLength = ($this) => {
|
|
18309
|
+
let var$1, var$2, var$3, var$4;
|
|
18310
|
+
var$1 = $this.$sign0;
|
|
18311
|
+
if (!var$1)
|
|
18312
|
+
var$2 = 0;
|
|
18313
|
+
else {
|
|
18314
|
+
var$3 = $this.$numberLength;
|
|
18315
|
+
var$4 = var$3 << 5;
|
|
18316
|
+
var$2 = $this.$digits.data[var$3 - 1 | 0];
|
|
18317
|
+
if (var$1 < 0 && jm_BigInteger_getFirstNonzeroDigit($this) == ($this.$numberLength - 1 | 0))
|
|
18318
|
+
var$2 = var$2 + -1 | 0;
|
|
17747
18319
|
var$2 = var$4 - jl_Integer_numberOfLeadingZeros(var$2) | 0;
|
|
17748
18320
|
}
|
|
17749
18321
|
return var$2;
|
|
@@ -17754,7 +18326,7 @@ var jm_BigInteger_testBit = ($this, $n) => {
|
|
|
17754
18326
|
return !($this.$digits.data[0] & 1) ? 0 : 1;
|
|
17755
18327
|
if ($n < 0) {
|
|
17756
18328
|
var$2 = new jl_ArithmeticException();
|
|
17757
|
-
jl_Throwable__init_0(var$2, $rt_s(
|
|
18329
|
+
jl_Throwable__init_0(var$2, $rt_s(575));
|
|
17758
18330
|
$rt_throw(var$2);
|
|
17759
18331
|
}
|
|
17760
18332
|
$intCount = $n >> 5;
|
|
@@ -17782,7 +18354,7 @@ var jm_BigInteger_intValueExact = ($this) => {
|
|
|
17782
18354
|
if ($this.$numberLength <= 1 && jm_BigInteger_bitLength($this) <= 31)
|
|
17783
18355
|
return $rt_imul($this.$sign0, $this.$digits.data[0]);
|
|
17784
18356
|
var$1 = new jl_ArithmeticException();
|
|
17785
|
-
jl_Throwable__init_0(var$1, $rt_s(
|
|
18357
|
+
jl_Throwable__init_0(var$1, $rt_s(576));
|
|
17786
18358
|
$rt_throw(var$1);
|
|
17787
18359
|
};
|
|
17788
18360
|
var jm_BigInteger_longValue = ($this) => {
|
|
@@ -17800,7 +18372,7 @@ var jm_BigInteger_longValueExact = ($this) => {
|
|
|
17800
18372
|
if ($this.$numberLength <= 2 && jm_BigInteger_bitLength($this) <= 63)
|
|
17801
18373
|
return jm_BigInteger_longValue($this);
|
|
17802
18374
|
var$1 = new jl_ArithmeticException();
|
|
17803
|
-
jl_Throwable__init_0(var$1, $rt_s(
|
|
18375
|
+
jl_Throwable__init_0(var$1, $rt_s(577));
|
|
17804
18376
|
$rt_throw(var$1);
|
|
17805
18377
|
};
|
|
17806
18378
|
var jm_BigInteger_compareTo = ($this, $val) => {
|
|
@@ -17948,730 +18520,44 @@ var jm_BigInteger__clinit_ = () => {
|
|
|
17948
18520
|
$i = $i + 1 | 0;
|
|
17949
18521
|
}
|
|
17950
18522
|
};
|
|
17951
|
-
var
|
|
17952
|
-
|
|
17953
|
-
|
|
17954
|
-
|
|
17955
|
-
|
|
17956
|
-
var asr_JsRiscV$simulate$lambda$_12_0_run = (var$0) => {
|
|
17957
|
-
let var$1, var$2, $ptr, $tmp;
|
|
17958
|
-
$ptr = 0;
|
|
17959
|
-
if ($rt_resuming()) {
|
|
17960
|
-
let $thread = $rt_nativeThread();
|
|
17961
|
-
$ptr = $thread.pop();
|
|
17962
|
-
var$2 = $thread.pop();
|
|
17963
|
-
var$1 = $thread.pop();
|
|
17964
|
-
var$0 = $thread.pop();
|
|
17965
|
-
}
|
|
17966
|
-
main: while (true) {
|
|
17967
|
-
switch ($ptr) {
|
|
17968
|
-
case 0:
|
|
17969
|
-
var$1 = var$0.$_06.$main;
|
|
17970
|
-
var$2 = -1;
|
|
17971
|
-
$ptr = 1;
|
|
17972
|
-
case 1:
|
|
17973
|
-
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
17974
|
-
if ($rt_suspending()) {
|
|
17975
|
-
break main;
|
|
17976
|
-
}
|
|
17977
|
-
var$1 = $tmp;
|
|
17978
|
-
return var$1.$ordinal0;
|
|
17979
|
-
default:
|
|
17980
|
-
$rt_invalidPointer();
|
|
17981
|
-
}
|
|
17982
|
-
}
|
|
17983
|
-
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
18523
|
+
var jl_Double = $rt_classWithoutFields(jl_Number);
|
|
18524
|
+
var jl_Double_TYPE = null;
|
|
18525
|
+
var jl_Double_$callClinit = () => {
|
|
18526
|
+
jl_Double_$callClinit = $rt_eraseClinit(jl_Double);
|
|
18527
|
+
jl_Double__clinit_();
|
|
17984
18528
|
};
|
|
17985
|
-
var
|
|
17986
|
-
var
|
|
17987
|
-
|
|
17988
|
-
|
|
17989
|
-
|
|
17990
|
-
|
|
17991
|
-
|
|
17992
|
-
|
|
17993
|
-
|
|
17994
|
-
|
|
17995
|
-
|
|
17996
|
-
|
|
17997
|
-
|
|
17998
|
-
var
|
|
17999
|
-
|
|
18000
|
-
$this.$sourceLine5 = $programStatement.$sourceLine1;
|
|
18001
|
-
$this.$sourcePath2 = $programStatement.$sourcePath;
|
|
18002
|
-
$this.$address2 = $programStatement.$textAddress0;
|
|
18003
|
-
$this.$binaryStatement0 = $programStatement.$binaryStatement;
|
|
18004
|
-
$this.$source2 = $programStatement.$source;
|
|
18005
|
-
var$2 = $programStatement.$basicStatementList;
|
|
18006
|
-
var$3 = asr_Globals_getSettings();
|
|
18007
|
-
asr_Settings$Bool_$callClinit();
|
|
18008
|
-
var$4 = !asr_Settings_getBooleanSetting(var$3, asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
18009
|
-
var$5 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
18010
|
-
var$3 = new jl_StringBuffer();
|
|
18011
|
-
jl_AbstractStringBuilder__init_(var$3);
|
|
18012
|
-
var$6 = ju_AbstractList_iterator(var$2.$list);
|
|
18013
|
-
while (ju_AbstractList$1_hasNext(var$6)) {
|
|
18014
|
-
a: {
|
|
18015
|
-
var$2 = ju_AbstractList$1_next(var$6);
|
|
18016
|
-
switch (var$2.$type3) {
|
|
18017
|
-
case 0:
|
|
18529
|
+
var jl_Double_parseDouble = ($string) => {
|
|
18530
|
+
let $start, $end, var$4, var$5, $negative, $c, $mantissa, $exp, $hasOneDigit, $mantissaPos, $negativeExp, $numExp;
|
|
18531
|
+
jl_Double_$callClinit();
|
|
18532
|
+
if (jl_String_isEmpty($string)) {
|
|
18533
|
+
$string = new jl_NumberFormatException();
|
|
18534
|
+
jl_Throwable__init_($string);
|
|
18535
|
+
$rt_throw($string);
|
|
18536
|
+
}
|
|
18537
|
+
$start = 0;
|
|
18538
|
+
$end = $string.$nativeString.length;
|
|
18539
|
+
while (true) {
|
|
18540
|
+
if (jl_String_charAt($string, $start) > 32) {
|
|
18541
|
+
while (true) {
|
|
18542
|
+
var$4 = $end - 1 | 0;
|
|
18543
|
+
if (jl_String_charAt($string, var$4) > 32)
|
|
18018
18544
|
break;
|
|
18019
|
-
|
|
18020
|
-
if (var$4 == 10) {
|
|
18021
|
-
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
18022
|
-
break a;
|
|
18023
|
-
}
|
|
18024
|
-
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
18025
|
-
break a;
|
|
18026
|
-
case 2:
|
|
18027
|
-
if (var$5 == 10) {
|
|
18028
|
-
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
18029
|
-
break a;
|
|
18030
|
-
}
|
|
18031
|
-
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
18032
|
-
break a;
|
|
18033
|
-
case 3:
|
|
18034
|
-
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
18035
|
-
break a;
|
|
18036
|
-
default:
|
|
18037
|
-
break a;
|
|
18545
|
+
$end = $end + -1 | 0;
|
|
18038
18546
|
}
|
|
18039
|
-
|
|
18040
|
-
}
|
|
18041
|
-
}
|
|
18042
|
-
$this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$3);
|
|
18043
|
-
$this.$machineStatement0 = $programStatement.$machineStatement;
|
|
18044
|
-
};
|
|
18045
|
-
var asr_JsProgramStatement__init_ = (var_0) => {
|
|
18046
|
-
let var_1 = new asr_JsProgramStatement();
|
|
18047
|
-
asr_JsProgramStatement__init_0(var_1, var_0);
|
|
18048
|
-
return var_1;
|
|
18049
|
-
};
|
|
18050
|
-
var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
|
|
18051
|
-
return var$1.$sourceLine5;
|
|
18052
|
-
};
|
|
18053
|
-
var asr_JsProgramStatement_getSourcePath$exported$1 = (var$1) => {
|
|
18054
|
-
return $rt_ustr(var$1.$sourcePath2);
|
|
18055
|
-
};
|
|
18056
|
-
var asr_JsProgramStatement_getAssemblyStatement$exported$2 = (var$1) => {
|
|
18057
|
-
return $rt_ustr(var$1.$assemblyStatement);
|
|
18058
|
-
};
|
|
18059
|
-
var asr_JsProgramStatement_getSource$exported$3 = (var$1) => {
|
|
18060
|
-
return $rt_ustr(var$1.$source2);
|
|
18061
|
-
};
|
|
18062
|
-
var asr_JsProgramStatement_getAddress$exported$4 = (var$1) => {
|
|
18063
|
-
return var$1.$address2;
|
|
18064
|
-
};
|
|
18065
|
-
var asr_JsProgramStatement_getBinaryStatement$exported$5 = (var$1) => {
|
|
18066
|
-
return var$1.$binaryStatement0;
|
|
18067
|
-
};
|
|
18068
|
-
var asr_JsProgramStatement_getMachineStatement$exported$6 = (var$1) => {
|
|
18069
|
-
return $rt_ustr(var$1.$machineStatement0);
|
|
18070
|
-
};
|
|
18071
|
-
function asr_JsRiscV$step$lambda$_10_0() {
|
|
18072
|
-
jl_Object.call(this);
|
|
18073
|
-
this.$_014 = null;
|
|
18074
|
-
}
|
|
18075
|
-
var asr_JsRiscV$step$lambda$_10_0_run = (var$0) => {
|
|
18076
|
-
let var$1, var$2, var$3, $ptr, $tmp;
|
|
18077
|
-
$ptr = 0;
|
|
18078
|
-
if ($rt_resuming()) {
|
|
18079
|
-
let $thread = $rt_nativeThread();
|
|
18080
|
-
$ptr = $thread.pop();
|
|
18081
|
-
var$3 = $thread.pop();
|
|
18082
|
-
var$2 = $thread.pop();
|
|
18083
|
-
var$1 = $thread.pop();
|
|
18084
|
-
var$0 = $thread.pop();
|
|
18085
|
-
}
|
|
18086
|
-
main: while (true) {
|
|
18087
|
-
switch ($ptr) {
|
|
18088
|
-
case 0:
|
|
18089
|
-
var$1 = var$0.$_014.$main;
|
|
18090
|
-
asr_RARS_requireAssembled(var$1);
|
|
18091
|
-
var$2 = var$1.$main0;
|
|
18092
|
-
var$3 = 1;
|
|
18093
|
-
$ptr = 1;
|
|
18094
|
-
case 1:
|
|
18095
|
-
$tmp = asr_RISCVprogram_simulate0(var$2, var$3);
|
|
18096
|
-
if ($rt_suspending()) {
|
|
18097
|
-
break main;
|
|
18098
|
-
}
|
|
18099
|
-
var$2 = $tmp;
|
|
18100
|
-
var$1.$stopReason = var$2;
|
|
18101
|
-
return var$2.$ordinal0;
|
|
18102
|
-
default:
|
|
18103
|
-
$rt_invalidPointer();
|
|
18104
|
-
}
|
|
18105
|
-
}
|
|
18106
|
-
$rt_nativeThread().push(var$0, var$1, var$2, var$3, $ptr);
|
|
18107
|
-
};
|
|
18108
|
-
function asr_JsStackFrame() {
|
|
18109
|
-
let a = this;
|
|
18110
|
-
jl_Object.call(a);
|
|
18111
|
-
a.$pc2 = 0;
|
|
18112
|
-
a.$toAddress1 = 0;
|
|
18113
|
-
a.$sp = 0;
|
|
18114
|
-
a.$fp = 0;
|
|
18115
|
-
a.$registers0 = null;
|
|
18116
|
-
}
|
|
18117
|
-
var asr_JsStackFrame_getPc$exported$0 = (var$1) => {
|
|
18118
|
-
return var$1.$pc2;
|
|
18119
|
-
};
|
|
18120
|
-
var asr_JsStackFrame_getToAddress$exported$1 = (var$1) => {
|
|
18121
|
-
return var$1.$toAddress1;
|
|
18122
|
-
};
|
|
18123
|
-
var asr_JsStackFrame_getRegisters$exported$2 = (var$1) => {
|
|
18124
|
-
return otji_JS_wrap0(var$1.$registers0);
|
|
18125
|
-
};
|
|
18126
|
-
var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
|
|
18127
|
-
return var$1.$sp;
|
|
18128
|
-
};
|
|
18129
|
-
var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
|
|
18130
|
-
return var$1.$fp;
|
|
18131
|
-
};
|
|
18132
|
-
var ju_Observer = $rt_classWithoutFields(0);
|
|
18133
|
-
function asr_JsMemoryObserver() {
|
|
18134
|
-
let a = this;
|
|
18135
|
-
jl_Object.call(a);
|
|
18136
|
-
a.$handle = 0;
|
|
18137
|
-
a.$startAddress = 0;
|
|
18138
|
-
a.$endAddress = 0;
|
|
18139
|
-
a.$onRead = null;
|
|
18140
|
-
a.$onWrite = null;
|
|
18141
|
-
a.$reportsLength = 0;
|
|
18142
|
-
}
|
|
18143
|
-
var asr_JsMemoryObserver__init_0 = ($this, $handle, $startAddress, $endAddress, $onRead, $onWrite, $reportsLength) => {
|
|
18144
|
-
$this.$handle = $handle;
|
|
18145
|
-
$this.$startAddress = $startAddress;
|
|
18146
|
-
$this.$endAddress = $endAddress;
|
|
18147
|
-
if (asr_JsMemoryObserver_isNullish$js_body$_1($onRead) ? 1 : 0)
|
|
18148
|
-
$onRead = null;
|
|
18149
|
-
$this.$onRead = $onRead;
|
|
18150
|
-
if (asr_JsMemoryObserver_isNullish$js_body$_1($onWrite) ? 1 : 0)
|
|
18151
|
-
$onWrite = null;
|
|
18152
|
-
$this.$onWrite = $onWrite;
|
|
18153
|
-
$this.$reportsLength = $reportsLength;
|
|
18154
|
-
};
|
|
18155
|
-
var asr_JsMemoryObserver__init_ = (var_0, var_1, var_2, var_3, var_4, var_5) => {
|
|
18156
|
-
let var_6 = new asr_JsMemoryObserver();
|
|
18157
|
-
asr_JsMemoryObserver__init_0(var_6, var_0, var_1, var_2, var_3, var_4, var_5);
|
|
18158
|
-
return var_6;
|
|
18159
|
-
};
|
|
18160
|
-
var asr_JsMemoryObserver_isNullish$js_body$_1 = (var$1) => {
|
|
18161
|
-
return var$1 === null || var$1 === void 0;
|
|
18162
|
-
};
|
|
18163
|
-
function asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0() {
|
|
18164
|
-
let a = this;
|
|
18165
|
-
jl_Object.call(a);
|
|
18166
|
-
a.$_03 = null;
|
|
18167
|
-
a.$_10 = null;
|
|
18168
|
-
}
|
|
18169
|
-
var asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0_run = (var$0) => {
|
|
18170
|
-
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
18171
|
-
$ptr = 0;
|
|
18172
|
-
if ($rt_resuming()) {
|
|
18173
|
-
let $thread = $rt_nativeThread();
|
|
18174
|
-
$ptr = $thread.pop();
|
|
18175
|
-
var$4 = $thread.pop();
|
|
18176
|
-
var$3 = $thread.pop();
|
|
18177
|
-
var$2 = $thread.pop();
|
|
18178
|
-
var$1 = $thread.pop();
|
|
18179
|
-
var$0 = $thread.pop();
|
|
18180
|
-
}
|
|
18181
|
-
main: while (true) {
|
|
18182
|
-
switch ($ptr) {
|
|
18183
|
-
case 0:
|
|
18184
|
-
var$1 = var$0.$_03;
|
|
18185
|
-
var$2 = var$0.$_10;
|
|
18186
|
-
var$1 = var$1.$main;
|
|
18187
|
-
asr_RARS_requireAssembled(var$1);
|
|
18188
|
-
var$3 = var$1.$main0;
|
|
18189
|
-
var$4 = -1;
|
|
18190
|
-
$ptr = 1;
|
|
18191
|
-
case 1:
|
|
18192
|
-
$tmp = asr_RISCVprogram_simulate(var$3, var$4, var$2);
|
|
18193
|
-
if ($rt_suspending()) {
|
|
18194
|
-
break main;
|
|
18195
|
-
}
|
|
18196
|
-
var$3 = $tmp;
|
|
18197
|
-
var$1.$stopReason = var$3;
|
|
18198
|
-
return var$3.$ordinal0;
|
|
18199
|
-
default:
|
|
18200
|
-
$rt_invalidPointer();
|
|
18201
|
-
}
|
|
18202
|
-
}
|
|
18203
|
-
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
18204
|
-
};
|
|
18205
|
-
var asrrh_FloatingPointRegisterFile = $rt_classWithoutFields();
|
|
18206
|
-
var asrrh_FloatingPointRegisterFile_instance = null;
|
|
18207
|
-
var asrrh_FloatingPointRegisterFile_$callClinit = () => {
|
|
18208
|
-
asrrh_FloatingPointRegisterFile_$callClinit = $rt_eraseClinit(asrrh_FloatingPointRegisterFile);
|
|
18209
|
-
asrrh_FloatingPointRegisterFile__clinit_();
|
|
18210
|
-
};
|
|
18211
|
-
var asrrh_FloatingPointRegisterFile_setRegisterToFloat = ($reg, $val) => {
|
|
18212
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18213
|
-
asrrh_FloatingPointRegisterFile_updateRegister($reg, $rt_floatToRawIntBits($val));
|
|
18214
|
-
};
|
|
18215
|
-
var asrrh_FloatingPointRegisterFile_updateRegister = ($num, $val) => {
|
|
18216
|
-
let $lval;
|
|
18217
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18218
|
-
$lval = Long_or(Long_fromInt($val), Long_create(0, 4294967295));
|
|
18219
|
-
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18220
|
-
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval);
|
|
18221
|
-
else
|
|
18222
|
-
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval), $lval);
|
|
18223
|
-
};
|
|
18224
|
-
var asrrh_FloatingPointRegisterFile_updateRegisterLong = ($num, $val) => {
|
|
18225
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18226
|
-
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18227
|
-
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val);
|
|
18228
|
-
else
|
|
18229
|
-
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val), $val);
|
|
18230
|
-
};
|
|
18231
|
-
var asrrh_FloatingPointRegisterFile_getValue = ($num) => {
|
|
18232
|
-
let $lval;
|
|
18233
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18234
|
-
$lval = asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18235
|
-
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18236
|
-
return 2143289344;
|
|
18237
|
-
return Long_lo($lval);
|
|
18238
|
-
};
|
|
18239
|
-
var asrrh_FloatingPointRegisterFile_getValueLong = ($num) => {
|
|
18240
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18241
|
-
return asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18242
|
-
};
|
|
18243
|
-
var asrrh_FloatingPointRegisterFile_getValue0 = ($name) => {
|
|
18244
|
-
let $lval;
|
|
18245
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18246
|
-
$lval = asrrh_RegisterBlock_getValue0(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18247
|
-
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18248
|
-
return 2143289344;
|
|
18249
|
-
return Long_lo($lval);
|
|
18250
|
-
};
|
|
18251
|
-
var asrrh_FloatingPointRegisterFile_getRegisters = () => {
|
|
18252
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18253
|
-
return asrrh_FloatingPointRegisterFile_instance.$regFile;
|
|
18254
|
-
};
|
|
18255
|
-
var asrrh_FloatingPointRegisterFile_getRegister = ($name) => {
|
|
18256
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18257
|
-
return asrrh_RegisterBlock_getRegister(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18258
|
-
};
|
|
18259
|
-
var asrrh_FloatingPointRegisterFile__clinit_ = () => {
|
|
18260
|
-
let var$1, var$2, var$3;
|
|
18261
|
-
var$1 = new asrrh_RegisterBlock();
|
|
18262
|
-
var$2 = $rt_createArray(asrrh_Register, 32);
|
|
18263
|
-
var$3 = var$2.data;
|
|
18264
|
-
var$3[0] = asrrh_Register__init_($rt_s(546), 0, Long_ZERO);
|
|
18265
|
-
var$3[1] = asrrh_Register__init_($rt_s(547), 1, Long_ZERO);
|
|
18266
|
-
var$3[2] = asrrh_Register__init_($rt_s(548), 2, Long_ZERO);
|
|
18267
|
-
var$3[3] = asrrh_Register__init_($rt_s(549), 3, Long_ZERO);
|
|
18268
|
-
var$3[4] = asrrh_Register__init_($rt_s(550), 4, Long_ZERO);
|
|
18269
|
-
var$3[5] = asrrh_Register__init_($rt_s(551), 5, Long_ZERO);
|
|
18270
|
-
var$3[6] = asrrh_Register__init_($rt_s(552), 6, Long_ZERO);
|
|
18271
|
-
var$3[7] = asrrh_Register__init_($rt_s(553), 7, Long_ZERO);
|
|
18272
|
-
var$3[8] = asrrh_Register__init_($rt_s(554), 8, Long_ZERO);
|
|
18273
|
-
var$3[9] = asrrh_Register__init_($rt_s(555), 9, Long_ZERO);
|
|
18274
|
-
var$3[10] = asrrh_Register__init_($rt_s(556), 10, Long_ZERO);
|
|
18275
|
-
var$3[11] = asrrh_Register__init_($rt_s(557), 11, Long_ZERO);
|
|
18276
|
-
var$3[12] = asrrh_Register__init_($rt_s(558), 12, Long_ZERO);
|
|
18277
|
-
var$3[13] = asrrh_Register__init_($rt_s(559), 13, Long_ZERO);
|
|
18278
|
-
var$3[14] = asrrh_Register__init_($rt_s(560), 14, Long_ZERO);
|
|
18279
|
-
var$3[15] = asrrh_Register__init_($rt_s(561), 15, Long_ZERO);
|
|
18280
|
-
var$3[16] = asrrh_Register__init_($rt_s(562), 16, Long_ZERO);
|
|
18281
|
-
var$3[17] = asrrh_Register__init_($rt_s(563), 17, Long_ZERO);
|
|
18282
|
-
var$3[18] = asrrh_Register__init_($rt_s(564), 18, Long_ZERO);
|
|
18283
|
-
var$3[19] = asrrh_Register__init_($rt_s(565), 19, Long_ZERO);
|
|
18284
|
-
var$3[20] = asrrh_Register__init_($rt_s(566), 20, Long_ZERO);
|
|
18285
|
-
var$3[21] = asrrh_Register__init_($rt_s(567), 21, Long_ZERO);
|
|
18286
|
-
var$3[22] = asrrh_Register__init_($rt_s(568), 22, Long_ZERO);
|
|
18287
|
-
var$3[23] = asrrh_Register__init_($rt_s(569), 23, Long_ZERO);
|
|
18288
|
-
var$3[24] = asrrh_Register__init_($rt_s(570), 24, Long_ZERO);
|
|
18289
|
-
var$3[25] = asrrh_Register__init_($rt_s(571), 25, Long_ZERO);
|
|
18290
|
-
var$3[26] = asrrh_Register__init_($rt_s(572), 26, Long_ZERO);
|
|
18291
|
-
var$3[27] = asrrh_Register__init_($rt_s(573), 27, Long_ZERO);
|
|
18292
|
-
var$3[28] = asrrh_Register__init_($rt_s(574), 28, Long_ZERO);
|
|
18293
|
-
var$3[29] = asrrh_Register__init_($rt_s(575), 29, Long_ZERO);
|
|
18294
|
-
var$3[30] = asrrh_Register__init_($rt_s(576), 30, Long_ZERO);
|
|
18295
|
-
var$3[31] = asrrh_Register__init_($rt_s(577), 31, Long_ZERO);
|
|
18296
|
-
asrrh_RegisterBlock__init_(var$1, 102, var$2);
|
|
18297
|
-
asrrh_FloatingPointRegisterFile_instance = var$1;
|
|
18298
|
-
};
|
|
18299
|
-
function asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0() {
|
|
18300
|
-
let a = this;
|
|
18301
|
-
jl_Object.call(a);
|
|
18302
|
-
a.$_05 = null;
|
|
18303
|
-
a.$_12 = 0;
|
|
18304
|
-
a.$_2 = null;
|
|
18305
|
-
}
|
|
18306
|
-
var asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0_run = (var$0) => {
|
|
18307
|
-
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
18308
|
-
$ptr = 0;
|
|
18309
|
-
if ($rt_resuming()) {
|
|
18310
|
-
let $thread = $rt_nativeThread();
|
|
18311
|
-
$ptr = $thread.pop();
|
|
18312
|
-
var$4 = $thread.pop();
|
|
18313
|
-
var$3 = $thread.pop();
|
|
18314
|
-
var$2 = $thread.pop();
|
|
18315
|
-
var$1 = $thread.pop();
|
|
18316
|
-
var$0 = $thread.pop();
|
|
18317
|
-
}
|
|
18318
|
-
main: while (true) {
|
|
18319
|
-
switch ($ptr) {
|
|
18320
|
-
case 0:
|
|
18321
|
-
var$1 = var$0.$_05;
|
|
18322
|
-
var$2 = var$0.$_12;
|
|
18323
|
-
var$3 = var$0.$_2;
|
|
18324
|
-
var$1 = var$1.$main;
|
|
18325
|
-
asr_RARS_requireAssembled(var$1);
|
|
18326
|
-
var$4 = var$1.$main0;
|
|
18327
|
-
$ptr = 1;
|
|
18328
|
-
case 1:
|
|
18329
|
-
$tmp = asr_RISCVprogram_simulate(var$4, var$2, var$3);
|
|
18330
|
-
if ($rt_suspending()) {
|
|
18331
|
-
break main;
|
|
18332
|
-
}
|
|
18333
|
-
var$4 = $tmp;
|
|
18334
|
-
var$1.$stopReason = var$4;
|
|
18335
|
-
return var$4.$ordinal0;
|
|
18336
|
-
default:
|
|
18337
|
-
$rt_invalidPointer();
|
|
18338
|
-
}
|
|
18339
|
-
}
|
|
18340
|
-
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
18341
|
-
};
|
|
18342
|
-
function asr_JsCompilationResult() {
|
|
18343
|
-
let a = this;
|
|
18344
|
-
jl_Object.call(a);
|
|
18345
|
-
a.$report = null;
|
|
18346
|
-
a.$errors1 = null;
|
|
18347
|
-
}
|
|
18348
|
-
var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
|
|
18349
|
-
let var$2, var$3, var$4;
|
|
18350
|
-
$this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
|
|
18351
|
-
$errorReport = ju_Collection_stream($errorReport.$messages);
|
|
18352
|
-
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
|
|
18353
|
-
var$2.$_019 = $this;
|
|
18354
|
-
$errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
|
|
18355
|
-
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
|
|
18356
|
-
$errorReport = $errorReport;
|
|
18357
|
-
var$3 = ju_ArrayList__init_();
|
|
18358
|
-
var$4 = $errorReport;
|
|
18359
|
-
while (true) {
|
|
18360
|
-
$errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
|
|
18361
|
-
$errorReport.$_024 = var$2;
|
|
18362
|
-
$errorReport.$_19 = var$3;
|
|
18363
|
-
if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
|
|
18364
|
-
break;
|
|
18365
|
-
}
|
|
18366
|
-
$this.$errors1 = var$3;
|
|
18367
|
-
};
|
|
18368
|
-
var asr_JsCompilationResult__init_ = (var_0) => {
|
|
18369
|
-
let var_1 = new asr_JsCompilationResult();
|
|
18370
|
-
asr_JsCompilationResult__init_0(var_1, var_0);
|
|
18371
|
-
return var_1;
|
|
18372
|
-
};
|
|
18373
|
-
var asr_JsCompilationResult_hasWarnings$exported$0 = (var$1) => {
|
|
18374
|
-
let var$2;
|
|
18375
|
-
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
18376
|
-
var$2 = new asr_JsCompilationResult$hasWarnings$lambda$_3_0();
|
|
18377
|
-
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
18378
|
-
};
|
|
18379
|
-
var asr_JsCompilationResult_getErrors$exported$1 = (var$1) => {
|
|
18380
|
-
let var$2;
|
|
18381
|
-
var$1 = var$1.$errors1;
|
|
18382
|
-
var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
|
|
18383
|
-
return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
|
|
18384
|
-
};
|
|
18385
|
-
var asr_JsCompilationResult_hasErrors$exported$2 = (var$1) => {
|
|
18386
|
-
let var$2;
|
|
18387
|
-
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
18388
|
-
var$2 = new asr_JsCompilationResult$hasErrors$lambda$_2_0();
|
|
18389
|
-
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
18390
|
-
};
|
|
18391
|
-
var asr_JsCompilationResult_getReport$exported$3 = (var$1) => {
|
|
18392
|
-
return $rt_ustr(var$1.$report);
|
|
18393
|
-
};
|
|
18394
|
-
function asr_AssemblyException() {
|
|
18395
|
-
jl_Exception.call(this);
|
|
18396
|
-
this.$errs = null;
|
|
18397
|
-
}
|
|
18398
|
-
var asr_AssemblyException__init_0 = ($this, $errs) => {
|
|
18399
|
-
jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
|
|
18400
|
-
$this.$errs = $errs;
|
|
18401
|
-
};
|
|
18402
|
-
var asr_AssemblyException__init_ = (var_0) => {
|
|
18403
|
-
let var_1 = new asr_AssemblyException();
|
|
18404
|
-
asr_AssemblyException__init_0(var_1, var_0);
|
|
18405
|
-
return var_1;
|
|
18406
|
-
};
|
|
18407
|
-
function asr_JsRiscV$simulateWithLimit$lambda$_13_0() {
|
|
18408
|
-
let a = this;
|
|
18409
|
-
jl_Object.call(a);
|
|
18410
|
-
a.$_022 = null;
|
|
18411
|
-
a.$_112 = 0;
|
|
18412
|
-
}
|
|
18413
|
-
var asr_JsRiscV$simulateWithLimit$lambda$_13_0_run = (var$0) => {
|
|
18414
|
-
let var$1, var$2, $ptr, $tmp;
|
|
18415
|
-
$ptr = 0;
|
|
18416
|
-
if ($rt_resuming()) {
|
|
18417
|
-
let $thread = $rt_nativeThread();
|
|
18418
|
-
$ptr = $thread.pop();
|
|
18419
|
-
var$2 = $thread.pop();
|
|
18420
|
-
var$1 = $thread.pop();
|
|
18421
|
-
var$0 = $thread.pop();
|
|
18422
|
-
}
|
|
18423
|
-
main: while (true) {
|
|
18424
|
-
switch ($ptr) {
|
|
18425
|
-
case 0:
|
|
18426
|
-
var$1 = var$0.$_022;
|
|
18427
|
-
var$2 = var$0.$_112;
|
|
18428
|
-
var$1 = var$1.$main;
|
|
18429
|
-
$ptr = 1;
|
|
18430
|
-
case 1:
|
|
18431
|
-
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
18432
|
-
if ($rt_suspending()) {
|
|
18433
|
-
break main;
|
|
18434
|
-
}
|
|
18435
|
-
var$1 = $tmp;
|
|
18436
|
-
return var$1.$ordinal0;
|
|
18437
|
-
default:
|
|
18438
|
-
$rt_invalidPointer();
|
|
18439
|
-
}
|
|
18440
|
-
}
|
|
18441
|
-
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
18442
|
-
};
|
|
18443
|
-
var otjc_JSArrayReader = $rt_classWithoutFields(0);
|
|
18444
|
-
var otjc_JSArray = $rt_classWithoutFields();
|
|
18445
|
-
var otjc_JSArray_of = ($items) => {
|
|
18446
|
-
let var$2, $array, $i, var$5;
|
|
18447
|
-
$items = $items.data;
|
|
18448
|
-
var$2 = $items.length;
|
|
18449
|
-
$array = new Array(var$2);
|
|
18450
|
-
$i = 0;
|
|
18451
|
-
while ($i < var$2) {
|
|
18452
|
-
var$5 = $items[$i];
|
|
18453
|
-
$array[$i] = otji_JSWrapper_javaToJs(var$5);
|
|
18454
|
-
$i = $i + 1 | 0;
|
|
18455
|
-
}
|
|
18456
|
-
return $array;
|
|
18457
|
-
};
|
|
18458
|
-
var asr_JsBackStep = $rt_classWithoutFields();
|
|
18459
|
-
var asr_JsBackStep_of = ($backStep) => {
|
|
18460
|
-
let var$2, var$3, var$4, var$5, var$6, var$7, var$8;
|
|
18461
|
-
var$2 = $backStep.$action;
|
|
18462
|
-
var$3 = var$2 === null ? -1 : var$2.$ordinal0;
|
|
18463
|
-
var$4 = $backStep.$pc1;
|
|
18464
|
-
var$5 = $backStep.$param1;
|
|
18465
|
-
var$6 = $backStep.$param2;
|
|
18466
|
-
var$7 = Long_lo(var$6);
|
|
18467
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18468
|
-
if (var$2 === asrs_BackStepper$Action_PC_RESTORE)
|
|
18469
|
-
var$6 = Long_fromInt(var$5);
|
|
18470
|
-
a: {
|
|
18471
|
-
var$8 = jl_Long_toString(var$6);
|
|
18472
|
-
switch ($backStep.$action.$ordinal0) {
|
|
18473
|
-
case 0:
|
|
18474
|
-
case 2:
|
|
18475
|
-
case 3:
|
|
18476
|
-
case 4:
|
|
18477
|
-
case 6:
|
|
18478
|
-
var$6 = Long_fromInt($backStep.$param3Int);
|
|
18479
|
-
break a;
|
|
18480
|
-
case 1:
|
|
18481
|
-
case 5:
|
|
18482
|
-
case 7:
|
|
18483
|
-
case 8:
|
|
18484
|
-
case 9:
|
|
18485
|
-
break;
|
|
18486
|
-
default:
|
|
18487
|
-
var$6 = Long_ZERO;
|
|
18488
|
-
break a;
|
|
18489
|
-
}
|
|
18490
|
-
var$6 = $backStep.$param3Long;
|
|
18491
|
-
}
|
|
18492
|
-
return asr_JsBackStep_create$js_body$_2(var$3, var$4, var$5, var$7, $rt_ustr(var$8), $rt_ustr(jl_Long_toString(var$6)), !!asrs_BackStepper$BackStep_isPoke($backStep));
|
|
18493
|
-
};
|
|
18494
|
-
var asr_JsBackStep_create$js_body$_2 = (var$1, var$2, var$3, var$4, var$5, var$6, var$7) => {
|
|
18495
|
-
return { action: var$1, pc: var$2, param1: var$3, param2: var$4, oldValue: var$5, newValue: var$6, isPoke: var$7 };
|
|
18496
|
-
};
|
|
18497
|
-
function asrs_BackStepper() {
|
|
18498
|
-
let a = this;
|
|
18499
|
-
jl_Object.call(a);
|
|
18500
|
-
a.$lastStatementPc = 0;
|
|
18501
|
-
a.$lastStatement = null;
|
|
18502
|
-
a.$engaged = 0;
|
|
18503
|
-
a.$backSteps = null;
|
|
18504
|
-
a.$pokeGroup = 0;
|
|
18505
|
-
a.$pokeRestores = null;
|
|
18506
|
-
}
|
|
18507
|
-
var asrs_BackStepper_nextPokeGroup = 0;
|
|
18508
|
-
var asrs_BackStepper_$callClinit = () => {
|
|
18509
|
-
asrs_BackStepper_$callClinit = $rt_eraseClinit(asrs_BackStepper);
|
|
18510
|
-
asrs_BackStepper__clinit_();
|
|
18511
|
-
};
|
|
18512
|
-
var asrs_BackStepper_applyRestore = (var$1, var$2, var$3) => {
|
|
18513
|
-
let var$4, var$5, var$6, var$7;
|
|
18514
|
-
asrs_BackStepper_$callClinit();
|
|
18515
|
-
a: {
|
|
18516
|
-
switch (var$1.$ordinal0) {
|
|
18517
|
-
case 0:
|
|
18518
|
-
asr_Globals_$callClinit();
|
|
18519
|
-
var$1 = asr_Globals_memory;
|
|
18520
|
-
var$4 = Long_lo(var$3);
|
|
18521
|
-
var$5 = asrrh_Memory_storeRawWord(var$1, var$2, var$4);
|
|
18522
|
-
asrrh_Memory_notifyAnyObservers(var$1, 1, var$2, 4, var$4);
|
|
18523
|
-
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings())) {
|
|
18524
|
-
var$6 = asr_Globals_program.$backStepper;
|
|
18525
|
-
var$7 = var$6.$backSteps;
|
|
18526
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18527
|
-
asrs_BackStepper$BackstepStack_push(var$7, asrs_BackStepper$Action_MEMORY_RESTORE_RAW_WORD, asrs_BackStepper_pc(var$6), var$2, Long_fromInt(var$5), var$4, Long_ZERO);
|
|
18528
|
-
}
|
|
18529
|
-
break a;
|
|
18530
|
-
case 1:
|
|
18531
|
-
asr_Globals_$callClinit();
|
|
18532
|
-
asrrh_Memory_setDoubleWord(asr_Globals_memory, var$2, var$3);
|
|
18533
|
-
break a;
|
|
18534
|
-
case 2:
|
|
18535
|
-
asr_Globals_$callClinit();
|
|
18536
|
-
asrrh_Memory_setWord(asr_Globals_memory, var$2, Long_lo(var$3));
|
|
18537
|
-
break a;
|
|
18538
|
-
case 3:
|
|
18539
|
-
asr_Globals_$callClinit();
|
|
18540
|
-
asrrh_Memory_setHalf(asr_Globals_memory, var$2, Long_lo(var$3));
|
|
18541
|
-
break a;
|
|
18542
|
-
case 4:
|
|
18543
|
-
asr_Globals_$callClinit();
|
|
18544
|
-
asrrh_Memory_setByte(asr_Globals_memory, var$2, Long_lo(var$3));
|
|
18545
|
-
break a;
|
|
18546
|
-
case 5:
|
|
18547
|
-
asrrh_RegisterFile_updateRegister(var$2, var$3);
|
|
18548
|
-
break a;
|
|
18549
|
-
case 6:
|
|
18550
|
-
asrrh_RegisterFile_setProgramCounter(var$2);
|
|
18551
|
-
break a;
|
|
18552
|
-
case 7:
|
|
18553
|
-
asrrh_ControlAndStatusRegisterFile_updateRegister0(var$2, var$3);
|
|
18554
|
-
break a;
|
|
18555
|
-
case 8:
|
|
18556
|
-
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
18557
|
-
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
18558
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor(asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, var$2), var$3);
|
|
18559
|
-
break a;
|
|
18560
|
-
case 9:
|
|
18561
|
-
asrrh_FloatingPointRegisterFile_updateRegisterLong(var$2, var$3);
|
|
18562
|
-
break a;
|
|
18563
|
-
case 10:
|
|
18564
|
-
break;
|
|
18565
|
-
case 11:
|
|
18566
|
-
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
18567
|
-
var$2 = asrrh_ControlAndStatusRegisterFile_pendingCounterTicks;
|
|
18568
|
-
if (var$2 > 0)
|
|
18569
|
-
asrrh_ControlAndStatusRegisterFile_pendingCounterTicks = var$2 - 1 | 0;
|
|
18570
|
-
else {
|
|
18571
|
-
var$1 = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(494));
|
|
18572
|
-
var$7 = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(495));
|
|
18573
|
-
asrrh_Register_setValueBackdoor(var$1, Long_sub(var$1.$getValueNoNotify(), Long_fromInt(1)));
|
|
18574
|
-
asrrh_Register_setValueBackdoor(var$7, Long_sub(var$7.$getValueNoNotify(), Long_fromInt(1)));
|
|
18575
|
-
}
|
|
18576
|
-
break a;
|
|
18577
|
-
case 12:
|
|
18578
|
-
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
18579
|
-
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
18580
|
-
var$1 = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, var$2);
|
|
18581
|
-
if (var$1 !== null)
|
|
18582
|
-
var$1.$setValue(var$3);
|
|
18583
|
-
break a;
|
|
18584
|
-
case 13:
|
|
18585
|
-
break a;
|
|
18586
|
-
default:
|
|
18587
|
-
break a;
|
|
18588
|
-
}
|
|
18589
|
-
}
|
|
18590
|
-
};
|
|
18591
|
-
var asrs_BackStepper_sameGroup = ($one, $other) => {
|
|
18592
|
-
asrs_BackStepper_$callClinit();
|
|
18593
|
-
if (!asrs_BackStepper$BackStep_isPoke($one) && !asrs_BackStepper$BackStep_isPoke($other))
|
|
18594
|
-
return $one.$ps !== $other.$ps ? 0 : 1;
|
|
18595
|
-
return 0;
|
|
18596
|
-
};
|
|
18597
|
-
var asrs_BackStepper_pc = ($this) => {
|
|
18598
|
-
return asrrh_RegisterFile_getProgramCounter() - 4 | 0;
|
|
18599
|
-
};
|
|
18600
|
-
var asrs_BackStepper_addFloatingPointRestore = ($this, $register, $value, $newValue) => {
|
|
18601
|
-
let var$4;
|
|
18602
|
-
var$4 = $this.$backSteps;
|
|
18603
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18604
|
-
asrs_BackStepper$BackstepStack_push(var$4, asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE, asrs_BackStepper_pc($this), $register, $value, 0, $newValue);
|
|
18605
|
-
return $value;
|
|
18606
|
-
};
|
|
18607
|
-
var asrs_BackStepper_addDoNothing = ($this, $pc) => {
|
|
18608
|
-
let var$2;
|
|
18609
|
-
if (!(!asrs_BackStepper$BackstepStack_empty($this.$backSteps) && asrs_BackStepper$BackstepStack_peek($this.$backSteps).$pc1 == $pc)) {
|
|
18610
|
-
var$2 = $this.$backSteps;
|
|
18611
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18612
|
-
asrs_BackStepper$BackstepStack_push0(var$2, asrs_BackStepper$Action_DO_NOTHING, $pc);
|
|
18613
|
-
}
|
|
18614
|
-
};
|
|
18615
|
-
var asrs_BackStepper__clinit_ = () => {
|
|
18616
|
-
asrs_BackStepper_nextPokeGroup = -2;
|
|
18617
|
-
};
|
|
18618
|
-
var asr_JsUndoGroup = $rt_classWithoutFields();
|
|
18619
|
-
var asr_JsUndoGroup_create$js_body$_3 = (var$1, var$2, var$3, var$4) => {
|
|
18620
|
-
return { kind: var$1, pc: var$2, steps: var$3, writes: var$4 };
|
|
18621
|
-
};
|
|
18622
|
-
var jl_IllegalStateException = $rt_classWithoutFields(jl_RuntimeException);
|
|
18623
|
-
function asr_JsRiscV$PokeRecord() {
|
|
18624
|
-
let a = this;
|
|
18625
|
-
jl_Object.call(a);
|
|
18626
|
-
a.$group0 = 0;
|
|
18627
|
-
a.$writes = null;
|
|
18628
|
-
}
|
|
18629
|
-
function asr_JsRiscV$PokeJournal() {
|
|
18630
|
-
let a = this;
|
|
18631
|
-
jl_Object.call(a);
|
|
18632
|
-
a.$group1 = 0;
|
|
18633
|
-
a.$registers = null;
|
|
18634
|
-
a.$registersByName = null;
|
|
18635
|
-
a.$memoryOldBytes = null;
|
|
18636
|
-
}
|
|
18637
|
-
var jl_Double = $rt_classWithoutFields(jl_Number);
|
|
18638
|
-
var jl_Double_TYPE = null;
|
|
18639
|
-
var jl_Double_$callClinit = () => {
|
|
18640
|
-
jl_Double_$callClinit = $rt_eraseClinit(jl_Double);
|
|
18641
|
-
jl_Double__clinit_();
|
|
18642
|
-
};
|
|
18643
|
-
var jl_Double_parseDouble = (var$1) => {
|
|
18644
|
-
let var$2, var$3, var$4, var$5, $negative, $c, $mantissa, $exp, $hasOneDigit, $mantissaPos, $negativeExp, $numExp;
|
|
18645
|
-
jl_Double_$callClinit();
|
|
18646
|
-
if (jl_String_isEmpty(var$1)) {
|
|
18647
|
-
var$1 = new jl_NumberFormatException();
|
|
18648
|
-
jl_Throwable__init_(var$1);
|
|
18649
|
-
$rt_throw(var$1);
|
|
18650
|
-
}
|
|
18651
|
-
var$2 = 0;
|
|
18652
|
-
var$3 = var$1.$nativeString.length;
|
|
18653
|
-
while (true) {
|
|
18654
|
-
if (jl_String_charAt(var$1, var$2) > 32) {
|
|
18655
|
-
while (true) {
|
|
18656
|
-
var$4 = var$3 - 1 | 0;
|
|
18657
|
-
if (jl_String_charAt(var$1, var$4) > 32)
|
|
18658
|
-
break;
|
|
18659
|
-
var$3 = var$3 + -1 | 0;
|
|
18660
|
-
}
|
|
18661
|
-
var$5 = jl_String_charAt(var$1, var$4) != 102 && jl_String_charAt(var$1, var$4) != 70 && jl_String_charAt(var$1, var$4) != 100 && jl_String_charAt(var$1, var$4) != 68 ? var$3 : var$3 + -1 | 0;
|
|
18547
|
+
var$5 = jl_String_charAt($string, var$4) != 102 && jl_String_charAt($string, var$4) != 70 && jl_String_charAt($string, var$4) != 100 && jl_String_charAt($string, var$4) != 68 ? $end : $end + -1 | 0;
|
|
18662
18548
|
$negative = 0;
|
|
18663
|
-
if (jl_String_charAt(
|
|
18664
|
-
|
|
18549
|
+
if (jl_String_charAt($string, $start) == 45) {
|
|
18550
|
+
$start = $start + 1 | 0;
|
|
18665
18551
|
$negative = 1;
|
|
18666
|
-
} else if (jl_String_charAt(
|
|
18667
|
-
|
|
18668
|
-
if (
|
|
18669
|
-
|
|
18670
|
-
jl_Throwable__init_(
|
|
18671
|
-
$rt_throw(
|
|
18552
|
+
} else if (jl_String_charAt($string, $start) == 43)
|
|
18553
|
+
$start = $start + 1 | 0;
|
|
18554
|
+
if ($start == var$5) {
|
|
18555
|
+
$string = new jl_NumberFormatException();
|
|
18556
|
+
jl_Throwable__init_($string);
|
|
18557
|
+
$rt_throw($string);
|
|
18672
18558
|
}
|
|
18673
18559
|
a: {
|
|
18674
|
-
$c = jl_String_charAt(
|
|
18560
|
+
$c = jl_String_charAt($string, $start);
|
|
18675
18561
|
$mantissa = Long_ZERO;
|
|
18676
18562
|
$exp = -1;
|
|
18677
18563
|
$hasOneDigit = 0;
|
|
@@ -18680,14 +18566,14 @@ var jl_Double_parseDouble = (var$1) => {
|
|
|
18680
18566
|
$hasOneDigit = 1;
|
|
18681
18567
|
if ($c >= 48 && $c <= 57) {
|
|
18682
18568
|
b: {
|
|
18683
|
-
while (
|
|
18684
|
-
if (jl_String_charAt(
|
|
18569
|
+
while ($start < var$5) {
|
|
18570
|
+
if (jl_String_charAt($string, $start) != 48)
|
|
18685
18571
|
break b;
|
|
18686
|
-
|
|
18572
|
+
$start = $start + 1 | 0;
|
|
18687
18573
|
}
|
|
18688
18574
|
}
|
|
18689
|
-
while (
|
|
18690
|
-
var$4 = jl_String_charAt(
|
|
18575
|
+
while ($start < var$5) {
|
|
18576
|
+
var$4 = jl_String_charAt($string, $start);
|
|
18691
18577
|
if (var$4 < 48)
|
|
18692
18578
|
break a;
|
|
18693
18579
|
if (var$4 > 57)
|
|
@@ -18697,77 +18583,77 @@ var jl_Double_parseDouble = (var$1) => {
|
|
|
18697
18583
|
$mantissaPos = jl_Long_divideUnsigned($mantissaPos, Long_fromInt(10));
|
|
18698
18584
|
}
|
|
18699
18585
|
$exp = $exp + 1 | 0;
|
|
18700
|
-
|
|
18586
|
+
$start = $start + 1 | 0;
|
|
18701
18587
|
}
|
|
18702
18588
|
} else {
|
|
18703
|
-
if ($c == 73 && (
|
|
18589
|
+
if ($c == 73 && ($end - $start | 0) == 8 && jl_String_regionMatches($string, 0, $start, $rt_s(578), 0, 8))
|
|
18704
18590
|
return !$negative ? Infinity : -Infinity;
|
|
18705
|
-
if ($c == 78 && (
|
|
18591
|
+
if ($c == 78 && ($end - $start | 0) == 3 && jl_String_regionMatches($string, 0, $start, $rt_s(579), 0, 3))
|
|
18706
18592
|
return NaN;
|
|
18707
|
-
|
|
18708
|
-
jl_Throwable__init_(
|
|
18709
|
-
$rt_throw(
|
|
18593
|
+
$string = new jl_NumberFormatException();
|
|
18594
|
+
jl_Throwable__init_($string);
|
|
18595
|
+
$rt_throw($string);
|
|
18710
18596
|
}
|
|
18711
18597
|
}
|
|
18712
18598
|
}
|
|
18713
|
-
if (
|
|
18714
|
-
|
|
18599
|
+
if ($start < var$5 && jl_String_charAt($string, $start) == 46) {
|
|
18600
|
+
$start = $start + 1 | 0;
|
|
18715
18601
|
c: {
|
|
18716
18602
|
while (true) {
|
|
18717
|
-
if (
|
|
18603
|
+
if ($start >= var$5)
|
|
18718
18604
|
break c;
|
|
18719
|
-
|
|
18720
|
-
var$4 = $rt_compare(
|
|
18605
|
+
$end = jl_String_charAt($string, $start);
|
|
18606
|
+
var$4 = $rt_compare($end, 48);
|
|
18721
18607
|
if (var$4 < 0)
|
|
18722
18608
|
break c;
|
|
18723
|
-
if (
|
|
18609
|
+
if ($end > 57)
|
|
18724
18610
|
break;
|
|
18725
18611
|
if (Long_eq($mantissa, Long_ZERO) && !var$4)
|
|
18726
18612
|
$exp = $exp + -1 | 0;
|
|
18727
18613
|
else if (Long_gt($mantissaPos, Long_ZERO)) {
|
|
18728
|
-
$mantissa = Long_add($mantissa, Long_mul($mantissaPos, Long_fromInt(
|
|
18614
|
+
$mantissa = Long_add($mantissa, Long_mul($mantissaPos, Long_fromInt($end - 48 | 0)));
|
|
18729
18615
|
$mantissaPos = jl_Long_divideUnsigned($mantissaPos, Long_fromInt(10));
|
|
18730
18616
|
}
|
|
18731
|
-
|
|
18617
|
+
$start = $start + 1 | 0;
|
|
18732
18618
|
$hasOneDigit = 1;
|
|
18733
18619
|
}
|
|
18734
18620
|
}
|
|
18735
18621
|
if (!$hasOneDigit) {
|
|
18736
|
-
|
|
18737
|
-
jl_IllegalArgumentException__init_(
|
|
18738
|
-
$rt_throw(
|
|
18622
|
+
$string = new jl_NumberFormatException();
|
|
18623
|
+
jl_IllegalArgumentException__init_($string);
|
|
18624
|
+
$rt_throw($string);
|
|
18739
18625
|
}
|
|
18740
18626
|
}
|
|
18741
|
-
if (
|
|
18742
|
-
|
|
18743
|
-
if (
|
|
18627
|
+
if ($start < var$5) {
|
|
18628
|
+
$end = jl_String_charAt($string, $start);
|
|
18629
|
+
if ($end != 101 && $end != 69)
|
|
18744
18630
|
$rt_throw(jl_NumberFormatException__init_());
|
|
18745
|
-
|
|
18631
|
+
$end = $start + 1 | 0;
|
|
18746
18632
|
$negativeExp = 0;
|
|
18747
|
-
if (
|
|
18633
|
+
if ($end == var$5)
|
|
18748
18634
|
$rt_throw(jl_NumberFormatException__init_());
|
|
18749
|
-
if (jl_String_charAt(
|
|
18750
|
-
|
|
18635
|
+
if (jl_String_charAt($string, $end) == 45) {
|
|
18636
|
+
$end = $end + 1 | 0;
|
|
18751
18637
|
$negativeExp = 1;
|
|
18752
|
-
} else if (jl_String_charAt(
|
|
18753
|
-
|
|
18638
|
+
} else if (jl_String_charAt($string, $end) == 43)
|
|
18639
|
+
$end = $end + 1 | 0;
|
|
18754
18640
|
$numExp = 0;
|
|
18755
|
-
|
|
18641
|
+
$start = 0;
|
|
18756
18642
|
d: {
|
|
18757
18643
|
while (true) {
|
|
18758
|
-
if (
|
|
18644
|
+
if ($end >= var$5)
|
|
18759
18645
|
break d;
|
|
18760
|
-
$c = jl_String_charAt(
|
|
18646
|
+
$c = jl_String_charAt($string, $end);
|
|
18761
18647
|
if ($c < 48)
|
|
18762
18648
|
break d;
|
|
18763
18649
|
if ($c > 57)
|
|
18764
18650
|
break;
|
|
18765
18651
|
$numExp = (10 * $numExp | 0) + ($c - 48 | 0) | 0;
|
|
18766
|
-
|
|
18767
|
-
|
|
18652
|
+
$start = 1;
|
|
18653
|
+
$end = $end + 1 | 0;
|
|
18768
18654
|
}
|
|
18769
18655
|
}
|
|
18770
|
-
if (
|
|
18656
|
+
if (!$start)
|
|
18771
18657
|
$rt_throw(jl_NumberFormatException__init_());
|
|
18772
18658
|
if ($negativeExp)
|
|
18773
18659
|
$numExp = -$numExp | 0;
|
|
@@ -18775,13 +18661,13 @@ var jl_Double_parseDouble = (var$1) => {
|
|
|
18775
18661
|
}
|
|
18776
18662
|
return otcit_DoubleSynthesizer_synthesizeDouble($mantissa, $exp, $negative);
|
|
18777
18663
|
}
|
|
18778
|
-
|
|
18779
|
-
if (
|
|
18664
|
+
$start = $start + 1 | 0;
|
|
18665
|
+
if ($start == $end)
|
|
18780
18666
|
break;
|
|
18781
18667
|
}
|
|
18782
|
-
|
|
18783
|
-
jl_Throwable__init_(
|
|
18784
|
-
$rt_throw(
|
|
18668
|
+
$string = new jl_NumberFormatException();
|
|
18669
|
+
jl_Throwable__init_($string);
|
|
18670
|
+
$rt_throw($string);
|
|
18785
18671
|
};
|
|
18786
18672
|
var jl_Double_isInfinite = ($v) => {
|
|
18787
18673
|
jl_Double_$callClinit();
|
|
@@ -18805,6 +18691,124 @@ var asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_1_apply = (var$0, var$1
|
|
|
18805
18691
|
asr_JsRiscV_$callClinit();
|
|
18806
18692
|
return $rt_createArray(asr_JsProgramStatement, var$1);
|
|
18807
18693
|
};
|
|
18694
|
+
var jl_IllegalStateException = $rt_classWithoutFields(jl_RuntimeException);
|
|
18695
|
+
function asr_JsRiscV$PokeRecord() {
|
|
18696
|
+
let a = this;
|
|
18697
|
+
jl_Object.call(a);
|
|
18698
|
+
a.$group0 = 0;
|
|
18699
|
+
a.$writes = null;
|
|
18700
|
+
}
|
|
18701
|
+
function asr_JsRiscV$PokeJournal() {
|
|
18702
|
+
let a = this;
|
|
18703
|
+
jl_Object.call(a);
|
|
18704
|
+
a.$group1 = 0;
|
|
18705
|
+
a.$registers = null;
|
|
18706
|
+
a.$registersByName = null;
|
|
18707
|
+
a.$memoryOldBytes = null;
|
|
18708
|
+
}
|
|
18709
|
+
function asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0() {
|
|
18710
|
+
let a = this;
|
|
18711
|
+
jl_Object.call(a);
|
|
18712
|
+
a.$_03 = null;
|
|
18713
|
+
a.$_10 = null;
|
|
18714
|
+
}
|
|
18715
|
+
var asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0_run = (var$0) => {
|
|
18716
|
+
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
18717
|
+
$ptr = 0;
|
|
18718
|
+
if ($rt_resuming()) {
|
|
18719
|
+
let $thread = $rt_nativeThread();
|
|
18720
|
+
$ptr = $thread.pop();
|
|
18721
|
+
var$4 = $thread.pop();
|
|
18722
|
+
var$3 = $thread.pop();
|
|
18723
|
+
var$2 = $thread.pop();
|
|
18724
|
+
var$1 = $thread.pop();
|
|
18725
|
+
var$0 = $thread.pop();
|
|
18726
|
+
}
|
|
18727
|
+
main: while (true) {
|
|
18728
|
+
switch ($ptr) {
|
|
18729
|
+
case 0:
|
|
18730
|
+
var$1 = var$0.$_03;
|
|
18731
|
+
var$2 = var$0.$_10;
|
|
18732
|
+
var$1 = var$1.$main;
|
|
18733
|
+
asr_RARS_requireAssembled(var$1);
|
|
18734
|
+
var$3 = var$1.$main0;
|
|
18735
|
+
var$4 = -1;
|
|
18736
|
+
$ptr = 1;
|
|
18737
|
+
case 1:
|
|
18738
|
+
$tmp = asr_RISCVprogram_simulate(var$3, var$4, var$2);
|
|
18739
|
+
if ($rt_suspending()) {
|
|
18740
|
+
break main;
|
|
18741
|
+
}
|
|
18742
|
+
var$3 = $tmp;
|
|
18743
|
+
var$1.$stopReason = var$3;
|
|
18744
|
+
return var$3.$ordinal0;
|
|
18745
|
+
default:
|
|
18746
|
+
$rt_invalidPointer();
|
|
18747
|
+
}
|
|
18748
|
+
}
|
|
18749
|
+
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
18750
|
+
};
|
|
18751
|
+
function asr_JsStackFrame() {
|
|
18752
|
+
let a = this;
|
|
18753
|
+
jl_Object.call(a);
|
|
18754
|
+
a.$pc2 = 0;
|
|
18755
|
+
a.$toAddress1 = 0;
|
|
18756
|
+
a.$sp = 0;
|
|
18757
|
+
a.$fp = 0;
|
|
18758
|
+
a.$registers0 = null;
|
|
18759
|
+
}
|
|
18760
|
+
var asr_JsStackFrame_getPc$exported$0 = (var$1) => {
|
|
18761
|
+
return var$1.$pc2;
|
|
18762
|
+
};
|
|
18763
|
+
var asr_JsStackFrame_getToAddress$exported$1 = (var$1) => {
|
|
18764
|
+
return var$1.$toAddress1;
|
|
18765
|
+
};
|
|
18766
|
+
var asr_JsStackFrame_getRegisters$exported$2 = (var$1) => {
|
|
18767
|
+
return otji_JS_wrap0(var$1.$registers0);
|
|
18768
|
+
};
|
|
18769
|
+
var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
|
|
18770
|
+
return var$1.$sp;
|
|
18771
|
+
};
|
|
18772
|
+
var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
|
|
18773
|
+
return var$1.$fp;
|
|
18774
|
+
};
|
|
18775
|
+
function asr_JsRiscV$step$lambda$_10_0() {
|
|
18776
|
+
jl_Object.call(this);
|
|
18777
|
+
this.$_014 = null;
|
|
18778
|
+
}
|
|
18779
|
+
var asr_JsRiscV$step$lambda$_10_0_run = (var$0) => {
|
|
18780
|
+
let var$1, var$2, var$3, $ptr, $tmp;
|
|
18781
|
+
$ptr = 0;
|
|
18782
|
+
if ($rt_resuming()) {
|
|
18783
|
+
let $thread = $rt_nativeThread();
|
|
18784
|
+
$ptr = $thread.pop();
|
|
18785
|
+
var$3 = $thread.pop();
|
|
18786
|
+
var$2 = $thread.pop();
|
|
18787
|
+
var$1 = $thread.pop();
|
|
18788
|
+
var$0 = $thread.pop();
|
|
18789
|
+
}
|
|
18790
|
+
main: while (true) {
|
|
18791
|
+
switch ($ptr) {
|
|
18792
|
+
case 0:
|
|
18793
|
+
var$1 = var$0.$_014.$main;
|
|
18794
|
+
asr_RARS_requireAssembled(var$1);
|
|
18795
|
+
var$2 = var$1.$main0;
|
|
18796
|
+
var$3 = 1;
|
|
18797
|
+
$ptr = 1;
|
|
18798
|
+
case 1:
|
|
18799
|
+
$tmp = asr_RISCVprogram_simulate0(var$2, var$3);
|
|
18800
|
+
if ($rt_suspending()) {
|
|
18801
|
+
break main;
|
|
18802
|
+
}
|
|
18803
|
+
var$2 = $tmp;
|
|
18804
|
+
var$1.$stopReason = var$2;
|
|
18805
|
+
return var$2.$ordinal0;
|
|
18806
|
+
default:
|
|
18807
|
+
$rt_invalidPointer();
|
|
18808
|
+
}
|
|
18809
|
+
}
|
|
18810
|
+
$rt_nativeThread().push(var$0, var$1, var$2, var$3, $ptr);
|
|
18811
|
+
};
|
|
18808
18812
|
function asr_JsRiscVTokenizedLine() {
|
|
18809
18813
|
let a = this;
|
|
18810
18814
|
jl_Object.call(a);
|
|
@@ -19627,86 +19631,6 @@ function jur_CharClass$16() {
|
|
|
19627
19631
|
var jur_CharClass$16_contains = ($this, $ch) => {
|
|
19628
19632
|
return $this.$val$curAlt6 ^ $this.$val$nb.$contains1($ch) && jur_CharClass_contains($this.$val$clazz7, $ch) ? 0 : 1;
|
|
19629
19633
|
};
|
|
19630
|
-
function asrrh_Register() {
|
|
19631
|
-
let a = this;
|
|
19632
|
-
ju_Observable.call(a);
|
|
19633
|
-
a.$name = null;
|
|
19634
|
-
a.$number = 0;
|
|
19635
|
-
a.$resetValue0 = Long_ZERO;
|
|
19636
|
-
a.$value4 = Long_ZERO;
|
|
19637
|
-
}
|
|
19638
|
-
var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
|
|
19639
|
-
ju_Observable__init_($this);
|
|
19640
|
-
$this.$name = $n;
|
|
19641
|
-
$this.$number = $num;
|
|
19642
|
-
$this.$value4 = $val;
|
|
19643
|
-
$this.$resetValue0 = $val;
|
|
19644
|
-
};
|
|
19645
|
-
var asrrh_Register__init_ = (var_0, var_1, var_2) => {
|
|
19646
|
-
let var_3 = new asrrh_Register();
|
|
19647
|
-
asrrh_Register__init_0(var_3, var_0, var_1, var_2);
|
|
19648
|
-
return var_3;
|
|
19649
|
-
};
|
|
19650
|
-
var asrrh_Register_getName = ($this) => {
|
|
19651
|
-
return $this.$name;
|
|
19652
|
-
};
|
|
19653
|
-
var asrrh_Register_getValue = ($this) => {
|
|
19654
|
-
asrrh_Register_notifyAnyObservers($this, 0);
|
|
19655
|
-
return $this.$value4;
|
|
19656
|
-
};
|
|
19657
|
-
var asrrh_Register_getValueNoNotify = ($this) => {
|
|
19658
|
-
return $this.$value4;
|
|
19659
|
-
};
|
|
19660
|
-
var asrrh_Register_getNumber = ($this) => {
|
|
19661
|
-
return $this.$number;
|
|
19662
|
-
};
|
|
19663
|
-
var asrrh_Register_setValue = ($this, $val) => {
|
|
19664
|
-
let $old;
|
|
19665
|
-
$old = $this.$value4;
|
|
19666
|
-
$this.$value4 = $val;
|
|
19667
|
-
asrrh_Register_notifyAnyObservers($this, 1);
|
|
19668
|
-
return $old;
|
|
19669
|
-
};
|
|
19670
|
-
var asrrh_Register_setValueBackdoor = ($this, $val) => {
|
|
19671
|
-
let $old;
|
|
19672
|
-
$old = $this.$value4;
|
|
19673
|
-
$this.$value4 = $val;
|
|
19674
|
-
return $old;
|
|
19675
|
-
};
|
|
19676
|
-
var asrrh_Register_resetValue = ($this) => {
|
|
19677
|
-
jl_Object_monitorEnterSync($this);
|
|
19678
|
-
try {
|
|
19679
|
-
$this.$value4 = $this.$resetValue0;
|
|
19680
|
-
} finally {
|
|
19681
|
-
jl_Object_monitorExitSync($this);
|
|
19682
|
-
}
|
|
19683
|
-
};
|
|
19684
|
-
var asrrh_Register_changeResetValue = ($this, $reset) => {
|
|
19685
|
-
jl_Object_monitorEnterSync($this);
|
|
19686
|
-
try {
|
|
19687
|
-
$this.$resetValue0 = $reset;
|
|
19688
|
-
} finally {
|
|
19689
|
-
jl_Object_monitorExitSync($this);
|
|
19690
|
-
}
|
|
19691
|
-
};
|
|
19692
|
-
var asrrh_Register_notifyAnyObservers = ($this, $type) => {
|
|
19693
|
-
let var$2, var$3, var$4;
|
|
19694
|
-
var$2 = $this;
|
|
19695
|
-
if (ju_Observable_countObservers(var$2) > 0) {
|
|
19696
|
-
ju_Observable_setChanged(var$2);
|
|
19697
|
-
var$3 = new asrrh_RegisterAccessNotice();
|
|
19698
|
-
var$4 = $this.$name;
|
|
19699
|
-
asrrh_AccessNotice__init_(var$3, $type);
|
|
19700
|
-
var$3.$registerName = var$4;
|
|
19701
|
-
ju_Observable_notifyObservers(var$2, var$3);
|
|
19702
|
-
}
|
|
19703
|
-
};
|
|
19704
|
-
function asr_JsRiscV$PokeRegisterWrite() {
|
|
19705
|
-
let a = this;
|
|
19706
|
-
jl_Object.call(a);
|
|
19707
|
-
a.$register = null;
|
|
19708
|
-
a.$oldValue = Long_ZERO;
|
|
19709
|
-
}
|
|
19710
19634
|
function asr_RISCVprogram() {
|
|
19711
19635
|
let a = this;
|
|
19712
19636
|
jl_Object.call(a);
|
|
@@ -19854,75 +19778,79 @@ var asr_RISCVprogram_createMacroPool = ($this) => {
|
|
|
19854
19778
|
var asr_RISCVprogram_getLocalMacroPool = ($this) => {
|
|
19855
19779
|
return $this.$macroPool;
|
|
19856
19780
|
};
|
|
19857
|
-
|
|
19858
|
-
function asr_JsRiscV$run$lambda$_9_0() {
|
|
19781
|
+
function asrrh_Register() {
|
|
19859
19782
|
let a = this;
|
|
19860
|
-
|
|
19861
|
-
a.$
|
|
19862
|
-
a.$
|
|
19783
|
+
ju_Observable.call(a);
|
|
19784
|
+
a.$name = null;
|
|
19785
|
+
a.$number = 0;
|
|
19786
|
+
a.$resetValue0 = Long_ZERO;
|
|
19787
|
+
a.$value4 = Long_ZERO;
|
|
19863
19788
|
}
|
|
19864
|
-
var
|
|
19865
|
-
|
|
19866
|
-
|
|
19789
|
+
var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
|
|
19790
|
+
ju_Observable__init_($this);
|
|
19791
|
+
$this.$name = $n;
|
|
19792
|
+
$this.$number = $num;
|
|
19793
|
+
$this.$value4 = $val;
|
|
19794
|
+
$this.$resetValue0 = $val;
|
|
19867
19795
|
};
|
|
19868
|
-
var
|
|
19869
|
-
let
|
|
19870
|
-
|
|
19871
|
-
return
|
|
19796
|
+
var asrrh_Register__init_ = (var_0, var_1, var_2) => {
|
|
19797
|
+
let var_3 = new asrrh_Register();
|
|
19798
|
+
asrrh_Register__init_0(var_3, var_0, var_1, var_2);
|
|
19799
|
+
return var_3;
|
|
19872
19800
|
};
|
|
19873
|
-
var
|
|
19874
|
-
|
|
19875
|
-
|
|
19876
|
-
|
|
19877
|
-
|
|
19878
|
-
|
|
19879
|
-
|
|
19880
|
-
|
|
19881
|
-
|
|
19882
|
-
|
|
19883
|
-
|
|
19884
|
-
|
|
19885
|
-
|
|
19886
|
-
|
|
19887
|
-
|
|
19888
|
-
|
|
19889
|
-
|
|
19890
|
-
|
|
19891
|
-
|
|
19892
|
-
|
|
19893
|
-
|
|
19894
|
-
|
|
19895
|
-
|
|
19896
|
-
|
|
19897
|
-
|
|
19898
|
-
|
|
19801
|
+
var asrrh_Register_getName = ($this) => {
|
|
19802
|
+
return $this.$name;
|
|
19803
|
+
};
|
|
19804
|
+
var asrrh_Register_getValue = ($this) => {
|
|
19805
|
+
asrrh_Register_notifyAnyObservers($this, 0);
|
|
19806
|
+
return $this.$value4;
|
|
19807
|
+
};
|
|
19808
|
+
var asrrh_Register_getValueNoNotify = ($this) => {
|
|
19809
|
+
return $this.$value4;
|
|
19810
|
+
};
|
|
19811
|
+
var asrrh_Register_getNumber = ($this) => {
|
|
19812
|
+
return $this.$number;
|
|
19813
|
+
};
|
|
19814
|
+
var asrrh_Register_setValue = ($this, $val) => {
|
|
19815
|
+
let $old;
|
|
19816
|
+
$old = $this.$value4;
|
|
19817
|
+
$this.$value4 = $val;
|
|
19818
|
+
asrrh_Register_notifyAnyObservers($this, 1);
|
|
19819
|
+
return $old;
|
|
19820
|
+
};
|
|
19821
|
+
var asrrh_Register_setValueBackdoor = ($this, $val) => {
|
|
19822
|
+
let $old;
|
|
19823
|
+
$old = $this.$value4;
|
|
19824
|
+
$this.$value4 = $val;
|
|
19825
|
+
return $old;
|
|
19826
|
+
};
|
|
19827
|
+
var asrrh_Register_resetValue = ($this) => {
|
|
19828
|
+
jl_Object_monitorEnterSync($this);
|
|
19829
|
+
try {
|
|
19830
|
+
$this.$value4 = $this.$resetValue0;
|
|
19831
|
+
} finally {
|
|
19832
|
+
jl_Object_monitorExitSync($this);
|
|
19899
19833
|
}
|
|
19900
19834
|
};
|
|
19901
|
-
var
|
|
19902
|
-
|
|
19903
|
-
|
|
19904
|
-
|
|
19905
|
-
|
|
19906
|
-
|
|
19907
|
-
$ptr = $thread.pop();
|
|
19908
|
-
$this = $thread.pop();
|
|
19835
|
+
var asrrh_Register_changeResetValue = ($this, $reset) => {
|
|
19836
|
+
jl_Object_monitorEnterSync($this);
|
|
19837
|
+
try {
|
|
19838
|
+
$this.$resetValue0 = $reset;
|
|
19839
|
+
} finally {
|
|
19840
|
+
jl_Object_monitorExitSync($this);
|
|
19909
19841
|
}
|
|
19910
|
-
|
|
19911
|
-
|
|
19912
|
-
|
|
19913
|
-
|
|
19914
|
-
|
|
19915
|
-
|
|
19916
|
-
|
|
19917
|
-
|
|
19918
|
-
|
|
19919
|
-
|
|
19920
|
-
|
|
19921
|
-
default:
|
|
19922
|
-
$rt_invalidPointer();
|
|
19923
|
-
}
|
|
19842
|
+
};
|
|
19843
|
+
var asrrh_Register_notifyAnyObservers = ($this, $type) => {
|
|
19844
|
+
let var$2, var$3, var$4;
|
|
19845
|
+
var$2 = $this;
|
|
19846
|
+
if (ju_Observable_countObservers(var$2) > 0) {
|
|
19847
|
+
ju_Observable_setChanged(var$2);
|
|
19848
|
+
var$3 = new asrrh_RegisterAccessNotice();
|
|
19849
|
+
var$4 = $this.$name;
|
|
19850
|
+
asrrh_AccessNotice__init_(var$3, $type);
|
|
19851
|
+
var$3.$registerName = var$4;
|
|
19852
|
+
ju_Observable_notifyObservers(var$2, var$3);
|
|
19924
19853
|
}
|
|
19925
|
-
$rt_nativeThread().push($this, $ptr);
|
|
19926
19854
|
};
|
|
19927
19855
|
var jl_AutoCloseable = $rt_classWithoutFields(0);
|
|
19928
19856
|
var jus_BaseStream = $rt_classWithoutFields(0);
|
|
@@ -19993,6 +19921,128 @@ function jusi_ArrayStreamImpl() {
|
|
|
19993
19921
|
a.$end1 = 0;
|
|
19994
19922
|
a.$size3 = 0;
|
|
19995
19923
|
}
|
|
19924
|
+
function asrs_BackStepper$BackstepStack() {
|
|
19925
|
+
let a = this;
|
|
19926
|
+
jl_Object.call(a);
|
|
19927
|
+
a.$capacity = 0;
|
|
19928
|
+
a.$size1 = 0;
|
|
19929
|
+
a.$top = 0;
|
|
19930
|
+
a.$stack = null;
|
|
19931
|
+
a.$this$04 = null;
|
|
19932
|
+
}
|
|
19933
|
+
var asrs_BackStepper$BackstepStack_getStack = ($this) => {
|
|
19934
|
+
let var$1, $usedStack, var$3, $i, var$5, var$6, var$7;
|
|
19935
|
+
var$1 = $this.$size1;
|
|
19936
|
+
$usedStack = $rt_createArray(asrs_BackStepper$BackStep, var$1);
|
|
19937
|
+
var$3 = $usedStack.data;
|
|
19938
|
+
$i = 0;
|
|
19939
|
+
while ($i < var$1) {
|
|
19940
|
+
var$5 = $this.$stack.data;
|
|
19941
|
+
var$6 = $this.$top - $i | 0;
|
|
19942
|
+
var$7 = $this.$capacity;
|
|
19943
|
+
var$3[$i] = var$5[(var$6 + var$7 | 0) % var$7 | 0];
|
|
19944
|
+
$i = $i + 1 | 0;
|
|
19945
|
+
}
|
|
19946
|
+
return $usedStack;
|
|
19947
|
+
};
|
|
19948
|
+
var asrs_BackStepper$BackstepStack_empty = ($this) => {
|
|
19949
|
+
return $this.$size1 ? 0 : 1;
|
|
19950
|
+
};
|
|
19951
|
+
var asrs_BackStepper$BackstepStack_advance = ($this) => {
|
|
19952
|
+
let $next, var$2;
|
|
19953
|
+
$next = $this.$top + 1 | 0;
|
|
19954
|
+
var$2 = $this.$capacity;
|
|
19955
|
+
if ($next == var$2)
|
|
19956
|
+
$next = 0;
|
|
19957
|
+
$this.$top = $next;
|
|
19958
|
+
$next = $this.$size1;
|
|
19959
|
+
if ($next < var$2)
|
|
19960
|
+
$this.$size1 = $next + 1 | 0;
|
|
19961
|
+
};
|
|
19962
|
+
var asrs_BackStepper$BackstepStack_push = ($this, $act, $programCounter, $parm1, $parm2, $wroteInt, $wroteLong) => {
|
|
19963
|
+
let var$7, $step, var$9, $$je;
|
|
19964
|
+
var$7 = $this.$this$04;
|
|
19965
|
+
if (var$7.$pokeGroup) {
|
|
19966
|
+
var$7 = var$7.$pokeRestores;
|
|
19967
|
+
$step = new asrs_BackStepper$PokeRestore();
|
|
19968
|
+
$step.$action0 = $act;
|
|
19969
|
+
$step.$param10 = $parm1;
|
|
19970
|
+
$step.$param20 = $parm2;
|
|
19971
|
+
ju_ArrayList_add(var$7, $step);
|
|
19972
|
+
return;
|
|
19973
|
+
}
|
|
19974
|
+
asrs_BackStepper$BackstepStack_advance($this);
|
|
19975
|
+
$step = $this.$stack.data[$this.$top];
|
|
19976
|
+
$step.$action = $act;
|
|
19977
|
+
$step.$pc1 = $programCounter;
|
|
19978
|
+
$step.$pokeGroup0 = 0;
|
|
19979
|
+
$step.$pokeRestores0 = null;
|
|
19980
|
+
$act = $step.$this$01;
|
|
19981
|
+
if ($programCounter == $act.$lastStatementPc)
|
|
19982
|
+
var$9 = $act.$lastStatement;
|
|
19983
|
+
else {
|
|
19984
|
+
a: {
|
|
19985
|
+
var$9 = null;
|
|
19986
|
+
if (asrrh_Memory_wordAligned($programCounter)) {
|
|
19987
|
+
if (!asrrh_Memory_inTextSegment($programCounter)) {
|
|
19988
|
+
$act = asr_Globals_getSettings();
|
|
19989
|
+
asr_Settings$Bool_$callClinit();
|
|
19990
|
+
if (!asr_Settings_getBooleanSetting($act, asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED))
|
|
19991
|
+
break a;
|
|
19992
|
+
}
|
|
19993
|
+
try {
|
|
19994
|
+
asr_Globals_$callClinit();
|
|
19995
|
+
var$9 = asrrh_Memory_getStatementNoNotify(asr_Globals_memory, $programCounter);
|
|
19996
|
+
break a;
|
|
19997
|
+
} catch ($$e) {
|
|
19998
|
+
$$je = $rt_wrapException($$e);
|
|
19999
|
+
if ($$je instanceof jl_Exception) {
|
|
20000
|
+
var$9 = null;
|
|
20001
|
+
break a;
|
|
20002
|
+
} else {
|
|
20003
|
+
throw $$e;
|
|
20004
|
+
}
|
|
20005
|
+
}
|
|
20006
|
+
}
|
|
20007
|
+
}
|
|
20008
|
+
$act = $step.$this$01;
|
|
20009
|
+
$act.$lastStatementPc = $programCounter;
|
|
20010
|
+
$act.$lastStatement = var$9;
|
|
20011
|
+
}
|
|
20012
|
+
if (var$9 === null)
|
|
20013
|
+
$step.$pc1 = -1;
|
|
20014
|
+
$step.$ps = var$9;
|
|
20015
|
+
$step.$param1 = $parm1;
|
|
20016
|
+
$step.$param2 = $parm2;
|
|
20017
|
+
$step.$param3Int = $wroteInt;
|
|
20018
|
+
$step.$param3Long = $wroteLong;
|
|
20019
|
+
};
|
|
20020
|
+
var asrs_BackStepper$BackstepStack_push1 = ($this, $act, $programCounter, $parm1, $parm2) => {
|
|
20021
|
+
asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, $parm1, $parm2, 0, Long_ZERO);
|
|
20022
|
+
};
|
|
20023
|
+
var asrs_BackStepper$BackstepStack_push0 = ($this, $act, $programCounter) => {
|
|
20024
|
+
asrs_BackStepper$BackstepStack_push1($this, $act, $programCounter, 0, Long_ZERO);
|
|
20025
|
+
};
|
|
20026
|
+
var asrs_BackStepper$BackstepStack_peek = ($this) => {
|
|
20027
|
+
return $this.$stack.data[$this.$top];
|
|
20028
|
+
};
|
|
20029
|
+
function asrs_BackStepper$BackStep() {
|
|
20030
|
+
let a = this;
|
|
20031
|
+
jl_Object.call(a);
|
|
20032
|
+
a.$action = null;
|
|
20033
|
+
a.$pc1 = 0;
|
|
20034
|
+
a.$ps = null;
|
|
20035
|
+
a.$param1 = 0;
|
|
20036
|
+
a.$param2 = Long_ZERO;
|
|
20037
|
+
a.$param3Int = 0;
|
|
20038
|
+
a.$param3Long = Long_ZERO;
|
|
20039
|
+
a.$pokeGroup0 = 0;
|
|
20040
|
+
a.$pokeRestores0 = null;
|
|
20041
|
+
a.$this$01 = null;
|
|
20042
|
+
}
|
|
20043
|
+
var asrs_BackStepper$BackStep_isPoke = ($this) => {
|
|
20044
|
+
return !$this.$pokeGroup0 ? 0 : 1;
|
|
20045
|
+
};
|
|
19996
20046
|
function jl_Long() {
|
|
19997
20047
|
jl_Number.call(this);
|
|
19998
20048
|
this.$value2 = Long_ZERO;
|
|
@@ -20272,179 +20322,6 @@ var jl_Long_compareTo = ($this, var$1) => {
|
|
|
20272
20322
|
var jl_Long__clinit_ = () => {
|
|
20273
20323
|
jl_Long_TYPE = $rt_cls($rt_longcls);
|
|
20274
20324
|
};
|
|
20275
|
-
function asrrh_AddressErrorException() {
|
|
20276
|
-
let a = this;
|
|
20277
|
-
jl_Exception.call(a);
|
|
20278
|
-
a.$address1 = 0;
|
|
20279
|
-
a.$type0 = 0;
|
|
20280
|
-
}
|
|
20281
|
-
var asrrh_AddressErrorException__init_0 = ($this, $message, $exceptType, $addr) => {
|
|
20282
|
-
let var$4, var$5;
|
|
20283
|
-
var$4 = asru_Binary_intToHexString($addr);
|
|
20284
|
-
var$5 = new jl_StringBuilder();
|
|
20285
|
-
jl_AbstractStringBuilder__init_(var$5);
|
|
20286
|
-
jl_StringBuilder_append(jl_StringBuilder_append(var$5, $message), var$4);
|
|
20287
|
-
jl_Throwable__init_0($this, jl_AbstractStringBuilder_toString(var$5));
|
|
20288
|
-
$this.$address1 = $addr;
|
|
20289
|
-
$this.$type0 = $exceptType;
|
|
20290
|
-
};
|
|
20291
|
-
var asrrh_AddressErrorException__init_ = (var_0, var_1, var_2) => {
|
|
20292
|
-
let var_3 = new asrrh_AddressErrorException();
|
|
20293
|
-
asrrh_AddressErrorException__init_0(var_3, var_0, var_1, var_2);
|
|
20294
|
-
return var_3;
|
|
20295
|
-
};
|
|
20296
|
-
var asrrh_AddressErrorException_getAddress = ($this) => {
|
|
20297
|
-
return $this.$address1;
|
|
20298
|
-
};
|
|
20299
|
-
function asr_JsCompilationResult$_init_$lambda$_0_0() {
|
|
20300
|
-
jl_Object.call(this);
|
|
20301
|
-
this.$_019 = null;
|
|
20302
|
-
}
|
|
20303
|
-
var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
|
|
20304
|
-
let var$2, var$3, var$4;
|
|
20305
|
-
var$1 = var$1;
|
|
20306
|
-
var$2 = var$0.$_019;
|
|
20307
|
-
var$3 = new asr_JsCompilationResult$JsCompilationError();
|
|
20308
|
-
var$3.$this$017 = var$2;
|
|
20309
|
-
var$3.$isWarning0 = var$1.$isWarning;
|
|
20310
|
-
var$3.$message2 = var$1.$message0;
|
|
20311
|
-
var$2 = ju_Collection_stream(ju_ArrayList__init_0(var$1.$macroExpansionTrace));
|
|
20312
|
-
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_0();
|
|
20313
|
-
var$2 = jusi_SimpleStreamImpl_map(var$2, var$4);
|
|
20314
|
-
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_1();
|
|
20315
|
-
var$3.$macroExpansionTrace1 = jusi_SimpleStreamImpl_toArray(var$2, var$4);
|
|
20316
|
-
var$3.$sourcePath3 = var$1.$sourcePath0;
|
|
20317
|
-
var$3.$sourceLine6 = var$1.$sourceLine0;
|
|
20318
|
-
var$3.$sourceColumn0 = var$1.$sourceColumn;
|
|
20319
|
-
return var$3;
|
|
20320
|
-
};
|
|
20321
|
-
var juf_Supplier = $rt_classWithoutFields(0);
|
|
20322
|
-
var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
|
|
20323
|
-
var juf_BiConsumer = $rt_classWithoutFields(0);
|
|
20324
|
-
var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
|
|
20325
|
-
var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
|
|
20326
|
-
function asrs_BackStepper$BackstepStack() {
|
|
20327
|
-
let a = this;
|
|
20328
|
-
jl_Object.call(a);
|
|
20329
|
-
a.$capacity = 0;
|
|
20330
|
-
a.$size1 = 0;
|
|
20331
|
-
a.$top = 0;
|
|
20332
|
-
a.$stack = null;
|
|
20333
|
-
a.$this$04 = null;
|
|
20334
|
-
}
|
|
20335
|
-
var asrs_BackStepper$BackstepStack_getStack = ($this) => {
|
|
20336
|
-
let var$1, $usedStack, var$3, $i, var$5, var$6, var$7;
|
|
20337
|
-
var$1 = $this.$size1;
|
|
20338
|
-
$usedStack = $rt_createArray(asrs_BackStepper$BackStep, var$1);
|
|
20339
|
-
var$3 = $usedStack.data;
|
|
20340
|
-
$i = 0;
|
|
20341
|
-
while ($i < var$1) {
|
|
20342
|
-
var$5 = $this.$stack.data;
|
|
20343
|
-
var$6 = $this.$top - $i | 0;
|
|
20344
|
-
var$7 = $this.$capacity;
|
|
20345
|
-
var$3[$i] = var$5[(var$6 + var$7 | 0) % var$7 | 0];
|
|
20346
|
-
$i = $i + 1 | 0;
|
|
20347
|
-
}
|
|
20348
|
-
return $usedStack;
|
|
20349
|
-
};
|
|
20350
|
-
var asrs_BackStepper$BackstepStack_empty = ($this) => {
|
|
20351
|
-
return $this.$size1 ? 0 : 1;
|
|
20352
|
-
};
|
|
20353
|
-
var asrs_BackStepper$BackstepStack_advance = ($this) => {
|
|
20354
|
-
let $next, var$2;
|
|
20355
|
-
$next = $this.$top + 1 | 0;
|
|
20356
|
-
var$2 = $this.$capacity;
|
|
20357
|
-
if ($next == var$2)
|
|
20358
|
-
$next = 0;
|
|
20359
|
-
$this.$top = $next;
|
|
20360
|
-
$next = $this.$size1;
|
|
20361
|
-
if ($next < var$2)
|
|
20362
|
-
$this.$size1 = $next + 1 | 0;
|
|
20363
|
-
};
|
|
20364
|
-
var asrs_BackStepper$BackstepStack_push = ($this, $act, $programCounter, $parm1, $parm2, $wroteInt, $wroteLong) => {
|
|
20365
|
-
let var$7, $step, var$9, $$je;
|
|
20366
|
-
var$7 = $this.$this$04;
|
|
20367
|
-
if (var$7.$pokeGroup) {
|
|
20368
|
-
var$7 = var$7.$pokeRestores;
|
|
20369
|
-
$step = new asrs_BackStepper$PokeRestore();
|
|
20370
|
-
$step.$action0 = $act;
|
|
20371
|
-
$step.$param10 = $parm1;
|
|
20372
|
-
$step.$param20 = $parm2;
|
|
20373
|
-
ju_ArrayList_add(var$7, $step);
|
|
20374
|
-
return;
|
|
20375
|
-
}
|
|
20376
|
-
asrs_BackStepper$BackstepStack_advance($this);
|
|
20377
|
-
$step = $this.$stack.data[$this.$top];
|
|
20378
|
-
$step.$action = $act;
|
|
20379
|
-
$step.$pc1 = $programCounter;
|
|
20380
|
-
$step.$pokeGroup0 = 0;
|
|
20381
|
-
$step.$pokeRestores0 = null;
|
|
20382
|
-
$act = $step.$this$01;
|
|
20383
|
-
if ($programCounter == $act.$lastStatementPc)
|
|
20384
|
-
var$9 = $act.$lastStatement;
|
|
20385
|
-
else {
|
|
20386
|
-
a: {
|
|
20387
|
-
var$9 = null;
|
|
20388
|
-
if (asrrh_Memory_wordAligned($programCounter)) {
|
|
20389
|
-
if (!asrrh_Memory_inTextSegment($programCounter)) {
|
|
20390
|
-
$act = asr_Globals_getSettings();
|
|
20391
|
-
asr_Settings$Bool_$callClinit();
|
|
20392
|
-
if (!asr_Settings_getBooleanSetting($act, asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED))
|
|
20393
|
-
break a;
|
|
20394
|
-
}
|
|
20395
|
-
try {
|
|
20396
|
-
asr_Globals_$callClinit();
|
|
20397
|
-
var$9 = asrrh_Memory_getStatementNoNotify(asr_Globals_memory, $programCounter);
|
|
20398
|
-
break a;
|
|
20399
|
-
} catch ($$e) {
|
|
20400
|
-
$$je = $rt_wrapException($$e);
|
|
20401
|
-
if ($$je instanceof jl_Exception) {
|
|
20402
|
-
var$9 = null;
|
|
20403
|
-
break a;
|
|
20404
|
-
} else {
|
|
20405
|
-
throw $$e;
|
|
20406
|
-
}
|
|
20407
|
-
}
|
|
20408
|
-
}
|
|
20409
|
-
}
|
|
20410
|
-
$act = $step.$this$01;
|
|
20411
|
-
$act.$lastStatementPc = $programCounter;
|
|
20412
|
-
$act.$lastStatement = var$9;
|
|
20413
|
-
}
|
|
20414
|
-
if (var$9 === null)
|
|
20415
|
-
$step.$pc1 = -1;
|
|
20416
|
-
$step.$ps = var$9;
|
|
20417
|
-
$step.$param1 = $parm1;
|
|
20418
|
-
$step.$param2 = $parm2;
|
|
20419
|
-
$step.$param3Int = $wroteInt;
|
|
20420
|
-
$step.$param3Long = $wroteLong;
|
|
20421
|
-
};
|
|
20422
|
-
var asrs_BackStepper$BackstepStack_push1 = ($this, $act, $programCounter, $parm1, $parm2) => {
|
|
20423
|
-
asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, $parm1, $parm2, 0, Long_ZERO);
|
|
20424
|
-
};
|
|
20425
|
-
var asrs_BackStepper$BackstepStack_push0 = ($this, $act, $programCounter) => {
|
|
20426
|
-
asrs_BackStepper$BackstepStack_push1($this, $act, $programCounter, 0, Long_ZERO);
|
|
20427
|
-
};
|
|
20428
|
-
var asrs_BackStepper$BackstepStack_peek = ($this) => {
|
|
20429
|
-
return $this.$stack.data[$this.$top];
|
|
20430
|
-
};
|
|
20431
|
-
function asrs_BackStepper$BackStep() {
|
|
20432
|
-
let a = this;
|
|
20433
|
-
jl_Object.call(a);
|
|
20434
|
-
a.$action = null;
|
|
20435
|
-
a.$pc1 = 0;
|
|
20436
|
-
a.$ps = null;
|
|
20437
|
-
a.$param1 = 0;
|
|
20438
|
-
a.$param2 = Long_ZERO;
|
|
20439
|
-
a.$param3Int = 0;
|
|
20440
|
-
a.$param3Long = Long_ZERO;
|
|
20441
|
-
a.$pokeGroup0 = 0;
|
|
20442
|
-
a.$pokeRestores0 = null;
|
|
20443
|
-
a.$this$01 = null;
|
|
20444
|
-
}
|
|
20445
|
-
var asrs_BackStepper$BackStep_isPoke = ($this) => {
|
|
20446
|
-
return !$this.$pokeGroup0 ? 0 : 1;
|
|
20447
|
-
};
|
|
20448
20325
|
var otjc_JSObjects = $rt_classWithoutFields();
|
|
20449
20326
|
var otji_JSWrapper$Helper = $rt_classWithoutFields();
|
|
20450
20327
|
var otji_JSWrapper$Helper_hashCodes = null;
|
|
@@ -20481,6 +20358,109 @@ var otji_JSWrapper$Helper__clinit_ = () => {
|
|
|
20481
20358
|
otji_JSWrapper$Helper_numberFinalizationRegistry = var$1;
|
|
20482
20359
|
};
|
|
20483
20360
|
var otjc_JSUndefined = $rt_classWithoutFields();
|
|
20361
|
+
var otjc_JSPromise$Executor = $rt_classWithoutFields(0);
|
|
20362
|
+
function asr_JsRiscV$run$lambda$_9_0() {
|
|
20363
|
+
let a = this;
|
|
20364
|
+
jl_Object.call(a);
|
|
20365
|
+
a.$_017 = null;
|
|
20366
|
+
a.$_17 = null;
|
|
20367
|
+
}
|
|
20368
|
+
var asr_JsRiscV$run$lambda$_9_0__init_0 = (var$0, var$1, var$2) => {
|
|
20369
|
+
var$0.$_017 = var$1;
|
|
20370
|
+
var$0.$_17 = var$2;
|
|
20371
|
+
};
|
|
20372
|
+
var asr_JsRiscV$run$lambda$_9_0__init_ = (var_0, var_1) => {
|
|
20373
|
+
let var_2 = new asr_JsRiscV$run$lambda$_9_0();
|
|
20374
|
+
asr_JsRiscV$run$lambda$_9_0__init_0(var_2, var_0, var_1);
|
|
20375
|
+
return var_2;
|
|
20376
|
+
};
|
|
20377
|
+
var asr_JsRiscV$run$lambda$_9_0_onExecute$exported$0 = (var$1, var$2, var$3) => {
|
|
20378
|
+
let var$4, var$5;
|
|
20379
|
+
var$2 = otji_JS_functionAsObject(var$2, "accept");
|
|
20380
|
+
var$3 = otji_JS_functionAsObject(var$3, "accept");
|
|
20381
|
+
var$1 = var$1;
|
|
20382
|
+
var$4 = var$1.$_017;
|
|
20383
|
+
var$1 = var$1.$_17;
|
|
20384
|
+
var$5 = new asr_JsRiscV$lambda$run$2$lambda$_75_0();
|
|
20385
|
+
var$5.$_011 = var$4;
|
|
20386
|
+
var$5.$_16 = var$1;
|
|
20387
|
+
var$5.$_21 = var$3;
|
|
20388
|
+
var$5.$_30 = var$2;
|
|
20389
|
+
asr_JsRiscV_$callClinit();
|
|
20390
|
+
ju_ArrayDeque_add(asr_JsRiscV_tasks, var$5);
|
|
20391
|
+
if (asr_JsRiscV_workerStarted) {
|
|
20392
|
+
var$1 = asr_JsRiscV_unpark;
|
|
20393
|
+
if (var$1 !== null) {
|
|
20394
|
+
asr_JsRiscV_unpark = null;
|
|
20395
|
+
var$1.accept(null);
|
|
20396
|
+
}
|
|
20397
|
+
} else {
|
|
20398
|
+
asr_JsRiscV_workerStarted = 1;
|
|
20399
|
+
var$1 = new asr_JsRiscV$submit$lambda$_8_0();
|
|
20400
|
+
var$2 = new otjc_JSPromise$runAsync$lambda$_15_0();
|
|
20401
|
+
var$2.$_01 = var$1;
|
|
20402
|
+
new Promise(otji_JS_function(otji_JSWrapper_unwrap(var$2), "onExecute"));
|
|
20403
|
+
}
|
|
20404
|
+
};
|
|
20405
|
+
var otjc_JSPromise = $rt_classWithoutFields();
|
|
20406
|
+
var otjc_JSPromise_await$static = ($this) => {
|
|
20407
|
+
let $ptr, $tmp;
|
|
20408
|
+
$ptr = 0;
|
|
20409
|
+
if ($rt_resuming()) {
|
|
20410
|
+
let $thread = $rt_nativeThread();
|
|
20411
|
+
$ptr = $thread.pop();
|
|
20412
|
+
$this = $thread.pop();
|
|
20413
|
+
}
|
|
20414
|
+
main: while (true) {
|
|
20415
|
+
switch ($ptr) {
|
|
20416
|
+
case 0:
|
|
20417
|
+
$ptr = 1;
|
|
20418
|
+
case 1:
|
|
20419
|
+
$tmp = otjc_JSPromiseHelper_await$_asyncCall_$($this);
|
|
20420
|
+
if ($rt_suspending()) {
|
|
20421
|
+
break main;
|
|
20422
|
+
}
|
|
20423
|
+
$this = $tmp;
|
|
20424
|
+
return $this;
|
|
20425
|
+
default:
|
|
20426
|
+
$rt_invalidPointer();
|
|
20427
|
+
}
|
|
20428
|
+
}
|
|
20429
|
+
$rt_nativeThread().push($this, $ptr);
|
|
20430
|
+
};
|
|
20431
|
+
function asr_JsCompilationResult$_init_$lambda$_0_0() {
|
|
20432
|
+
jl_Object.call(this);
|
|
20433
|
+
this.$_019 = null;
|
|
20434
|
+
}
|
|
20435
|
+
var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
|
|
20436
|
+
let var$2, var$3, var$4;
|
|
20437
|
+
var$1 = var$1;
|
|
20438
|
+
var$2 = var$0.$_019;
|
|
20439
|
+
var$3 = new asr_JsCompilationResult$JsCompilationError();
|
|
20440
|
+
var$3.$this$017 = var$2;
|
|
20441
|
+
var$3.$isWarning0 = var$1.$isWarning;
|
|
20442
|
+
var$3.$message2 = var$1.$message0;
|
|
20443
|
+
var$2 = ju_Collection_stream(ju_ArrayList__init_0(var$1.$macroExpansionTrace));
|
|
20444
|
+
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_0();
|
|
20445
|
+
var$2 = jusi_SimpleStreamImpl_map(var$2, var$4);
|
|
20446
|
+
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_1();
|
|
20447
|
+
var$3.$macroExpansionTrace1 = jusi_SimpleStreamImpl_toArray(var$2, var$4);
|
|
20448
|
+
var$3.$sourcePath3 = var$1.$sourcePath0;
|
|
20449
|
+
var$3.$sourceLine6 = var$1.$sourceLine0;
|
|
20450
|
+
var$3.$sourceColumn0 = var$1.$sourceColumn;
|
|
20451
|
+
return var$3;
|
|
20452
|
+
};
|
|
20453
|
+
var juf_Supplier = $rt_classWithoutFields(0);
|
|
20454
|
+
var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
|
|
20455
|
+
var juf_BiConsumer = $rt_classWithoutFields(0);
|
|
20456
|
+
var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
|
|
20457
|
+
var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
|
|
20458
|
+
function asr_JsRiscV$PokeRegisterWrite() {
|
|
20459
|
+
let a = this;
|
|
20460
|
+
jl_Object.call(a);
|
|
20461
|
+
a.$register = null;
|
|
20462
|
+
a.$oldValue = Long_ZERO;
|
|
20463
|
+
}
|
|
20484
20464
|
var asr_JsPokeWrite = $rt_classWithoutFields();
|
|
20485
20465
|
var asr_JsPokeWrite_toNumberArray = ($values) => {
|
|
20486
20466
|
let var$2, $array, $i, var$5;
|
|
@@ -20501,6 +20481,30 @@ var asr_JsPokeWrite_createRegister$js_body$_4 = (var$1, var$2, var$3) => {
|
|
|
20501
20481
|
var asr_JsPokeWrite_createMemory$js_body$_5 = (var$1, var$2, var$3) => {
|
|
20502
20482
|
return { type: "memory", address: var$1, old: var$2, new: var$3 };
|
|
20503
20483
|
};
|
|
20484
|
+
function asrrh_AddressErrorException() {
|
|
20485
|
+
let a = this;
|
|
20486
|
+
jl_Exception.call(a);
|
|
20487
|
+
a.$address1 = 0;
|
|
20488
|
+
a.$type0 = 0;
|
|
20489
|
+
}
|
|
20490
|
+
var asrrh_AddressErrorException__init_0 = ($this, var$1, var$2, var$3) => {
|
|
20491
|
+
let var$4, var$5;
|
|
20492
|
+
var$4 = asru_Binary_intToHexString(var$3);
|
|
20493
|
+
var$5 = new jl_StringBuilder();
|
|
20494
|
+
jl_AbstractStringBuilder__init_(var$5);
|
|
20495
|
+
jl_StringBuilder_append(jl_StringBuilder_append(var$5, var$1), var$4);
|
|
20496
|
+
jl_Throwable__init_0($this, jl_AbstractStringBuilder_toString(var$5));
|
|
20497
|
+
$this.$address1 = var$3;
|
|
20498
|
+
$this.$type0 = var$2;
|
|
20499
|
+
};
|
|
20500
|
+
var asrrh_AddressErrorException__init_ = (var_0, var_1, var_2) => {
|
|
20501
|
+
let var_3 = new asrrh_AddressErrorException();
|
|
20502
|
+
asrrh_AddressErrorException__init_0(var_3, var_0, var_1, var_2);
|
|
20503
|
+
return var_3;
|
|
20504
|
+
};
|
|
20505
|
+
var asrrh_AddressErrorException_getAddress = ($this) => {
|
|
20506
|
+
return $this.$address1;
|
|
20507
|
+
};
|
|
20504
20508
|
var asra_TokenTypes = $rt_classWithoutFields(jl_Enum);
|
|
20505
20509
|
var asra_TokenTypes_COMMENT = null;
|
|
20506
20510
|
var asra_TokenTypes_DIRECTIVE = null;
|
|
@@ -25523,15 +25527,6 @@ var asrrh_RegisterBlock_resetRegisters = ($this) => {
|
|
|
25523
25527
|
var$3 = var$3 + 1 | 0;
|
|
25524
25528
|
}
|
|
25525
25529
|
};
|
|
25526
|
-
function asrrh_StackFrame() {
|
|
25527
|
-
let a = this;
|
|
25528
|
-
jl_Object.call(a);
|
|
25529
|
-
a.$pc3 = 0;
|
|
25530
|
-
a.$toAddress0 = 0;
|
|
25531
|
-
a.$sp0 = 0;
|
|
25532
|
-
a.$fp0 = 0;
|
|
25533
|
-
a.$registers1 = null;
|
|
25534
|
-
}
|
|
25535
25530
|
function asr_ErrorList() {
|
|
25536
25531
|
let a = this;
|
|
25537
25532
|
jl_Object.call(a);
|
|
@@ -25617,6 +25612,15 @@ var asr_ErrorList_generateReport = ($this, $isWarning) => {
|
|
|
25617
25612
|
}
|
|
25618
25613
|
return jl_AbstractStringBuilder_toString($report);
|
|
25619
25614
|
};
|
|
25615
|
+
function asrrh_StackFrame() {
|
|
25616
|
+
let a = this;
|
|
25617
|
+
jl_Object.call(a);
|
|
25618
|
+
a.$pc3 = 0;
|
|
25619
|
+
a.$toAddress0 = 0;
|
|
25620
|
+
a.$sp0 = 0;
|
|
25621
|
+
a.$fp0 = 0;
|
|
25622
|
+
a.$registers1 = null;
|
|
25623
|
+
}
|
|
25620
25624
|
function asra_Token() {
|
|
25621
25625
|
let a = this;
|
|
25622
25626
|
jl_Object.call(a);
|
|
@@ -26340,7 +26344,7 @@ var asrrs_SyscallMessageDialogFloat_simulate = ($this, $statement) => {
|
|
|
26340
26344
|
$message = asrrs_NullString_get($statement);
|
|
26341
26345
|
var$3 = $this.$io7;
|
|
26342
26346
|
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
26343
|
-
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(
|
|
26347
|
+
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(554))));
|
|
26344
26348
|
var$4 = new jl_StringBuilder();
|
|
26345
26349
|
jl_AbstractStringBuilder__init_(var$4);
|
|
26346
26350
|
jl_StringBuilder_append(jl_StringBuilder_append(var$4, $message), $statement);
|
|
@@ -26697,7 +26701,7 @@ var asrrs_SyscallPrintFloat_simulate = ($this, $statement) => {
|
|
|
26697
26701
|
main: while (true) {
|
|
26698
26702
|
switch ($ptr) {
|
|
26699
26703
|
case 0:
|
|
26700
|
-
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(
|
|
26704
|
+
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(553))));
|
|
26701
26705
|
$ptr = 1;
|
|
26702
26706
|
case 1:
|
|
26703
26707
|
asru_SystemIO_printString($statement);
|
|
@@ -28282,6 +28286,40 @@ var jur_BackReferencedSingleSet_findBack = ($this, $stringIndex, $startSearch, $
|
|
|
28282
28286
|
var jur_BackReferencedSingleSet_processBackRefReplacement = ($this) => {
|
|
28283
28287
|
return null;
|
|
28284
28288
|
};
|
|
28289
|
+
var jus_IntStream = $rt_classWithoutFields(0);
|
|
28290
|
+
var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
|
|
28291
|
+
function jusi_MappingToIntStreamImpl() {
|
|
28292
|
+
let a = this;
|
|
28293
|
+
jusi_SimpleIntStreamImpl.call(a);
|
|
28294
|
+
a.$source0 = null;
|
|
28295
|
+
a.$mapper0 = null;
|
|
28296
|
+
}
|
|
28297
|
+
var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
|
|
28298
|
+
let var$2, var$3, var$4, var$5, var$6;
|
|
28299
|
+
var$2 = $this.$source0;
|
|
28300
|
+
var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
|
|
28301
|
+
var$3.$_025 = $this;
|
|
28302
|
+
var$3.$_110 = $consumer;
|
|
28303
|
+
$consumer = var$2;
|
|
28304
|
+
a: {
|
|
28305
|
+
while (true) {
|
|
28306
|
+
var$4 = $consumer.$index1;
|
|
28307
|
+
if (var$4 >= $consumer.$end1)
|
|
28308
|
+
break a;
|
|
28309
|
+
var$5 = $consumer.$array8.data;
|
|
28310
|
+
$consumer.$index1 = var$4 + 1 | 0;
|
|
28311
|
+
var$2 = var$5[var$4];
|
|
28312
|
+
var$6 = var$3.$_110;
|
|
28313
|
+
var$2 = var$2;
|
|
28314
|
+
asr_JsRiscV_$callClinit();
|
|
28315
|
+
if (var$6.$test0(Long_lo(var$2.$getValue())))
|
|
28316
|
+
continue;
|
|
28317
|
+
else
|
|
28318
|
+
break;
|
|
28319
|
+
}
|
|
28320
|
+
}
|
|
28321
|
+
return $consumer.$index1 >= $consumer.$end1 ? 0 : 1;
|
|
28322
|
+
};
|
|
28285
28323
|
var jm_Conversion = $rt_classWithoutFields();
|
|
28286
28324
|
var jm_Conversion_digitFitInInt = null;
|
|
28287
28325
|
var jm_Conversion_bigRadices = null;
|
|
@@ -28477,40 +28515,6 @@ var jm_Conversion__clinit_ = () => {
|
|
|
28477
28515
|
jm_Conversion_digitFitInInt = $rt_createIntArrayFromData([-1, -1, 31, 19, 15, 13, 11, 11, 10, 9, 9, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5]);
|
|
28478
28516
|
jm_Conversion_bigRadices = $rt_createIntArrayFromData([-2147483648, 1162261467, 1073741824, 1220703125, 362797056, 1977326743, 1073741824, 387420489, 1e9, 214358881, 429981696, 815730721, 1475789056, 170859375, 268435456, 410338673, 612220032, 893871739, 128e7, 1801088541, 113379904, 148035889, 191102976, 244140625, 308915776, 387420489, 481890304, 594823321, 729e6, 887503681, 1073741824, 1291467969, 1544804416, 1838265625, 60466176]);
|
|
28479
28517
|
};
|
|
28480
|
-
var jus_IntStream = $rt_classWithoutFields(0);
|
|
28481
|
-
var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
|
|
28482
|
-
function jusi_MappingToIntStreamImpl() {
|
|
28483
|
-
let a = this;
|
|
28484
|
-
jusi_SimpleIntStreamImpl.call(a);
|
|
28485
|
-
a.$source0 = null;
|
|
28486
|
-
a.$mapper0 = null;
|
|
28487
|
-
}
|
|
28488
|
-
var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
|
|
28489
|
-
let var$2, var$3, var$4, var$5, var$6;
|
|
28490
|
-
var$2 = $this.$source0;
|
|
28491
|
-
var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
|
|
28492
|
-
var$3.$_025 = $this;
|
|
28493
|
-
var$3.$_110 = $consumer;
|
|
28494
|
-
$consumer = var$2;
|
|
28495
|
-
a: {
|
|
28496
|
-
while (true) {
|
|
28497
|
-
var$4 = $consumer.$index1;
|
|
28498
|
-
if (var$4 >= $consumer.$end1)
|
|
28499
|
-
break a;
|
|
28500
|
-
var$5 = $consumer.$array8.data;
|
|
28501
|
-
$consumer.$index1 = var$4 + 1 | 0;
|
|
28502
|
-
var$2 = var$5[var$4];
|
|
28503
|
-
var$6 = var$3.$_110;
|
|
28504
|
-
var$2 = var$2;
|
|
28505
|
-
asr_JsRiscV_$callClinit();
|
|
28506
|
-
if (var$6.$test0(Long_lo(var$2.$getValue())))
|
|
28507
|
-
continue;
|
|
28508
|
-
else
|
|
28509
|
-
break;
|
|
28510
|
-
}
|
|
28511
|
-
}
|
|
28512
|
-
return $consumer.$index1 >= $consumer.$end1 ? 0 : 1;
|
|
28513
|
-
};
|
|
28514
28518
|
function ju_AbstractList$1() {
|
|
28515
28519
|
let a = this;
|
|
28516
28520
|
jl_Object.call(a);
|
|
@@ -28835,6 +28839,13 @@ var asrs_Simulator$Reason__clinit_ = () => {
|
|
|
28835
28839
|
var$3[6] = var$1;
|
|
28836
28840
|
asrs_Simulator$Reason_$VALUES = var$2;
|
|
28837
28841
|
};
|
|
28842
|
+
var juf_Predicate = $rt_classWithoutFields(0);
|
|
28843
|
+
function asr_RARS$getStatementsAtSourceLocation$lambda$_6_0() {
|
|
28844
|
+
let a = this;
|
|
28845
|
+
jl_Object.call(a);
|
|
28846
|
+
a.$_08 = null;
|
|
28847
|
+
a.$_14 = 0;
|
|
28848
|
+
}
|
|
28838
28849
|
var asrrh_Stack = $rt_classWithoutFields();
|
|
28839
28850
|
var asrrh_Stack_callStack = null;
|
|
28840
28851
|
var asrrh_Stack_$callClinit = () => {
|
|
@@ -28848,13 +28859,6 @@ var asrrh_Stack_getCallStack = () => {
|
|
|
28848
28859
|
var asrrh_Stack__clinit_ = () => {
|
|
28849
28860
|
asrrh_Stack_callStack = ju_ArrayList__init_();
|
|
28850
28861
|
};
|
|
28851
|
-
var juf_Predicate = $rt_classWithoutFields(0);
|
|
28852
|
-
function asr_RARS$getStatementsAtSourceLocation$lambda$_6_0() {
|
|
28853
|
-
let a = this;
|
|
28854
|
-
jl_Object.call(a);
|
|
28855
|
-
a.$_08 = null;
|
|
28856
|
-
a.$_14 = 0;
|
|
28857
|
-
}
|
|
28858
28862
|
var asrrh_InterruptController = $rt_classWithoutFields();
|
|
28859
28863
|
var asrrh_InterruptController_lock = null;
|
|
28860
28864
|
var asrrh_InterruptController_externalPending0 = 0;
|
|
@@ -35702,6 +35706,13 @@ var otcit_DoubleAnalyzer$Result__init_0 = () => {
|
|
|
35702
35706
|
otcit_DoubleAnalyzer$Result__init_(var_0);
|
|
35703
35707
|
return var_0;
|
|
35704
35708
|
};
|
|
35709
|
+
function asrs_BackStepper$PokeRestore() {
|
|
35710
|
+
let a = this;
|
|
35711
|
+
jl_Object.call(a);
|
|
35712
|
+
a.$action0 = null;
|
|
35713
|
+
a.$param10 = 0;
|
|
35714
|
+
a.$param20 = Long_ZERO;
|
|
35715
|
+
}
|
|
35705
35716
|
var asrs_BackStepper$Action = $rt_classWithoutFields(jl_Enum);
|
|
35706
35717
|
var asrs_BackStepper$Action_MEMORY_RESTORE_RAW_WORD = null;
|
|
35707
35718
|
var asrs_BackStepper$Action_MEMORY_RESTORE_DOUBLE_WORD = null;
|
|
@@ -35766,13 +35777,6 @@ var asrs_BackStepper$Action__clinit_ = () => {
|
|
|
35766
35777
|
var$3[13] = var$1;
|
|
35767
35778
|
asrs_BackStepper$Action_$VALUES = var$2;
|
|
35768
35779
|
};
|
|
35769
|
-
function asrs_BackStepper$PokeRestore() {
|
|
35770
|
-
let a = this;
|
|
35771
|
-
jl_Object.call(a);
|
|
35772
|
-
a.$action0 = null;
|
|
35773
|
-
a.$param10 = 0;
|
|
35774
|
-
a.$param20 = Long_ZERO;
|
|
35775
|
-
}
|
|
35776
35780
|
var jusi_SimpleStreamImpl$toArray$lambda$_20_0 = $rt_classWithoutFields();
|
|
35777
35781
|
var jusi_SimpleStreamImpl$toArray$lambda$_20_0_apply = (var$0, var$1) => {
|
|
35778
35782
|
return $rt_createArray(jl_Object, var$1);
|
|
@@ -37737,16 +37741,16 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
|
|
|
37737
37741
|
return 0;
|
|
37738
37742
|
};
|
|
37739
37743
|
var asrs_Simulator$SimThread_run = ($this) => {
|
|
37740
|
-
let $timeRegister, $uipRegister, $uieRegister, $ustatusRegister, $timeSampleCountdown, $backStepping, $backStepper, var$8, $steps, $ebreak, $waiting, var$12, $uip, $uie, $IE, $pendingExternal, $pendingTimer, $pendingTrap, var$19, var$20,
|
|
37744
|
+
let $timeRegister, $uipRegister, $uieRegister, $ustatusRegister, $timeSampleCountdown, $backStepping, $backStepper, var$8, $steps, $ebreak, $waiting, var$12, $uip, $uie, $IE, $pendingExternal, $pendingTimer, $pendingTrap, var$19, var$20, $se, $e, $tmp_0, $instruction, var$25, $$je, $ptr, $tmp;
|
|
37741
37745
|
$ptr = 0;
|
|
37742
37746
|
if ($rt_resuming()) {
|
|
37743
37747
|
let $thread = $rt_nativeThread();
|
|
37744
37748
|
$ptr = $thread.pop();
|
|
37745
|
-
$
|
|
37749
|
+
var$25 = $thread.pop();
|
|
37746
37750
|
$instruction = $thread.pop();
|
|
37747
37751
|
$tmp_0 = $thread.pop();
|
|
37748
37752
|
$e = $thread.pop();
|
|
37749
|
-
|
|
37753
|
+
$se = $thread.pop();
|
|
37750
37754
|
var$20 = $thread.pop();
|
|
37751
37755
|
var$19 = $thread.pop();
|
|
37752
37756
|
$pendingTrap = $thread.pop();
|
|
@@ -37832,12 +37836,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37832
37836
|
return;
|
|
37833
37837
|
}
|
|
37834
37838
|
}
|
|
37835
|
-
$
|
|
37836
|
-
|
|
37837
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
37839
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
37840
|
+
asrrh_RegisterFile_incrementPC();
|
|
37838
37841
|
d: {
|
|
37839
37842
|
try {
|
|
37840
|
-
|
|
37843
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
37841
37844
|
break d;
|
|
37842
37845
|
} catch ($$e) {
|
|
37843
37846
|
$$je = $rt_wrapException($$e);
|
|
@@ -37857,7 +37860,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37857
37860
|
}
|
|
37858
37861
|
continue c;
|
|
37859
37862
|
}
|
|
37860
|
-
if (
|
|
37863
|
+
if ($se === null) {
|
|
37861
37864
|
asrs_Simulator$Reason_$callClinit();
|
|
37862
37865
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
37863
37866
|
return;
|
|
@@ -37868,15 +37871,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37868
37871
|
try {
|
|
37869
37872
|
h: {
|
|
37870
37873
|
try {
|
|
37871
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
37874
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
37872
37875
|
if ($instruction !== null)
|
|
37873
37876
|
break h;
|
|
37874
|
-
$
|
|
37875
|
-
$
|
|
37876
|
-
$
|
|
37877
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
37878
|
-
asr_SimulationException__init_4($
|
|
37879
|
-
$rt_throw($
|
|
37877
|
+
$e = new asr_SimulationException();
|
|
37878
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
37879
|
+
var$25 = jl_StringBuilder__init_();
|
|
37880
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
37881
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
37882
|
+
$rt_throw($e);
|
|
37880
37883
|
} catch ($$e) {
|
|
37881
37884
|
$$je = $rt_wrapException($$e);
|
|
37882
37885
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -37936,7 +37939,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37936
37939
|
$timeSampleCountdown = $timeSampleCountdown + -1 | 0;
|
|
37937
37940
|
if ($timeSampleCountdown <= 0) {
|
|
37938
37941
|
$timeSampleCountdown = 64;
|
|
37939
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis());
|
|
37942
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis(), $this.$pc0);
|
|
37940
37943
|
}
|
|
37941
37944
|
if ($ebreak)
|
|
37942
37945
|
break b;
|
|
@@ -37957,13 +37960,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37957
37960
|
asrs_Simulator$SimThread_stopExecution($this, 0, asrs_Simulator$Reason_BREAKPOINT);
|
|
37958
37961
|
return;
|
|
37959
37962
|
}
|
|
37960
|
-
if ($e.$message
|
|
37961
|
-
asrs_Simulator$Reason_$callClinit();
|
|
37962
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
37963
|
-
} else {
|
|
37963
|
+
if ($e.$message !== null) {
|
|
37964
37964
|
asrs_Simulator$Reason_$callClinit();
|
|
37965
37965
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
37966
37966
|
$this.$pe = $e;
|
|
37967
|
+
} else {
|
|
37968
|
+
asrs_Simulator$Reason_$callClinit();
|
|
37969
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
37970
|
+
if ($backStepping)
|
|
37971
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
37967
37972
|
}
|
|
37968
37973
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
37969
37974
|
return;
|
|
@@ -37976,7 +37981,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37976
37981
|
m: {
|
|
37977
37982
|
n: {
|
|
37978
37983
|
try {
|
|
37979
|
-
$instruction.$simulate2(
|
|
37984
|
+
$instruction.$simulate2($se);
|
|
37980
37985
|
if ($rt_suspending()) {
|
|
37981
37986
|
break main;
|
|
37982
37987
|
}
|
|
@@ -38001,14 +38006,14 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38001
38006
|
}
|
|
38002
38007
|
}
|
|
38003
38008
|
}
|
|
38004
|
-
$
|
|
38005
|
-
$
|
|
38006
|
-
if (
|
|
38009
|
+
var$20 = $this.$pc0;
|
|
38010
|
+
var$20 = asrrh_InterruptController_registerSynchronousTrap($se, var$20);
|
|
38011
|
+
if (!var$20) {
|
|
38007
38012
|
$this.$pe = $se;
|
|
38008
|
-
$
|
|
38013
|
+
var$20 = 1;
|
|
38009
38014
|
asrs_Simulator$Reason_$callClinit();
|
|
38010
38015
|
$instruction = asrs_Simulator$Reason_EXCEPTION;
|
|
38011
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38016
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38012
38017
|
return;
|
|
38013
38018
|
}
|
|
38014
38019
|
break j;
|
|
@@ -38016,48 +38021,49 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38016
38021
|
break k;
|
|
38017
38022
|
}
|
|
38018
38023
|
if ($backStepping) {
|
|
38019
|
-
$
|
|
38020
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38024
|
+
var$20 = $this.$pc0;
|
|
38025
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38021
38026
|
}
|
|
38022
38027
|
$ebreak = 1;
|
|
38023
38028
|
break k;
|
|
38024
38029
|
}
|
|
38025
38030
|
if ($backStepping) {
|
|
38026
|
-
$
|
|
38027
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38031
|
+
var$20 = $this.$pc0;
|
|
38032
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38028
38033
|
}
|
|
38029
38034
|
$waiting = 1;
|
|
38030
38035
|
}
|
|
38031
|
-
$
|
|
38032
|
-
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, $
|
|
38033
|
-
$
|
|
38034
|
-
$timeSampleCountdown = $timeSampleCountdown + $
|
|
38036
|
+
var$20 = $this.$pc0;
|
|
38037
|
+
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, var$20);
|
|
38038
|
+
var$20 = -1;
|
|
38039
|
+
$timeSampleCountdown = $timeSampleCountdown + var$20 | 0;
|
|
38035
38040
|
if ($timeSampleCountdown <= 0) {
|
|
38036
38041
|
$timeSampleCountdown = 64;
|
|
38037
38042
|
var$19 = jl_System_currentTimeMillis();
|
|
38038
|
-
|
|
38043
|
+
var$20 = $this.$pc0;
|
|
38044
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, var$19, var$20);
|
|
38039
38045
|
}
|
|
38040
38046
|
o: {
|
|
38041
38047
|
if (!$ebreak) {
|
|
38042
38048
|
var$8 = $this.$breakPoints;
|
|
38043
38049
|
if (var$8 === null)
|
|
38044
38050
|
break o;
|
|
38045
|
-
$
|
|
38046
|
-
$
|
|
38047
|
-
if ($
|
|
38051
|
+
var$20 = asrrh_RegisterFile_getProgramCounter();
|
|
38052
|
+
var$20 = ju_Arrays_binarySearch(var$8, var$20);
|
|
38053
|
+
if (var$20 < 0)
|
|
38048
38054
|
break o;
|
|
38049
38055
|
}
|
|
38050
|
-
$
|
|
38056
|
+
var$20 = 0;
|
|
38051
38057
|
asrs_Simulator$Reason_$callClinit();
|
|
38052
38058
|
$instruction = asrs_Simulator$Reason_BREAKPOINT;
|
|
38053
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38059
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38054
38060
|
return;
|
|
38055
38061
|
}
|
|
38056
38062
|
if ($waiting) {
|
|
38057
|
-
$
|
|
38058
|
-
if (
|
|
38059
|
-
$
|
|
38060
|
-
if (
|
|
38063
|
+
var$20 = asrrh_InterruptController_externalPending();
|
|
38064
|
+
if (!var$20) {
|
|
38065
|
+
var$20 = asrrh_InterruptController_timerPending();
|
|
38066
|
+
if (!var$20) {
|
|
38061
38067
|
$ptr = 2;
|
|
38062
38068
|
continue main;
|
|
38063
38069
|
}
|
|
@@ -38107,12 +38113,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38107
38113
|
return;
|
|
38108
38114
|
}
|
|
38109
38115
|
}
|
|
38110
|
-
$
|
|
38111
|
-
|
|
38112
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
38116
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
38117
|
+
asrrh_RegisterFile_incrementPC();
|
|
38113
38118
|
r: {
|
|
38114
38119
|
try {
|
|
38115
|
-
|
|
38120
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
38116
38121
|
break r;
|
|
38117
38122
|
} catch ($$e) {
|
|
38118
38123
|
$$je = $rt_wrapException($$e);
|
|
@@ -38132,7 +38137,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38132
38137
|
}
|
|
38133
38138
|
continue q;
|
|
38134
38139
|
}
|
|
38135
|
-
if (
|
|
38140
|
+
if ($se === null) {
|
|
38136
38141
|
asrs_Simulator$Reason_$callClinit();
|
|
38137
38142
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
38138
38143
|
return;
|
|
@@ -38143,15 +38148,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38143
38148
|
try {
|
|
38144
38149
|
v: {
|
|
38145
38150
|
try {
|
|
38146
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
38151
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
38147
38152
|
if ($instruction !== null)
|
|
38148
38153
|
break v;
|
|
38149
|
-
$
|
|
38150
|
-
$
|
|
38151
|
-
$
|
|
38152
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
38153
|
-
asr_SimulationException__init_4($
|
|
38154
|
-
$rt_throw($
|
|
38154
|
+
$e = new asr_SimulationException();
|
|
38155
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
38156
|
+
var$25 = jl_StringBuilder__init_();
|
|
38157
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
38158
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
38159
|
+
$rt_throw($e);
|
|
38155
38160
|
} catch ($$e) {
|
|
38156
38161
|
$$je = $rt_wrapException($$e);
|
|
38157
38162
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -38185,14 +38190,14 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38185
38190
|
$$je = $rt_wrapException($$e);
|
|
38186
38191
|
if ($$je instanceof asr_SimulationException) {
|
|
38187
38192
|
$se = $$je;
|
|
38188
|
-
$
|
|
38189
|
-
$
|
|
38190
|
-
if (
|
|
38193
|
+
var$20 = $this.$pc0;
|
|
38194
|
+
var$20 = asrrh_InterruptController_registerSynchronousTrap($se, var$20);
|
|
38195
|
+
if (!var$20) {
|
|
38191
38196
|
$this.$pe = $se;
|
|
38192
|
-
$
|
|
38197
|
+
var$20 = 1;
|
|
38193
38198
|
asrs_Simulator$Reason_$callClinit();
|
|
38194
38199
|
$instruction = asrs_Simulator$Reason_EXCEPTION;
|
|
38195
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38200
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38196
38201
|
return;
|
|
38197
38202
|
}
|
|
38198
38203
|
continue q;
|
|
@@ -38202,42 +38207,43 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38202
38207
|
}
|
|
38203
38208
|
}
|
|
38204
38209
|
if ($backStepping) {
|
|
38205
|
-
$
|
|
38206
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38210
|
+
var$20 = $this.$pc0;
|
|
38211
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38207
38212
|
}
|
|
38208
38213
|
$ebreak = 1;
|
|
38209
38214
|
break s;
|
|
38210
38215
|
}
|
|
38211
38216
|
if ($backStepping) {
|
|
38212
|
-
$
|
|
38213
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38217
|
+
var$20 = $this.$pc0;
|
|
38218
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38214
38219
|
}
|
|
38215
38220
|
$waiting = 1;
|
|
38216
38221
|
}
|
|
38217
|
-
$
|
|
38218
|
-
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, $
|
|
38219
|
-
$
|
|
38220
|
-
$timeSampleCountdown = $timeSampleCountdown + $
|
|
38222
|
+
var$20 = $this.$pc0;
|
|
38223
|
+
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, var$20);
|
|
38224
|
+
var$20 = -1;
|
|
38225
|
+
$timeSampleCountdown = $timeSampleCountdown + var$20 | 0;
|
|
38221
38226
|
if ($timeSampleCountdown <= 0) {
|
|
38222
38227
|
$timeSampleCountdown = 64;
|
|
38223
38228
|
var$19 = jl_System_currentTimeMillis();
|
|
38224
|
-
|
|
38229
|
+
var$20 = $this.$pc0;
|
|
38230
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, var$19, var$20);
|
|
38225
38231
|
}
|
|
38226
38232
|
if ($ebreak)
|
|
38227
38233
|
break p;
|
|
38228
38234
|
var$8 = $this.$breakPoints;
|
|
38229
38235
|
if (var$8 !== null) {
|
|
38230
|
-
$
|
|
38231
|
-
$
|
|
38232
|
-
if ($
|
|
38236
|
+
var$20 = asrrh_RegisterFile_getProgramCounter();
|
|
38237
|
+
var$20 = ju_Arrays_binarySearch(var$8, var$20);
|
|
38238
|
+
if (var$20 >= 0)
|
|
38233
38239
|
break p;
|
|
38234
38240
|
}
|
|
38235
38241
|
if (!$waiting)
|
|
38236
38242
|
continue;
|
|
38237
|
-
$
|
|
38238
|
-
if (
|
|
38239
|
-
$
|
|
38240
|
-
if (
|
|
38243
|
+
var$20 = asrrh_InterruptController_externalPending();
|
|
38244
|
+
if (!var$20) {
|
|
38245
|
+
var$20 = asrrh_InterruptController_timerPending();
|
|
38246
|
+
if (!var$20) {
|
|
38241
38247
|
$ptr = 2;
|
|
38242
38248
|
continue main;
|
|
38243
38249
|
}
|
|
@@ -38246,19 +38252,21 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38246
38252
|
}
|
|
38247
38253
|
return;
|
|
38248
38254
|
}
|
|
38249
|
-
$
|
|
38255
|
+
var$20 = 0;
|
|
38250
38256
|
asrs_Simulator$Reason_$callClinit();
|
|
38251
38257
|
$instruction = asrs_Simulator$Reason_BREAKPOINT;
|
|
38252
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38258
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38253
38259
|
return;
|
|
38254
38260
|
}
|
|
38255
|
-
if ($e.$message
|
|
38256
|
-
asrs_Simulator$Reason_$callClinit();
|
|
38257
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38258
|
-
} else {
|
|
38261
|
+
if ($e.$message !== null) {
|
|
38259
38262
|
asrs_Simulator$Reason_$callClinit();
|
|
38260
38263
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
38261
38264
|
$this.$pe = $e;
|
|
38265
|
+
} else {
|
|
38266
|
+
asrs_Simulator$Reason_$callClinit();
|
|
38267
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38268
|
+
if ($backStepping)
|
|
38269
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
38262
38270
|
}
|
|
38263
38271
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
38264
38272
|
return;
|
|
@@ -38336,12 +38344,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38336
38344
|
return;
|
|
38337
38345
|
}
|
|
38338
38346
|
}
|
|
38339
|
-
$
|
|
38340
|
-
|
|
38341
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
38347
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
38348
|
+
asrrh_RegisterFile_incrementPC();
|
|
38342
38349
|
z: {
|
|
38343
38350
|
try {
|
|
38344
|
-
|
|
38351
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
38345
38352
|
break z;
|
|
38346
38353
|
} catch ($$e) {
|
|
38347
38354
|
$$je = $rt_wrapException($$e);
|
|
@@ -38361,7 +38368,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38361
38368
|
}
|
|
38362
38369
|
continue c;
|
|
38363
38370
|
}
|
|
38364
|
-
if (
|
|
38371
|
+
if ($se === null) {
|
|
38365
38372
|
asrs_Simulator$Reason_$callClinit();
|
|
38366
38373
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
38367
38374
|
return;
|
|
@@ -38372,15 +38379,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38372
38379
|
try {
|
|
38373
38380
|
bb: {
|
|
38374
38381
|
try {
|
|
38375
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
38382
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
38376
38383
|
if ($instruction !== null)
|
|
38377
38384
|
break bb;
|
|
38378
|
-
$
|
|
38379
|
-
$
|
|
38380
|
-
$
|
|
38381
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
38382
|
-
asr_SimulationException__init_4($
|
|
38383
|
-
$rt_throw($
|
|
38385
|
+
$e = new asr_SimulationException();
|
|
38386
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
38387
|
+
var$25 = jl_StringBuilder__init_();
|
|
38388
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
38389
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
38390
|
+
$rt_throw($e);
|
|
38384
38391
|
} catch ($$e) {
|
|
38385
38392
|
$$je = $rt_wrapException($$e);
|
|
38386
38393
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -38440,7 +38447,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38440
38447
|
$timeSampleCountdown = $timeSampleCountdown + -1 | 0;
|
|
38441
38448
|
if ($timeSampleCountdown <= 0) {
|
|
38442
38449
|
$timeSampleCountdown = 64;
|
|
38443
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis());
|
|
38450
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis(), $this.$pc0);
|
|
38444
38451
|
}
|
|
38445
38452
|
if ($ebreak)
|
|
38446
38453
|
break n;
|
|
@@ -38464,13 +38471,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38464
38471
|
asrs_Simulator$SimThread_stopExecution($this, 0, asrs_Simulator$Reason_BREAKPOINT);
|
|
38465
38472
|
return;
|
|
38466
38473
|
}
|
|
38467
|
-
if ($e.$message
|
|
38468
|
-
asrs_Simulator$Reason_$callClinit();
|
|
38469
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38470
|
-
} else {
|
|
38474
|
+
if ($e.$message !== null) {
|
|
38471
38475
|
asrs_Simulator$Reason_$callClinit();
|
|
38472
38476
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
38473
38477
|
$this.$pe = $e;
|
|
38478
|
+
} else {
|
|
38479
|
+
asrs_Simulator$Reason_$callClinit();
|
|
38480
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38481
|
+
if ($backStepping)
|
|
38482
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
38474
38483
|
}
|
|
38475
38484
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
38476
38485
|
return;
|
|
@@ -38547,12 +38556,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38547
38556
|
return;
|
|
38548
38557
|
}
|
|
38549
38558
|
}
|
|
38550
|
-
$
|
|
38551
|
-
|
|
38552
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
38559
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
38560
|
+
asrrh_RegisterFile_incrementPC();
|
|
38553
38561
|
bd: {
|
|
38554
38562
|
try {
|
|
38555
|
-
|
|
38563
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
38556
38564
|
break bd;
|
|
38557
38565
|
} catch ($$e) {
|
|
38558
38566
|
$$je = $rt_wrapException($$e);
|
|
@@ -38572,7 +38580,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38572
38580
|
}
|
|
38573
38581
|
continue bc;
|
|
38574
38582
|
}
|
|
38575
|
-
if (
|
|
38583
|
+
if ($se === null) {
|
|
38576
38584
|
asrs_Simulator$Reason_$callClinit();
|
|
38577
38585
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
38578
38586
|
return;
|
|
@@ -38583,15 +38591,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38583
38591
|
try {
|
|
38584
38592
|
be: {
|
|
38585
38593
|
try {
|
|
38586
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
38594
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
38587
38595
|
if ($instruction !== null)
|
|
38588
38596
|
break be;
|
|
38589
|
-
$
|
|
38590
|
-
$
|
|
38591
|
-
$
|
|
38592
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
38593
|
-
asr_SimulationException__init_4($
|
|
38594
|
-
$rt_throw($
|
|
38597
|
+
$e = new asr_SimulationException();
|
|
38598
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
38599
|
+
var$25 = jl_StringBuilder__init_();
|
|
38600
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
38601
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
38602
|
+
$rt_throw($e);
|
|
38595
38603
|
} catch ($$e) {
|
|
38596
38604
|
$$je = $rt_wrapException($$e);
|
|
38597
38605
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -38651,7 +38659,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38651
38659
|
$timeSampleCountdown = $timeSampleCountdown + -1 | 0;
|
|
38652
38660
|
if ($timeSampleCountdown <= 0) {
|
|
38653
38661
|
$timeSampleCountdown = 64;
|
|
38654
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis());
|
|
38662
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis(), $this.$pc0);
|
|
38655
38663
|
}
|
|
38656
38664
|
if ($ebreak)
|
|
38657
38665
|
break b;
|
|
@@ -38676,13 +38684,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38676
38684
|
asrs_Simulator$SimThread_stopExecution($this, 0, asrs_Simulator$Reason_BREAKPOINT);
|
|
38677
38685
|
return;
|
|
38678
38686
|
}
|
|
38679
|
-
if ($e.$message
|
|
38680
|
-
asrs_Simulator$Reason_$callClinit();
|
|
38681
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38682
|
-
} else {
|
|
38687
|
+
if ($e.$message !== null) {
|
|
38683
38688
|
asrs_Simulator$Reason_$callClinit();
|
|
38684
38689
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
38685
38690
|
$this.$pe = $e;
|
|
38691
|
+
} else {
|
|
38692
|
+
asrs_Simulator$Reason_$callClinit();
|
|
38693
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38694
|
+
if ($backStepping)
|
|
38695
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
38686
38696
|
}
|
|
38687
38697
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
38688
38698
|
return;
|
|
@@ -38690,7 +38700,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38690
38700
|
$rt_invalidPointer();
|
|
38691
38701
|
}
|
|
38692
38702
|
}
|
|
38693
|
-
$rt_nativeThread().push($this, $timeRegister, $uipRegister, $uieRegister, $ustatusRegister, $timeSampleCountdown, $backStepping, $backStepper, var$8, $steps, $ebreak, $waiting, var$12, $uip, $uie, $IE, $pendingExternal, $pendingTimer, $pendingTrap, var$19, var$20,
|
|
38703
|
+
$rt_nativeThread().push($this, $timeRegister, $uipRegister, $uieRegister, $ustatusRegister, $timeSampleCountdown, $backStepping, $backStepper, var$8, $steps, $ebreak, $waiting, var$12, $uip, $uie, $IE, $pendingExternal, $pendingTimer, $pendingTrap, var$19, var$20, $se, $e, $tmp_0, $instruction, var$25, $ptr);
|
|
38694
38704
|
};
|
|
38695
38705
|
var asrs_Simulator$SimThread__clinit_ = () => {
|
|
38696
38706
|
asrs_Simulator$SimThread_$assertionsDisabled = 0;
|
|
@@ -43801,47 +43811,48 @@ $rt_metadata([
|
|
|
43801
43811
|
0,
|
|
43802
43812
|
0,
|
|
43803
43813
|
0,
|
|
43804
|
-
|
|
43805
|
-
|
|
43814
|
+
asr_JsProgramStatement,
|
|
43815
|
+
"JsProgramStatement",
|
|
43816
|
+
11,
|
|
43806
43817
|
jl_Object,
|
|
43807
43818
|
[],
|
|
43808
43819
|
1,
|
|
43809
43820
|
0,
|
|
43810
|
-
() => asrrh_ControlAndStatusRegisterFile_$callClinit(),
|
|
43811
43821
|
0,
|
|
43812
|
-
|
|
43822
|
+
0,
|
|
43823
|
+
ju_Observer,
|
|
43813
43824
|
0,
|
|
43814
43825
|
jl_Object,
|
|
43815
43826
|
[],
|
|
43816
|
-
|
|
43827
|
+
1537,
|
|
43817
43828
|
0,
|
|
43818
|
-
() => asrrh_RegisterFile_$callClinit(),
|
|
43819
43829
|
0,
|
|
43820
|
-
jm_BigInteger,
|
|
43821
|
-
"BigInteger",
|
|
43822
|
-
18,
|
|
43823
|
-
jl_Number,
|
|
43824
|
-
[jl_Comparable, ji_Serializable],
|
|
43825
|
-
1,
|
|
43826
|
-
0,
|
|
43827
|
-
() => jm_BigInteger_$callClinit(),
|
|
43828
|
-
["$hashCode", $rt_wrapFunction0(jm_BigInteger_hashCode), "$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString), "$compareTo0", $rt_wrapFunction1(jm_BigInteger_compareTo0)],
|
|
43829
|
-
asr_JsRiscV$Body,
|
|
43830
43830
|
0,
|
|
43831
|
+
asr_JsMemoryObserver,
|
|
43832
|
+
"JsMemoryObserver",
|
|
43833
|
+
11,
|
|
43831
43834
|
jl_Object,
|
|
43832
|
-
[],
|
|
43833
|
-
1536,
|
|
43835
|
+
[ju_Observer],
|
|
43834
43836
|
0,
|
|
43835
43837
|
0,
|
|
43836
43838
|
0,
|
|
43837
|
-
|
|
43839
|
+
0,
|
|
43840
|
+
asrrh_ControlAndStatusRegisterFile,
|
|
43838
43841
|
0,
|
|
43839
43842
|
jl_Object,
|
|
43840
|
-
[
|
|
43843
|
+
[],
|
|
43841
43844
|
1,
|
|
43842
43845
|
0,
|
|
43846
|
+
() => asrrh_ControlAndStatusRegisterFile_$callClinit(),
|
|
43847
|
+
0,
|
|
43848
|
+
asrrh_RegisterFile,
|
|
43843
43849
|
0,
|
|
43844
|
-
|
|
43850
|
+
jl_Object,
|
|
43851
|
+
[],
|
|
43852
|
+
1,
|
|
43853
|
+
0,
|
|
43854
|
+
() => asrrh_RegisterFile_$callClinit(),
|
|
43855
|
+
0
|
|
43845
43856
|
]);
|
|
43846
43857
|
$rt_metadata([
|
|
43847
43858
|
juf_ToIntFunction,
|
|
@@ -43860,73 +43871,70 @@ $rt_metadata([
|
|
|
43860
43871
|
0,
|
|
43861
43872
|
0,
|
|
43862
43873
|
0,
|
|
43863
|
-
|
|
43864
|
-
|
|
43865
|
-
11,
|
|
43874
|
+
otjc_JSArrayReader,
|
|
43875
|
+
0,
|
|
43866
43876
|
jl_Object,
|
|
43867
|
-
[],
|
|
43868
|
-
|
|
43877
|
+
[otj_JSObject],
|
|
43878
|
+
1537,
|
|
43869
43879
|
0,
|
|
43870
43880
|
0,
|
|
43871
43881
|
0,
|
|
43872
|
-
|
|
43882
|
+
otjc_JSArray,
|
|
43873
43883
|
0,
|
|
43874
43884
|
jl_Object,
|
|
43875
|
-
[
|
|
43885
|
+
[otjc_JSArrayReader],
|
|
43876
43886
|
1,
|
|
43877
43887
|
0,
|
|
43878
43888
|
0,
|
|
43879
|
-
|
|
43880
|
-
|
|
43881
|
-
|
|
43882
|
-
11,
|
|
43889
|
+
0,
|
|
43890
|
+
asrs_BackStepper,
|
|
43891
|
+
0,
|
|
43883
43892
|
jl_Object,
|
|
43884
43893
|
[],
|
|
43885
43894
|
1,
|
|
43886
43895
|
0,
|
|
43896
|
+
() => asrs_BackStepper_$callClinit(),
|
|
43887
43897
|
0,
|
|
43888
|
-
|
|
43889
|
-
ju_Observer,
|
|
43898
|
+
asr_JsBackStep,
|
|
43890
43899
|
0,
|
|
43891
43900
|
jl_Object,
|
|
43892
43901
|
[],
|
|
43893
|
-
|
|
43902
|
+
17,
|
|
43894
43903
|
0,
|
|
43895
43904
|
0,
|
|
43896
43905
|
0,
|
|
43897
|
-
|
|
43898
|
-
"JsMemoryObserver",
|
|
43899
|
-
11,
|
|
43900
|
-
jl_Object,
|
|
43901
|
-
[ju_Observer],
|
|
43906
|
+
asr_JsUndoGroup,
|
|
43902
43907
|
0,
|
|
43908
|
+
jl_Object,
|
|
43909
|
+
[],
|
|
43910
|
+
17,
|
|
43903
43911
|
0,
|
|
43904
43912
|
0,
|
|
43905
43913
|
0,
|
|
43906
|
-
asr_JsRiscV$
|
|
43914
|
+
asr_JsRiscV$Body,
|
|
43907
43915
|
0,
|
|
43908
43916
|
jl_Object,
|
|
43909
|
-
[
|
|
43910
|
-
|
|
43917
|
+
[],
|
|
43918
|
+
1536,
|
|
43911
43919
|
0,
|
|
43912
43920
|
0,
|
|
43913
|
-
|
|
43914
|
-
|
|
43921
|
+
0,
|
|
43922
|
+
asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0,
|
|
43915
43923
|
0,
|
|
43916
43924
|
jl_Object,
|
|
43917
|
-
[],
|
|
43925
|
+
[asr_JsRiscV$Body],
|
|
43918
43926
|
1,
|
|
43919
43927
|
0,
|
|
43920
|
-
() => asrrh_FloatingPointRegisterFile_$callClinit(),
|
|
43921
43928
|
0,
|
|
43922
|
-
asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$
|
|
43929
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0_run)],
|
|
43930
|
+
asr_JsRiscV$simulate$lambda$_12_0,
|
|
43923
43931
|
0,
|
|
43924
43932
|
jl_Object,
|
|
43925
43933
|
[asr_JsRiscV$Body],
|
|
43926
43934
|
1,
|
|
43927
43935
|
0,
|
|
43928
43936
|
0,
|
|
43929
|
-
["$run1", $rt_wrapFunction0(asr_JsRiscV$
|
|
43937
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulate$lambda$_12_0_run)],
|
|
43930
43938
|
asr_JsCompilationResult,
|
|
43931
43939
|
"JsCompilationResult",
|
|
43932
43940
|
11,
|
|
@@ -43945,54 +43953,55 @@ $rt_metadata([
|
|
|
43945
43953
|
0,
|
|
43946
43954
|
0,
|
|
43947
43955
|
0,
|
|
43948
|
-
|
|
43956
|
+
asrrh_FloatingPointRegisterFile,
|
|
43949
43957
|
0,
|
|
43950
43958
|
jl_Object,
|
|
43951
|
-
[
|
|
43959
|
+
[],
|
|
43952
43960
|
1,
|
|
43953
43961
|
0,
|
|
43962
|
+
() => asrrh_FloatingPointRegisterFile_$callClinit(),
|
|
43954
43963
|
0,
|
|
43955
|
-
|
|
43956
|
-
otjc_JSArrayReader,
|
|
43957
|
-
0,
|
|
43958
|
-
jl_Object,
|
|
43959
|
-
[otj_JSObject],
|
|
43960
|
-
1537,
|
|
43961
|
-
0,
|
|
43962
|
-
0,
|
|
43963
|
-
0,
|
|
43964
|
-
otjc_JSArray,
|
|
43964
|
+
asr_JsRiscV$simulateWithLimit$lambda$_13_0,
|
|
43965
43965
|
0,
|
|
43966
43966
|
jl_Object,
|
|
43967
|
-
[
|
|
43967
|
+
[asr_JsRiscV$Body],
|
|
43968
43968
|
1,
|
|
43969
43969
|
0,
|
|
43970
43970
|
0,
|
|
43971
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulateWithLimit$lambda$_13_0_run)],
|
|
43972
|
+
jm_BigInteger,
|
|
43973
|
+
"BigInteger",
|
|
43974
|
+
18,
|
|
43975
|
+
jl_Number,
|
|
43976
|
+
[jl_Comparable, ji_Serializable],
|
|
43977
|
+
1,
|
|
43971
43978
|
0,
|
|
43972
|
-
|
|
43973
|
-
|
|
43974
|
-
|
|
43975
|
-
[],
|
|
43976
|
-
17,
|
|
43979
|
+
() => jm_BigInteger_$callClinit(),
|
|
43980
|
+
["$hashCode", $rt_wrapFunction0(jm_BigInteger_hashCode), "$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString), "$compareTo0", $rt_wrapFunction1(jm_BigInteger_compareTo0)],
|
|
43981
|
+
jl_Double,
|
|
43977
43982
|
0,
|
|
43983
|
+
jl_Number,
|
|
43984
|
+
[jl_Comparable],
|
|
43985
|
+
1,
|
|
43978
43986
|
0,
|
|
43987
|
+
() => jl_Double_$callClinit(),
|
|
43979
43988
|
0,
|
|
43980
|
-
|
|
43989
|
+
asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_0,
|
|
43981
43990
|
0,
|
|
43982
43991
|
jl_Object,
|
|
43983
|
-
[],
|
|
43992
|
+
[juf_Function],
|
|
43984
43993
|
1,
|
|
43985
43994
|
0,
|
|
43986
|
-
() => asrs_BackStepper_$callClinit(),
|
|
43987
43995
|
0,
|
|
43988
|
-
|
|
43996
|
+
["$apply0", $rt_wrapFunction1(asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_0_apply)],
|
|
43997
|
+
asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_1,
|
|
43989
43998
|
0,
|
|
43990
43999
|
jl_Object,
|
|
43991
|
-
[],
|
|
43992
|
-
|
|
43993
|
-
0,
|
|
44000
|
+
[juf_IntFunction],
|
|
44001
|
+
1,
|
|
43994
44002
|
0,
|
|
43995
44003
|
0,
|
|
44004
|
+
["$apply", $rt_wrapFunction1(asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_1_apply)],
|
|
43996
44005
|
jl_IllegalStateException,
|
|
43997
44006
|
"IllegalStateException",
|
|
43998
44007
|
19,
|
|
@@ -44019,30 +44028,31 @@ $rt_metadata([
|
|
|
44019
44028
|
0,
|
|
44020
44029
|
0,
|
|
44021
44030
|
0,
|
|
44022
|
-
|
|
44031
|
+
asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0,
|
|
44023
44032
|
0,
|
|
44024
|
-
|
|
44025
|
-
[
|
|
44033
|
+
jl_Object,
|
|
44034
|
+
[asr_JsRiscV$Body],
|
|
44026
44035
|
1,
|
|
44027
44036
|
0,
|
|
44028
|
-
() => jl_Double_$callClinit(),
|
|
44029
|
-
0,
|
|
44030
|
-
asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_0,
|
|
44031
44037
|
0,
|
|
44038
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0_run)],
|
|
44039
|
+
asr_JsStackFrame,
|
|
44040
|
+
"JsStackFrame",
|
|
44041
|
+
11,
|
|
44032
44042
|
jl_Object,
|
|
44033
|
-
[
|
|
44043
|
+
[],
|
|
44034
44044
|
1,
|
|
44035
44045
|
0,
|
|
44036
44046
|
0,
|
|
44037
|
-
|
|
44038
|
-
asr_JsRiscV$
|
|
44047
|
+
0,
|
|
44048
|
+
asr_JsRiscV$step$lambda$_10_0,
|
|
44039
44049
|
0,
|
|
44040
44050
|
jl_Object,
|
|
44041
|
-
[
|
|
44051
|
+
[asr_JsRiscV$Body],
|
|
44042
44052
|
1,
|
|
44043
44053
|
0,
|
|
44044
44054
|
0,
|
|
44045
|
-
["$
|
|
44055
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$step$lambda$_10_0_run)],
|
|
44046
44056
|
asr_JsRiscVTokenizedLine,
|
|
44047
44057
|
"JsRiscVTokenizedLine",
|
|
44048
44058
|
11,
|
|
@@ -44327,24 +44337,6 @@ $rt_metadata([
|
|
|
44327
44337
|
0,
|
|
44328
44338
|
0,
|
|
44329
44339
|
["$contains1", $rt_wrapFunction1(jur_CharClass$16_contains)],
|
|
44330
|
-
asrrh_Register,
|
|
44331
|
-
"Register",
|
|
44332
|
-
8,
|
|
44333
|
-
ju_Observable,
|
|
44334
|
-
[],
|
|
44335
|
-
1,
|
|
44336
|
-
0,
|
|
44337
|
-
0,
|
|
44338
|
-
["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
|
|
44339
|
-
asr_JsRiscV$PokeRegisterWrite,
|
|
44340
|
-
"JsRiscV$PokeRegisterWrite",
|
|
44341
|
-
11,
|
|
44342
|
-
jl_Object,
|
|
44343
|
-
[],
|
|
44344
|
-
16,
|
|
44345
|
-
0,
|
|
44346
|
-
0,
|
|
44347
|
-
0,
|
|
44348
44340
|
asr_RISCVprogram,
|
|
44349
44341
|
"RISCVprogram",
|
|
44350
44342
|
2,
|
|
@@ -44354,31 +44346,15 @@ $rt_metadata([
|
|
|
44354
44346
|
0,
|
|
44355
44347
|
0,
|
|
44356
44348
|
0,
|
|
44357
|
-
|
|
44358
|
-
|
|
44359
|
-
|
|
44360
|
-
|
|
44361
|
-
|
|
44362
|
-
0,
|
|
44363
|
-
0,
|
|
44364
|
-
0,
|
|
44365
|
-
asr_JsRiscV$run$lambda$_9_0,
|
|
44366
|
-
"JsRiscV$run$lambda$_9_0",
|
|
44367
|
-
11,
|
|
44368
|
-
jl_Object,
|
|
44369
|
-
[otjc_JSPromise$Executor],
|
|
44370
|
-
1,
|
|
44371
|
-
0,
|
|
44372
|
-
0,
|
|
44373
|
-
0,
|
|
44374
|
-
otjc_JSPromise,
|
|
44375
|
-
0,
|
|
44376
|
-
jl_Object,
|
|
44377
|
-
[otj_JSObject],
|
|
44349
|
+
asrrh_Register,
|
|
44350
|
+
"Register",
|
|
44351
|
+
8,
|
|
44352
|
+
ju_Observable,
|
|
44353
|
+
[],
|
|
44378
44354
|
1,
|
|
44379
44355
|
0,
|
|
44380
44356
|
0,
|
|
44381
|
-
|
|
44357
|
+
["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
|
|
44382
44358
|
jl_AutoCloseable,
|
|
44383
44359
|
0,
|
|
44384
44360
|
jl_Object,
|
|
@@ -44419,6 +44395,22 @@ $rt_metadata([
|
|
|
44419
44395
|
0,
|
|
44420
44396
|
0,
|
|
44421
44397
|
0,
|
|
44398
|
+
asrs_BackStepper$BackstepStack,
|
|
44399
|
+
0,
|
|
44400
|
+
jl_Object,
|
|
44401
|
+
[],
|
|
44402
|
+
1,
|
|
44403
|
+
0,
|
|
44404
|
+
0,
|
|
44405
|
+
0,
|
|
44406
|
+
asrs_BackStepper$BackStep,
|
|
44407
|
+
0,
|
|
44408
|
+
jl_Object,
|
|
44409
|
+
[],
|
|
44410
|
+
1,
|
|
44411
|
+
0,
|
|
44412
|
+
0,
|
|
44413
|
+
0,
|
|
44422
44414
|
jl_Long,
|
|
44423
44415
|
"Long",
|
|
44424
44416
|
19,
|
|
@@ -44428,103 +44420,112 @@ $rt_metadata([
|
|
|
44428
44420
|
0,
|
|
44429
44421
|
() => jl_Long_$callClinit(),
|
|
44430
44422
|
["$toString", $rt_wrapFunction0(jl_Long_toString0), "$hashCode", $rt_wrapFunction0(jl_Long_hashCode), "$equals", $rt_wrapFunction1(jl_Long_equals), "$compareTo0", $rt_wrapFunction1(jl_Long_compareTo)],
|
|
44431
|
-
|
|
44432
|
-
"AddressErrorException",
|
|
44433
|
-
8,
|
|
44434
|
-
jl_Exception,
|
|
44435
|
-
[],
|
|
44436
|
-
1,
|
|
44437
|
-
0,
|
|
44438
|
-
0,
|
|
44439
|
-
0,
|
|
44440
|
-
asr_JsCompilationResult$_init_$lambda$_0_0,
|
|
44423
|
+
otjc_JSObjects,
|
|
44441
44424
|
0,
|
|
44442
44425
|
jl_Object,
|
|
44443
|
-
[
|
|
44444
|
-
|
|
44426
|
+
[],
|
|
44427
|
+
17,
|
|
44445
44428
|
0,
|
|
44446
44429
|
0,
|
|
44447
|
-
|
|
44448
|
-
|
|
44430
|
+
0,
|
|
44431
|
+
otji_JSWrapper$Helper,
|
|
44449
44432
|
0,
|
|
44450
44433
|
jl_Object,
|
|
44451
44434
|
[],
|
|
44452
|
-
1537,
|
|
44453
44435
|
0,
|
|
44454
44436
|
0,
|
|
44437
|
+
() => otji_JSWrapper$Helper_$callClinit(),
|
|
44455
44438
|
0,
|
|
44456
|
-
|
|
44439
|
+
otjc_JSUndefined,
|
|
44457
44440
|
0,
|
|
44458
44441
|
jl_Object,
|
|
44459
|
-
[
|
|
44442
|
+
[otj_JSObject],
|
|
44460
44443
|
1,
|
|
44461
44444
|
0,
|
|
44462
44445
|
0,
|
|
44463
44446
|
0,
|
|
44464
|
-
|
|
44447
|
+
otjc_JSPromise$Executor,
|
|
44465
44448
|
0,
|
|
44466
44449
|
jl_Object,
|
|
44467
|
-
[],
|
|
44450
|
+
[otj_JSObject],
|
|
44468
44451
|
1537,
|
|
44469
44452
|
0,
|
|
44470
44453
|
0,
|
|
44471
44454
|
0,
|
|
44472
|
-
|
|
44473
|
-
|
|
44455
|
+
asr_JsRiscV$run$lambda$_9_0,
|
|
44456
|
+
"JsRiscV$run$lambda$_9_0",
|
|
44457
|
+
11,
|
|
44474
44458
|
jl_Object,
|
|
44475
|
-
[
|
|
44459
|
+
[otjc_JSPromise$Executor],
|
|
44476
44460
|
1,
|
|
44477
44461
|
0,
|
|
44478
44462
|
0,
|
|
44479
44463
|
0,
|
|
44480
|
-
|
|
44464
|
+
otjc_JSPromise,
|
|
44481
44465
|
0,
|
|
44482
44466
|
jl_Object,
|
|
44483
|
-
[
|
|
44467
|
+
[otj_JSObject],
|
|
44484
44468
|
1,
|
|
44485
44469
|
0,
|
|
44486
44470
|
0,
|
|
44487
44471
|
0,
|
|
44488
|
-
|
|
44472
|
+
asr_JsCompilationResult$_init_$lambda$_0_0,
|
|
44489
44473
|
0,
|
|
44490
44474
|
jl_Object,
|
|
44491
|
-
[],
|
|
44475
|
+
[juf_Function],
|
|
44492
44476
|
1,
|
|
44493
44477
|
0,
|
|
44494
44478
|
0,
|
|
44495
|
-
|
|
44496
|
-
|
|
44479
|
+
["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
|
|
44480
|
+
juf_Supplier,
|
|
44497
44481
|
0,
|
|
44498
44482
|
jl_Object,
|
|
44499
44483
|
[],
|
|
44484
|
+
1537,
|
|
44485
|
+
0,
|
|
44486
|
+
0,
|
|
44487
|
+
0,
|
|
44488
|
+
asr_JsCompilationResult$_init_$lambda$_0_1,
|
|
44489
|
+
0,
|
|
44490
|
+
jl_Object,
|
|
44491
|
+
[juf_Supplier],
|
|
44500
44492
|
1,
|
|
44501
44493
|
0,
|
|
44502
44494
|
0,
|
|
44503
44495
|
0,
|
|
44504
|
-
|
|
44496
|
+
juf_BiConsumer,
|
|
44505
44497
|
0,
|
|
44506
44498
|
jl_Object,
|
|
44507
44499
|
[],
|
|
44508
|
-
|
|
44500
|
+
1537,
|
|
44509
44501
|
0,
|
|
44510
44502
|
0,
|
|
44511
44503
|
0,
|
|
44512
|
-
|
|
44504
|
+
asr_JsCompilationResult$_init_$lambda$_0_2,
|
|
44513
44505
|
0,
|
|
44514
44506
|
jl_Object,
|
|
44515
|
-
[],
|
|
44507
|
+
[juf_BiConsumer],
|
|
44508
|
+
1,
|
|
44516
44509
|
0,
|
|
44517
44510
|
0,
|
|
44518
|
-
() => otji_JSWrapper$Helper_$callClinit(),
|
|
44519
44511
|
0,
|
|
44520
|
-
|
|
44512
|
+
asr_JsCompilationResult$_init_$lambda$_0_3,
|
|
44521
44513
|
0,
|
|
44522
44514
|
jl_Object,
|
|
44523
|
-
[
|
|
44515
|
+
[juf_BiConsumer],
|
|
44524
44516
|
1,
|
|
44525
44517
|
0,
|
|
44526
44518
|
0,
|
|
44527
44519
|
0,
|
|
44520
|
+
asr_JsRiscV$PokeRegisterWrite,
|
|
44521
|
+
"JsRiscV$PokeRegisterWrite",
|
|
44522
|
+
11,
|
|
44523
|
+
jl_Object,
|
|
44524
|
+
[],
|
|
44525
|
+
16,
|
|
44526
|
+
0,
|
|
44527
|
+
0,
|
|
44528
|
+
0,
|
|
44528
44529
|
asr_JsPokeWrite,
|
|
44529
44530
|
0,
|
|
44530
44531
|
jl_Object,
|
|
@@ -44533,6 +44534,15 @@ $rt_metadata([
|
|
|
44533
44534
|
0,
|
|
44534
44535
|
0,
|
|
44535
44536
|
0,
|
|
44537
|
+
asrrh_AddressErrorException,
|
|
44538
|
+
"AddressErrorException",
|
|
44539
|
+
8,
|
|
44540
|
+
jl_Exception,
|
|
44541
|
+
[],
|
|
44542
|
+
1,
|
|
44543
|
+
0,
|
|
44544
|
+
0,
|
|
44545
|
+
0,
|
|
44536
44546
|
asra_TokenTypes,
|
|
44537
44547
|
0,
|
|
44538
44548
|
jl_Enum,
|
|
@@ -46548,17 +46558,17 @@ $rt_metadata([
|
|
|
46548
46558
|
0,
|
|
46549
46559
|
0,
|
|
46550
46560
|
0,
|
|
46551
|
-
|
|
46552
|
-
|
|
46553
|
-
8,
|
|
46561
|
+
asr_ErrorList,
|
|
46562
|
+
0,
|
|
46554
46563
|
jl_Object,
|
|
46555
46564
|
[],
|
|
46556
46565
|
1,
|
|
46557
46566
|
0,
|
|
46558
46567
|
0,
|
|
46559
46568
|
0,
|
|
46560
|
-
|
|
46561
|
-
|
|
46569
|
+
asrrh_StackFrame,
|
|
46570
|
+
"StackFrame",
|
|
46571
|
+
8,
|
|
46562
46572
|
jl_Object,
|
|
46563
46573
|
[],
|
|
46564
46574
|
1,
|
|
@@ -47075,14 +47085,6 @@ $rt_metadata([
|
|
|
47075
47085
|
0,
|
|
47076
47086
|
0,
|
|
47077
47087
|
["$find0", $rt_wrapFunction3(jur_BackReferencedSingleSet_find), "$findBack", $rt_wrapFunction4(jur_BackReferencedSingleSet_findBack), "$processBackRefReplacement", $rt_wrapFunction0(jur_BackReferencedSingleSet_processBackRefReplacement)],
|
|
47078
|
-
jm_Conversion,
|
|
47079
|
-
0,
|
|
47080
|
-
jl_Object,
|
|
47081
|
-
[],
|
|
47082
|
-
0,
|
|
47083
|
-
0,
|
|
47084
|
-
() => jm_Conversion_$callClinit(),
|
|
47085
|
-
0,
|
|
47086
47088
|
jus_IntStream,
|
|
47087
47089
|
0,
|
|
47088
47090
|
jl_Object,
|
|
@@ -47107,6 +47109,14 @@ $rt_metadata([
|
|
|
47107
47109
|
0,
|
|
47108
47110
|
0,
|
|
47109
47111
|
0,
|
|
47112
|
+
jm_Conversion,
|
|
47113
|
+
0,
|
|
47114
|
+
jl_Object,
|
|
47115
|
+
[],
|
|
47116
|
+
0,
|
|
47117
|
+
0,
|
|
47118
|
+
() => jm_Conversion_$callClinit(),
|
|
47119
|
+
0,
|
|
47110
47120
|
ju_AbstractList$1,
|
|
47111
47121
|
0,
|
|
47112
47122
|
jl_Object,
|
|
@@ -47139,14 +47149,6 @@ $rt_metadata([
|
|
|
47139
47149
|
0,
|
|
47140
47150
|
() => asrs_Simulator$Reason_$callClinit(),
|
|
47141
47151
|
0,
|
|
47142
|
-
asrrh_Stack,
|
|
47143
|
-
0,
|
|
47144
|
-
jl_Object,
|
|
47145
|
-
[],
|
|
47146
|
-
1,
|
|
47147
|
-
0,
|
|
47148
|
-
() => asrrh_Stack_$callClinit(),
|
|
47149
|
-
0,
|
|
47150
47152
|
juf_Predicate,
|
|
47151
47153
|
0,
|
|
47152
47154
|
jl_Object,
|
|
@@ -47163,6 +47165,14 @@ $rt_metadata([
|
|
|
47163
47165
|
0,
|
|
47164
47166
|
0,
|
|
47165
47167
|
0,
|
|
47168
|
+
asrrh_Stack,
|
|
47169
|
+
0,
|
|
47170
|
+
jl_Object,
|
|
47171
|
+
[],
|
|
47172
|
+
1,
|
|
47173
|
+
0,
|
|
47174
|
+
() => asrrh_Stack_$callClinit(),
|
|
47175
|
+
0,
|
|
47166
47176
|
asrrh_InterruptController,
|
|
47167
47177
|
0,
|
|
47168
47178
|
jl_Object,
|
|
@@ -47828,14 +47838,6 @@ $rt_metadata([
|
|
|
47828
47838
|
0,
|
|
47829
47839
|
0,
|
|
47830
47840
|
0,
|
|
47831
|
-
asrs_BackStepper$Action,
|
|
47832
|
-
0,
|
|
47833
|
-
jl_Enum,
|
|
47834
|
-
[],
|
|
47835
|
-
65552,
|
|
47836
|
-
0,
|
|
47837
|
-
() => asrs_BackStepper$Action_$callClinit(),
|
|
47838
|
-
0,
|
|
47839
47841
|
asrs_BackStepper$PokeRestore,
|
|
47840
47842
|
"BackStepper$PokeRestore",
|
|
47841
47843
|
3,
|
|
@@ -47845,6 +47847,14 @@ $rt_metadata([
|
|
|
47845
47847
|
0,
|
|
47846
47848
|
0,
|
|
47847
47849
|
0,
|
|
47850
|
+
asrs_BackStepper$Action,
|
|
47851
|
+
0,
|
|
47852
|
+
jl_Enum,
|
|
47853
|
+
[],
|
|
47854
|
+
65552,
|
|
47855
|
+
0,
|
|
47856
|
+
() => asrs_BackStepper$Action_$callClinit(),
|
|
47857
|
+
0,
|
|
47848
47858
|
jusi_SimpleStreamImpl$toArray$lambda$_20_0,
|
|
47849
47859
|
0,
|
|
47850
47860
|
jl_Object,
|
|
@@ -49664,9 +49674,6 @@ $rt_stringPool([
|
|
|
49664
49674
|
"t5",
|
|
49665
49675
|
"t6",
|
|
49666
49676
|
"pc",
|
|
49667
|
-
"Negative bit address",
|
|
49668
|
-
"BigInteger out of int range",
|
|
49669
|
-
"BigInteger out of long range",
|
|
49670
49677
|
"ft0",
|
|
49671
49678
|
"ft1",
|
|
49672
49679
|
"ft2",
|
|
@@ -49699,6 +49706,9 @@ $rt_stringPool([
|
|
|
49699
49706
|
"ft9",
|
|
49700
49707
|
"ft10",
|
|
49701
49708
|
"ft11",
|
|
49709
|
+
"Negative bit address",
|
|
49710
|
+
"BigInteger out of int range",
|
|
49711
|
+
"BigInteger out of long range",
|
|
49702
49712
|
"Infinity",
|
|
49703
49713
|
"NaN",
|
|
49704
49714
|
" , ",
|
|
@@ -51136,6 +51146,19 @@ var $rt_jso_marker = Symbol("jsoClass");
|
|
|
51136
51146
|
Object.defineProperty(c, "sourcePath", {
|
|
51137
51147
|
get: $rt_callWithReceiver(asr_JsProgramStatement_getSourcePath$exported$1)
|
|
51138
51148
|
});
|
|
51149
|
+
c = asr_JsCompilationResult.prototype;
|
|
51150
|
+
Object.defineProperty(c, "hasErrors", {
|
|
51151
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$2)
|
|
51152
|
+
});
|
|
51153
|
+
Object.defineProperty(c, "hasWarnings", {
|
|
51154
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_hasWarnings$exported$0)
|
|
51155
|
+
});
|
|
51156
|
+
Object.defineProperty(c, "report", {
|
|
51157
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$3)
|
|
51158
|
+
});
|
|
51159
|
+
Object.defineProperty(c, "errors", {
|
|
51160
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$1)
|
|
51161
|
+
});
|
|
51139
51162
|
c = asr_JsStackFrame.prototype;
|
|
51140
51163
|
Object.defineProperty(c, "pc", {
|
|
51141
51164
|
get: $rt_callWithReceiver(asr_JsStackFrame_getPc$exported$0)
|
|
@@ -51152,19 +51175,6 @@ var $rt_jso_marker = Symbol("jsoClass");
|
|
|
51152
51175
|
Object.defineProperty(c, "toAddress", {
|
|
51153
51176
|
get: $rt_callWithReceiver(asr_JsStackFrame_getToAddress$exported$1)
|
|
51154
51177
|
});
|
|
51155
|
-
c = asr_JsCompilationResult.prototype;
|
|
51156
|
-
Object.defineProperty(c, "hasErrors", {
|
|
51157
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$2)
|
|
51158
|
-
});
|
|
51159
|
-
Object.defineProperty(c, "hasWarnings", {
|
|
51160
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_hasWarnings$exported$0)
|
|
51161
|
-
});
|
|
51162
|
-
Object.defineProperty(c, "report", {
|
|
51163
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$3)
|
|
51164
|
-
});
|
|
51165
|
-
Object.defineProperty(c, "errors", {
|
|
51166
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$1)
|
|
51167
|
-
});
|
|
51168
51178
|
c = asr_JsRiscVTokenizedLine.prototype;
|
|
51169
51179
|
Object.defineProperty(c, "sourceLine", {
|
|
51170
51180
|
get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getSourceLine$exported$0)
|
|
@@ -51242,18 +51252,18 @@ function $rt_export_class_JsRISCVIO_55() {
|
|
|
51242
51252
|
return asr_JsRISCVIO__init_$exported$0();
|
|
51243
51253
|
}
|
|
51244
51254
|
$rt_export_class_JsRISCVIO_55.prototype = asr_JsRISCVIO.prototype;
|
|
51245
|
-
function $
|
|
51255
|
+
function $rt_export_class_JsProgramStatement_244() {
|
|
51246
51256
|
throw new Error("Can't instantiate this class directly");
|
|
51247
51257
|
}
|
|
51248
|
-
$
|
|
51249
|
-
function $rt_export_class_JsStackFrame_253() {
|
|
51250
|
-
throw new Error("Can't instantiate this class directly");
|
|
51251
|
-
}
|
|
51252
|
-
$rt_export_class_JsStackFrame_253.prototype = asr_JsStackFrame.prototype;
|
|
51258
|
+
$rt_export_class_JsProgramStatement_244.prototype = asr_JsProgramStatement.prototype;
|
|
51253
51259
|
function $rt_export_class_JsCompilationResult_259() {
|
|
51254
51260
|
throw new Error("Can't instantiate this class directly");
|
|
51255
51261
|
}
|
|
51256
51262
|
$rt_export_class_JsCompilationResult_259.prototype = asr_JsCompilationResult.prototype;
|
|
51263
|
+
function $rt_export_class_JsStackFrame_271() {
|
|
51264
|
+
throw new Error("Can't instantiate this class directly");
|
|
51265
|
+
}
|
|
51266
|
+
$rt_export_class_JsStackFrame_271.prototype = asr_JsStackFrame.prototype;
|
|
51257
51267
|
function $rt_export_class_JsRiscVTokenizedLine_273() {
|
|
51258
51268
|
throw new Error("Can't instantiate this class directly");
|
|
51259
51269
|
}
|