@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.js
CHANGED
|
@@ -17294,6 +17294,121 @@ var otci_Base46_decode = ($seq) => {
|
|
|
17294
17294
|
$result = -$result | 0;
|
|
17295
17295
|
return $result;
|
|
17296
17296
|
};
|
|
17297
|
+
function asr_JsProgramStatement() {
|
|
17298
|
+
let a = this;
|
|
17299
|
+
jl_Object.call(a);
|
|
17300
|
+
a.$sourceLine5 = 0;
|
|
17301
|
+
a.$sourcePath2 = null;
|
|
17302
|
+
a.$address2 = 0;
|
|
17303
|
+
a.$binaryStatement0 = 0;
|
|
17304
|
+
a.$source2 = null;
|
|
17305
|
+
a.$assemblyStatement = null;
|
|
17306
|
+
a.$machineStatement0 = null;
|
|
17307
|
+
}
|
|
17308
|
+
var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
|
|
17309
|
+
let var$2, var$3, var$4, var$5, var$6;
|
|
17310
|
+
$this.$sourceLine5 = $programStatement.$sourceLine1;
|
|
17311
|
+
$this.$sourcePath2 = $programStatement.$sourcePath;
|
|
17312
|
+
$this.$address2 = $programStatement.$textAddress0;
|
|
17313
|
+
$this.$binaryStatement0 = $programStatement.$binaryStatement;
|
|
17314
|
+
$this.$source2 = $programStatement.$source;
|
|
17315
|
+
var$2 = $programStatement.$basicStatementList;
|
|
17316
|
+
var$3 = asr_Globals_getSettings();
|
|
17317
|
+
asr_Settings$Bool_$callClinit();
|
|
17318
|
+
var$4 = !asr_Settings_getBooleanSetting(var$3, asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
17319
|
+
var$5 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
17320
|
+
var$3 = new jl_StringBuffer();
|
|
17321
|
+
jl_AbstractStringBuilder__init_(var$3);
|
|
17322
|
+
var$6 = ju_AbstractList_iterator(var$2.$list);
|
|
17323
|
+
while (ju_AbstractList$1_hasNext(var$6)) {
|
|
17324
|
+
a: {
|
|
17325
|
+
var$2 = ju_AbstractList$1_next(var$6);
|
|
17326
|
+
switch (var$2.$type3) {
|
|
17327
|
+
case 0:
|
|
17328
|
+
break;
|
|
17329
|
+
case 1:
|
|
17330
|
+
if (var$4 == 10) {
|
|
17331
|
+
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
17332
|
+
break a;
|
|
17333
|
+
}
|
|
17334
|
+
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
17335
|
+
break a;
|
|
17336
|
+
case 2:
|
|
17337
|
+
if (var$5 == 10) {
|
|
17338
|
+
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
17339
|
+
break a;
|
|
17340
|
+
}
|
|
17341
|
+
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
17342
|
+
break a;
|
|
17343
|
+
case 3:
|
|
17344
|
+
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
17345
|
+
break a;
|
|
17346
|
+
default:
|
|
17347
|
+
break a;
|
|
17348
|
+
}
|
|
17349
|
+
jl_AbstractStringBuilder_append1(var$3, var$2.$sValue);
|
|
17350
|
+
}
|
|
17351
|
+
}
|
|
17352
|
+
$this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$3);
|
|
17353
|
+
$this.$machineStatement0 = $programStatement.$machineStatement;
|
|
17354
|
+
};
|
|
17355
|
+
var asr_JsProgramStatement__init_ = (var_0) => {
|
|
17356
|
+
let var_1 = new asr_JsProgramStatement();
|
|
17357
|
+
asr_JsProgramStatement__init_0(var_1, var_0);
|
|
17358
|
+
return var_1;
|
|
17359
|
+
};
|
|
17360
|
+
var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
|
|
17361
|
+
return var$1.$sourceLine5;
|
|
17362
|
+
};
|
|
17363
|
+
var asr_JsProgramStatement_getSourcePath$exported$1 = (var$1) => {
|
|
17364
|
+
return $rt_ustr(var$1.$sourcePath2);
|
|
17365
|
+
};
|
|
17366
|
+
var asr_JsProgramStatement_getAssemblyStatement$exported$2 = (var$1) => {
|
|
17367
|
+
return $rt_ustr(var$1.$assemblyStatement);
|
|
17368
|
+
};
|
|
17369
|
+
var asr_JsProgramStatement_getSource$exported$3 = (var$1) => {
|
|
17370
|
+
return $rt_ustr(var$1.$source2);
|
|
17371
|
+
};
|
|
17372
|
+
var asr_JsProgramStatement_getAddress$exported$4 = (var$1) => {
|
|
17373
|
+
return var$1.$address2;
|
|
17374
|
+
};
|
|
17375
|
+
var asr_JsProgramStatement_getBinaryStatement$exported$5 = (var$1) => {
|
|
17376
|
+
return var$1.$binaryStatement0;
|
|
17377
|
+
};
|
|
17378
|
+
var asr_JsProgramStatement_getMachineStatement$exported$6 = (var$1) => {
|
|
17379
|
+
return $rt_ustr(var$1.$machineStatement0);
|
|
17380
|
+
};
|
|
17381
|
+
var ju_Observer = $rt_classWithoutFields(0);
|
|
17382
|
+
function asr_JsMemoryObserver() {
|
|
17383
|
+
let a = this;
|
|
17384
|
+
jl_Object.call(a);
|
|
17385
|
+
a.$handle = 0;
|
|
17386
|
+
a.$startAddress = 0;
|
|
17387
|
+
a.$endAddress = 0;
|
|
17388
|
+
a.$onRead = null;
|
|
17389
|
+
a.$onWrite = null;
|
|
17390
|
+
a.$reportsLength = 0;
|
|
17391
|
+
}
|
|
17392
|
+
var asr_JsMemoryObserver__init_0 = ($this, $handle, $startAddress, $endAddress, $onRead, $onWrite, $reportsLength) => {
|
|
17393
|
+
$this.$handle = $handle;
|
|
17394
|
+
$this.$startAddress = $startAddress;
|
|
17395
|
+
$this.$endAddress = $endAddress;
|
|
17396
|
+
if (asr_JsMemoryObserver_isNullish$js_body$_1($onRead) ? 1 : 0)
|
|
17397
|
+
$onRead = null;
|
|
17398
|
+
$this.$onRead = $onRead;
|
|
17399
|
+
if (asr_JsMemoryObserver_isNullish$js_body$_1($onWrite) ? 1 : 0)
|
|
17400
|
+
$onWrite = null;
|
|
17401
|
+
$this.$onWrite = $onWrite;
|
|
17402
|
+
$this.$reportsLength = $reportsLength;
|
|
17403
|
+
};
|
|
17404
|
+
var asr_JsMemoryObserver__init_ = (var_0, var_1, var_2, var_3, var_4, var_5) => {
|
|
17405
|
+
let var_6 = new asr_JsMemoryObserver();
|
|
17406
|
+
asr_JsMemoryObserver__init_0(var_6, var_0, var_1, var_2, var_3, var_4, var_5);
|
|
17407
|
+
return var_6;
|
|
17408
|
+
};
|
|
17409
|
+
var asr_JsMemoryObserver_isNullish$js_body$_1 = (var$1) => {
|
|
17410
|
+
return var$1 === null || var$1 === void 0;
|
|
17411
|
+
};
|
|
17297
17412
|
var asrrh_ControlAndStatusRegisterFile = $rt_classWithoutFields();
|
|
17298
17413
|
var asrrh_ControlAndStatusRegisterFile_instance = null;
|
|
17299
17414
|
var asrrh_ControlAndStatusRegisterFile_pendingCounterTicks = 0;
|
|
@@ -17301,14 +17416,14 @@ var asrrh_ControlAndStatusRegisterFile_$callClinit = () => {
|
|
|
17301
17416
|
asrrh_ControlAndStatusRegisterFile_$callClinit = $rt_eraseClinit(asrrh_ControlAndStatusRegisterFile);
|
|
17302
17417
|
asrrh_ControlAndStatusRegisterFile__clinit_();
|
|
17303
17418
|
};
|
|
17304
|
-
var asrrh_ControlAndStatusRegisterFile_updateRegister0 = ($
|
|
17419
|
+
var asrrh_ControlAndStatusRegisterFile_updateRegister0 = (var$1, $val) => {
|
|
17305
17420
|
let $target, $old, var$5, var$6;
|
|
17306
17421
|
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17307
17422
|
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17308
|
-
$target = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, $
|
|
17423
|
+
$target = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, var$1);
|
|
17309
17424
|
if ($target instanceof asrrh_ReadOnlyRegister)
|
|
17310
17425
|
return 1;
|
|
17311
|
-
if ($
|
|
17426
|
+
if (var$1 >= 3200 && var$1 <= 3202)
|
|
17312
17427
|
return 1;
|
|
17313
17428
|
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()) && $target !== null) {
|
|
17314
17429
|
$old = asrrh_RegisterBlock_updateRegister0(asrrh_ControlAndStatusRegisterFile_instance, $target, $val);
|
|
@@ -17316,7 +17431,7 @@ var asrrh_ControlAndStatusRegisterFile_updateRegister0 = ($num, $val) => {
|
|
|
17316
17431
|
$val = $target.$getValueNoNotify();
|
|
17317
17432
|
var$6 = var$5.$backSteps;
|
|
17318
17433
|
asrs_BackStepper$Action_$callClinit();
|
|
17319
|
-
asrs_BackStepper$BackstepStack_push(var$6, asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_RESTORE, asrs_BackStepper_pc(var$5), $
|
|
17434
|
+
asrs_BackStepper$BackstepStack_push(var$6, asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_RESTORE, asrs_BackStepper_pc(var$5), var$1, $old, 0, $val);
|
|
17320
17435
|
} else
|
|
17321
17436
|
asrrh_RegisterBlock_updateRegister0(asrrh_ControlAndStatusRegisterFile_instance, $target, $val);
|
|
17322
17437
|
return 0;
|
|
@@ -17326,19 +17441,19 @@ var asrrh_ControlAndStatusRegisterFile_updateRegister = ($name, $val) => {
|
|
|
17326
17441
|
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17327
17442
|
asrrh_ControlAndStatusRegisterFile_updateRegister0(asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $name).$number, $val);
|
|
17328
17443
|
};
|
|
17329
|
-
var asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor = ($register, $val) => {
|
|
17330
|
-
let $old, var$
|
|
17444
|
+
var asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor = ($register, $val, $programCounter) => {
|
|
17445
|
+
let $old, var$5, var$6;
|
|
17331
17446
|
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17332
17447
|
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17333
17448
|
$old = asrrh_Register_setValueBackdoor($register, $val);
|
|
17334
17449
|
if (Long_eq($old, $val))
|
|
17335
17450
|
return;
|
|
17336
17451
|
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings())) {
|
|
17337
|
-
var$
|
|
17338
|
-
var$
|
|
17339
|
-
var$
|
|
17452
|
+
var$5 = asr_Globals_program.$backStepper;
|
|
17453
|
+
var$6 = $register.$number;
|
|
17454
|
+
var$5 = var$5.$backSteps;
|
|
17340
17455
|
asrs_BackStepper$Action_$callClinit();
|
|
17341
|
-
asrs_BackStepper$BackstepStack_push(var$
|
|
17456
|
+
asrs_BackStepper$BackstepStack_push(var$5, asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_BACKDOOR, $programCounter, var$6, $old, 0, $val);
|
|
17342
17457
|
}
|
|
17343
17458
|
};
|
|
17344
17459
|
var asrrh_ControlAndStatusRegisterFile_orRegister0 = ($num, $val) => {
|
|
@@ -17535,6 +17650,10 @@ var asrrh_RegisterFile_resetRegisters = () => {
|
|
|
17535
17650
|
asr_Settings$Bool_$callClinit();
|
|
17536
17651
|
asrrh_RegisterFile_initializeProgramCounter0(asr_Settings_getBooleanSetting(var$1, asr_Settings$Bool_START_AT_MAIN));
|
|
17537
17652
|
};
|
|
17653
|
+
var asrrh_RegisterFile_incrementPC = () => {
|
|
17654
|
+
asrrh_RegisterFile_$callClinit();
|
|
17655
|
+
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
17656
|
+
};
|
|
17538
17657
|
var asrrh_RegisterFile__clinit_ = () => {
|
|
17539
17658
|
let var$1, var$2, var$3, var$4;
|
|
17540
17659
|
var$1 = new asrrh_RegisterBlock();
|
|
@@ -17580,209 +17699,662 @@ var asrrh_RegisterFile__clinit_ = () => {
|
|
|
17580
17699
|
asrrh_RegisterFile_programCounter = asrrh_Register__init_($rt_s(542), -1, Long_fromInt(asrrh_Memory_textBaseAddress));
|
|
17581
17700
|
asrrh_RegisterFile_programCounterValue = asrrh_Memory_textBaseAddress;
|
|
17582
17701
|
};
|
|
17583
|
-
|
|
17702
|
+
var juf_ToIntFunction = $rt_classWithoutFields(0);
|
|
17703
|
+
var asr_JsRiscV$getRegistersValues$lambda$_28_0 = $rt_classWithoutFields();
|
|
17704
|
+
var otjc_JSArrayReader = $rt_classWithoutFields(0);
|
|
17705
|
+
var otjc_JSArray = $rt_classWithoutFields();
|
|
17706
|
+
var otjc_JSArray_of = ($items) => {
|
|
17707
|
+
let var$2, $array, $i, var$5;
|
|
17708
|
+
$items = $items.data;
|
|
17709
|
+
var$2 = $items.length;
|
|
17710
|
+
$array = new Array(var$2);
|
|
17711
|
+
$i = 0;
|
|
17712
|
+
while ($i < var$2) {
|
|
17713
|
+
var$5 = $items[$i];
|
|
17714
|
+
$array[$i] = otji_JSWrapper_javaToJs(var$5);
|
|
17715
|
+
$i = $i + 1 | 0;
|
|
17716
|
+
}
|
|
17717
|
+
return $array;
|
|
17718
|
+
};
|
|
17719
|
+
function asrs_BackStepper() {
|
|
17584
17720
|
let a = this;
|
|
17585
|
-
|
|
17586
|
-
a.$
|
|
17587
|
-
a.$
|
|
17588
|
-
a.$
|
|
17589
|
-
a.$
|
|
17590
|
-
a.$
|
|
17721
|
+
jl_Object.call(a);
|
|
17722
|
+
a.$lastStatementPc = 0;
|
|
17723
|
+
a.$lastStatement = null;
|
|
17724
|
+
a.$engaged = 0;
|
|
17725
|
+
a.$backSteps = null;
|
|
17726
|
+
a.$pokeGroup = 0;
|
|
17727
|
+
a.$pokeRestores = null;
|
|
17591
17728
|
}
|
|
17592
|
-
var
|
|
17593
|
-
var
|
|
17594
|
-
|
|
17595
|
-
|
|
17596
|
-
var jm_BigInteger_MINUS_ONE = null;
|
|
17597
|
-
var jm_BigInteger_SMALL_VALUES = null;
|
|
17598
|
-
var jm_BigInteger_TWO_POWS = null;
|
|
17599
|
-
var jm_BigInteger_$callClinit = () => {
|
|
17600
|
-
jm_BigInteger_$callClinit = $rt_eraseClinit(jm_BigInteger);
|
|
17601
|
-
jm_BigInteger__clinit_();
|
|
17729
|
+
var asrs_BackStepper_nextPokeGroup = 0;
|
|
17730
|
+
var asrs_BackStepper_$callClinit = () => {
|
|
17731
|
+
asrs_BackStepper_$callClinit = $rt_eraseClinit(asrs_BackStepper);
|
|
17732
|
+
asrs_BackStepper__clinit_();
|
|
17602
17733
|
};
|
|
17603
|
-
var
|
|
17604
|
-
let var$
|
|
17605
|
-
|
|
17606
|
-
|
|
17607
|
-
|
|
17608
|
-
|
|
17609
|
-
|
|
17610
|
-
|
|
17611
|
-
|
|
17734
|
+
var asrs_BackStepper_applyRestore = ($action, $param1, $param2) => {
|
|
17735
|
+
let var$4, var$5, var$6, var$7;
|
|
17736
|
+
asrs_BackStepper_$callClinit();
|
|
17737
|
+
a: {
|
|
17738
|
+
switch ($action.$ordinal0) {
|
|
17739
|
+
case 0:
|
|
17740
|
+
asr_Globals_$callClinit();
|
|
17741
|
+
$action = asr_Globals_memory;
|
|
17742
|
+
var$4 = Long_lo($param2);
|
|
17743
|
+
var$5 = asrrh_Memory_storeRawWord($action, $param1, var$4);
|
|
17744
|
+
asrrh_Memory_notifyAnyObservers($action, 1, $param1, 4, var$4);
|
|
17745
|
+
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings())) {
|
|
17746
|
+
var$6 = asr_Globals_program.$backStepper;
|
|
17747
|
+
var$7 = var$6.$backSteps;
|
|
17748
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17749
|
+
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);
|
|
17750
|
+
}
|
|
17751
|
+
break a;
|
|
17752
|
+
case 1:
|
|
17753
|
+
asr_Globals_$callClinit();
|
|
17754
|
+
asrrh_Memory_setDoubleWord(asr_Globals_memory, $param1, $param2);
|
|
17755
|
+
break a;
|
|
17756
|
+
case 2:
|
|
17757
|
+
asr_Globals_$callClinit();
|
|
17758
|
+
asrrh_Memory_setWord(asr_Globals_memory, $param1, Long_lo($param2));
|
|
17759
|
+
break a;
|
|
17760
|
+
case 3:
|
|
17761
|
+
asr_Globals_$callClinit();
|
|
17762
|
+
asrrh_Memory_setHalf(asr_Globals_memory, $param1, Long_lo($param2));
|
|
17763
|
+
break a;
|
|
17764
|
+
case 4:
|
|
17765
|
+
asr_Globals_$callClinit();
|
|
17766
|
+
asrrh_Memory_setByte(asr_Globals_memory, $param1, Long_lo($param2));
|
|
17767
|
+
break a;
|
|
17768
|
+
case 5:
|
|
17769
|
+
asrrh_RegisterFile_updateRegister($param1, $param2);
|
|
17770
|
+
break a;
|
|
17771
|
+
case 6:
|
|
17772
|
+
asrrh_RegisterFile_setProgramCounter($param1);
|
|
17773
|
+
break a;
|
|
17774
|
+
case 7:
|
|
17775
|
+
asrrh_ControlAndStatusRegisterFile_updateRegister0($param1, $param2);
|
|
17776
|
+
break a;
|
|
17777
|
+
case 8:
|
|
17778
|
+
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17779
|
+
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17780
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor(asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, $param1), $param2, asrrh_RegisterFile_getProgramCounter() - 4 | 0);
|
|
17781
|
+
break a;
|
|
17782
|
+
case 9:
|
|
17783
|
+
asrrh_FloatingPointRegisterFile_updateRegisterLong($param1, $param2);
|
|
17784
|
+
break a;
|
|
17785
|
+
case 10:
|
|
17786
|
+
break;
|
|
17787
|
+
case 11:
|
|
17788
|
+
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17789
|
+
$param1 = asrrh_ControlAndStatusRegisterFile_pendingCounterTicks;
|
|
17790
|
+
if ($param1 > 0)
|
|
17791
|
+
asrrh_ControlAndStatusRegisterFile_pendingCounterTicks = $param1 - 1 | 0;
|
|
17792
|
+
else {
|
|
17793
|
+
$action = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(494));
|
|
17794
|
+
var$7 = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(495));
|
|
17795
|
+
asrrh_Register_setValueBackdoor($action, Long_sub($action.$getValueNoNotify(), Long_fromInt(1)));
|
|
17796
|
+
asrrh_Register_setValueBackdoor(var$7, Long_sub(var$7.$getValueNoNotify(), Long_fromInt(1)));
|
|
17797
|
+
}
|
|
17798
|
+
break a;
|
|
17799
|
+
case 12:
|
|
17800
|
+
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
17801
|
+
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
17802
|
+
$action = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, $param1);
|
|
17803
|
+
if ($action !== null)
|
|
17804
|
+
$action.$setValue($param2);
|
|
17805
|
+
break a;
|
|
17806
|
+
case 13:
|
|
17807
|
+
break a;
|
|
17808
|
+
default:
|
|
17809
|
+
break a;
|
|
17810
|
+
}
|
|
17811
|
+
}
|
|
17612
17812
|
};
|
|
17613
|
-
var
|
|
17614
|
-
|
|
17615
|
-
|
|
17616
|
-
|
|
17813
|
+
var asrs_BackStepper_sameGroup = ($one, $other) => {
|
|
17814
|
+
asrs_BackStepper_$callClinit();
|
|
17815
|
+
if (!asrs_BackStepper$BackStep_isPoke($one) && !asrs_BackStepper$BackStep_isPoke($other))
|
|
17816
|
+
return $one.$ps !== $other.$ps ? 0 : 1;
|
|
17817
|
+
return 0;
|
|
17617
17818
|
};
|
|
17618
|
-
var
|
|
17619
|
-
|
|
17620
|
-
$this.$firstNonzeroDigit = -2;
|
|
17621
|
-
$this.$sign0 = $sign;
|
|
17622
|
-
$this.$numberLength = $numberLength;
|
|
17623
|
-
$this.$digits = $digits;
|
|
17819
|
+
var asrs_BackStepper_pc = ($this) => {
|
|
17820
|
+
return asrrh_RegisterFile_getProgramCounter() - 4 | 0;
|
|
17624
17821
|
};
|
|
17625
|
-
var
|
|
17626
|
-
let
|
|
17627
|
-
|
|
17628
|
-
|
|
17822
|
+
var asrs_BackStepper_addFloatingPointRestore = ($this, $register, $value, $newValue) => {
|
|
17823
|
+
let var$4;
|
|
17824
|
+
var$4 = $this.$backSteps;
|
|
17825
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17826
|
+
asrs_BackStepper$BackstepStack_push(var$4, asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE, asrs_BackStepper_pc($this), $register, $value, 0, $newValue);
|
|
17827
|
+
return $value;
|
|
17629
17828
|
};
|
|
17630
|
-
var
|
|
17631
|
-
let var$
|
|
17632
|
-
|
|
17633
|
-
|
|
17634
|
-
|
|
17635
|
-
|
|
17636
|
-
$this.$numberLength = 1;
|
|
17637
|
-
var$3 = $rt_createIntArray(1);
|
|
17638
|
-
var$3.data[0] = Long_lo($val);
|
|
17639
|
-
$this.$digits = var$3;
|
|
17640
|
-
} else {
|
|
17641
|
-
$this.$numberLength = 2;
|
|
17642
|
-
$this.$digits = $rt_createIntArrayFromData([Long_lo($val), Long_hi($val)]);
|
|
17829
|
+
var asrs_BackStepper_addDoNothing = ($this, $pc) => {
|
|
17830
|
+
let var$2;
|
|
17831
|
+
if (!(!asrs_BackStepper$BackstepStack_empty($this.$backSteps) && asrs_BackStepper$BackstepStack_peek($this.$backSteps).$pc1 == $pc)) {
|
|
17832
|
+
var$2 = $this.$backSteps;
|
|
17833
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17834
|
+
asrs_BackStepper$BackstepStack_push0(var$2, asrs_BackStepper$Action_DO_NOTHING, $pc);
|
|
17643
17835
|
}
|
|
17644
17836
|
};
|
|
17645
|
-
var
|
|
17646
|
-
|
|
17647
|
-
jm_BigInteger__init_3(var_2, var_0, var_1);
|
|
17648
|
-
return var_2;
|
|
17837
|
+
var asrs_BackStepper__clinit_ = () => {
|
|
17838
|
+
asrs_BackStepper_nextPokeGroup = -2;
|
|
17649
17839
|
};
|
|
17650
|
-
var
|
|
17651
|
-
|
|
17652
|
-
|
|
17653
|
-
|
|
17654
|
-
|
|
17655
|
-
|
|
17840
|
+
var asr_JsBackStep = $rt_classWithoutFields();
|
|
17841
|
+
var asr_JsBackStep_of = ($backStep) => {
|
|
17842
|
+
let var$2, var$3, var$4, var$5, var$6, var$7, var$8;
|
|
17843
|
+
var$2 = $backStep.$action;
|
|
17844
|
+
var$3 = var$2 === null ? -1 : var$2.$ordinal0;
|
|
17845
|
+
var$4 = $backStep.$pc1;
|
|
17846
|
+
var$5 = $backStep.$param1;
|
|
17847
|
+
var$6 = $backStep.$param2;
|
|
17848
|
+
var$7 = Long_lo(var$6);
|
|
17849
|
+
asrs_BackStepper$Action_$callClinit();
|
|
17850
|
+
if (var$2 === asrs_BackStepper$Action_PC_RESTORE)
|
|
17851
|
+
var$6 = Long_fromInt(var$5);
|
|
17852
|
+
a: {
|
|
17853
|
+
var$8 = jl_Long_toString(var$6);
|
|
17854
|
+
switch ($backStep.$action.$ordinal0) {
|
|
17855
|
+
case 0:
|
|
17856
|
+
case 2:
|
|
17857
|
+
case 3:
|
|
17858
|
+
case 4:
|
|
17859
|
+
case 6:
|
|
17860
|
+
var$6 = Long_fromInt($backStep.$param3Int);
|
|
17861
|
+
break a;
|
|
17862
|
+
case 1:
|
|
17863
|
+
case 5:
|
|
17864
|
+
case 7:
|
|
17865
|
+
case 8:
|
|
17866
|
+
case 9:
|
|
17867
|
+
break;
|
|
17868
|
+
default:
|
|
17869
|
+
var$6 = Long_ZERO;
|
|
17870
|
+
break a;
|
|
17871
|
+
}
|
|
17872
|
+
var$6 = $backStep.$param3Long;
|
|
17656
17873
|
}
|
|
17657
|
-
|
|
17658
|
-
return jm_BigInteger__init_1(1, $val);
|
|
17659
|
-
return jm_BigInteger_SMALL_VALUES.data[Long_lo($val)];
|
|
17874
|
+
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));
|
|
17660
17875
|
};
|
|
17661
|
-
var
|
|
17662
|
-
|
|
17663
|
-
$this = jm_BigInteger__init_0(1, $this.$numberLength, $this.$digits);
|
|
17664
|
-
return $this;
|
|
17876
|
+
var asr_JsBackStep_create$js_body$_2 = (var$1, var$2, var$3, var$4, var$5, var$6, var$7) => {
|
|
17877
|
+
return { action: var$1, pc: var$2, param1: var$3, param2: var$4, oldValue: var$5, newValue: var$6, isPoke: var$7 };
|
|
17665
17878
|
};
|
|
17666
|
-
var
|
|
17667
|
-
|
|
17668
|
-
var$1
|
|
17669
|
-
return !var$1 ? $this : jm_BigInteger__init_0(-var$1 | 0, $this.$numberLength, $this.$digits);
|
|
17879
|
+
var asr_JsUndoGroup = $rt_classWithoutFields();
|
|
17880
|
+
var asr_JsUndoGroup_create$js_body$_3 = (var$1, var$2, var$3, var$4) => {
|
|
17881
|
+
return { kind: var$1, pc: var$2, steps: var$3, writes: var$4 };
|
|
17670
17882
|
};
|
|
17671
|
-
var
|
|
17672
|
-
|
|
17673
|
-
a
|
|
17674
|
-
|
|
17675
|
-
|
|
17676
|
-
|
|
17677
|
-
|
|
17678
|
-
|
|
17679
|
-
|
|
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
|
-
|
|
17705
|
-
var$9 = jm_Elementary_subtract($val.$digits, var$5, $this.$digits, var$4);
|
|
17706
|
-
var$2 = var$3;
|
|
17707
|
-
} else
|
|
17708
|
-
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
17709
|
-
}
|
|
17710
|
-
var$10 = var$9.data;
|
|
17711
|
-
$val = jm_BigInteger__init_0(var$2, var$10.length, var$9);
|
|
17712
|
-
jm_BigInteger_cutOffLeadingZeroes($val);
|
|
17883
|
+
var asr_JsRiscV$Body = $rt_classWithoutFields(0);
|
|
17884
|
+
function asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0() {
|
|
17885
|
+
let a = this;
|
|
17886
|
+
jl_Object.call(a);
|
|
17887
|
+
a.$_05 = null;
|
|
17888
|
+
a.$_12 = 0;
|
|
17889
|
+
a.$_2 = null;
|
|
17890
|
+
}
|
|
17891
|
+
var asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0_run = (var$0) => {
|
|
17892
|
+
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
17893
|
+
$ptr = 0;
|
|
17894
|
+
if ($rt_resuming()) {
|
|
17895
|
+
let $thread = $rt_nativeThread();
|
|
17896
|
+
$ptr = $thread.pop();
|
|
17897
|
+
var$4 = $thread.pop();
|
|
17898
|
+
var$3 = $thread.pop();
|
|
17899
|
+
var$2 = $thread.pop();
|
|
17900
|
+
var$1 = $thread.pop();
|
|
17901
|
+
var$0 = $thread.pop();
|
|
17902
|
+
}
|
|
17903
|
+
main: while (true) {
|
|
17904
|
+
switch ($ptr) {
|
|
17905
|
+
case 0:
|
|
17906
|
+
var$1 = var$0.$_05;
|
|
17907
|
+
var$2 = var$0.$_12;
|
|
17908
|
+
var$3 = var$0.$_2;
|
|
17909
|
+
var$1 = var$1.$main;
|
|
17910
|
+
asr_RARS_requireAssembled(var$1);
|
|
17911
|
+
var$4 = var$1.$main0;
|
|
17912
|
+
$ptr = 1;
|
|
17913
|
+
case 1:
|
|
17914
|
+
$tmp = asr_RISCVprogram_simulate(var$4, var$2, var$3);
|
|
17915
|
+
if ($rt_suspending()) {
|
|
17916
|
+
break main;
|
|
17713
17917
|
}
|
|
17714
|
-
|
|
17918
|
+
var$4 = $tmp;
|
|
17919
|
+
var$1.$stopReason = var$4;
|
|
17920
|
+
return var$4.$ordinal0;
|
|
17921
|
+
default:
|
|
17922
|
+
$rt_invalidPointer();
|
|
17715
17923
|
}
|
|
17716
17924
|
}
|
|
17717
|
-
|
|
17925
|
+
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
17718
17926
|
};
|
|
17719
|
-
|
|
17720
|
-
|
|
17721
|
-
|
|
17722
|
-
|
|
17723
|
-
|
|
17724
|
-
|
|
17725
|
-
|
|
17726
|
-
|
|
17727
|
-
|
|
17728
|
-
|
|
17729
|
-
|
|
17730
|
-
|
|
17731
|
-
|
|
17732
|
-
|
|
17733
|
-
|
|
17734
|
-
|
|
17735
|
-
|
|
17736
|
-
|
|
17737
|
-
|
|
17738
|
-
|
|
17739
|
-
|
|
17740
|
-
|
|
17741
|
-
|
|
17742
|
-
|
|
17743
|
-
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);
|
|
17744
|
-
} else if (var$2 != var$3) {
|
|
17745
|
-
var$9 = jm_Elementary_add($this.$digits, var$4, $val.$digits, var$5);
|
|
17746
|
-
var$8 = var$2;
|
|
17747
|
-
} else {
|
|
17748
|
-
if (!var$8) {
|
|
17749
|
-
jm_BigInteger_$callClinit();
|
|
17750
|
-
$this = jm_BigInteger_ZERO;
|
|
17751
|
-
break a;
|
|
17752
|
-
}
|
|
17753
|
-
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
17754
|
-
var$8 = var$2;
|
|
17755
|
-
}
|
|
17756
|
-
var$10 = var$9.data;
|
|
17757
|
-
$this = jm_BigInteger__init_0(var$8, var$10.length, var$9);
|
|
17758
|
-
jm_BigInteger_cutOffLeadingZeroes($this);
|
|
17927
|
+
function asr_JsRiscV$simulate$lambda$_12_0() {
|
|
17928
|
+
jl_Object.call(this);
|
|
17929
|
+
this.$_06 = null;
|
|
17930
|
+
}
|
|
17931
|
+
var asr_JsRiscV$simulate$lambda$_12_0_run = (var$0) => {
|
|
17932
|
+
let var$1, var$2, $ptr, $tmp;
|
|
17933
|
+
$ptr = 0;
|
|
17934
|
+
if ($rt_resuming()) {
|
|
17935
|
+
let $thread = $rt_nativeThread();
|
|
17936
|
+
$ptr = $thread.pop();
|
|
17937
|
+
var$2 = $thread.pop();
|
|
17938
|
+
var$1 = $thread.pop();
|
|
17939
|
+
var$0 = $thread.pop();
|
|
17940
|
+
}
|
|
17941
|
+
main: while (true) {
|
|
17942
|
+
switch ($ptr) {
|
|
17943
|
+
case 0:
|
|
17944
|
+
var$1 = var$0.$_06.$main;
|
|
17945
|
+
var$2 = -1;
|
|
17946
|
+
$ptr = 1;
|
|
17947
|
+
case 1:
|
|
17948
|
+
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
17949
|
+
if ($rt_suspending()) {
|
|
17950
|
+
break main;
|
|
17759
17951
|
}
|
|
17760
|
-
|
|
17952
|
+
var$1 = $tmp;
|
|
17953
|
+
return var$1.$ordinal0;
|
|
17954
|
+
default:
|
|
17955
|
+
$rt_invalidPointer();
|
|
17761
17956
|
}
|
|
17762
17957
|
}
|
|
17763
|
-
|
|
17764
|
-
};
|
|
17765
|
-
var jm_BigInteger_shiftRight = ($this, $n) => {
|
|
17766
|
-
if ($n && $this.$sign0)
|
|
17767
|
-
return $n > 0 ? jm_BitLevel_shiftRight($this, $n) : jm_BitLevel_shiftLeft($this, -$n | 0);
|
|
17768
|
-
return $this;
|
|
17769
|
-
};
|
|
17770
|
-
var jm_BigInteger_shiftLeft = ($this, $n) => {
|
|
17771
|
-
if ($n && $this.$sign0)
|
|
17772
|
-
return $n > 0 ? jm_BitLevel_shiftLeft($this, $n) : jm_BitLevel_shiftRight($this, -$n | 0);
|
|
17773
|
-
return $this;
|
|
17958
|
+
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
17774
17959
|
};
|
|
17775
|
-
|
|
17776
|
-
let
|
|
17777
|
-
|
|
17778
|
-
|
|
17779
|
-
|
|
17780
|
-
|
|
17781
|
-
|
|
17782
|
-
|
|
17783
|
-
|
|
17784
|
-
|
|
17785
|
-
|
|
17960
|
+
function asr_JsCompilationResult() {
|
|
17961
|
+
let a = this;
|
|
17962
|
+
jl_Object.call(a);
|
|
17963
|
+
a.$report = null;
|
|
17964
|
+
a.$errors1 = null;
|
|
17965
|
+
}
|
|
17966
|
+
var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
|
|
17967
|
+
let var$2, var$3, var$4;
|
|
17968
|
+
$this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
|
|
17969
|
+
$errorReport = ju_Collection_stream($errorReport.$messages);
|
|
17970
|
+
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
|
|
17971
|
+
var$2.$_019 = $this;
|
|
17972
|
+
$errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
|
|
17973
|
+
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
|
|
17974
|
+
$errorReport = $errorReport;
|
|
17975
|
+
var$3 = ju_ArrayList__init_();
|
|
17976
|
+
var$4 = $errorReport;
|
|
17977
|
+
while (true) {
|
|
17978
|
+
$errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
|
|
17979
|
+
$errorReport.$_024 = var$2;
|
|
17980
|
+
$errorReport.$_19 = var$3;
|
|
17981
|
+
if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
|
|
17982
|
+
break;
|
|
17983
|
+
}
|
|
17984
|
+
$this.$errors1 = var$3;
|
|
17985
|
+
};
|
|
17986
|
+
var asr_JsCompilationResult__init_ = (var_0) => {
|
|
17987
|
+
let var_1 = new asr_JsCompilationResult();
|
|
17988
|
+
asr_JsCompilationResult__init_0(var_1, var_0);
|
|
17989
|
+
return var_1;
|
|
17990
|
+
};
|
|
17991
|
+
var asr_JsCompilationResult_hasWarnings$exported$0 = (var$1) => {
|
|
17992
|
+
let var$2;
|
|
17993
|
+
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
17994
|
+
var$2 = new asr_JsCompilationResult$hasWarnings$lambda$_3_0();
|
|
17995
|
+
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
17996
|
+
};
|
|
17997
|
+
var asr_JsCompilationResult_getErrors$exported$1 = (var$1) => {
|
|
17998
|
+
let var$2;
|
|
17999
|
+
var$1 = var$1.$errors1;
|
|
18000
|
+
var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
|
|
18001
|
+
return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
|
|
18002
|
+
};
|
|
18003
|
+
var asr_JsCompilationResult_hasErrors$exported$2 = (var$1) => {
|
|
18004
|
+
let var$2;
|
|
18005
|
+
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
18006
|
+
var$2 = new asr_JsCompilationResult$hasErrors$lambda$_2_0();
|
|
18007
|
+
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
18008
|
+
};
|
|
18009
|
+
var asr_JsCompilationResult_getReport$exported$3 = (var$1) => {
|
|
18010
|
+
return $rt_ustr(var$1.$report);
|
|
18011
|
+
};
|
|
18012
|
+
function asr_AssemblyException() {
|
|
18013
|
+
jl_Exception.call(this);
|
|
18014
|
+
this.$errs = null;
|
|
18015
|
+
}
|
|
18016
|
+
var asr_AssemblyException__init_0 = ($this, $errs) => {
|
|
18017
|
+
jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
|
|
18018
|
+
$this.$errs = $errs;
|
|
18019
|
+
};
|
|
18020
|
+
var asr_AssemblyException__init_ = (var_0) => {
|
|
18021
|
+
let var_1 = new asr_AssemblyException();
|
|
18022
|
+
asr_AssemblyException__init_0(var_1, var_0);
|
|
18023
|
+
return var_1;
|
|
18024
|
+
};
|
|
18025
|
+
var asrrh_FloatingPointRegisterFile = $rt_classWithoutFields();
|
|
18026
|
+
var asrrh_FloatingPointRegisterFile_instance = null;
|
|
18027
|
+
var asrrh_FloatingPointRegisterFile_$callClinit = () => {
|
|
18028
|
+
asrrh_FloatingPointRegisterFile_$callClinit = $rt_eraseClinit(asrrh_FloatingPointRegisterFile);
|
|
18029
|
+
asrrh_FloatingPointRegisterFile__clinit_();
|
|
18030
|
+
};
|
|
18031
|
+
var asrrh_FloatingPointRegisterFile_setRegisterToFloat = ($reg, $val) => {
|
|
18032
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18033
|
+
asrrh_FloatingPointRegisterFile_updateRegister($reg, $rt_floatToRawIntBits($val));
|
|
18034
|
+
};
|
|
18035
|
+
var asrrh_FloatingPointRegisterFile_updateRegister = ($num, $val) => {
|
|
18036
|
+
let $lval;
|
|
18037
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18038
|
+
$lval = Long_or(Long_fromInt($val), Long_create(0, 4294967295));
|
|
18039
|
+
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18040
|
+
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval);
|
|
18041
|
+
else
|
|
18042
|
+
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval), $lval);
|
|
18043
|
+
};
|
|
18044
|
+
var asrrh_FloatingPointRegisterFile_updateRegisterLong = ($num, $val) => {
|
|
18045
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18046
|
+
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18047
|
+
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val);
|
|
18048
|
+
else
|
|
18049
|
+
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val), $val);
|
|
18050
|
+
};
|
|
18051
|
+
var asrrh_FloatingPointRegisterFile_getValue = ($num) => {
|
|
18052
|
+
let $lval;
|
|
18053
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18054
|
+
$lval = asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18055
|
+
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18056
|
+
return 2143289344;
|
|
18057
|
+
return Long_lo($lval);
|
|
18058
|
+
};
|
|
18059
|
+
var asrrh_FloatingPointRegisterFile_getValueLong = ($num) => {
|
|
18060
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18061
|
+
return asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18062
|
+
};
|
|
18063
|
+
var asrrh_FloatingPointRegisterFile_getValue0 = ($name) => {
|
|
18064
|
+
let $lval;
|
|
18065
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18066
|
+
$lval = asrrh_RegisterBlock_getValue0(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18067
|
+
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18068
|
+
return 2143289344;
|
|
18069
|
+
return Long_lo($lval);
|
|
18070
|
+
};
|
|
18071
|
+
var asrrh_FloatingPointRegisterFile_getRegisters = () => {
|
|
18072
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18073
|
+
return asrrh_FloatingPointRegisterFile_instance.$regFile;
|
|
18074
|
+
};
|
|
18075
|
+
var asrrh_FloatingPointRegisterFile_getRegister = ($name) => {
|
|
18076
|
+
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18077
|
+
return asrrh_RegisterBlock_getRegister(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18078
|
+
};
|
|
18079
|
+
var asrrh_FloatingPointRegisterFile__clinit_ = () => {
|
|
18080
|
+
let var$1, var$2, var$3;
|
|
18081
|
+
var$1 = new asrrh_RegisterBlock();
|
|
18082
|
+
var$2 = $rt_createArray(asrrh_Register, 32);
|
|
18083
|
+
var$3 = var$2.data;
|
|
18084
|
+
var$3[0] = asrrh_Register__init_($rt_s(543), 0, Long_ZERO);
|
|
18085
|
+
var$3[1] = asrrh_Register__init_($rt_s(544), 1, Long_ZERO);
|
|
18086
|
+
var$3[2] = asrrh_Register__init_($rt_s(545), 2, Long_ZERO);
|
|
18087
|
+
var$3[3] = asrrh_Register__init_($rt_s(546), 3, Long_ZERO);
|
|
18088
|
+
var$3[4] = asrrh_Register__init_($rt_s(547), 4, Long_ZERO);
|
|
18089
|
+
var$3[5] = asrrh_Register__init_($rt_s(548), 5, Long_ZERO);
|
|
18090
|
+
var$3[6] = asrrh_Register__init_($rt_s(549), 6, Long_ZERO);
|
|
18091
|
+
var$3[7] = asrrh_Register__init_($rt_s(550), 7, Long_ZERO);
|
|
18092
|
+
var$3[8] = asrrh_Register__init_($rt_s(551), 8, Long_ZERO);
|
|
18093
|
+
var$3[9] = asrrh_Register__init_($rt_s(552), 9, Long_ZERO);
|
|
18094
|
+
var$3[10] = asrrh_Register__init_($rt_s(553), 10, Long_ZERO);
|
|
18095
|
+
var$3[11] = asrrh_Register__init_($rt_s(554), 11, Long_ZERO);
|
|
18096
|
+
var$3[12] = asrrh_Register__init_($rt_s(555), 12, Long_ZERO);
|
|
18097
|
+
var$3[13] = asrrh_Register__init_($rt_s(556), 13, Long_ZERO);
|
|
18098
|
+
var$3[14] = asrrh_Register__init_($rt_s(557), 14, Long_ZERO);
|
|
18099
|
+
var$3[15] = asrrh_Register__init_($rt_s(558), 15, Long_ZERO);
|
|
18100
|
+
var$3[16] = asrrh_Register__init_($rt_s(559), 16, Long_ZERO);
|
|
18101
|
+
var$3[17] = asrrh_Register__init_($rt_s(560), 17, Long_ZERO);
|
|
18102
|
+
var$3[18] = asrrh_Register__init_($rt_s(561), 18, Long_ZERO);
|
|
18103
|
+
var$3[19] = asrrh_Register__init_($rt_s(562), 19, Long_ZERO);
|
|
18104
|
+
var$3[20] = asrrh_Register__init_($rt_s(563), 20, Long_ZERO);
|
|
18105
|
+
var$3[21] = asrrh_Register__init_($rt_s(564), 21, Long_ZERO);
|
|
18106
|
+
var$3[22] = asrrh_Register__init_($rt_s(565), 22, Long_ZERO);
|
|
18107
|
+
var$3[23] = asrrh_Register__init_($rt_s(566), 23, Long_ZERO);
|
|
18108
|
+
var$3[24] = asrrh_Register__init_($rt_s(567), 24, Long_ZERO);
|
|
18109
|
+
var$3[25] = asrrh_Register__init_($rt_s(568), 25, Long_ZERO);
|
|
18110
|
+
var$3[26] = asrrh_Register__init_($rt_s(569), 26, Long_ZERO);
|
|
18111
|
+
var$3[27] = asrrh_Register__init_($rt_s(570), 27, Long_ZERO);
|
|
18112
|
+
var$3[28] = asrrh_Register__init_($rt_s(571), 28, Long_ZERO);
|
|
18113
|
+
var$3[29] = asrrh_Register__init_($rt_s(572), 29, Long_ZERO);
|
|
18114
|
+
var$3[30] = asrrh_Register__init_($rt_s(573), 30, Long_ZERO);
|
|
18115
|
+
var$3[31] = asrrh_Register__init_($rt_s(574), 31, Long_ZERO);
|
|
18116
|
+
asrrh_RegisterBlock__init_(var$1, 102, var$2);
|
|
18117
|
+
asrrh_FloatingPointRegisterFile_instance = var$1;
|
|
18118
|
+
};
|
|
18119
|
+
function asr_JsRiscV$simulateWithLimit$lambda$_13_0() {
|
|
18120
|
+
let a = this;
|
|
18121
|
+
jl_Object.call(a);
|
|
18122
|
+
a.$_022 = null;
|
|
18123
|
+
a.$_112 = 0;
|
|
18124
|
+
}
|
|
18125
|
+
var asr_JsRiscV$simulateWithLimit$lambda$_13_0_run = (var$0) => {
|
|
18126
|
+
let var$1, var$2, $ptr, $tmp;
|
|
18127
|
+
$ptr = 0;
|
|
18128
|
+
if ($rt_resuming()) {
|
|
18129
|
+
let $thread = $rt_nativeThread();
|
|
18130
|
+
$ptr = $thread.pop();
|
|
18131
|
+
var$2 = $thread.pop();
|
|
18132
|
+
var$1 = $thread.pop();
|
|
18133
|
+
var$0 = $thread.pop();
|
|
18134
|
+
}
|
|
18135
|
+
main: while (true) {
|
|
18136
|
+
switch ($ptr) {
|
|
18137
|
+
case 0:
|
|
18138
|
+
var$1 = var$0.$_022;
|
|
18139
|
+
var$2 = var$0.$_112;
|
|
18140
|
+
var$1 = var$1.$main;
|
|
18141
|
+
$ptr = 1;
|
|
18142
|
+
case 1:
|
|
18143
|
+
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
18144
|
+
if ($rt_suspending()) {
|
|
18145
|
+
break main;
|
|
18146
|
+
}
|
|
18147
|
+
var$1 = $tmp;
|
|
18148
|
+
return var$1.$ordinal0;
|
|
18149
|
+
default:
|
|
18150
|
+
$rt_invalidPointer();
|
|
18151
|
+
}
|
|
18152
|
+
}
|
|
18153
|
+
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
18154
|
+
};
|
|
18155
|
+
function jm_BigInteger() {
|
|
18156
|
+
let a = this;
|
|
18157
|
+
jl_Number.call(a);
|
|
18158
|
+
a.$digits = null;
|
|
18159
|
+
a.$numberLength = 0;
|
|
18160
|
+
a.$sign0 = 0;
|
|
18161
|
+
a.$firstNonzeroDigit = 0;
|
|
18162
|
+
a.$hashCode1 = 0;
|
|
18163
|
+
}
|
|
18164
|
+
var jm_BigInteger_ZERO = null;
|
|
18165
|
+
var jm_BigInteger_ONE = null;
|
|
18166
|
+
var jm_BigInteger_TWO = null;
|
|
18167
|
+
var jm_BigInteger_TEN = null;
|
|
18168
|
+
var jm_BigInteger_MINUS_ONE = null;
|
|
18169
|
+
var jm_BigInteger_SMALL_VALUES = null;
|
|
18170
|
+
var jm_BigInteger_TWO_POWS = null;
|
|
18171
|
+
var jm_BigInteger_$callClinit = () => {
|
|
18172
|
+
jm_BigInteger_$callClinit = $rt_eraseClinit(jm_BigInteger);
|
|
18173
|
+
jm_BigInteger__clinit_();
|
|
18174
|
+
};
|
|
18175
|
+
var jm_BigInteger__init_4 = ($this, $sign, $value) => {
|
|
18176
|
+
let var$3;
|
|
18177
|
+
jm_BigInteger_$callClinit();
|
|
18178
|
+
$this.$firstNonzeroDigit = -2;
|
|
18179
|
+
$this.$sign0 = $sign;
|
|
18180
|
+
$this.$numberLength = 1;
|
|
18181
|
+
var$3 = $rt_createIntArray(1);
|
|
18182
|
+
var$3.data[0] = $value;
|
|
18183
|
+
$this.$digits = var$3;
|
|
18184
|
+
};
|
|
18185
|
+
var jm_BigInteger__init_ = (var_0, var_1) => {
|
|
18186
|
+
let var_2 = new jm_BigInteger();
|
|
18187
|
+
jm_BigInteger__init_4(var_2, var_0, var_1);
|
|
18188
|
+
return var_2;
|
|
18189
|
+
};
|
|
18190
|
+
var jm_BigInteger__init_2 = ($this, $sign, $numberLength, $digits) => {
|
|
18191
|
+
jm_BigInteger_$callClinit();
|
|
18192
|
+
$this.$firstNonzeroDigit = -2;
|
|
18193
|
+
$this.$sign0 = $sign;
|
|
18194
|
+
$this.$numberLength = $numberLength;
|
|
18195
|
+
$this.$digits = $digits;
|
|
18196
|
+
};
|
|
18197
|
+
var jm_BigInteger__init_0 = (var_0, var_1, var_2) => {
|
|
18198
|
+
let var_3 = new jm_BigInteger();
|
|
18199
|
+
jm_BigInteger__init_2(var_3, var_0, var_1, var_2);
|
|
18200
|
+
return var_3;
|
|
18201
|
+
};
|
|
18202
|
+
var jm_BigInteger__init_3 = ($this, $sign, $val) => {
|
|
18203
|
+
let var$3;
|
|
18204
|
+
jm_BigInteger_$callClinit();
|
|
18205
|
+
$this.$firstNonzeroDigit = -2;
|
|
18206
|
+
$this.$sign0 = $sign;
|
|
18207
|
+
if (Long_eq(Long_and($val, Long_create(0, 4294967295)), Long_ZERO)) {
|
|
18208
|
+
$this.$numberLength = 1;
|
|
18209
|
+
var$3 = $rt_createIntArray(1);
|
|
18210
|
+
var$3.data[0] = Long_lo($val);
|
|
18211
|
+
$this.$digits = var$3;
|
|
18212
|
+
} else {
|
|
18213
|
+
$this.$numberLength = 2;
|
|
18214
|
+
$this.$digits = $rt_createIntArrayFromData([Long_lo($val), Long_hi($val)]);
|
|
18215
|
+
}
|
|
18216
|
+
};
|
|
18217
|
+
var jm_BigInteger__init_1 = (var_0, var_1) => {
|
|
18218
|
+
let var_2 = new jm_BigInteger();
|
|
18219
|
+
jm_BigInteger__init_3(var_2, var_0, var_1);
|
|
18220
|
+
return var_2;
|
|
18221
|
+
};
|
|
18222
|
+
var jm_BigInteger_valueOf = ($val) => {
|
|
18223
|
+
jm_BigInteger_$callClinit();
|
|
18224
|
+
if (Long_lt($val, Long_ZERO)) {
|
|
18225
|
+
if (Long_eq($val, Long_fromInt(-1)))
|
|
18226
|
+
return jm_BigInteger_MINUS_ONE;
|
|
18227
|
+
return jm_BigInteger__init_1(-1, Long_neg($val));
|
|
18228
|
+
}
|
|
18229
|
+
if (Long_gt($val, Long_fromInt(10)))
|
|
18230
|
+
return jm_BigInteger__init_1(1, $val);
|
|
18231
|
+
return jm_BigInteger_SMALL_VALUES.data[Long_lo($val)];
|
|
18232
|
+
};
|
|
18233
|
+
var jm_BigInteger_abs = ($this) => {
|
|
18234
|
+
if ($this.$sign0 < 0)
|
|
18235
|
+
$this = jm_BigInteger__init_0(1, $this.$numberLength, $this.$digits);
|
|
18236
|
+
return $this;
|
|
18237
|
+
};
|
|
18238
|
+
var jm_BigInteger_negate = ($this) => {
|
|
18239
|
+
let var$1;
|
|
18240
|
+
var$1 = $this.$sign0;
|
|
18241
|
+
return !var$1 ? $this : jm_BigInteger__init_0(-var$1 | 0, $this.$numberLength, $this.$digits);
|
|
18242
|
+
};
|
|
18243
|
+
var jm_BigInteger_add = ($this, $val) => {
|
|
18244
|
+
let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9, var$10;
|
|
18245
|
+
a: {
|
|
18246
|
+
var$2 = $this.$sign0;
|
|
18247
|
+
var$3 = $val.$sign0;
|
|
18248
|
+
if (var$2) {
|
|
18249
|
+
if (!var$3)
|
|
18250
|
+
$val = $this;
|
|
18251
|
+
else {
|
|
18252
|
+
var$4 = $this.$numberLength;
|
|
18253
|
+
var$5 = $val.$numberLength;
|
|
18254
|
+
if ((var$4 + var$5 | 0) == 2) {
|
|
18255
|
+
var$6 = Long_and(Long_fromInt($this.$digits.data[0]), Long_create(4294967295, 0));
|
|
18256
|
+
var$7 = Long_and(Long_fromInt($val.$digits.data[0]), Long_create(4294967295, 0));
|
|
18257
|
+
if (var$2 != var$3)
|
|
18258
|
+
$val = jm_BigInteger_valueOf(var$2 >= 0 ? Long_sub(var$6, var$7) : Long_sub(var$7, var$6));
|
|
18259
|
+
else {
|
|
18260
|
+
var$6 = Long_add(var$6, var$7);
|
|
18261
|
+
var$8 = Long_lo(var$6);
|
|
18262
|
+
var$4 = Long_hi(var$6);
|
|
18263
|
+
$val = !var$4 ? jm_BigInteger__init_(var$2, var$8) : jm_BigInteger__init_0(var$2, 2, $rt_createIntArrayFromData([var$8, var$4]));
|
|
18264
|
+
}
|
|
18265
|
+
} else {
|
|
18266
|
+
if (var$2 == var$3)
|
|
18267
|
+
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);
|
|
18268
|
+
else {
|
|
18269
|
+
var$8 = $rt_compare(var$4, var$5);
|
|
18270
|
+
var$8 = !var$8 ? jm_Elementary_compareArrays($this.$digits, $val.$digits, var$4) : var$8 <= 0 ? -1 : 1;
|
|
18271
|
+
if (!var$8) {
|
|
18272
|
+
jm_BigInteger_$callClinit();
|
|
18273
|
+
$val = jm_BigInteger_ZERO;
|
|
18274
|
+
break a;
|
|
18275
|
+
}
|
|
18276
|
+
if (var$8 != 1) {
|
|
18277
|
+
var$9 = jm_Elementary_subtract($val.$digits, var$5, $this.$digits, var$4);
|
|
18278
|
+
var$2 = var$3;
|
|
18279
|
+
} else
|
|
18280
|
+
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
18281
|
+
}
|
|
18282
|
+
var$10 = var$9.data;
|
|
18283
|
+
$val = jm_BigInteger__init_0(var$2, var$10.length, var$9);
|
|
18284
|
+
jm_BigInteger_cutOffLeadingZeroes($val);
|
|
18285
|
+
}
|
|
18286
|
+
}
|
|
18287
|
+
}
|
|
18288
|
+
}
|
|
18289
|
+
return $val;
|
|
18290
|
+
};
|
|
18291
|
+
var jm_BigInteger_subtract = ($this, $val) => {
|
|
18292
|
+
let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9, var$10;
|
|
18293
|
+
a: {
|
|
18294
|
+
var$2 = $this.$sign0;
|
|
18295
|
+
var$3 = $val.$sign0;
|
|
18296
|
+
if (var$3) {
|
|
18297
|
+
if (!var$2)
|
|
18298
|
+
$this = jm_BigInteger_negate($val);
|
|
18299
|
+
else {
|
|
18300
|
+
var$4 = $this.$numberLength;
|
|
18301
|
+
var$5 = $val.$numberLength;
|
|
18302
|
+
if ((var$4 + var$5 | 0) == 2) {
|
|
18303
|
+
var$6 = Long_and(Long_fromInt($this.$digits.data[0]), Long_create(4294967295, 0));
|
|
18304
|
+
var$7 = Long_and(Long_fromInt($val.$digits.data[0]), Long_create(4294967295, 0));
|
|
18305
|
+
if (var$2 < 0)
|
|
18306
|
+
var$6 = Long_neg(var$6);
|
|
18307
|
+
if (var$3 < 0)
|
|
18308
|
+
var$7 = Long_neg(var$7);
|
|
18309
|
+
$this = jm_BigInteger_valueOf(Long_sub(var$6, var$7));
|
|
18310
|
+
} else {
|
|
18311
|
+
var$8 = $rt_compare(var$4, var$5);
|
|
18312
|
+
var$8 = !var$8 ? jm_Elementary_compareArrays($this.$digits, $val.$digits, var$4) : var$8 <= 0 ? -1 : 1;
|
|
18313
|
+
if (var$8 == -1) {
|
|
18314
|
+
var$8 = -var$3 | 0;
|
|
18315
|
+
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);
|
|
18316
|
+
} else if (var$2 != var$3) {
|
|
18317
|
+
var$9 = jm_Elementary_add($this.$digits, var$4, $val.$digits, var$5);
|
|
18318
|
+
var$8 = var$2;
|
|
18319
|
+
} else {
|
|
18320
|
+
if (!var$8) {
|
|
18321
|
+
jm_BigInteger_$callClinit();
|
|
18322
|
+
$this = jm_BigInteger_ZERO;
|
|
18323
|
+
break a;
|
|
18324
|
+
}
|
|
18325
|
+
var$9 = jm_Elementary_subtract($this.$digits, var$4, $val.$digits, var$5);
|
|
18326
|
+
var$8 = var$2;
|
|
18327
|
+
}
|
|
18328
|
+
var$10 = var$9.data;
|
|
18329
|
+
$this = jm_BigInteger__init_0(var$8, var$10.length, var$9);
|
|
18330
|
+
jm_BigInteger_cutOffLeadingZeroes($this);
|
|
18331
|
+
}
|
|
18332
|
+
}
|
|
18333
|
+
}
|
|
18334
|
+
}
|
|
18335
|
+
return $this;
|
|
18336
|
+
};
|
|
18337
|
+
var jm_BigInteger_shiftRight = ($this, $n) => {
|
|
18338
|
+
if ($n && $this.$sign0)
|
|
18339
|
+
return $n > 0 ? jm_BitLevel_shiftRight($this, $n) : jm_BitLevel_shiftLeft($this, -$n | 0);
|
|
18340
|
+
return $this;
|
|
18341
|
+
};
|
|
18342
|
+
var jm_BigInteger_shiftLeft = ($this, $n) => {
|
|
18343
|
+
if ($n && $this.$sign0)
|
|
18344
|
+
return $n > 0 ? jm_BitLevel_shiftLeft($this, $n) : jm_BitLevel_shiftRight($this, -$n | 0);
|
|
18345
|
+
return $this;
|
|
18346
|
+
};
|
|
18347
|
+
var jm_BigInteger_bitLength = ($this) => {
|
|
18348
|
+
let var$1, var$2, var$3, var$4;
|
|
18349
|
+
var$1 = $this.$sign0;
|
|
18350
|
+
if (!var$1)
|
|
18351
|
+
var$2 = 0;
|
|
18352
|
+
else {
|
|
18353
|
+
var$3 = $this.$numberLength;
|
|
18354
|
+
var$4 = var$3 << 5;
|
|
18355
|
+
var$2 = $this.$digits.data[var$3 - 1 | 0];
|
|
18356
|
+
if (var$1 < 0 && jm_BigInteger_getFirstNonzeroDigit($this) == ($this.$numberLength - 1 | 0))
|
|
18357
|
+
var$2 = var$2 + -1 | 0;
|
|
17786
18358
|
var$2 = var$4 - jl_Integer_numberOfLeadingZeros(var$2) | 0;
|
|
17787
18359
|
}
|
|
17788
18360
|
return var$2;
|
|
@@ -17793,7 +18365,7 @@ var jm_BigInteger_testBit = ($this, $n) => {
|
|
|
17793
18365
|
return !($this.$digits.data[0] & 1) ? 0 : 1;
|
|
17794
18366
|
if ($n < 0) {
|
|
17795
18367
|
var$2 = new jl_ArithmeticException();
|
|
17796
|
-
jl_Throwable__init_0(var$2, $rt_s(
|
|
18368
|
+
jl_Throwable__init_0(var$2, $rt_s(575));
|
|
17797
18369
|
$rt_throw(var$2);
|
|
17798
18370
|
}
|
|
17799
18371
|
$intCount = $n >> 5;
|
|
@@ -17821,7 +18393,7 @@ var jm_BigInteger_intValueExact = ($this) => {
|
|
|
17821
18393
|
if ($this.$numberLength <= 1 && jm_BigInteger_bitLength($this) <= 31)
|
|
17822
18394
|
return $rt_imul($this.$sign0, $this.$digits.data[0]);
|
|
17823
18395
|
var$1 = new jl_ArithmeticException();
|
|
17824
|
-
jl_Throwable__init_0(var$1, $rt_s(
|
|
18396
|
+
jl_Throwable__init_0(var$1, $rt_s(576));
|
|
17825
18397
|
$rt_throw(var$1);
|
|
17826
18398
|
};
|
|
17827
18399
|
var jm_BigInteger_longValue = ($this) => {
|
|
@@ -17839,7 +18411,7 @@ var jm_BigInteger_longValueExact = ($this) => {
|
|
|
17839
18411
|
if ($this.$numberLength <= 2 && jm_BigInteger_bitLength($this) <= 63)
|
|
17840
18412
|
return jm_BigInteger_longValue($this);
|
|
17841
18413
|
var$1 = new jl_ArithmeticException();
|
|
17842
|
-
jl_Throwable__init_0(var$1, $rt_s(
|
|
18414
|
+
jl_Throwable__init_0(var$1, $rt_s(577));
|
|
17843
18415
|
$rt_throw(var$1);
|
|
17844
18416
|
};
|
|
17845
18417
|
var jm_BigInteger_compareTo = ($this, $val) => {
|
|
@@ -17987,730 +18559,44 @@ var jm_BigInteger__clinit_ = () => {
|
|
|
17987
18559
|
$i = $i + 1 | 0;
|
|
17988
18560
|
}
|
|
17989
18561
|
};
|
|
17990
|
-
var
|
|
17991
|
-
|
|
17992
|
-
|
|
17993
|
-
|
|
17994
|
-
|
|
17995
|
-
var asr_JsRiscV$simulate$lambda$_12_0_run = (var$0) => {
|
|
17996
|
-
let var$1, var$2, $ptr, $tmp;
|
|
17997
|
-
$ptr = 0;
|
|
17998
|
-
if ($rt_resuming()) {
|
|
17999
|
-
let $thread = $rt_nativeThread();
|
|
18000
|
-
$ptr = $thread.pop();
|
|
18001
|
-
var$2 = $thread.pop();
|
|
18002
|
-
var$1 = $thread.pop();
|
|
18003
|
-
var$0 = $thread.pop();
|
|
18004
|
-
}
|
|
18005
|
-
main: while (true) {
|
|
18006
|
-
switch ($ptr) {
|
|
18007
|
-
case 0:
|
|
18008
|
-
var$1 = var$0.$_06.$main;
|
|
18009
|
-
var$2 = -1;
|
|
18010
|
-
$ptr = 1;
|
|
18011
|
-
case 1:
|
|
18012
|
-
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
18013
|
-
if ($rt_suspending()) {
|
|
18014
|
-
break main;
|
|
18015
|
-
}
|
|
18016
|
-
var$1 = $tmp;
|
|
18017
|
-
return var$1.$ordinal0;
|
|
18018
|
-
default:
|
|
18019
|
-
$rt_invalidPointer();
|
|
18020
|
-
}
|
|
18021
|
-
}
|
|
18022
|
-
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
18562
|
+
var jl_Double = $rt_classWithoutFields(jl_Number);
|
|
18563
|
+
var jl_Double_TYPE = null;
|
|
18564
|
+
var jl_Double_$callClinit = () => {
|
|
18565
|
+
jl_Double_$callClinit = $rt_eraseClinit(jl_Double);
|
|
18566
|
+
jl_Double__clinit_();
|
|
18023
18567
|
};
|
|
18024
|
-
var
|
|
18025
|
-
var
|
|
18026
|
-
|
|
18027
|
-
|
|
18028
|
-
|
|
18029
|
-
|
|
18030
|
-
|
|
18031
|
-
|
|
18032
|
-
|
|
18033
|
-
|
|
18034
|
-
|
|
18035
|
-
|
|
18036
|
-
|
|
18037
|
-
var
|
|
18038
|
-
|
|
18039
|
-
$this.$sourceLine5 = $programStatement.$sourceLine1;
|
|
18040
|
-
$this.$sourcePath2 = $programStatement.$sourcePath;
|
|
18041
|
-
$this.$address2 = $programStatement.$textAddress0;
|
|
18042
|
-
$this.$binaryStatement0 = $programStatement.$binaryStatement;
|
|
18043
|
-
$this.$source2 = $programStatement.$source;
|
|
18044
|
-
var$2 = $programStatement.$basicStatementList;
|
|
18045
|
-
var$3 = asr_Globals_getSettings();
|
|
18046
|
-
asr_Settings$Bool_$callClinit();
|
|
18047
|
-
var$4 = !asr_Settings_getBooleanSetting(var$3, asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
18048
|
-
var$5 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
|
|
18049
|
-
var$3 = new jl_StringBuffer();
|
|
18050
|
-
jl_AbstractStringBuilder__init_(var$3);
|
|
18051
|
-
var$6 = ju_AbstractList_iterator(var$2.$list);
|
|
18052
|
-
while (ju_AbstractList$1_hasNext(var$6)) {
|
|
18053
|
-
a: {
|
|
18054
|
-
var$2 = ju_AbstractList$1_next(var$6);
|
|
18055
|
-
switch (var$2.$type3) {
|
|
18056
|
-
case 0:
|
|
18568
|
+
var jl_Double_parseDouble = ($string) => {
|
|
18569
|
+
let $start, $end, var$4, var$5, $negative, $c, $mantissa, $exp, $hasOneDigit, $mantissaPos, $negativeExp, $numExp;
|
|
18570
|
+
jl_Double_$callClinit();
|
|
18571
|
+
if (jl_String_isEmpty($string)) {
|
|
18572
|
+
$string = new jl_NumberFormatException();
|
|
18573
|
+
jl_Throwable__init_($string);
|
|
18574
|
+
$rt_throw($string);
|
|
18575
|
+
}
|
|
18576
|
+
$start = 0;
|
|
18577
|
+
$end = $string.$nativeString.length;
|
|
18578
|
+
while (true) {
|
|
18579
|
+
if (jl_String_charAt($string, $start) > 32) {
|
|
18580
|
+
while (true) {
|
|
18581
|
+
var$4 = $end - 1 | 0;
|
|
18582
|
+
if (jl_String_charAt($string, var$4) > 32)
|
|
18057
18583
|
break;
|
|
18058
|
-
|
|
18059
|
-
if (var$4 == 10) {
|
|
18060
|
-
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
18061
|
-
break a;
|
|
18062
|
-
}
|
|
18063
|
-
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
18064
|
-
break a;
|
|
18065
|
-
case 2:
|
|
18066
|
-
if (var$5 == 10) {
|
|
18067
|
-
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
18068
|
-
break a;
|
|
18069
|
-
}
|
|
18070
|
-
jl_AbstractStringBuilder_append1(var$3, asru_Binary_intToHexString(var$2.$iValue));
|
|
18071
|
-
break a;
|
|
18072
|
-
case 3:
|
|
18073
|
-
jl_AbstractStringBuilder_append0(var$3, var$2.$iValue);
|
|
18074
|
-
break a;
|
|
18075
|
-
default:
|
|
18076
|
-
break a;
|
|
18584
|
+
$end = $end + -1 | 0;
|
|
18077
18585
|
}
|
|
18078
|
-
|
|
18079
|
-
}
|
|
18080
|
-
}
|
|
18081
|
-
$this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$3);
|
|
18082
|
-
$this.$machineStatement0 = $programStatement.$machineStatement;
|
|
18083
|
-
};
|
|
18084
|
-
var asr_JsProgramStatement__init_ = (var_0) => {
|
|
18085
|
-
let var_1 = new asr_JsProgramStatement();
|
|
18086
|
-
asr_JsProgramStatement__init_0(var_1, var_0);
|
|
18087
|
-
return var_1;
|
|
18088
|
-
};
|
|
18089
|
-
var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
|
|
18090
|
-
return var$1.$sourceLine5;
|
|
18091
|
-
};
|
|
18092
|
-
var asr_JsProgramStatement_getSourcePath$exported$1 = (var$1) => {
|
|
18093
|
-
return $rt_ustr(var$1.$sourcePath2);
|
|
18094
|
-
};
|
|
18095
|
-
var asr_JsProgramStatement_getAssemblyStatement$exported$2 = (var$1) => {
|
|
18096
|
-
return $rt_ustr(var$1.$assemblyStatement);
|
|
18097
|
-
};
|
|
18098
|
-
var asr_JsProgramStatement_getSource$exported$3 = (var$1) => {
|
|
18099
|
-
return $rt_ustr(var$1.$source2);
|
|
18100
|
-
};
|
|
18101
|
-
var asr_JsProgramStatement_getAddress$exported$4 = (var$1) => {
|
|
18102
|
-
return var$1.$address2;
|
|
18103
|
-
};
|
|
18104
|
-
var asr_JsProgramStatement_getBinaryStatement$exported$5 = (var$1) => {
|
|
18105
|
-
return var$1.$binaryStatement0;
|
|
18106
|
-
};
|
|
18107
|
-
var asr_JsProgramStatement_getMachineStatement$exported$6 = (var$1) => {
|
|
18108
|
-
return $rt_ustr(var$1.$machineStatement0);
|
|
18109
|
-
};
|
|
18110
|
-
function asr_JsRiscV$step$lambda$_10_0() {
|
|
18111
|
-
jl_Object.call(this);
|
|
18112
|
-
this.$_014 = null;
|
|
18113
|
-
}
|
|
18114
|
-
var asr_JsRiscV$step$lambda$_10_0_run = (var$0) => {
|
|
18115
|
-
let var$1, var$2, var$3, $ptr, $tmp;
|
|
18116
|
-
$ptr = 0;
|
|
18117
|
-
if ($rt_resuming()) {
|
|
18118
|
-
let $thread = $rt_nativeThread();
|
|
18119
|
-
$ptr = $thread.pop();
|
|
18120
|
-
var$3 = $thread.pop();
|
|
18121
|
-
var$2 = $thread.pop();
|
|
18122
|
-
var$1 = $thread.pop();
|
|
18123
|
-
var$0 = $thread.pop();
|
|
18124
|
-
}
|
|
18125
|
-
main: while (true) {
|
|
18126
|
-
switch ($ptr) {
|
|
18127
|
-
case 0:
|
|
18128
|
-
var$1 = var$0.$_014.$main;
|
|
18129
|
-
asr_RARS_requireAssembled(var$1);
|
|
18130
|
-
var$2 = var$1.$main0;
|
|
18131
|
-
var$3 = 1;
|
|
18132
|
-
$ptr = 1;
|
|
18133
|
-
case 1:
|
|
18134
|
-
$tmp = asr_RISCVprogram_simulate0(var$2, var$3);
|
|
18135
|
-
if ($rt_suspending()) {
|
|
18136
|
-
break main;
|
|
18137
|
-
}
|
|
18138
|
-
var$2 = $tmp;
|
|
18139
|
-
var$1.$stopReason = var$2;
|
|
18140
|
-
return var$2.$ordinal0;
|
|
18141
|
-
default:
|
|
18142
|
-
$rt_invalidPointer();
|
|
18143
|
-
}
|
|
18144
|
-
}
|
|
18145
|
-
$rt_nativeThread().push(var$0, var$1, var$2, var$3, $ptr);
|
|
18146
|
-
};
|
|
18147
|
-
function asr_JsStackFrame() {
|
|
18148
|
-
let a = this;
|
|
18149
|
-
jl_Object.call(a);
|
|
18150
|
-
a.$pc2 = 0;
|
|
18151
|
-
a.$toAddress1 = 0;
|
|
18152
|
-
a.$sp = 0;
|
|
18153
|
-
a.$fp = 0;
|
|
18154
|
-
a.$registers0 = null;
|
|
18155
|
-
}
|
|
18156
|
-
var asr_JsStackFrame_getPc$exported$0 = (var$1) => {
|
|
18157
|
-
return var$1.$pc2;
|
|
18158
|
-
};
|
|
18159
|
-
var asr_JsStackFrame_getToAddress$exported$1 = (var$1) => {
|
|
18160
|
-
return var$1.$toAddress1;
|
|
18161
|
-
};
|
|
18162
|
-
var asr_JsStackFrame_getRegisters$exported$2 = (var$1) => {
|
|
18163
|
-
return otji_JS_wrap0(var$1.$registers0);
|
|
18164
|
-
};
|
|
18165
|
-
var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
|
|
18166
|
-
return var$1.$sp;
|
|
18167
|
-
};
|
|
18168
|
-
var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
|
|
18169
|
-
return var$1.$fp;
|
|
18170
|
-
};
|
|
18171
|
-
var ju_Observer = $rt_classWithoutFields(0);
|
|
18172
|
-
function asr_JsMemoryObserver() {
|
|
18173
|
-
let a = this;
|
|
18174
|
-
jl_Object.call(a);
|
|
18175
|
-
a.$handle = 0;
|
|
18176
|
-
a.$startAddress = 0;
|
|
18177
|
-
a.$endAddress = 0;
|
|
18178
|
-
a.$onRead = null;
|
|
18179
|
-
a.$onWrite = null;
|
|
18180
|
-
a.$reportsLength = 0;
|
|
18181
|
-
}
|
|
18182
|
-
var asr_JsMemoryObserver__init_0 = ($this, $handle, $startAddress, $endAddress, $onRead, $onWrite, $reportsLength) => {
|
|
18183
|
-
$this.$handle = $handle;
|
|
18184
|
-
$this.$startAddress = $startAddress;
|
|
18185
|
-
$this.$endAddress = $endAddress;
|
|
18186
|
-
if (asr_JsMemoryObserver_isNullish$js_body$_1($onRead) ? 1 : 0)
|
|
18187
|
-
$onRead = null;
|
|
18188
|
-
$this.$onRead = $onRead;
|
|
18189
|
-
if (asr_JsMemoryObserver_isNullish$js_body$_1($onWrite) ? 1 : 0)
|
|
18190
|
-
$onWrite = null;
|
|
18191
|
-
$this.$onWrite = $onWrite;
|
|
18192
|
-
$this.$reportsLength = $reportsLength;
|
|
18193
|
-
};
|
|
18194
|
-
var asr_JsMemoryObserver__init_ = (var_0, var_1, var_2, var_3, var_4, var_5) => {
|
|
18195
|
-
let var_6 = new asr_JsMemoryObserver();
|
|
18196
|
-
asr_JsMemoryObserver__init_0(var_6, var_0, var_1, var_2, var_3, var_4, var_5);
|
|
18197
|
-
return var_6;
|
|
18198
|
-
};
|
|
18199
|
-
var asr_JsMemoryObserver_isNullish$js_body$_1 = (var$1) => {
|
|
18200
|
-
return var$1 === null || var$1 === void 0;
|
|
18201
|
-
};
|
|
18202
|
-
function asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0() {
|
|
18203
|
-
let a = this;
|
|
18204
|
-
jl_Object.call(a);
|
|
18205
|
-
a.$_03 = null;
|
|
18206
|
-
a.$_10 = null;
|
|
18207
|
-
}
|
|
18208
|
-
var asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0_run = (var$0) => {
|
|
18209
|
-
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
18210
|
-
$ptr = 0;
|
|
18211
|
-
if ($rt_resuming()) {
|
|
18212
|
-
let $thread = $rt_nativeThread();
|
|
18213
|
-
$ptr = $thread.pop();
|
|
18214
|
-
var$4 = $thread.pop();
|
|
18215
|
-
var$3 = $thread.pop();
|
|
18216
|
-
var$2 = $thread.pop();
|
|
18217
|
-
var$1 = $thread.pop();
|
|
18218
|
-
var$0 = $thread.pop();
|
|
18219
|
-
}
|
|
18220
|
-
main: while (true) {
|
|
18221
|
-
switch ($ptr) {
|
|
18222
|
-
case 0:
|
|
18223
|
-
var$1 = var$0.$_03;
|
|
18224
|
-
var$2 = var$0.$_10;
|
|
18225
|
-
var$1 = var$1.$main;
|
|
18226
|
-
asr_RARS_requireAssembled(var$1);
|
|
18227
|
-
var$3 = var$1.$main0;
|
|
18228
|
-
var$4 = -1;
|
|
18229
|
-
$ptr = 1;
|
|
18230
|
-
case 1:
|
|
18231
|
-
$tmp = asr_RISCVprogram_simulate(var$3, var$4, var$2);
|
|
18232
|
-
if ($rt_suspending()) {
|
|
18233
|
-
break main;
|
|
18234
|
-
}
|
|
18235
|
-
var$3 = $tmp;
|
|
18236
|
-
var$1.$stopReason = var$3;
|
|
18237
|
-
return var$3.$ordinal0;
|
|
18238
|
-
default:
|
|
18239
|
-
$rt_invalidPointer();
|
|
18240
|
-
}
|
|
18241
|
-
}
|
|
18242
|
-
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
18243
|
-
};
|
|
18244
|
-
var asrrh_FloatingPointRegisterFile = $rt_classWithoutFields();
|
|
18245
|
-
var asrrh_FloatingPointRegisterFile_instance = null;
|
|
18246
|
-
var asrrh_FloatingPointRegisterFile_$callClinit = () => {
|
|
18247
|
-
asrrh_FloatingPointRegisterFile_$callClinit = $rt_eraseClinit(asrrh_FloatingPointRegisterFile);
|
|
18248
|
-
asrrh_FloatingPointRegisterFile__clinit_();
|
|
18249
|
-
};
|
|
18250
|
-
var asrrh_FloatingPointRegisterFile_setRegisterToFloat = ($reg, $val) => {
|
|
18251
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18252
|
-
asrrh_FloatingPointRegisterFile_updateRegister($reg, $rt_floatToRawIntBits($val));
|
|
18253
|
-
};
|
|
18254
|
-
var asrrh_FloatingPointRegisterFile_updateRegister = ($num, $val) => {
|
|
18255
|
-
let $lval;
|
|
18256
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18257
|
-
$lval = Long_or(Long_fromInt($val), Long_create(0, 4294967295));
|
|
18258
|
-
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18259
|
-
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval);
|
|
18260
|
-
else
|
|
18261
|
-
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $lval), $lval);
|
|
18262
|
-
};
|
|
18263
|
-
var asrrh_FloatingPointRegisterFile_updateRegisterLong = ($num, $val) => {
|
|
18264
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18265
|
-
if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
|
|
18266
|
-
asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val);
|
|
18267
|
-
else
|
|
18268
|
-
asrs_BackStepper_addFloatingPointRestore(asr_Globals_program.$backStepper, $num, asrrh_RegisterBlock_updateRegister(asrrh_FloatingPointRegisterFile_instance, $num, $val), $val);
|
|
18269
|
-
};
|
|
18270
|
-
var asrrh_FloatingPointRegisterFile_getValue = ($num) => {
|
|
18271
|
-
let $lval;
|
|
18272
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18273
|
-
$lval = asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18274
|
-
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18275
|
-
return 2143289344;
|
|
18276
|
-
return Long_lo($lval);
|
|
18277
|
-
};
|
|
18278
|
-
var asrrh_FloatingPointRegisterFile_getValueLong = ($num) => {
|
|
18279
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18280
|
-
return asrrh_RegisterBlock_getValue(asrrh_FloatingPointRegisterFile_instance, $num);
|
|
18281
|
-
};
|
|
18282
|
-
var asrrh_FloatingPointRegisterFile_getValue0 = ($name) => {
|
|
18283
|
-
let $lval;
|
|
18284
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18285
|
-
$lval = asrrh_RegisterBlock_getValue0(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18286
|
-
if (Long_ne(Long_and($lval, Long_create(0, 4294967295)), Long_create(0, 4294967295)))
|
|
18287
|
-
return 2143289344;
|
|
18288
|
-
return Long_lo($lval);
|
|
18289
|
-
};
|
|
18290
|
-
var asrrh_FloatingPointRegisterFile_getRegisters = () => {
|
|
18291
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18292
|
-
return asrrh_FloatingPointRegisterFile_instance.$regFile;
|
|
18293
|
-
};
|
|
18294
|
-
var asrrh_FloatingPointRegisterFile_getRegister = ($name) => {
|
|
18295
|
-
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
18296
|
-
return asrrh_RegisterBlock_getRegister(asrrh_FloatingPointRegisterFile_instance, $name);
|
|
18297
|
-
};
|
|
18298
|
-
var asrrh_FloatingPointRegisterFile__clinit_ = () => {
|
|
18299
|
-
let var$1, var$2, var$3;
|
|
18300
|
-
var$1 = new asrrh_RegisterBlock();
|
|
18301
|
-
var$2 = $rt_createArray(asrrh_Register, 32);
|
|
18302
|
-
var$3 = var$2.data;
|
|
18303
|
-
var$3[0] = asrrh_Register__init_($rt_s(546), 0, Long_ZERO);
|
|
18304
|
-
var$3[1] = asrrh_Register__init_($rt_s(547), 1, Long_ZERO);
|
|
18305
|
-
var$3[2] = asrrh_Register__init_($rt_s(548), 2, Long_ZERO);
|
|
18306
|
-
var$3[3] = asrrh_Register__init_($rt_s(549), 3, Long_ZERO);
|
|
18307
|
-
var$3[4] = asrrh_Register__init_($rt_s(550), 4, Long_ZERO);
|
|
18308
|
-
var$3[5] = asrrh_Register__init_($rt_s(551), 5, Long_ZERO);
|
|
18309
|
-
var$3[6] = asrrh_Register__init_($rt_s(552), 6, Long_ZERO);
|
|
18310
|
-
var$3[7] = asrrh_Register__init_($rt_s(553), 7, Long_ZERO);
|
|
18311
|
-
var$3[8] = asrrh_Register__init_($rt_s(554), 8, Long_ZERO);
|
|
18312
|
-
var$3[9] = asrrh_Register__init_($rt_s(555), 9, Long_ZERO);
|
|
18313
|
-
var$3[10] = asrrh_Register__init_($rt_s(556), 10, Long_ZERO);
|
|
18314
|
-
var$3[11] = asrrh_Register__init_($rt_s(557), 11, Long_ZERO);
|
|
18315
|
-
var$3[12] = asrrh_Register__init_($rt_s(558), 12, Long_ZERO);
|
|
18316
|
-
var$3[13] = asrrh_Register__init_($rt_s(559), 13, Long_ZERO);
|
|
18317
|
-
var$3[14] = asrrh_Register__init_($rt_s(560), 14, Long_ZERO);
|
|
18318
|
-
var$3[15] = asrrh_Register__init_($rt_s(561), 15, Long_ZERO);
|
|
18319
|
-
var$3[16] = asrrh_Register__init_($rt_s(562), 16, Long_ZERO);
|
|
18320
|
-
var$3[17] = asrrh_Register__init_($rt_s(563), 17, Long_ZERO);
|
|
18321
|
-
var$3[18] = asrrh_Register__init_($rt_s(564), 18, Long_ZERO);
|
|
18322
|
-
var$3[19] = asrrh_Register__init_($rt_s(565), 19, Long_ZERO);
|
|
18323
|
-
var$3[20] = asrrh_Register__init_($rt_s(566), 20, Long_ZERO);
|
|
18324
|
-
var$3[21] = asrrh_Register__init_($rt_s(567), 21, Long_ZERO);
|
|
18325
|
-
var$3[22] = asrrh_Register__init_($rt_s(568), 22, Long_ZERO);
|
|
18326
|
-
var$3[23] = asrrh_Register__init_($rt_s(569), 23, Long_ZERO);
|
|
18327
|
-
var$3[24] = asrrh_Register__init_($rt_s(570), 24, Long_ZERO);
|
|
18328
|
-
var$3[25] = asrrh_Register__init_($rt_s(571), 25, Long_ZERO);
|
|
18329
|
-
var$3[26] = asrrh_Register__init_($rt_s(572), 26, Long_ZERO);
|
|
18330
|
-
var$3[27] = asrrh_Register__init_($rt_s(573), 27, Long_ZERO);
|
|
18331
|
-
var$3[28] = asrrh_Register__init_($rt_s(574), 28, Long_ZERO);
|
|
18332
|
-
var$3[29] = asrrh_Register__init_($rt_s(575), 29, Long_ZERO);
|
|
18333
|
-
var$3[30] = asrrh_Register__init_($rt_s(576), 30, Long_ZERO);
|
|
18334
|
-
var$3[31] = asrrh_Register__init_($rt_s(577), 31, Long_ZERO);
|
|
18335
|
-
asrrh_RegisterBlock__init_(var$1, 102, var$2);
|
|
18336
|
-
asrrh_FloatingPointRegisterFile_instance = var$1;
|
|
18337
|
-
};
|
|
18338
|
-
function asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0() {
|
|
18339
|
-
let a = this;
|
|
18340
|
-
jl_Object.call(a);
|
|
18341
|
-
a.$_05 = null;
|
|
18342
|
-
a.$_12 = 0;
|
|
18343
|
-
a.$_2 = null;
|
|
18344
|
-
}
|
|
18345
|
-
var asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0_run = (var$0) => {
|
|
18346
|
-
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
18347
|
-
$ptr = 0;
|
|
18348
|
-
if ($rt_resuming()) {
|
|
18349
|
-
let $thread = $rt_nativeThread();
|
|
18350
|
-
$ptr = $thread.pop();
|
|
18351
|
-
var$4 = $thread.pop();
|
|
18352
|
-
var$3 = $thread.pop();
|
|
18353
|
-
var$2 = $thread.pop();
|
|
18354
|
-
var$1 = $thread.pop();
|
|
18355
|
-
var$0 = $thread.pop();
|
|
18356
|
-
}
|
|
18357
|
-
main: while (true) {
|
|
18358
|
-
switch ($ptr) {
|
|
18359
|
-
case 0:
|
|
18360
|
-
var$1 = var$0.$_05;
|
|
18361
|
-
var$2 = var$0.$_12;
|
|
18362
|
-
var$3 = var$0.$_2;
|
|
18363
|
-
var$1 = var$1.$main;
|
|
18364
|
-
asr_RARS_requireAssembled(var$1);
|
|
18365
|
-
var$4 = var$1.$main0;
|
|
18366
|
-
$ptr = 1;
|
|
18367
|
-
case 1:
|
|
18368
|
-
$tmp = asr_RISCVprogram_simulate(var$4, var$2, var$3);
|
|
18369
|
-
if ($rt_suspending()) {
|
|
18370
|
-
break main;
|
|
18371
|
-
}
|
|
18372
|
-
var$4 = $tmp;
|
|
18373
|
-
var$1.$stopReason = var$4;
|
|
18374
|
-
return var$4.$ordinal0;
|
|
18375
|
-
default:
|
|
18376
|
-
$rt_invalidPointer();
|
|
18377
|
-
}
|
|
18378
|
-
}
|
|
18379
|
-
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
18380
|
-
};
|
|
18381
|
-
function asr_JsCompilationResult() {
|
|
18382
|
-
let a = this;
|
|
18383
|
-
jl_Object.call(a);
|
|
18384
|
-
a.$report = null;
|
|
18385
|
-
a.$errors1 = null;
|
|
18386
|
-
}
|
|
18387
|
-
var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
|
|
18388
|
-
let var$2, var$3, var$4;
|
|
18389
|
-
$this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
|
|
18390
|
-
$errorReport = ju_Collection_stream($errorReport.$messages);
|
|
18391
|
-
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
|
|
18392
|
-
var$2.$_019 = $this;
|
|
18393
|
-
$errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
|
|
18394
|
-
var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
|
|
18395
|
-
$errorReport = $errorReport;
|
|
18396
|
-
var$3 = ju_ArrayList__init_();
|
|
18397
|
-
var$4 = $errorReport;
|
|
18398
|
-
while (true) {
|
|
18399
|
-
$errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
|
|
18400
|
-
$errorReport.$_024 = var$2;
|
|
18401
|
-
$errorReport.$_19 = var$3;
|
|
18402
|
-
if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
|
|
18403
|
-
break;
|
|
18404
|
-
}
|
|
18405
|
-
$this.$errors1 = var$3;
|
|
18406
|
-
};
|
|
18407
|
-
var asr_JsCompilationResult__init_ = (var_0) => {
|
|
18408
|
-
let var_1 = new asr_JsCompilationResult();
|
|
18409
|
-
asr_JsCompilationResult__init_0(var_1, var_0);
|
|
18410
|
-
return var_1;
|
|
18411
|
-
};
|
|
18412
|
-
var asr_JsCompilationResult_hasWarnings$exported$0 = (var$1) => {
|
|
18413
|
-
let var$2;
|
|
18414
|
-
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
18415
|
-
var$2 = new asr_JsCompilationResult$hasWarnings$lambda$_3_0();
|
|
18416
|
-
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
18417
|
-
};
|
|
18418
|
-
var asr_JsCompilationResult_getErrors$exported$1 = (var$1) => {
|
|
18419
|
-
let var$2;
|
|
18420
|
-
var$1 = var$1.$errors1;
|
|
18421
|
-
var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
|
|
18422
|
-
return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
|
|
18423
|
-
};
|
|
18424
|
-
var asr_JsCompilationResult_hasErrors$exported$2 = (var$1) => {
|
|
18425
|
-
let var$2;
|
|
18426
|
-
var$1 = ju_Collection_stream(var$1.$errors1);
|
|
18427
|
-
var$2 = new asr_JsCompilationResult$hasErrors$lambda$_2_0();
|
|
18428
|
-
return !!jusi_SimpleStreamImpl_anyMatch(var$1, var$2);
|
|
18429
|
-
};
|
|
18430
|
-
var asr_JsCompilationResult_getReport$exported$3 = (var$1) => {
|
|
18431
|
-
return $rt_ustr(var$1.$report);
|
|
18432
|
-
};
|
|
18433
|
-
function asr_AssemblyException() {
|
|
18434
|
-
jl_Exception.call(this);
|
|
18435
|
-
this.$errs = null;
|
|
18436
|
-
}
|
|
18437
|
-
var asr_AssemblyException__init_0 = ($this, $errs) => {
|
|
18438
|
-
jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
|
|
18439
|
-
$this.$errs = $errs;
|
|
18440
|
-
};
|
|
18441
|
-
var asr_AssemblyException__init_ = (var_0) => {
|
|
18442
|
-
let var_1 = new asr_AssemblyException();
|
|
18443
|
-
asr_AssemblyException__init_0(var_1, var_0);
|
|
18444
|
-
return var_1;
|
|
18445
|
-
};
|
|
18446
|
-
function asr_JsRiscV$simulateWithLimit$lambda$_13_0() {
|
|
18447
|
-
let a = this;
|
|
18448
|
-
jl_Object.call(a);
|
|
18449
|
-
a.$_022 = null;
|
|
18450
|
-
a.$_112 = 0;
|
|
18451
|
-
}
|
|
18452
|
-
var asr_JsRiscV$simulateWithLimit$lambda$_13_0_run = (var$0) => {
|
|
18453
|
-
let var$1, var$2, $ptr, $tmp;
|
|
18454
|
-
$ptr = 0;
|
|
18455
|
-
if ($rt_resuming()) {
|
|
18456
|
-
let $thread = $rt_nativeThread();
|
|
18457
|
-
$ptr = $thread.pop();
|
|
18458
|
-
var$2 = $thread.pop();
|
|
18459
|
-
var$1 = $thread.pop();
|
|
18460
|
-
var$0 = $thread.pop();
|
|
18461
|
-
}
|
|
18462
|
-
main: while (true) {
|
|
18463
|
-
switch ($ptr) {
|
|
18464
|
-
case 0:
|
|
18465
|
-
var$1 = var$0.$_022;
|
|
18466
|
-
var$2 = var$0.$_112;
|
|
18467
|
-
var$1 = var$1.$main;
|
|
18468
|
-
$ptr = 1;
|
|
18469
|
-
case 1:
|
|
18470
|
-
$tmp = asr_RARS_simulate(var$1, var$2);
|
|
18471
|
-
if ($rt_suspending()) {
|
|
18472
|
-
break main;
|
|
18473
|
-
}
|
|
18474
|
-
var$1 = $tmp;
|
|
18475
|
-
return var$1.$ordinal0;
|
|
18476
|
-
default:
|
|
18477
|
-
$rt_invalidPointer();
|
|
18478
|
-
}
|
|
18479
|
-
}
|
|
18480
|
-
$rt_nativeThread().push(var$0, var$1, var$2, $ptr);
|
|
18481
|
-
};
|
|
18482
|
-
var otjc_JSArrayReader = $rt_classWithoutFields(0);
|
|
18483
|
-
var otjc_JSArray = $rt_classWithoutFields();
|
|
18484
|
-
var otjc_JSArray_of = ($items) => {
|
|
18485
|
-
let var$2, $array, $i, var$5;
|
|
18486
|
-
$items = $items.data;
|
|
18487
|
-
var$2 = $items.length;
|
|
18488
|
-
$array = new Array(var$2);
|
|
18489
|
-
$i = 0;
|
|
18490
|
-
while ($i < var$2) {
|
|
18491
|
-
var$5 = $items[$i];
|
|
18492
|
-
$array[$i] = otji_JSWrapper_javaToJs(var$5);
|
|
18493
|
-
$i = $i + 1 | 0;
|
|
18494
|
-
}
|
|
18495
|
-
return $array;
|
|
18496
|
-
};
|
|
18497
|
-
var asr_JsBackStep = $rt_classWithoutFields();
|
|
18498
|
-
var asr_JsBackStep_of = ($backStep) => {
|
|
18499
|
-
let var$2, var$3, var$4, var$5, var$6, var$7, var$8;
|
|
18500
|
-
var$2 = $backStep.$action;
|
|
18501
|
-
var$3 = var$2 === null ? -1 : var$2.$ordinal0;
|
|
18502
|
-
var$4 = $backStep.$pc1;
|
|
18503
|
-
var$5 = $backStep.$param1;
|
|
18504
|
-
var$6 = $backStep.$param2;
|
|
18505
|
-
var$7 = Long_lo(var$6);
|
|
18506
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18507
|
-
if (var$2 === asrs_BackStepper$Action_PC_RESTORE)
|
|
18508
|
-
var$6 = Long_fromInt(var$5);
|
|
18509
|
-
a: {
|
|
18510
|
-
var$8 = jl_Long_toString(var$6);
|
|
18511
|
-
switch ($backStep.$action.$ordinal0) {
|
|
18512
|
-
case 0:
|
|
18513
|
-
case 2:
|
|
18514
|
-
case 3:
|
|
18515
|
-
case 4:
|
|
18516
|
-
case 6:
|
|
18517
|
-
var$6 = Long_fromInt($backStep.$param3Int);
|
|
18518
|
-
break a;
|
|
18519
|
-
case 1:
|
|
18520
|
-
case 5:
|
|
18521
|
-
case 7:
|
|
18522
|
-
case 8:
|
|
18523
|
-
case 9:
|
|
18524
|
-
break;
|
|
18525
|
-
default:
|
|
18526
|
-
var$6 = Long_ZERO;
|
|
18527
|
-
break a;
|
|
18528
|
-
}
|
|
18529
|
-
var$6 = $backStep.$param3Long;
|
|
18530
|
-
}
|
|
18531
|
-
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));
|
|
18532
|
-
};
|
|
18533
|
-
var asr_JsBackStep_create$js_body$_2 = (var$1, var$2, var$3, var$4, var$5, var$6, var$7) => {
|
|
18534
|
-
return { action: var$1, pc: var$2, param1: var$3, param2: var$4, oldValue: var$5, newValue: var$6, isPoke: var$7 };
|
|
18535
|
-
};
|
|
18536
|
-
function asrs_BackStepper() {
|
|
18537
|
-
let a = this;
|
|
18538
|
-
jl_Object.call(a);
|
|
18539
|
-
a.$lastStatementPc = 0;
|
|
18540
|
-
a.$lastStatement = null;
|
|
18541
|
-
a.$engaged = 0;
|
|
18542
|
-
a.$backSteps = null;
|
|
18543
|
-
a.$pokeGroup = 0;
|
|
18544
|
-
a.$pokeRestores = null;
|
|
18545
|
-
}
|
|
18546
|
-
var asrs_BackStepper_nextPokeGroup = 0;
|
|
18547
|
-
var asrs_BackStepper_$callClinit = () => {
|
|
18548
|
-
asrs_BackStepper_$callClinit = $rt_eraseClinit(asrs_BackStepper);
|
|
18549
|
-
asrs_BackStepper__clinit_();
|
|
18550
|
-
};
|
|
18551
|
-
var asrs_BackStepper_applyRestore = (var$1, var$2, var$3) => {
|
|
18552
|
-
let var$4, var$5, var$6, var$7;
|
|
18553
|
-
asrs_BackStepper_$callClinit();
|
|
18554
|
-
a: {
|
|
18555
|
-
switch (var$1.$ordinal0) {
|
|
18556
|
-
case 0:
|
|
18557
|
-
asr_Globals_$callClinit();
|
|
18558
|
-
var$1 = asr_Globals_memory;
|
|
18559
|
-
var$4 = Long_lo(var$3);
|
|
18560
|
-
var$5 = asrrh_Memory_storeRawWord(var$1, var$2, var$4);
|
|
18561
|
-
asrrh_Memory_notifyAnyObservers(var$1, 1, var$2, 4, var$4);
|
|
18562
|
-
if (asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings())) {
|
|
18563
|
-
var$6 = asr_Globals_program.$backStepper;
|
|
18564
|
-
var$7 = var$6.$backSteps;
|
|
18565
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18566
|
-
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);
|
|
18567
|
-
}
|
|
18568
|
-
break a;
|
|
18569
|
-
case 1:
|
|
18570
|
-
asr_Globals_$callClinit();
|
|
18571
|
-
asrrh_Memory_setDoubleWord(asr_Globals_memory, var$2, var$3);
|
|
18572
|
-
break a;
|
|
18573
|
-
case 2:
|
|
18574
|
-
asr_Globals_$callClinit();
|
|
18575
|
-
asrrh_Memory_setWord(asr_Globals_memory, var$2, Long_lo(var$3));
|
|
18576
|
-
break a;
|
|
18577
|
-
case 3:
|
|
18578
|
-
asr_Globals_$callClinit();
|
|
18579
|
-
asrrh_Memory_setHalf(asr_Globals_memory, var$2, Long_lo(var$3));
|
|
18580
|
-
break a;
|
|
18581
|
-
case 4:
|
|
18582
|
-
asr_Globals_$callClinit();
|
|
18583
|
-
asrrh_Memory_setByte(asr_Globals_memory, var$2, Long_lo(var$3));
|
|
18584
|
-
break a;
|
|
18585
|
-
case 5:
|
|
18586
|
-
asrrh_RegisterFile_updateRegister(var$2, var$3);
|
|
18587
|
-
break a;
|
|
18588
|
-
case 6:
|
|
18589
|
-
asrrh_RegisterFile_setProgramCounter(var$2);
|
|
18590
|
-
break a;
|
|
18591
|
-
case 7:
|
|
18592
|
-
asrrh_ControlAndStatusRegisterFile_updateRegister0(var$2, var$3);
|
|
18593
|
-
break a;
|
|
18594
|
-
case 8:
|
|
18595
|
-
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
18596
|
-
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
18597
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor(asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, var$2), var$3);
|
|
18598
|
-
break a;
|
|
18599
|
-
case 9:
|
|
18600
|
-
asrrh_FloatingPointRegisterFile_updateRegisterLong(var$2, var$3);
|
|
18601
|
-
break a;
|
|
18602
|
-
case 10:
|
|
18603
|
-
break;
|
|
18604
|
-
case 11:
|
|
18605
|
-
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
18606
|
-
var$2 = asrrh_ControlAndStatusRegisterFile_pendingCounterTicks;
|
|
18607
|
-
if (var$2 > 0)
|
|
18608
|
-
asrrh_ControlAndStatusRegisterFile_pendingCounterTicks = var$2 - 1 | 0;
|
|
18609
|
-
else {
|
|
18610
|
-
var$1 = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(494));
|
|
18611
|
-
var$7 = asrrh_RegisterBlock_getRegister(asrrh_ControlAndStatusRegisterFile_instance, $rt_s(495));
|
|
18612
|
-
asrrh_Register_setValueBackdoor(var$1, Long_sub(var$1.$getValueNoNotify(), Long_fromInt(1)));
|
|
18613
|
-
asrrh_Register_setValueBackdoor(var$7, Long_sub(var$7.$getValueNoNotify(), Long_fromInt(1)));
|
|
18614
|
-
}
|
|
18615
|
-
break a;
|
|
18616
|
-
case 12:
|
|
18617
|
-
asrrh_ControlAndStatusRegisterFile_$callClinit();
|
|
18618
|
-
asrrh_ControlAndStatusRegisterFile_settleCounters();
|
|
18619
|
-
var$1 = asrrh_RegisterBlock_getRegister0(asrrh_ControlAndStatusRegisterFile_instance, var$2);
|
|
18620
|
-
if (var$1 !== null)
|
|
18621
|
-
var$1.$setValue(var$3);
|
|
18622
|
-
break a;
|
|
18623
|
-
case 13:
|
|
18624
|
-
break a;
|
|
18625
|
-
default:
|
|
18626
|
-
break a;
|
|
18627
|
-
}
|
|
18628
|
-
}
|
|
18629
|
-
};
|
|
18630
|
-
var asrs_BackStepper_sameGroup = ($one, $other) => {
|
|
18631
|
-
asrs_BackStepper_$callClinit();
|
|
18632
|
-
if (!asrs_BackStepper$BackStep_isPoke($one) && !asrs_BackStepper$BackStep_isPoke($other))
|
|
18633
|
-
return $one.$ps !== $other.$ps ? 0 : 1;
|
|
18634
|
-
return 0;
|
|
18635
|
-
};
|
|
18636
|
-
var asrs_BackStepper_pc = ($this) => {
|
|
18637
|
-
return asrrh_RegisterFile_getProgramCounter() - 4 | 0;
|
|
18638
|
-
};
|
|
18639
|
-
var asrs_BackStepper_addFloatingPointRestore = ($this, $register, $value, $newValue) => {
|
|
18640
|
-
let var$4;
|
|
18641
|
-
var$4 = $this.$backSteps;
|
|
18642
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18643
|
-
asrs_BackStepper$BackstepStack_push(var$4, asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE, asrs_BackStepper_pc($this), $register, $value, 0, $newValue);
|
|
18644
|
-
return $value;
|
|
18645
|
-
};
|
|
18646
|
-
var asrs_BackStepper_addDoNothing = ($this, $pc) => {
|
|
18647
|
-
let var$2;
|
|
18648
|
-
if (!(!asrs_BackStepper$BackstepStack_empty($this.$backSteps) && asrs_BackStepper$BackstepStack_peek($this.$backSteps).$pc1 == $pc)) {
|
|
18649
|
-
var$2 = $this.$backSteps;
|
|
18650
|
-
asrs_BackStepper$Action_$callClinit();
|
|
18651
|
-
asrs_BackStepper$BackstepStack_push0(var$2, asrs_BackStepper$Action_DO_NOTHING, $pc);
|
|
18652
|
-
}
|
|
18653
|
-
};
|
|
18654
|
-
var asrs_BackStepper__clinit_ = () => {
|
|
18655
|
-
asrs_BackStepper_nextPokeGroup = -2;
|
|
18656
|
-
};
|
|
18657
|
-
var asr_JsUndoGroup = $rt_classWithoutFields();
|
|
18658
|
-
var asr_JsUndoGroup_create$js_body$_3 = (var$1, var$2, var$3, var$4) => {
|
|
18659
|
-
return { kind: var$1, pc: var$2, steps: var$3, writes: var$4 };
|
|
18660
|
-
};
|
|
18661
|
-
var jl_IllegalStateException = $rt_classWithoutFields(jl_RuntimeException);
|
|
18662
|
-
function asr_JsRiscV$PokeRecord() {
|
|
18663
|
-
let a = this;
|
|
18664
|
-
jl_Object.call(a);
|
|
18665
|
-
a.$group0 = 0;
|
|
18666
|
-
a.$writes = null;
|
|
18667
|
-
}
|
|
18668
|
-
function asr_JsRiscV$PokeJournal() {
|
|
18669
|
-
let a = this;
|
|
18670
|
-
jl_Object.call(a);
|
|
18671
|
-
a.$group1 = 0;
|
|
18672
|
-
a.$registers = null;
|
|
18673
|
-
a.$registersByName = null;
|
|
18674
|
-
a.$memoryOldBytes = null;
|
|
18675
|
-
}
|
|
18676
|
-
var jl_Double = $rt_classWithoutFields(jl_Number);
|
|
18677
|
-
var jl_Double_TYPE = null;
|
|
18678
|
-
var jl_Double_$callClinit = () => {
|
|
18679
|
-
jl_Double_$callClinit = $rt_eraseClinit(jl_Double);
|
|
18680
|
-
jl_Double__clinit_();
|
|
18681
|
-
};
|
|
18682
|
-
var jl_Double_parseDouble = (var$1) => {
|
|
18683
|
-
let var$2, var$3, var$4, var$5, $negative, $c, $mantissa, $exp, $hasOneDigit, $mantissaPos, $negativeExp, $numExp;
|
|
18684
|
-
jl_Double_$callClinit();
|
|
18685
|
-
if (jl_String_isEmpty(var$1)) {
|
|
18686
|
-
var$1 = new jl_NumberFormatException();
|
|
18687
|
-
jl_Throwable__init_(var$1);
|
|
18688
|
-
$rt_throw(var$1);
|
|
18689
|
-
}
|
|
18690
|
-
var$2 = 0;
|
|
18691
|
-
var$3 = var$1.$nativeString.length;
|
|
18692
|
-
while (true) {
|
|
18693
|
-
if (jl_String_charAt(var$1, var$2) > 32) {
|
|
18694
|
-
while (true) {
|
|
18695
|
-
var$4 = var$3 - 1 | 0;
|
|
18696
|
-
if (jl_String_charAt(var$1, var$4) > 32)
|
|
18697
|
-
break;
|
|
18698
|
-
var$3 = var$3 + -1 | 0;
|
|
18699
|
-
}
|
|
18700
|
-
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;
|
|
18586
|
+
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;
|
|
18701
18587
|
$negative = 0;
|
|
18702
|
-
if (jl_String_charAt(
|
|
18703
|
-
|
|
18588
|
+
if (jl_String_charAt($string, $start) == 45) {
|
|
18589
|
+
$start = $start + 1 | 0;
|
|
18704
18590
|
$negative = 1;
|
|
18705
|
-
} else if (jl_String_charAt(
|
|
18706
|
-
|
|
18707
|
-
if (
|
|
18708
|
-
|
|
18709
|
-
jl_Throwable__init_(
|
|
18710
|
-
$rt_throw(
|
|
18591
|
+
} else if (jl_String_charAt($string, $start) == 43)
|
|
18592
|
+
$start = $start + 1 | 0;
|
|
18593
|
+
if ($start == var$5) {
|
|
18594
|
+
$string = new jl_NumberFormatException();
|
|
18595
|
+
jl_Throwable__init_($string);
|
|
18596
|
+
$rt_throw($string);
|
|
18711
18597
|
}
|
|
18712
18598
|
a: {
|
|
18713
|
-
$c = jl_String_charAt(
|
|
18599
|
+
$c = jl_String_charAt($string, $start);
|
|
18714
18600
|
$mantissa = Long_ZERO;
|
|
18715
18601
|
$exp = -1;
|
|
18716
18602
|
$hasOneDigit = 0;
|
|
@@ -18719,14 +18605,14 @@ var jl_Double_parseDouble = (var$1) => {
|
|
|
18719
18605
|
$hasOneDigit = 1;
|
|
18720
18606
|
if ($c >= 48 && $c <= 57) {
|
|
18721
18607
|
b: {
|
|
18722
|
-
while (
|
|
18723
|
-
if (jl_String_charAt(
|
|
18608
|
+
while ($start < var$5) {
|
|
18609
|
+
if (jl_String_charAt($string, $start) != 48)
|
|
18724
18610
|
break b;
|
|
18725
|
-
|
|
18611
|
+
$start = $start + 1 | 0;
|
|
18726
18612
|
}
|
|
18727
18613
|
}
|
|
18728
|
-
while (
|
|
18729
|
-
var$4 = jl_String_charAt(
|
|
18614
|
+
while ($start < var$5) {
|
|
18615
|
+
var$4 = jl_String_charAt($string, $start);
|
|
18730
18616
|
if (var$4 < 48)
|
|
18731
18617
|
break a;
|
|
18732
18618
|
if (var$4 > 57)
|
|
@@ -18736,77 +18622,77 @@ var jl_Double_parseDouble = (var$1) => {
|
|
|
18736
18622
|
$mantissaPos = jl_Long_divideUnsigned($mantissaPos, Long_fromInt(10));
|
|
18737
18623
|
}
|
|
18738
18624
|
$exp = $exp + 1 | 0;
|
|
18739
|
-
|
|
18625
|
+
$start = $start + 1 | 0;
|
|
18740
18626
|
}
|
|
18741
18627
|
} else {
|
|
18742
|
-
if ($c == 73 && (
|
|
18628
|
+
if ($c == 73 && ($end - $start | 0) == 8 && jl_String_regionMatches($string, 0, $start, $rt_s(578), 0, 8))
|
|
18743
18629
|
return !$negative ? Infinity : -Infinity;
|
|
18744
|
-
if ($c == 78 && (
|
|
18630
|
+
if ($c == 78 && ($end - $start | 0) == 3 && jl_String_regionMatches($string, 0, $start, $rt_s(579), 0, 3))
|
|
18745
18631
|
return NaN;
|
|
18746
|
-
|
|
18747
|
-
jl_Throwable__init_(
|
|
18748
|
-
$rt_throw(
|
|
18632
|
+
$string = new jl_NumberFormatException();
|
|
18633
|
+
jl_Throwable__init_($string);
|
|
18634
|
+
$rt_throw($string);
|
|
18749
18635
|
}
|
|
18750
18636
|
}
|
|
18751
18637
|
}
|
|
18752
|
-
if (
|
|
18753
|
-
|
|
18638
|
+
if ($start < var$5 && jl_String_charAt($string, $start) == 46) {
|
|
18639
|
+
$start = $start + 1 | 0;
|
|
18754
18640
|
c: {
|
|
18755
18641
|
while (true) {
|
|
18756
|
-
if (
|
|
18642
|
+
if ($start >= var$5)
|
|
18757
18643
|
break c;
|
|
18758
|
-
|
|
18759
|
-
var$4 = $rt_compare(
|
|
18644
|
+
$end = jl_String_charAt($string, $start);
|
|
18645
|
+
var$4 = $rt_compare($end, 48);
|
|
18760
18646
|
if (var$4 < 0)
|
|
18761
18647
|
break c;
|
|
18762
|
-
if (
|
|
18648
|
+
if ($end > 57)
|
|
18763
18649
|
break;
|
|
18764
18650
|
if (Long_eq($mantissa, Long_ZERO) && !var$4)
|
|
18765
18651
|
$exp = $exp + -1 | 0;
|
|
18766
18652
|
else if (Long_gt($mantissaPos, Long_ZERO)) {
|
|
18767
|
-
$mantissa = Long_add($mantissa, Long_mul($mantissaPos, Long_fromInt(
|
|
18653
|
+
$mantissa = Long_add($mantissa, Long_mul($mantissaPos, Long_fromInt($end - 48 | 0)));
|
|
18768
18654
|
$mantissaPos = jl_Long_divideUnsigned($mantissaPos, Long_fromInt(10));
|
|
18769
18655
|
}
|
|
18770
|
-
|
|
18656
|
+
$start = $start + 1 | 0;
|
|
18771
18657
|
$hasOneDigit = 1;
|
|
18772
18658
|
}
|
|
18773
18659
|
}
|
|
18774
18660
|
if (!$hasOneDigit) {
|
|
18775
|
-
|
|
18776
|
-
jl_IllegalArgumentException__init_(
|
|
18777
|
-
$rt_throw(
|
|
18661
|
+
$string = new jl_NumberFormatException();
|
|
18662
|
+
jl_IllegalArgumentException__init_($string);
|
|
18663
|
+
$rt_throw($string);
|
|
18778
18664
|
}
|
|
18779
18665
|
}
|
|
18780
|
-
if (
|
|
18781
|
-
|
|
18782
|
-
if (
|
|
18666
|
+
if ($start < var$5) {
|
|
18667
|
+
$end = jl_String_charAt($string, $start);
|
|
18668
|
+
if ($end != 101 && $end != 69)
|
|
18783
18669
|
$rt_throw(jl_NumberFormatException__init_());
|
|
18784
|
-
|
|
18670
|
+
$end = $start + 1 | 0;
|
|
18785
18671
|
$negativeExp = 0;
|
|
18786
|
-
if (
|
|
18672
|
+
if ($end == var$5)
|
|
18787
18673
|
$rt_throw(jl_NumberFormatException__init_());
|
|
18788
|
-
if (jl_String_charAt(
|
|
18789
|
-
|
|
18674
|
+
if (jl_String_charAt($string, $end) == 45) {
|
|
18675
|
+
$end = $end + 1 | 0;
|
|
18790
18676
|
$negativeExp = 1;
|
|
18791
|
-
} else if (jl_String_charAt(
|
|
18792
|
-
|
|
18677
|
+
} else if (jl_String_charAt($string, $end) == 43)
|
|
18678
|
+
$end = $end + 1 | 0;
|
|
18793
18679
|
$numExp = 0;
|
|
18794
|
-
|
|
18680
|
+
$start = 0;
|
|
18795
18681
|
d: {
|
|
18796
18682
|
while (true) {
|
|
18797
|
-
if (
|
|
18683
|
+
if ($end >= var$5)
|
|
18798
18684
|
break d;
|
|
18799
|
-
$c = jl_String_charAt(
|
|
18685
|
+
$c = jl_String_charAt($string, $end);
|
|
18800
18686
|
if ($c < 48)
|
|
18801
18687
|
break d;
|
|
18802
18688
|
if ($c > 57)
|
|
18803
18689
|
break;
|
|
18804
18690
|
$numExp = (10 * $numExp | 0) + ($c - 48 | 0) | 0;
|
|
18805
|
-
|
|
18806
|
-
|
|
18691
|
+
$start = 1;
|
|
18692
|
+
$end = $end + 1 | 0;
|
|
18807
18693
|
}
|
|
18808
18694
|
}
|
|
18809
|
-
if (
|
|
18695
|
+
if (!$start)
|
|
18810
18696
|
$rt_throw(jl_NumberFormatException__init_());
|
|
18811
18697
|
if ($negativeExp)
|
|
18812
18698
|
$numExp = -$numExp | 0;
|
|
@@ -18814,13 +18700,13 @@ var jl_Double_parseDouble = (var$1) => {
|
|
|
18814
18700
|
}
|
|
18815
18701
|
return otcit_DoubleSynthesizer_synthesizeDouble($mantissa, $exp, $negative);
|
|
18816
18702
|
}
|
|
18817
|
-
|
|
18818
|
-
if (
|
|
18703
|
+
$start = $start + 1 | 0;
|
|
18704
|
+
if ($start == $end)
|
|
18819
18705
|
break;
|
|
18820
18706
|
}
|
|
18821
|
-
|
|
18822
|
-
jl_Throwable__init_(
|
|
18823
|
-
$rt_throw(
|
|
18707
|
+
$string = new jl_NumberFormatException();
|
|
18708
|
+
jl_Throwable__init_($string);
|
|
18709
|
+
$rt_throw($string);
|
|
18824
18710
|
};
|
|
18825
18711
|
var jl_Double_isInfinite = ($v) => {
|
|
18826
18712
|
jl_Double_$callClinit();
|
|
@@ -18844,6 +18730,124 @@ var asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_1_apply = (var$0, var$1
|
|
|
18844
18730
|
asr_JsRiscV_$callClinit();
|
|
18845
18731
|
return $rt_createArray(asr_JsProgramStatement, var$1);
|
|
18846
18732
|
};
|
|
18733
|
+
var jl_IllegalStateException = $rt_classWithoutFields(jl_RuntimeException);
|
|
18734
|
+
function asr_JsRiscV$PokeRecord() {
|
|
18735
|
+
let a = this;
|
|
18736
|
+
jl_Object.call(a);
|
|
18737
|
+
a.$group0 = 0;
|
|
18738
|
+
a.$writes = null;
|
|
18739
|
+
}
|
|
18740
|
+
function asr_JsRiscV$PokeJournal() {
|
|
18741
|
+
let a = this;
|
|
18742
|
+
jl_Object.call(a);
|
|
18743
|
+
a.$group1 = 0;
|
|
18744
|
+
a.$registers = null;
|
|
18745
|
+
a.$registersByName = null;
|
|
18746
|
+
a.$memoryOldBytes = null;
|
|
18747
|
+
}
|
|
18748
|
+
function asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0() {
|
|
18749
|
+
let a = this;
|
|
18750
|
+
jl_Object.call(a);
|
|
18751
|
+
a.$_03 = null;
|
|
18752
|
+
a.$_10 = null;
|
|
18753
|
+
}
|
|
18754
|
+
var asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0_run = (var$0) => {
|
|
18755
|
+
let var$1, var$2, var$3, var$4, $ptr, $tmp;
|
|
18756
|
+
$ptr = 0;
|
|
18757
|
+
if ($rt_resuming()) {
|
|
18758
|
+
let $thread = $rt_nativeThread();
|
|
18759
|
+
$ptr = $thread.pop();
|
|
18760
|
+
var$4 = $thread.pop();
|
|
18761
|
+
var$3 = $thread.pop();
|
|
18762
|
+
var$2 = $thread.pop();
|
|
18763
|
+
var$1 = $thread.pop();
|
|
18764
|
+
var$0 = $thread.pop();
|
|
18765
|
+
}
|
|
18766
|
+
main: while (true) {
|
|
18767
|
+
switch ($ptr) {
|
|
18768
|
+
case 0:
|
|
18769
|
+
var$1 = var$0.$_03;
|
|
18770
|
+
var$2 = var$0.$_10;
|
|
18771
|
+
var$1 = var$1.$main;
|
|
18772
|
+
asr_RARS_requireAssembled(var$1);
|
|
18773
|
+
var$3 = var$1.$main0;
|
|
18774
|
+
var$4 = -1;
|
|
18775
|
+
$ptr = 1;
|
|
18776
|
+
case 1:
|
|
18777
|
+
$tmp = asr_RISCVprogram_simulate(var$3, var$4, var$2);
|
|
18778
|
+
if ($rt_suspending()) {
|
|
18779
|
+
break main;
|
|
18780
|
+
}
|
|
18781
|
+
var$3 = $tmp;
|
|
18782
|
+
var$1.$stopReason = var$3;
|
|
18783
|
+
return var$3.$ordinal0;
|
|
18784
|
+
default:
|
|
18785
|
+
$rt_invalidPointer();
|
|
18786
|
+
}
|
|
18787
|
+
}
|
|
18788
|
+
$rt_nativeThread().push(var$0, var$1, var$2, var$3, var$4, $ptr);
|
|
18789
|
+
};
|
|
18790
|
+
function asr_JsStackFrame() {
|
|
18791
|
+
let a = this;
|
|
18792
|
+
jl_Object.call(a);
|
|
18793
|
+
a.$pc2 = 0;
|
|
18794
|
+
a.$toAddress1 = 0;
|
|
18795
|
+
a.$sp = 0;
|
|
18796
|
+
a.$fp = 0;
|
|
18797
|
+
a.$registers0 = null;
|
|
18798
|
+
}
|
|
18799
|
+
var asr_JsStackFrame_getPc$exported$0 = (var$1) => {
|
|
18800
|
+
return var$1.$pc2;
|
|
18801
|
+
};
|
|
18802
|
+
var asr_JsStackFrame_getToAddress$exported$1 = (var$1) => {
|
|
18803
|
+
return var$1.$toAddress1;
|
|
18804
|
+
};
|
|
18805
|
+
var asr_JsStackFrame_getRegisters$exported$2 = (var$1) => {
|
|
18806
|
+
return otji_JS_wrap0(var$1.$registers0);
|
|
18807
|
+
};
|
|
18808
|
+
var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
|
|
18809
|
+
return var$1.$sp;
|
|
18810
|
+
};
|
|
18811
|
+
var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
|
|
18812
|
+
return var$1.$fp;
|
|
18813
|
+
};
|
|
18814
|
+
function asr_JsRiscV$step$lambda$_10_0() {
|
|
18815
|
+
jl_Object.call(this);
|
|
18816
|
+
this.$_014 = null;
|
|
18817
|
+
}
|
|
18818
|
+
var asr_JsRiscV$step$lambda$_10_0_run = (var$0) => {
|
|
18819
|
+
let var$1, var$2, var$3, $ptr, $tmp;
|
|
18820
|
+
$ptr = 0;
|
|
18821
|
+
if ($rt_resuming()) {
|
|
18822
|
+
let $thread = $rt_nativeThread();
|
|
18823
|
+
$ptr = $thread.pop();
|
|
18824
|
+
var$3 = $thread.pop();
|
|
18825
|
+
var$2 = $thread.pop();
|
|
18826
|
+
var$1 = $thread.pop();
|
|
18827
|
+
var$0 = $thread.pop();
|
|
18828
|
+
}
|
|
18829
|
+
main: while (true) {
|
|
18830
|
+
switch ($ptr) {
|
|
18831
|
+
case 0:
|
|
18832
|
+
var$1 = var$0.$_014.$main;
|
|
18833
|
+
asr_RARS_requireAssembled(var$1);
|
|
18834
|
+
var$2 = var$1.$main0;
|
|
18835
|
+
var$3 = 1;
|
|
18836
|
+
$ptr = 1;
|
|
18837
|
+
case 1:
|
|
18838
|
+
$tmp = asr_RISCVprogram_simulate0(var$2, var$3);
|
|
18839
|
+
if ($rt_suspending()) {
|
|
18840
|
+
break main;
|
|
18841
|
+
}
|
|
18842
|
+
var$2 = $tmp;
|
|
18843
|
+
var$1.$stopReason = var$2;
|
|
18844
|
+
return var$2.$ordinal0;
|
|
18845
|
+
default:
|
|
18846
|
+
$rt_invalidPointer();
|
|
18847
|
+
}
|
|
18848
|
+
}
|
|
18849
|
+
$rt_nativeThread().push(var$0, var$1, var$2, var$3, $ptr);
|
|
18850
|
+
};
|
|
18847
18851
|
function asr_JsRiscVTokenizedLine() {
|
|
18848
18852
|
let a = this;
|
|
18849
18853
|
jl_Object.call(a);
|
|
@@ -19666,86 +19670,6 @@ function jur_CharClass$16() {
|
|
|
19666
19670
|
var jur_CharClass$16_contains = ($this, $ch) => {
|
|
19667
19671
|
return $this.$val$curAlt6 ^ $this.$val$nb.$contains1($ch) && jur_CharClass_contains($this.$val$clazz7, $ch) ? 0 : 1;
|
|
19668
19672
|
};
|
|
19669
|
-
function asrrh_Register() {
|
|
19670
|
-
let a = this;
|
|
19671
|
-
ju_Observable.call(a);
|
|
19672
|
-
a.$name = null;
|
|
19673
|
-
a.$number = 0;
|
|
19674
|
-
a.$resetValue0 = Long_ZERO;
|
|
19675
|
-
a.$value4 = Long_ZERO;
|
|
19676
|
-
}
|
|
19677
|
-
var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
|
|
19678
|
-
ju_Observable__init_($this);
|
|
19679
|
-
$this.$name = $n;
|
|
19680
|
-
$this.$number = $num;
|
|
19681
|
-
$this.$value4 = $val;
|
|
19682
|
-
$this.$resetValue0 = $val;
|
|
19683
|
-
};
|
|
19684
|
-
var asrrh_Register__init_ = (var_0, var_1, var_2) => {
|
|
19685
|
-
let var_3 = new asrrh_Register();
|
|
19686
|
-
asrrh_Register__init_0(var_3, var_0, var_1, var_2);
|
|
19687
|
-
return var_3;
|
|
19688
|
-
};
|
|
19689
|
-
var asrrh_Register_getName = ($this) => {
|
|
19690
|
-
return $this.$name;
|
|
19691
|
-
};
|
|
19692
|
-
var asrrh_Register_getValue = ($this) => {
|
|
19693
|
-
asrrh_Register_notifyAnyObservers($this, 0);
|
|
19694
|
-
return $this.$value4;
|
|
19695
|
-
};
|
|
19696
|
-
var asrrh_Register_getValueNoNotify = ($this) => {
|
|
19697
|
-
return $this.$value4;
|
|
19698
|
-
};
|
|
19699
|
-
var asrrh_Register_getNumber = ($this) => {
|
|
19700
|
-
return $this.$number;
|
|
19701
|
-
};
|
|
19702
|
-
var asrrh_Register_setValue = ($this, $val) => {
|
|
19703
|
-
let $old;
|
|
19704
|
-
$old = $this.$value4;
|
|
19705
|
-
$this.$value4 = $val;
|
|
19706
|
-
asrrh_Register_notifyAnyObservers($this, 1);
|
|
19707
|
-
return $old;
|
|
19708
|
-
};
|
|
19709
|
-
var asrrh_Register_setValueBackdoor = ($this, $val) => {
|
|
19710
|
-
let $old;
|
|
19711
|
-
$old = $this.$value4;
|
|
19712
|
-
$this.$value4 = $val;
|
|
19713
|
-
return $old;
|
|
19714
|
-
};
|
|
19715
|
-
var asrrh_Register_resetValue = ($this) => {
|
|
19716
|
-
jl_Object_monitorEnterSync($this);
|
|
19717
|
-
try {
|
|
19718
|
-
$this.$value4 = $this.$resetValue0;
|
|
19719
|
-
} finally {
|
|
19720
|
-
jl_Object_monitorExitSync($this);
|
|
19721
|
-
}
|
|
19722
|
-
};
|
|
19723
|
-
var asrrh_Register_changeResetValue = ($this, $reset) => {
|
|
19724
|
-
jl_Object_monitorEnterSync($this);
|
|
19725
|
-
try {
|
|
19726
|
-
$this.$resetValue0 = $reset;
|
|
19727
|
-
} finally {
|
|
19728
|
-
jl_Object_monitorExitSync($this);
|
|
19729
|
-
}
|
|
19730
|
-
};
|
|
19731
|
-
var asrrh_Register_notifyAnyObservers = ($this, $type) => {
|
|
19732
|
-
let var$2, var$3, var$4;
|
|
19733
|
-
var$2 = $this;
|
|
19734
|
-
if (ju_Observable_countObservers(var$2) > 0) {
|
|
19735
|
-
ju_Observable_setChanged(var$2);
|
|
19736
|
-
var$3 = new asrrh_RegisterAccessNotice();
|
|
19737
|
-
var$4 = $this.$name;
|
|
19738
|
-
asrrh_AccessNotice__init_(var$3, $type);
|
|
19739
|
-
var$3.$registerName = var$4;
|
|
19740
|
-
ju_Observable_notifyObservers(var$2, var$3);
|
|
19741
|
-
}
|
|
19742
|
-
};
|
|
19743
|
-
function asr_JsRiscV$PokeRegisterWrite() {
|
|
19744
|
-
let a = this;
|
|
19745
|
-
jl_Object.call(a);
|
|
19746
|
-
a.$register = null;
|
|
19747
|
-
a.$oldValue = Long_ZERO;
|
|
19748
|
-
}
|
|
19749
19673
|
function asr_RISCVprogram() {
|
|
19750
19674
|
let a = this;
|
|
19751
19675
|
jl_Object.call(a);
|
|
@@ -19893,75 +19817,79 @@ var asr_RISCVprogram_createMacroPool = ($this) => {
|
|
|
19893
19817
|
var asr_RISCVprogram_getLocalMacroPool = ($this) => {
|
|
19894
19818
|
return $this.$macroPool;
|
|
19895
19819
|
};
|
|
19896
|
-
|
|
19897
|
-
function asr_JsRiscV$run$lambda$_9_0() {
|
|
19820
|
+
function asrrh_Register() {
|
|
19898
19821
|
let a = this;
|
|
19899
|
-
|
|
19900
|
-
a.$
|
|
19901
|
-
a.$
|
|
19822
|
+
ju_Observable.call(a);
|
|
19823
|
+
a.$name = null;
|
|
19824
|
+
a.$number = 0;
|
|
19825
|
+
a.$resetValue0 = Long_ZERO;
|
|
19826
|
+
a.$value4 = Long_ZERO;
|
|
19902
19827
|
}
|
|
19903
|
-
var
|
|
19904
|
-
|
|
19905
|
-
|
|
19828
|
+
var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
|
|
19829
|
+
ju_Observable__init_($this);
|
|
19830
|
+
$this.$name = $n;
|
|
19831
|
+
$this.$number = $num;
|
|
19832
|
+
$this.$value4 = $val;
|
|
19833
|
+
$this.$resetValue0 = $val;
|
|
19906
19834
|
};
|
|
19907
|
-
var
|
|
19908
|
-
let
|
|
19909
|
-
|
|
19910
|
-
return
|
|
19835
|
+
var asrrh_Register__init_ = (var_0, var_1, var_2) => {
|
|
19836
|
+
let var_3 = new asrrh_Register();
|
|
19837
|
+
asrrh_Register__init_0(var_3, var_0, var_1, var_2);
|
|
19838
|
+
return var_3;
|
|
19911
19839
|
};
|
|
19912
|
-
var
|
|
19913
|
-
|
|
19914
|
-
|
|
19915
|
-
|
|
19916
|
-
|
|
19917
|
-
|
|
19918
|
-
|
|
19919
|
-
|
|
19920
|
-
|
|
19921
|
-
|
|
19922
|
-
|
|
19923
|
-
|
|
19924
|
-
|
|
19925
|
-
|
|
19926
|
-
|
|
19927
|
-
|
|
19928
|
-
|
|
19929
|
-
|
|
19930
|
-
|
|
19931
|
-
|
|
19932
|
-
|
|
19933
|
-
|
|
19934
|
-
|
|
19935
|
-
|
|
19936
|
-
|
|
19937
|
-
|
|
19840
|
+
var asrrh_Register_getName = ($this) => {
|
|
19841
|
+
return $this.$name;
|
|
19842
|
+
};
|
|
19843
|
+
var asrrh_Register_getValue = ($this) => {
|
|
19844
|
+
asrrh_Register_notifyAnyObservers($this, 0);
|
|
19845
|
+
return $this.$value4;
|
|
19846
|
+
};
|
|
19847
|
+
var asrrh_Register_getValueNoNotify = ($this) => {
|
|
19848
|
+
return $this.$value4;
|
|
19849
|
+
};
|
|
19850
|
+
var asrrh_Register_getNumber = ($this) => {
|
|
19851
|
+
return $this.$number;
|
|
19852
|
+
};
|
|
19853
|
+
var asrrh_Register_setValue = ($this, $val) => {
|
|
19854
|
+
let $old;
|
|
19855
|
+
$old = $this.$value4;
|
|
19856
|
+
$this.$value4 = $val;
|
|
19857
|
+
asrrh_Register_notifyAnyObservers($this, 1);
|
|
19858
|
+
return $old;
|
|
19859
|
+
};
|
|
19860
|
+
var asrrh_Register_setValueBackdoor = ($this, $val) => {
|
|
19861
|
+
let $old;
|
|
19862
|
+
$old = $this.$value4;
|
|
19863
|
+
$this.$value4 = $val;
|
|
19864
|
+
return $old;
|
|
19865
|
+
};
|
|
19866
|
+
var asrrh_Register_resetValue = ($this) => {
|
|
19867
|
+
jl_Object_monitorEnterSync($this);
|
|
19868
|
+
try {
|
|
19869
|
+
$this.$value4 = $this.$resetValue0;
|
|
19870
|
+
} finally {
|
|
19871
|
+
jl_Object_monitorExitSync($this);
|
|
19938
19872
|
}
|
|
19939
19873
|
};
|
|
19940
|
-
var
|
|
19941
|
-
|
|
19942
|
-
|
|
19943
|
-
|
|
19944
|
-
|
|
19945
|
-
|
|
19946
|
-
$ptr = $thread.pop();
|
|
19947
|
-
$this = $thread.pop();
|
|
19874
|
+
var asrrh_Register_changeResetValue = ($this, $reset) => {
|
|
19875
|
+
jl_Object_monitorEnterSync($this);
|
|
19876
|
+
try {
|
|
19877
|
+
$this.$resetValue0 = $reset;
|
|
19878
|
+
} finally {
|
|
19879
|
+
jl_Object_monitorExitSync($this);
|
|
19948
19880
|
}
|
|
19949
|
-
|
|
19950
|
-
|
|
19951
|
-
|
|
19952
|
-
|
|
19953
|
-
|
|
19954
|
-
|
|
19955
|
-
|
|
19956
|
-
|
|
19957
|
-
|
|
19958
|
-
|
|
19959
|
-
|
|
19960
|
-
default:
|
|
19961
|
-
$rt_invalidPointer();
|
|
19962
|
-
}
|
|
19881
|
+
};
|
|
19882
|
+
var asrrh_Register_notifyAnyObservers = ($this, $type) => {
|
|
19883
|
+
let var$2, var$3, var$4;
|
|
19884
|
+
var$2 = $this;
|
|
19885
|
+
if (ju_Observable_countObservers(var$2) > 0) {
|
|
19886
|
+
ju_Observable_setChanged(var$2);
|
|
19887
|
+
var$3 = new asrrh_RegisterAccessNotice();
|
|
19888
|
+
var$4 = $this.$name;
|
|
19889
|
+
asrrh_AccessNotice__init_(var$3, $type);
|
|
19890
|
+
var$3.$registerName = var$4;
|
|
19891
|
+
ju_Observable_notifyObservers(var$2, var$3);
|
|
19963
19892
|
}
|
|
19964
|
-
$rt_nativeThread().push($this, $ptr);
|
|
19965
19893
|
};
|
|
19966
19894
|
var jl_AutoCloseable = $rt_classWithoutFields(0);
|
|
19967
19895
|
var jus_BaseStream = $rt_classWithoutFields(0);
|
|
@@ -20032,6 +19960,128 @@ function jusi_ArrayStreamImpl() {
|
|
|
20032
19960
|
a.$end1 = 0;
|
|
20033
19961
|
a.$size3 = 0;
|
|
20034
19962
|
}
|
|
19963
|
+
function asrs_BackStepper$BackstepStack() {
|
|
19964
|
+
let a = this;
|
|
19965
|
+
jl_Object.call(a);
|
|
19966
|
+
a.$capacity = 0;
|
|
19967
|
+
a.$size1 = 0;
|
|
19968
|
+
a.$top = 0;
|
|
19969
|
+
a.$stack = null;
|
|
19970
|
+
a.$this$04 = null;
|
|
19971
|
+
}
|
|
19972
|
+
var asrs_BackStepper$BackstepStack_getStack = ($this) => {
|
|
19973
|
+
let var$1, $usedStack, var$3, $i, var$5, var$6, var$7;
|
|
19974
|
+
var$1 = $this.$size1;
|
|
19975
|
+
$usedStack = $rt_createArray(asrs_BackStepper$BackStep, var$1);
|
|
19976
|
+
var$3 = $usedStack.data;
|
|
19977
|
+
$i = 0;
|
|
19978
|
+
while ($i < var$1) {
|
|
19979
|
+
var$5 = $this.$stack.data;
|
|
19980
|
+
var$6 = $this.$top - $i | 0;
|
|
19981
|
+
var$7 = $this.$capacity;
|
|
19982
|
+
var$3[$i] = var$5[(var$6 + var$7 | 0) % var$7 | 0];
|
|
19983
|
+
$i = $i + 1 | 0;
|
|
19984
|
+
}
|
|
19985
|
+
return $usedStack;
|
|
19986
|
+
};
|
|
19987
|
+
var asrs_BackStepper$BackstepStack_empty = ($this) => {
|
|
19988
|
+
return $this.$size1 ? 0 : 1;
|
|
19989
|
+
};
|
|
19990
|
+
var asrs_BackStepper$BackstepStack_advance = ($this) => {
|
|
19991
|
+
let $next, var$2;
|
|
19992
|
+
$next = $this.$top + 1 | 0;
|
|
19993
|
+
var$2 = $this.$capacity;
|
|
19994
|
+
if ($next == var$2)
|
|
19995
|
+
$next = 0;
|
|
19996
|
+
$this.$top = $next;
|
|
19997
|
+
$next = $this.$size1;
|
|
19998
|
+
if ($next < var$2)
|
|
19999
|
+
$this.$size1 = $next + 1 | 0;
|
|
20000
|
+
};
|
|
20001
|
+
var asrs_BackStepper$BackstepStack_push = ($this, $act, $programCounter, $parm1, $parm2, $wroteInt, $wroteLong) => {
|
|
20002
|
+
let var$7, $step, var$9, $$je;
|
|
20003
|
+
var$7 = $this.$this$04;
|
|
20004
|
+
if (var$7.$pokeGroup) {
|
|
20005
|
+
var$7 = var$7.$pokeRestores;
|
|
20006
|
+
$step = new asrs_BackStepper$PokeRestore();
|
|
20007
|
+
$step.$action0 = $act;
|
|
20008
|
+
$step.$param10 = $parm1;
|
|
20009
|
+
$step.$param20 = $parm2;
|
|
20010
|
+
ju_ArrayList_add(var$7, $step);
|
|
20011
|
+
return;
|
|
20012
|
+
}
|
|
20013
|
+
asrs_BackStepper$BackstepStack_advance($this);
|
|
20014
|
+
$step = $this.$stack.data[$this.$top];
|
|
20015
|
+
$step.$action = $act;
|
|
20016
|
+
$step.$pc1 = $programCounter;
|
|
20017
|
+
$step.$pokeGroup0 = 0;
|
|
20018
|
+
$step.$pokeRestores0 = null;
|
|
20019
|
+
$act = $step.$this$01;
|
|
20020
|
+
if ($programCounter == $act.$lastStatementPc)
|
|
20021
|
+
var$9 = $act.$lastStatement;
|
|
20022
|
+
else {
|
|
20023
|
+
a: {
|
|
20024
|
+
var$9 = null;
|
|
20025
|
+
if (asrrh_Memory_wordAligned($programCounter)) {
|
|
20026
|
+
if (!asrrh_Memory_inTextSegment($programCounter)) {
|
|
20027
|
+
$act = asr_Globals_getSettings();
|
|
20028
|
+
asr_Settings$Bool_$callClinit();
|
|
20029
|
+
if (!asr_Settings_getBooleanSetting($act, asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED))
|
|
20030
|
+
break a;
|
|
20031
|
+
}
|
|
20032
|
+
try {
|
|
20033
|
+
asr_Globals_$callClinit();
|
|
20034
|
+
var$9 = asrrh_Memory_getStatementNoNotify(asr_Globals_memory, $programCounter);
|
|
20035
|
+
break a;
|
|
20036
|
+
} catch ($$e) {
|
|
20037
|
+
$$je = $rt_wrapException($$e);
|
|
20038
|
+
if ($$je instanceof jl_Exception) {
|
|
20039
|
+
var$9 = null;
|
|
20040
|
+
break a;
|
|
20041
|
+
} else {
|
|
20042
|
+
throw $$e;
|
|
20043
|
+
}
|
|
20044
|
+
}
|
|
20045
|
+
}
|
|
20046
|
+
}
|
|
20047
|
+
$act = $step.$this$01;
|
|
20048
|
+
$act.$lastStatementPc = $programCounter;
|
|
20049
|
+
$act.$lastStatement = var$9;
|
|
20050
|
+
}
|
|
20051
|
+
if (var$9 === null)
|
|
20052
|
+
$step.$pc1 = -1;
|
|
20053
|
+
$step.$ps = var$9;
|
|
20054
|
+
$step.$param1 = $parm1;
|
|
20055
|
+
$step.$param2 = $parm2;
|
|
20056
|
+
$step.$param3Int = $wroteInt;
|
|
20057
|
+
$step.$param3Long = $wroteLong;
|
|
20058
|
+
};
|
|
20059
|
+
var asrs_BackStepper$BackstepStack_push1 = ($this, $act, $programCounter, $parm1, $parm2) => {
|
|
20060
|
+
asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, $parm1, $parm2, 0, Long_ZERO);
|
|
20061
|
+
};
|
|
20062
|
+
var asrs_BackStepper$BackstepStack_push0 = ($this, $act, $programCounter) => {
|
|
20063
|
+
asrs_BackStepper$BackstepStack_push1($this, $act, $programCounter, 0, Long_ZERO);
|
|
20064
|
+
};
|
|
20065
|
+
var asrs_BackStepper$BackstepStack_peek = ($this) => {
|
|
20066
|
+
return $this.$stack.data[$this.$top];
|
|
20067
|
+
};
|
|
20068
|
+
function asrs_BackStepper$BackStep() {
|
|
20069
|
+
let a = this;
|
|
20070
|
+
jl_Object.call(a);
|
|
20071
|
+
a.$action = null;
|
|
20072
|
+
a.$pc1 = 0;
|
|
20073
|
+
a.$ps = null;
|
|
20074
|
+
a.$param1 = 0;
|
|
20075
|
+
a.$param2 = Long_ZERO;
|
|
20076
|
+
a.$param3Int = 0;
|
|
20077
|
+
a.$param3Long = Long_ZERO;
|
|
20078
|
+
a.$pokeGroup0 = 0;
|
|
20079
|
+
a.$pokeRestores0 = null;
|
|
20080
|
+
a.$this$01 = null;
|
|
20081
|
+
}
|
|
20082
|
+
var asrs_BackStepper$BackStep_isPoke = ($this) => {
|
|
20083
|
+
return !$this.$pokeGroup0 ? 0 : 1;
|
|
20084
|
+
};
|
|
20035
20085
|
function jl_Long() {
|
|
20036
20086
|
jl_Number.call(this);
|
|
20037
20087
|
this.$value2 = Long_ZERO;
|
|
@@ -20311,179 +20361,6 @@ var jl_Long_compareTo = ($this, var$1) => {
|
|
|
20311
20361
|
var jl_Long__clinit_ = () => {
|
|
20312
20362
|
jl_Long_TYPE = $rt_cls($rt_longcls);
|
|
20313
20363
|
};
|
|
20314
|
-
function asrrh_AddressErrorException() {
|
|
20315
|
-
let a = this;
|
|
20316
|
-
jl_Exception.call(a);
|
|
20317
|
-
a.$address1 = 0;
|
|
20318
|
-
a.$type0 = 0;
|
|
20319
|
-
}
|
|
20320
|
-
var asrrh_AddressErrorException__init_0 = ($this, $message, $exceptType, $addr) => {
|
|
20321
|
-
let var$4, var$5;
|
|
20322
|
-
var$4 = asru_Binary_intToHexString($addr);
|
|
20323
|
-
var$5 = new jl_StringBuilder();
|
|
20324
|
-
jl_AbstractStringBuilder__init_(var$5);
|
|
20325
|
-
jl_StringBuilder_append(jl_StringBuilder_append(var$5, $message), var$4);
|
|
20326
|
-
jl_Throwable__init_0($this, jl_AbstractStringBuilder_toString(var$5));
|
|
20327
|
-
$this.$address1 = $addr;
|
|
20328
|
-
$this.$type0 = $exceptType;
|
|
20329
|
-
};
|
|
20330
|
-
var asrrh_AddressErrorException__init_ = (var_0, var_1, var_2) => {
|
|
20331
|
-
let var_3 = new asrrh_AddressErrorException();
|
|
20332
|
-
asrrh_AddressErrorException__init_0(var_3, var_0, var_1, var_2);
|
|
20333
|
-
return var_3;
|
|
20334
|
-
};
|
|
20335
|
-
var asrrh_AddressErrorException_getAddress = ($this) => {
|
|
20336
|
-
return $this.$address1;
|
|
20337
|
-
};
|
|
20338
|
-
function asr_JsCompilationResult$_init_$lambda$_0_0() {
|
|
20339
|
-
jl_Object.call(this);
|
|
20340
|
-
this.$_019 = null;
|
|
20341
|
-
}
|
|
20342
|
-
var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
|
|
20343
|
-
let var$2, var$3, var$4;
|
|
20344
|
-
var$1 = var$1;
|
|
20345
|
-
var$2 = var$0.$_019;
|
|
20346
|
-
var$3 = new asr_JsCompilationResult$JsCompilationError();
|
|
20347
|
-
var$3.$this$017 = var$2;
|
|
20348
|
-
var$3.$isWarning0 = var$1.$isWarning;
|
|
20349
|
-
var$3.$message2 = var$1.$message0;
|
|
20350
|
-
var$2 = ju_Collection_stream(ju_ArrayList__init_0(var$1.$macroExpansionTrace));
|
|
20351
|
-
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_0();
|
|
20352
|
-
var$2 = jusi_SimpleStreamImpl_map(var$2, var$4);
|
|
20353
|
-
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_1();
|
|
20354
|
-
var$3.$macroExpansionTrace1 = jusi_SimpleStreamImpl_toArray(var$2, var$4);
|
|
20355
|
-
var$3.$sourcePath3 = var$1.$sourcePath0;
|
|
20356
|
-
var$3.$sourceLine6 = var$1.$sourceLine0;
|
|
20357
|
-
var$3.$sourceColumn0 = var$1.$sourceColumn;
|
|
20358
|
-
return var$3;
|
|
20359
|
-
};
|
|
20360
|
-
var juf_Supplier = $rt_classWithoutFields(0);
|
|
20361
|
-
var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
|
|
20362
|
-
var juf_BiConsumer = $rt_classWithoutFields(0);
|
|
20363
|
-
var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
|
|
20364
|
-
var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
|
|
20365
|
-
function asrs_BackStepper$BackstepStack() {
|
|
20366
|
-
let a = this;
|
|
20367
|
-
jl_Object.call(a);
|
|
20368
|
-
a.$capacity = 0;
|
|
20369
|
-
a.$size1 = 0;
|
|
20370
|
-
a.$top = 0;
|
|
20371
|
-
a.$stack = null;
|
|
20372
|
-
a.$this$04 = null;
|
|
20373
|
-
}
|
|
20374
|
-
var asrs_BackStepper$BackstepStack_getStack = ($this) => {
|
|
20375
|
-
let var$1, $usedStack, var$3, $i, var$5, var$6, var$7;
|
|
20376
|
-
var$1 = $this.$size1;
|
|
20377
|
-
$usedStack = $rt_createArray(asrs_BackStepper$BackStep, var$1);
|
|
20378
|
-
var$3 = $usedStack.data;
|
|
20379
|
-
$i = 0;
|
|
20380
|
-
while ($i < var$1) {
|
|
20381
|
-
var$5 = $this.$stack.data;
|
|
20382
|
-
var$6 = $this.$top - $i | 0;
|
|
20383
|
-
var$7 = $this.$capacity;
|
|
20384
|
-
var$3[$i] = var$5[(var$6 + var$7 | 0) % var$7 | 0];
|
|
20385
|
-
$i = $i + 1 | 0;
|
|
20386
|
-
}
|
|
20387
|
-
return $usedStack;
|
|
20388
|
-
};
|
|
20389
|
-
var asrs_BackStepper$BackstepStack_empty = ($this) => {
|
|
20390
|
-
return $this.$size1 ? 0 : 1;
|
|
20391
|
-
};
|
|
20392
|
-
var asrs_BackStepper$BackstepStack_advance = ($this) => {
|
|
20393
|
-
let $next, var$2;
|
|
20394
|
-
$next = $this.$top + 1 | 0;
|
|
20395
|
-
var$2 = $this.$capacity;
|
|
20396
|
-
if ($next == var$2)
|
|
20397
|
-
$next = 0;
|
|
20398
|
-
$this.$top = $next;
|
|
20399
|
-
$next = $this.$size1;
|
|
20400
|
-
if ($next < var$2)
|
|
20401
|
-
$this.$size1 = $next + 1 | 0;
|
|
20402
|
-
};
|
|
20403
|
-
var asrs_BackStepper$BackstepStack_push = ($this, $act, $programCounter, $parm1, $parm2, $wroteInt, $wroteLong) => {
|
|
20404
|
-
let var$7, $step, var$9, $$je;
|
|
20405
|
-
var$7 = $this.$this$04;
|
|
20406
|
-
if (var$7.$pokeGroup) {
|
|
20407
|
-
var$7 = var$7.$pokeRestores;
|
|
20408
|
-
$step = new asrs_BackStepper$PokeRestore();
|
|
20409
|
-
$step.$action0 = $act;
|
|
20410
|
-
$step.$param10 = $parm1;
|
|
20411
|
-
$step.$param20 = $parm2;
|
|
20412
|
-
ju_ArrayList_add(var$7, $step);
|
|
20413
|
-
return;
|
|
20414
|
-
}
|
|
20415
|
-
asrs_BackStepper$BackstepStack_advance($this);
|
|
20416
|
-
$step = $this.$stack.data[$this.$top];
|
|
20417
|
-
$step.$action = $act;
|
|
20418
|
-
$step.$pc1 = $programCounter;
|
|
20419
|
-
$step.$pokeGroup0 = 0;
|
|
20420
|
-
$step.$pokeRestores0 = null;
|
|
20421
|
-
$act = $step.$this$01;
|
|
20422
|
-
if ($programCounter == $act.$lastStatementPc)
|
|
20423
|
-
var$9 = $act.$lastStatement;
|
|
20424
|
-
else {
|
|
20425
|
-
a: {
|
|
20426
|
-
var$9 = null;
|
|
20427
|
-
if (asrrh_Memory_wordAligned($programCounter)) {
|
|
20428
|
-
if (!asrrh_Memory_inTextSegment($programCounter)) {
|
|
20429
|
-
$act = asr_Globals_getSettings();
|
|
20430
|
-
asr_Settings$Bool_$callClinit();
|
|
20431
|
-
if (!asr_Settings_getBooleanSetting($act, asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED))
|
|
20432
|
-
break a;
|
|
20433
|
-
}
|
|
20434
|
-
try {
|
|
20435
|
-
asr_Globals_$callClinit();
|
|
20436
|
-
var$9 = asrrh_Memory_getStatementNoNotify(asr_Globals_memory, $programCounter);
|
|
20437
|
-
break a;
|
|
20438
|
-
} catch ($$e) {
|
|
20439
|
-
$$je = $rt_wrapException($$e);
|
|
20440
|
-
if ($$je instanceof jl_Exception) {
|
|
20441
|
-
var$9 = null;
|
|
20442
|
-
break a;
|
|
20443
|
-
} else {
|
|
20444
|
-
throw $$e;
|
|
20445
|
-
}
|
|
20446
|
-
}
|
|
20447
|
-
}
|
|
20448
|
-
}
|
|
20449
|
-
$act = $step.$this$01;
|
|
20450
|
-
$act.$lastStatementPc = $programCounter;
|
|
20451
|
-
$act.$lastStatement = var$9;
|
|
20452
|
-
}
|
|
20453
|
-
if (var$9 === null)
|
|
20454
|
-
$step.$pc1 = -1;
|
|
20455
|
-
$step.$ps = var$9;
|
|
20456
|
-
$step.$param1 = $parm1;
|
|
20457
|
-
$step.$param2 = $parm2;
|
|
20458
|
-
$step.$param3Int = $wroteInt;
|
|
20459
|
-
$step.$param3Long = $wroteLong;
|
|
20460
|
-
};
|
|
20461
|
-
var asrs_BackStepper$BackstepStack_push1 = ($this, $act, $programCounter, $parm1, $parm2) => {
|
|
20462
|
-
asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, $parm1, $parm2, 0, Long_ZERO);
|
|
20463
|
-
};
|
|
20464
|
-
var asrs_BackStepper$BackstepStack_push0 = ($this, $act, $programCounter) => {
|
|
20465
|
-
asrs_BackStepper$BackstepStack_push1($this, $act, $programCounter, 0, Long_ZERO);
|
|
20466
|
-
};
|
|
20467
|
-
var asrs_BackStepper$BackstepStack_peek = ($this) => {
|
|
20468
|
-
return $this.$stack.data[$this.$top];
|
|
20469
|
-
};
|
|
20470
|
-
function asrs_BackStepper$BackStep() {
|
|
20471
|
-
let a = this;
|
|
20472
|
-
jl_Object.call(a);
|
|
20473
|
-
a.$action = null;
|
|
20474
|
-
a.$pc1 = 0;
|
|
20475
|
-
a.$ps = null;
|
|
20476
|
-
a.$param1 = 0;
|
|
20477
|
-
a.$param2 = Long_ZERO;
|
|
20478
|
-
a.$param3Int = 0;
|
|
20479
|
-
a.$param3Long = Long_ZERO;
|
|
20480
|
-
a.$pokeGroup0 = 0;
|
|
20481
|
-
a.$pokeRestores0 = null;
|
|
20482
|
-
a.$this$01 = null;
|
|
20483
|
-
}
|
|
20484
|
-
var asrs_BackStepper$BackStep_isPoke = ($this) => {
|
|
20485
|
-
return !$this.$pokeGroup0 ? 0 : 1;
|
|
20486
|
-
};
|
|
20487
20364
|
var otjc_JSObjects = $rt_classWithoutFields();
|
|
20488
20365
|
var otji_JSWrapper$Helper = $rt_classWithoutFields();
|
|
20489
20366
|
var otji_JSWrapper$Helper_hashCodes = null;
|
|
@@ -20520,6 +20397,109 @@ var otji_JSWrapper$Helper__clinit_ = () => {
|
|
|
20520
20397
|
otji_JSWrapper$Helper_numberFinalizationRegistry = var$1;
|
|
20521
20398
|
};
|
|
20522
20399
|
var otjc_JSUndefined = $rt_classWithoutFields();
|
|
20400
|
+
var otjc_JSPromise$Executor = $rt_classWithoutFields(0);
|
|
20401
|
+
function asr_JsRiscV$run$lambda$_9_0() {
|
|
20402
|
+
let a = this;
|
|
20403
|
+
jl_Object.call(a);
|
|
20404
|
+
a.$_017 = null;
|
|
20405
|
+
a.$_17 = null;
|
|
20406
|
+
}
|
|
20407
|
+
var asr_JsRiscV$run$lambda$_9_0__init_0 = (var$0, var$1, var$2) => {
|
|
20408
|
+
var$0.$_017 = var$1;
|
|
20409
|
+
var$0.$_17 = var$2;
|
|
20410
|
+
};
|
|
20411
|
+
var asr_JsRiscV$run$lambda$_9_0__init_ = (var_0, var_1) => {
|
|
20412
|
+
let var_2 = new asr_JsRiscV$run$lambda$_9_0();
|
|
20413
|
+
asr_JsRiscV$run$lambda$_9_0__init_0(var_2, var_0, var_1);
|
|
20414
|
+
return var_2;
|
|
20415
|
+
};
|
|
20416
|
+
var asr_JsRiscV$run$lambda$_9_0_onExecute$exported$0 = (var$1, var$2, var$3) => {
|
|
20417
|
+
let var$4, var$5;
|
|
20418
|
+
var$2 = otji_JS_functionAsObject(var$2, "accept");
|
|
20419
|
+
var$3 = otji_JS_functionAsObject(var$3, "accept");
|
|
20420
|
+
var$1 = var$1;
|
|
20421
|
+
var$4 = var$1.$_017;
|
|
20422
|
+
var$1 = var$1.$_17;
|
|
20423
|
+
var$5 = new asr_JsRiscV$lambda$run$2$lambda$_75_0();
|
|
20424
|
+
var$5.$_011 = var$4;
|
|
20425
|
+
var$5.$_16 = var$1;
|
|
20426
|
+
var$5.$_21 = var$3;
|
|
20427
|
+
var$5.$_30 = var$2;
|
|
20428
|
+
asr_JsRiscV_$callClinit();
|
|
20429
|
+
ju_ArrayDeque_add(asr_JsRiscV_tasks, var$5);
|
|
20430
|
+
if (asr_JsRiscV_workerStarted) {
|
|
20431
|
+
var$1 = asr_JsRiscV_unpark;
|
|
20432
|
+
if (var$1 !== null) {
|
|
20433
|
+
asr_JsRiscV_unpark = null;
|
|
20434
|
+
var$1.accept(null);
|
|
20435
|
+
}
|
|
20436
|
+
} else {
|
|
20437
|
+
asr_JsRiscV_workerStarted = 1;
|
|
20438
|
+
var$1 = new asr_JsRiscV$submit$lambda$_8_0();
|
|
20439
|
+
var$2 = new otjc_JSPromise$runAsync$lambda$_15_0();
|
|
20440
|
+
var$2.$_01 = var$1;
|
|
20441
|
+
new Promise(otji_JS_function(otji_JSWrapper_unwrap(var$2), "onExecute"));
|
|
20442
|
+
}
|
|
20443
|
+
};
|
|
20444
|
+
var otjc_JSPromise = $rt_classWithoutFields();
|
|
20445
|
+
var otjc_JSPromise_await$static = ($this) => {
|
|
20446
|
+
let $ptr, $tmp;
|
|
20447
|
+
$ptr = 0;
|
|
20448
|
+
if ($rt_resuming()) {
|
|
20449
|
+
let $thread = $rt_nativeThread();
|
|
20450
|
+
$ptr = $thread.pop();
|
|
20451
|
+
$this = $thread.pop();
|
|
20452
|
+
}
|
|
20453
|
+
main: while (true) {
|
|
20454
|
+
switch ($ptr) {
|
|
20455
|
+
case 0:
|
|
20456
|
+
$ptr = 1;
|
|
20457
|
+
case 1:
|
|
20458
|
+
$tmp = otjc_JSPromiseHelper_await$_asyncCall_$($this);
|
|
20459
|
+
if ($rt_suspending()) {
|
|
20460
|
+
break main;
|
|
20461
|
+
}
|
|
20462
|
+
$this = $tmp;
|
|
20463
|
+
return $this;
|
|
20464
|
+
default:
|
|
20465
|
+
$rt_invalidPointer();
|
|
20466
|
+
}
|
|
20467
|
+
}
|
|
20468
|
+
$rt_nativeThread().push($this, $ptr);
|
|
20469
|
+
};
|
|
20470
|
+
function asr_JsCompilationResult$_init_$lambda$_0_0() {
|
|
20471
|
+
jl_Object.call(this);
|
|
20472
|
+
this.$_019 = null;
|
|
20473
|
+
}
|
|
20474
|
+
var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
|
|
20475
|
+
let var$2, var$3, var$4;
|
|
20476
|
+
var$1 = var$1;
|
|
20477
|
+
var$2 = var$0.$_019;
|
|
20478
|
+
var$3 = new asr_JsCompilationResult$JsCompilationError();
|
|
20479
|
+
var$3.$this$017 = var$2;
|
|
20480
|
+
var$3.$isWarning0 = var$1.$isWarning;
|
|
20481
|
+
var$3.$message2 = var$1.$message0;
|
|
20482
|
+
var$2 = ju_Collection_stream(ju_ArrayList__init_0(var$1.$macroExpansionTrace));
|
|
20483
|
+
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_0();
|
|
20484
|
+
var$2 = jusi_SimpleStreamImpl_map(var$2, var$4);
|
|
20485
|
+
var$4 = new asr_JsCompilationResult$JsCompilationError$_init_$lambda$_0_1();
|
|
20486
|
+
var$3.$macroExpansionTrace1 = jusi_SimpleStreamImpl_toArray(var$2, var$4);
|
|
20487
|
+
var$3.$sourcePath3 = var$1.$sourcePath0;
|
|
20488
|
+
var$3.$sourceLine6 = var$1.$sourceLine0;
|
|
20489
|
+
var$3.$sourceColumn0 = var$1.$sourceColumn;
|
|
20490
|
+
return var$3;
|
|
20491
|
+
};
|
|
20492
|
+
var juf_Supplier = $rt_classWithoutFields(0);
|
|
20493
|
+
var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
|
|
20494
|
+
var juf_BiConsumer = $rt_classWithoutFields(0);
|
|
20495
|
+
var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
|
|
20496
|
+
var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
|
|
20497
|
+
function asr_JsRiscV$PokeRegisterWrite() {
|
|
20498
|
+
let a = this;
|
|
20499
|
+
jl_Object.call(a);
|
|
20500
|
+
a.$register = null;
|
|
20501
|
+
a.$oldValue = Long_ZERO;
|
|
20502
|
+
}
|
|
20523
20503
|
var asr_JsPokeWrite = $rt_classWithoutFields();
|
|
20524
20504
|
var asr_JsPokeWrite_toNumberArray = ($values) => {
|
|
20525
20505
|
let var$2, $array, $i, var$5;
|
|
@@ -20540,6 +20520,30 @@ var asr_JsPokeWrite_createRegister$js_body$_4 = (var$1, var$2, var$3) => {
|
|
|
20540
20520
|
var asr_JsPokeWrite_createMemory$js_body$_5 = (var$1, var$2, var$3) => {
|
|
20541
20521
|
return { type: "memory", address: var$1, old: var$2, new: var$3 };
|
|
20542
20522
|
};
|
|
20523
|
+
function asrrh_AddressErrorException() {
|
|
20524
|
+
let a = this;
|
|
20525
|
+
jl_Exception.call(a);
|
|
20526
|
+
a.$address1 = 0;
|
|
20527
|
+
a.$type0 = 0;
|
|
20528
|
+
}
|
|
20529
|
+
var asrrh_AddressErrorException__init_0 = ($this, var$1, var$2, var$3) => {
|
|
20530
|
+
let var$4, var$5;
|
|
20531
|
+
var$4 = asru_Binary_intToHexString(var$3);
|
|
20532
|
+
var$5 = new jl_StringBuilder();
|
|
20533
|
+
jl_AbstractStringBuilder__init_(var$5);
|
|
20534
|
+
jl_StringBuilder_append(jl_StringBuilder_append(var$5, var$1), var$4);
|
|
20535
|
+
jl_Throwable__init_0($this, jl_AbstractStringBuilder_toString(var$5));
|
|
20536
|
+
$this.$address1 = var$3;
|
|
20537
|
+
$this.$type0 = var$2;
|
|
20538
|
+
};
|
|
20539
|
+
var asrrh_AddressErrorException__init_ = (var_0, var_1, var_2) => {
|
|
20540
|
+
let var_3 = new asrrh_AddressErrorException();
|
|
20541
|
+
asrrh_AddressErrorException__init_0(var_3, var_0, var_1, var_2);
|
|
20542
|
+
return var_3;
|
|
20543
|
+
};
|
|
20544
|
+
var asrrh_AddressErrorException_getAddress = ($this) => {
|
|
20545
|
+
return $this.$address1;
|
|
20546
|
+
};
|
|
20543
20547
|
var asra_TokenTypes = $rt_classWithoutFields(jl_Enum);
|
|
20544
20548
|
var asra_TokenTypes_COMMENT = null;
|
|
20545
20549
|
var asra_TokenTypes_DIRECTIVE = null;
|
|
@@ -25562,15 +25566,6 @@ var asrrh_RegisterBlock_resetRegisters = ($this) => {
|
|
|
25562
25566
|
var$3 = var$3 + 1 | 0;
|
|
25563
25567
|
}
|
|
25564
25568
|
};
|
|
25565
|
-
function asrrh_StackFrame() {
|
|
25566
|
-
let a = this;
|
|
25567
|
-
jl_Object.call(a);
|
|
25568
|
-
a.$pc3 = 0;
|
|
25569
|
-
a.$toAddress0 = 0;
|
|
25570
|
-
a.$sp0 = 0;
|
|
25571
|
-
a.$fp0 = 0;
|
|
25572
|
-
a.$registers1 = null;
|
|
25573
|
-
}
|
|
25574
25569
|
function asr_ErrorList() {
|
|
25575
25570
|
let a = this;
|
|
25576
25571
|
jl_Object.call(a);
|
|
@@ -25656,6 +25651,15 @@ var asr_ErrorList_generateReport = ($this, $isWarning) => {
|
|
|
25656
25651
|
}
|
|
25657
25652
|
return jl_AbstractStringBuilder_toString($report);
|
|
25658
25653
|
};
|
|
25654
|
+
function asrrh_StackFrame() {
|
|
25655
|
+
let a = this;
|
|
25656
|
+
jl_Object.call(a);
|
|
25657
|
+
a.$pc3 = 0;
|
|
25658
|
+
a.$toAddress0 = 0;
|
|
25659
|
+
a.$sp0 = 0;
|
|
25660
|
+
a.$fp0 = 0;
|
|
25661
|
+
a.$registers1 = null;
|
|
25662
|
+
}
|
|
25659
25663
|
function asra_Token() {
|
|
25660
25664
|
let a = this;
|
|
25661
25665
|
jl_Object.call(a);
|
|
@@ -26379,7 +26383,7 @@ var asrrs_SyscallMessageDialogFloat_simulate = ($this, $statement) => {
|
|
|
26379
26383
|
$message = asrrs_NullString_get($statement);
|
|
26380
26384
|
var$3 = $this.$io7;
|
|
26381
26385
|
asrrh_FloatingPointRegisterFile_$callClinit();
|
|
26382
|
-
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(
|
|
26386
|
+
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(554))));
|
|
26383
26387
|
var$4 = new jl_StringBuilder();
|
|
26384
26388
|
jl_AbstractStringBuilder__init_(var$4);
|
|
26385
26389
|
jl_StringBuilder_append(jl_StringBuilder_append(var$4, $message), $statement);
|
|
@@ -26736,7 +26740,7 @@ var asrrs_SyscallPrintFloat_simulate = ($this, $statement) => {
|
|
|
26736
26740
|
main: while (true) {
|
|
26737
26741
|
switch ($ptr) {
|
|
26738
26742
|
case 0:
|
|
26739
|
-
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(
|
|
26743
|
+
$statement = jl_Float_toString($rt_intBitsToFloat(asrrh_FloatingPointRegisterFile_getValue0($rt_s(553))));
|
|
26740
26744
|
$ptr = 1;
|
|
26741
26745
|
case 1:
|
|
26742
26746
|
asru_SystemIO_printString($statement);
|
|
@@ -28321,6 +28325,40 @@ var jur_BackReferencedSingleSet_findBack = ($this, $stringIndex, $startSearch, $
|
|
|
28321
28325
|
var jur_BackReferencedSingleSet_processBackRefReplacement = ($this) => {
|
|
28322
28326
|
return null;
|
|
28323
28327
|
};
|
|
28328
|
+
var jus_IntStream = $rt_classWithoutFields(0);
|
|
28329
|
+
var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
|
|
28330
|
+
function jusi_MappingToIntStreamImpl() {
|
|
28331
|
+
let a = this;
|
|
28332
|
+
jusi_SimpleIntStreamImpl.call(a);
|
|
28333
|
+
a.$source0 = null;
|
|
28334
|
+
a.$mapper0 = null;
|
|
28335
|
+
}
|
|
28336
|
+
var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
|
|
28337
|
+
let var$2, var$3, var$4, var$5, var$6;
|
|
28338
|
+
var$2 = $this.$source0;
|
|
28339
|
+
var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
|
|
28340
|
+
var$3.$_025 = $this;
|
|
28341
|
+
var$3.$_110 = $consumer;
|
|
28342
|
+
$consumer = var$2;
|
|
28343
|
+
a: {
|
|
28344
|
+
while (true) {
|
|
28345
|
+
var$4 = $consumer.$index1;
|
|
28346
|
+
if (var$4 >= $consumer.$end1)
|
|
28347
|
+
break a;
|
|
28348
|
+
var$5 = $consumer.$array8.data;
|
|
28349
|
+
$consumer.$index1 = var$4 + 1 | 0;
|
|
28350
|
+
var$2 = var$5[var$4];
|
|
28351
|
+
var$6 = var$3.$_110;
|
|
28352
|
+
var$2 = var$2;
|
|
28353
|
+
asr_JsRiscV_$callClinit();
|
|
28354
|
+
if (var$6.$test0(Long_lo(var$2.$getValue())))
|
|
28355
|
+
continue;
|
|
28356
|
+
else
|
|
28357
|
+
break;
|
|
28358
|
+
}
|
|
28359
|
+
}
|
|
28360
|
+
return $consumer.$index1 >= $consumer.$end1 ? 0 : 1;
|
|
28361
|
+
};
|
|
28324
28362
|
var jm_Conversion = $rt_classWithoutFields();
|
|
28325
28363
|
var jm_Conversion_digitFitInInt = null;
|
|
28326
28364
|
var jm_Conversion_bigRadices = null;
|
|
@@ -28516,40 +28554,6 @@ var jm_Conversion__clinit_ = () => {
|
|
|
28516
28554
|
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]);
|
|
28517
28555
|
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]);
|
|
28518
28556
|
};
|
|
28519
|
-
var jus_IntStream = $rt_classWithoutFields(0);
|
|
28520
|
-
var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
|
|
28521
|
-
function jusi_MappingToIntStreamImpl() {
|
|
28522
|
-
let a = this;
|
|
28523
|
-
jusi_SimpleIntStreamImpl.call(a);
|
|
28524
|
-
a.$source0 = null;
|
|
28525
|
-
a.$mapper0 = null;
|
|
28526
|
-
}
|
|
28527
|
-
var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
|
|
28528
|
-
let var$2, var$3, var$4, var$5, var$6;
|
|
28529
|
-
var$2 = $this.$source0;
|
|
28530
|
-
var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
|
|
28531
|
-
var$3.$_025 = $this;
|
|
28532
|
-
var$3.$_110 = $consumer;
|
|
28533
|
-
$consumer = var$2;
|
|
28534
|
-
a: {
|
|
28535
|
-
while (true) {
|
|
28536
|
-
var$4 = $consumer.$index1;
|
|
28537
|
-
if (var$4 >= $consumer.$end1)
|
|
28538
|
-
break a;
|
|
28539
|
-
var$5 = $consumer.$array8.data;
|
|
28540
|
-
$consumer.$index1 = var$4 + 1 | 0;
|
|
28541
|
-
var$2 = var$5[var$4];
|
|
28542
|
-
var$6 = var$3.$_110;
|
|
28543
|
-
var$2 = var$2;
|
|
28544
|
-
asr_JsRiscV_$callClinit();
|
|
28545
|
-
if (var$6.$test0(Long_lo(var$2.$getValue())))
|
|
28546
|
-
continue;
|
|
28547
|
-
else
|
|
28548
|
-
break;
|
|
28549
|
-
}
|
|
28550
|
-
}
|
|
28551
|
-
return $consumer.$index1 >= $consumer.$end1 ? 0 : 1;
|
|
28552
|
-
};
|
|
28553
28557
|
function ju_AbstractList$1() {
|
|
28554
28558
|
let a = this;
|
|
28555
28559
|
jl_Object.call(a);
|
|
@@ -28874,6 +28878,13 @@ var asrs_Simulator$Reason__clinit_ = () => {
|
|
|
28874
28878
|
var$3[6] = var$1;
|
|
28875
28879
|
asrs_Simulator$Reason_$VALUES = var$2;
|
|
28876
28880
|
};
|
|
28881
|
+
var juf_Predicate = $rt_classWithoutFields(0);
|
|
28882
|
+
function asr_RARS$getStatementsAtSourceLocation$lambda$_6_0() {
|
|
28883
|
+
let a = this;
|
|
28884
|
+
jl_Object.call(a);
|
|
28885
|
+
a.$_08 = null;
|
|
28886
|
+
a.$_14 = 0;
|
|
28887
|
+
}
|
|
28877
28888
|
var asrrh_Stack = $rt_classWithoutFields();
|
|
28878
28889
|
var asrrh_Stack_callStack = null;
|
|
28879
28890
|
var asrrh_Stack_$callClinit = () => {
|
|
@@ -28887,13 +28898,6 @@ var asrrh_Stack_getCallStack = () => {
|
|
|
28887
28898
|
var asrrh_Stack__clinit_ = () => {
|
|
28888
28899
|
asrrh_Stack_callStack = ju_ArrayList__init_();
|
|
28889
28900
|
};
|
|
28890
|
-
var juf_Predicate = $rt_classWithoutFields(0);
|
|
28891
|
-
function asr_RARS$getStatementsAtSourceLocation$lambda$_6_0() {
|
|
28892
|
-
let a = this;
|
|
28893
|
-
jl_Object.call(a);
|
|
28894
|
-
a.$_08 = null;
|
|
28895
|
-
a.$_14 = 0;
|
|
28896
|
-
}
|
|
28897
28901
|
var asrrh_InterruptController = $rt_classWithoutFields();
|
|
28898
28902
|
var asrrh_InterruptController_lock = null;
|
|
28899
28903
|
var asrrh_InterruptController_externalPending0 = 0;
|
|
@@ -35741,6 +35745,13 @@ var otcit_DoubleAnalyzer$Result__init_0 = () => {
|
|
|
35741
35745
|
otcit_DoubleAnalyzer$Result__init_(var_0);
|
|
35742
35746
|
return var_0;
|
|
35743
35747
|
};
|
|
35748
|
+
function asrs_BackStepper$PokeRestore() {
|
|
35749
|
+
let a = this;
|
|
35750
|
+
jl_Object.call(a);
|
|
35751
|
+
a.$action0 = null;
|
|
35752
|
+
a.$param10 = 0;
|
|
35753
|
+
a.$param20 = Long_ZERO;
|
|
35754
|
+
}
|
|
35744
35755
|
var asrs_BackStepper$Action = $rt_classWithoutFields(jl_Enum);
|
|
35745
35756
|
var asrs_BackStepper$Action_MEMORY_RESTORE_RAW_WORD = null;
|
|
35746
35757
|
var asrs_BackStepper$Action_MEMORY_RESTORE_DOUBLE_WORD = null;
|
|
@@ -35805,13 +35816,6 @@ var asrs_BackStepper$Action__clinit_ = () => {
|
|
|
35805
35816
|
var$3[13] = var$1;
|
|
35806
35817
|
asrs_BackStepper$Action_$VALUES = var$2;
|
|
35807
35818
|
};
|
|
35808
|
-
function asrs_BackStepper$PokeRestore() {
|
|
35809
|
-
let a = this;
|
|
35810
|
-
jl_Object.call(a);
|
|
35811
|
-
a.$action0 = null;
|
|
35812
|
-
a.$param10 = 0;
|
|
35813
|
-
a.$param20 = Long_ZERO;
|
|
35814
|
-
}
|
|
35815
35819
|
var jusi_SimpleStreamImpl$toArray$lambda$_20_0 = $rt_classWithoutFields();
|
|
35816
35820
|
var jusi_SimpleStreamImpl$toArray$lambda$_20_0_apply = (var$0, var$1) => {
|
|
35817
35821
|
return $rt_createArray(jl_Object, var$1);
|
|
@@ -37776,16 +37780,16 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
|
|
|
37776
37780
|
return 0;
|
|
37777
37781
|
};
|
|
37778
37782
|
var asrs_Simulator$SimThread_run = ($this) => {
|
|
37779
|
-
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,
|
|
37783
|
+
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;
|
|
37780
37784
|
$ptr = 0;
|
|
37781
37785
|
if ($rt_resuming()) {
|
|
37782
37786
|
let $thread = $rt_nativeThread();
|
|
37783
37787
|
$ptr = $thread.pop();
|
|
37784
|
-
$
|
|
37788
|
+
var$25 = $thread.pop();
|
|
37785
37789
|
$instruction = $thread.pop();
|
|
37786
37790
|
$tmp_0 = $thread.pop();
|
|
37787
37791
|
$e = $thread.pop();
|
|
37788
|
-
|
|
37792
|
+
$se = $thread.pop();
|
|
37789
37793
|
var$20 = $thread.pop();
|
|
37790
37794
|
var$19 = $thread.pop();
|
|
37791
37795
|
$pendingTrap = $thread.pop();
|
|
@@ -37871,12 +37875,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37871
37875
|
return;
|
|
37872
37876
|
}
|
|
37873
37877
|
}
|
|
37874
|
-
$
|
|
37875
|
-
|
|
37876
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
37878
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
37879
|
+
asrrh_RegisterFile_incrementPC();
|
|
37877
37880
|
d: {
|
|
37878
37881
|
try {
|
|
37879
|
-
|
|
37882
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
37880
37883
|
break d;
|
|
37881
37884
|
} catch ($$e) {
|
|
37882
37885
|
$$je = $rt_wrapException($$e);
|
|
@@ -37896,7 +37899,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37896
37899
|
}
|
|
37897
37900
|
continue c;
|
|
37898
37901
|
}
|
|
37899
|
-
if (
|
|
37902
|
+
if ($se === null) {
|
|
37900
37903
|
asrs_Simulator$Reason_$callClinit();
|
|
37901
37904
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
37902
37905
|
return;
|
|
@@ -37907,15 +37910,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37907
37910
|
try {
|
|
37908
37911
|
h: {
|
|
37909
37912
|
try {
|
|
37910
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
37913
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
37911
37914
|
if ($instruction !== null)
|
|
37912
37915
|
break h;
|
|
37913
|
-
$
|
|
37914
|
-
$
|
|
37915
|
-
$
|
|
37916
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
37917
|
-
asr_SimulationException__init_4($
|
|
37918
|
-
$rt_throw($
|
|
37916
|
+
$e = new asr_SimulationException();
|
|
37917
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
37918
|
+
var$25 = jl_StringBuilder__init_();
|
|
37919
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
37920
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
37921
|
+
$rt_throw($e);
|
|
37919
37922
|
} catch ($$e) {
|
|
37920
37923
|
$$je = $rt_wrapException($$e);
|
|
37921
37924
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -37975,7 +37978,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37975
37978
|
$timeSampleCountdown = $timeSampleCountdown + -1 | 0;
|
|
37976
37979
|
if ($timeSampleCountdown <= 0) {
|
|
37977
37980
|
$timeSampleCountdown = 64;
|
|
37978
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis());
|
|
37981
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis(), $this.$pc0);
|
|
37979
37982
|
}
|
|
37980
37983
|
if ($ebreak)
|
|
37981
37984
|
break b;
|
|
@@ -37996,13 +37999,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
37996
37999
|
asrs_Simulator$SimThread_stopExecution($this, 0, asrs_Simulator$Reason_BREAKPOINT);
|
|
37997
38000
|
return;
|
|
37998
38001
|
}
|
|
37999
|
-
if ($e.$message
|
|
38000
|
-
asrs_Simulator$Reason_$callClinit();
|
|
38001
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38002
|
-
} else {
|
|
38002
|
+
if ($e.$message !== null) {
|
|
38003
38003
|
asrs_Simulator$Reason_$callClinit();
|
|
38004
38004
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
38005
38005
|
$this.$pe = $e;
|
|
38006
|
+
} else {
|
|
38007
|
+
asrs_Simulator$Reason_$callClinit();
|
|
38008
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38009
|
+
if ($backStepping)
|
|
38010
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
38006
38011
|
}
|
|
38007
38012
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
38008
38013
|
return;
|
|
@@ -38015,7 +38020,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38015
38020
|
m: {
|
|
38016
38021
|
n: {
|
|
38017
38022
|
try {
|
|
38018
|
-
$instruction.$simulate2(
|
|
38023
|
+
$instruction.$simulate2($se);
|
|
38019
38024
|
if ($rt_suspending()) {
|
|
38020
38025
|
break main;
|
|
38021
38026
|
}
|
|
@@ -38040,14 +38045,14 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38040
38045
|
}
|
|
38041
38046
|
}
|
|
38042
38047
|
}
|
|
38043
|
-
$
|
|
38044
|
-
$
|
|
38045
|
-
if (
|
|
38048
|
+
var$20 = $this.$pc0;
|
|
38049
|
+
var$20 = asrrh_InterruptController_registerSynchronousTrap($se, var$20);
|
|
38050
|
+
if (!var$20) {
|
|
38046
38051
|
$this.$pe = $se;
|
|
38047
|
-
$
|
|
38052
|
+
var$20 = 1;
|
|
38048
38053
|
asrs_Simulator$Reason_$callClinit();
|
|
38049
38054
|
$instruction = asrs_Simulator$Reason_EXCEPTION;
|
|
38050
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38055
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38051
38056
|
return;
|
|
38052
38057
|
}
|
|
38053
38058
|
break j;
|
|
@@ -38055,48 +38060,49 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38055
38060
|
break k;
|
|
38056
38061
|
}
|
|
38057
38062
|
if ($backStepping) {
|
|
38058
|
-
$
|
|
38059
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38063
|
+
var$20 = $this.$pc0;
|
|
38064
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38060
38065
|
}
|
|
38061
38066
|
$ebreak = 1;
|
|
38062
38067
|
break k;
|
|
38063
38068
|
}
|
|
38064
38069
|
if ($backStepping) {
|
|
38065
|
-
$
|
|
38066
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38070
|
+
var$20 = $this.$pc0;
|
|
38071
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38067
38072
|
}
|
|
38068
38073
|
$waiting = 1;
|
|
38069
38074
|
}
|
|
38070
|
-
$
|
|
38071
|
-
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, $
|
|
38072
|
-
$
|
|
38073
|
-
$timeSampleCountdown = $timeSampleCountdown + $
|
|
38075
|
+
var$20 = $this.$pc0;
|
|
38076
|
+
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, var$20);
|
|
38077
|
+
var$20 = -1;
|
|
38078
|
+
$timeSampleCountdown = $timeSampleCountdown + var$20 | 0;
|
|
38074
38079
|
if ($timeSampleCountdown <= 0) {
|
|
38075
38080
|
$timeSampleCountdown = 64;
|
|
38076
38081
|
var$19 = jl_System_currentTimeMillis();
|
|
38077
|
-
|
|
38082
|
+
var$20 = $this.$pc0;
|
|
38083
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, var$19, var$20);
|
|
38078
38084
|
}
|
|
38079
38085
|
o: {
|
|
38080
38086
|
if (!$ebreak) {
|
|
38081
38087
|
var$8 = $this.$breakPoints;
|
|
38082
38088
|
if (var$8 === null)
|
|
38083
38089
|
break o;
|
|
38084
|
-
$
|
|
38085
|
-
$
|
|
38086
|
-
if ($
|
|
38090
|
+
var$20 = asrrh_RegisterFile_getProgramCounter();
|
|
38091
|
+
var$20 = ju_Arrays_binarySearch(var$8, var$20);
|
|
38092
|
+
if (var$20 < 0)
|
|
38087
38093
|
break o;
|
|
38088
38094
|
}
|
|
38089
|
-
$
|
|
38095
|
+
var$20 = 0;
|
|
38090
38096
|
asrs_Simulator$Reason_$callClinit();
|
|
38091
38097
|
$instruction = asrs_Simulator$Reason_BREAKPOINT;
|
|
38092
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38098
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38093
38099
|
return;
|
|
38094
38100
|
}
|
|
38095
38101
|
if ($waiting) {
|
|
38096
|
-
$
|
|
38097
|
-
if (
|
|
38098
|
-
$
|
|
38099
|
-
if (
|
|
38102
|
+
var$20 = asrrh_InterruptController_externalPending();
|
|
38103
|
+
if (!var$20) {
|
|
38104
|
+
var$20 = asrrh_InterruptController_timerPending();
|
|
38105
|
+
if (!var$20) {
|
|
38100
38106
|
$ptr = 2;
|
|
38101
38107
|
continue main;
|
|
38102
38108
|
}
|
|
@@ -38146,12 +38152,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38146
38152
|
return;
|
|
38147
38153
|
}
|
|
38148
38154
|
}
|
|
38149
|
-
$
|
|
38150
|
-
|
|
38151
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
38155
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
38156
|
+
asrrh_RegisterFile_incrementPC();
|
|
38152
38157
|
r: {
|
|
38153
38158
|
try {
|
|
38154
|
-
|
|
38159
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
38155
38160
|
break r;
|
|
38156
38161
|
} catch ($$e) {
|
|
38157
38162
|
$$je = $rt_wrapException($$e);
|
|
@@ -38171,7 +38176,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38171
38176
|
}
|
|
38172
38177
|
continue q;
|
|
38173
38178
|
}
|
|
38174
|
-
if (
|
|
38179
|
+
if ($se === null) {
|
|
38175
38180
|
asrs_Simulator$Reason_$callClinit();
|
|
38176
38181
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
38177
38182
|
return;
|
|
@@ -38182,15 +38187,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38182
38187
|
try {
|
|
38183
38188
|
v: {
|
|
38184
38189
|
try {
|
|
38185
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
38190
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
38186
38191
|
if ($instruction !== null)
|
|
38187
38192
|
break v;
|
|
38188
|
-
$
|
|
38189
|
-
$
|
|
38190
|
-
$
|
|
38191
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
38192
|
-
asr_SimulationException__init_4($
|
|
38193
|
-
$rt_throw($
|
|
38193
|
+
$e = new asr_SimulationException();
|
|
38194
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
38195
|
+
var$25 = jl_StringBuilder__init_();
|
|
38196
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
38197
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
38198
|
+
$rt_throw($e);
|
|
38194
38199
|
} catch ($$e) {
|
|
38195
38200
|
$$je = $rt_wrapException($$e);
|
|
38196
38201
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -38224,14 +38229,14 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38224
38229
|
$$je = $rt_wrapException($$e);
|
|
38225
38230
|
if ($$je instanceof asr_SimulationException) {
|
|
38226
38231
|
$se = $$je;
|
|
38227
|
-
$
|
|
38228
|
-
$
|
|
38229
|
-
if (
|
|
38232
|
+
var$20 = $this.$pc0;
|
|
38233
|
+
var$20 = asrrh_InterruptController_registerSynchronousTrap($se, var$20);
|
|
38234
|
+
if (!var$20) {
|
|
38230
38235
|
$this.$pe = $se;
|
|
38231
|
-
$
|
|
38236
|
+
var$20 = 1;
|
|
38232
38237
|
asrs_Simulator$Reason_$callClinit();
|
|
38233
38238
|
$instruction = asrs_Simulator$Reason_EXCEPTION;
|
|
38234
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38239
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38235
38240
|
return;
|
|
38236
38241
|
}
|
|
38237
38242
|
continue q;
|
|
@@ -38241,42 +38246,43 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38241
38246
|
}
|
|
38242
38247
|
}
|
|
38243
38248
|
if ($backStepping) {
|
|
38244
|
-
$
|
|
38245
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38249
|
+
var$20 = $this.$pc0;
|
|
38250
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38246
38251
|
}
|
|
38247
38252
|
$ebreak = 1;
|
|
38248
38253
|
break s;
|
|
38249
38254
|
}
|
|
38250
38255
|
if ($backStepping) {
|
|
38251
|
-
$
|
|
38252
|
-
asrs_BackStepper_addDoNothing($backStepper, $
|
|
38256
|
+
var$20 = $this.$pc0;
|
|
38257
|
+
asrs_BackStepper_addDoNothing($backStepper, var$20);
|
|
38253
38258
|
}
|
|
38254
38259
|
$waiting = 1;
|
|
38255
38260
|
}
|
|
38256
|
-
$
|
|
38257
|
-
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, $
|
|
38258
|
-
$
|
|
38259
|
-
$timeSampleCountdown = $timeSampleCountdown + $
|
|
38261
|
+
var$20 = $this.$pc0;
|
|
38262
|
+
asrrh_ControlAndStatusRegisterFile_incrementCounters($backStepping, var$20);
|
|
38263
|
+
var$20 = -1;
|
|
38264
|
+
$timeSampleCountdown = $timeSampleCountdown + var$20 | 0;
|
|
38260
38265
|
if ($timeSampleCountdown <= 0) {
|
|
38261
38266
|
$timeSampleCountdown = 64;
|
|
38262
38267
|
var$19 = jl_System_currentTimeMillis();
|
|
38263
|
-
|
|
38268
|
+
var$20 = $this.$pc0;
|
|
38269
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, var$19, var$20);
|
|
38264
38270
|
}
|
|
38265
38271
|
if ($ebreak)
|
|
38266
38272
|
break p;
|
|
38267
38273
|
var$8 = $this.$breakPoints;
|
|
38268
38274
|
if (var$8 !== null) {
|
|
38269
|
-
$
|
|
38270
|
-
$
|
|
38271
|
-
if ($
|
|
38275
|
+
var$20 = asrrh_RegisterFile_getProgramCounter();
|
|
38276
|
+
var$20 = ju_Arrays_binarySearch(var$8, var$20);
|
|
38277
|
+
if (var$20 >= 0)
|
|
38272
38278
|
break p;
|
|
38273
38279
|
}
|
|
38274
38280
|
if (!$waiting)
|
|
38275
38281
|
continue;
|
|
38276
|
-
$
|
|
38277
|
-
if (
|
|
38278
|
-
$
|
|
38279
|
-
if (
|
|
38282
|
+
var$20 = asrrh_InterruptController_externalPending();
|
|
38283
|
+
if (!var$20) {
|
|
38284
|
+
var$20 = asrrh_InterruptController_timerPending();
|
|
38285
|
+
if (!var$20) {
|
|
38280
38286
|
$ptr = 2;
|
|
38281
38287
|
continue main;
|
|
38282
38288
|
}
|
|
@@ -38285,19 +38291,21 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38285
38291
|
}
|
|
38286
38292
|
return;
|
|
38287
38293
|
}
|
|
38288
|
-
$
|
|
38294
|
+
var$20 = 0;
|
|
38289
38295
|
asrs_Simulator$Reason_$callClinit();
|
|
38290
38296
|
$instruction = asrs_Simulator$Reason_BREAKPOINT;
|
|
38291
|
-
asrs_Simulator$SimThread_stopExecution($this, $
|
|
38297
|
+
asrs_Simulator$SimThread_stopExecution($this, var$20, $instruction);
|
|
38292
38298
|
return;
|
|
38293
38299
|
}
|
|
38294
|
-
if ($e.$message
|
|
38295
|
-
asrs_Simulator$Reason_$callClinit();
|
|
38296
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38297
|
-
} else {
|
|
38300
|
+
if ($e.$message !== null) {
|
|
38298
38301
|
asrs_Simulator$Reason_$callClinit();
|
|
38299
38302
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
38300
38303
|
$this.$pe = $e;
|
|
38304
|
+
} else {
|
|
38305
|
+
asrs_Simulator$Reason_$callClinit();
|
|
38306
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38307
|
+
if ($backStepping)
|
|
38308
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
38301
38309
|
}
|
|
38302
38310
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
38303
38311
|
return;
|
|
@@ -38375,12 +38383,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38375
38383
|
return;
|
|
38376
38384
|
}
|
|
38377
38385
|
}
|
|
38378
|
-
$
|
|
38379
|
-
|
|
38380
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
38386
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
38387
|
+
asrrh_RegisterFile_incrementPC();
|
|
38381
38388
|
z: {
|
|
38382
38389
|
try {
|
|
38383
|
-
|
|
38390
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
38384
38391
|
break z;
|
|
38385
38392
|
} catch ($$e) {
|
|
38386
38393
|
$$je = $rt_wrapException($$e);
|
|
@@ -38400,7 +38407,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38400
38407
|
}
|
|
38401
38408
|
continue c;
|
|
38402
38409
|
}
|
|
38403
|
-
if (
|
|
38410
|
+
if ($se === null) {
|
|
38404
38411
|
asrs_Simulator$Reason_$callClinit();
|
|
38405
38412
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
38406
38413
|
return;
|
|
@@ -38411,15 +38418,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38411
38418
|
try {
|
|
38412
38419
|
bb: {
|
|
38413
38420
|
try {
|
|
38414
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
38421
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
38415
38422
|
if ($instruction !== null)
|
|
38416
38423
|
break bb;
|
|
38417
|
-
$
|
|
38418
|
-
$
|
|
38419
|
-
$
|
|
38420
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
38421
|
-
asr_SimulationException__init_4($
|
|
38422
|
-
$rt_throw($
|
|
38424
|
+
$e = new asr_SimulationException();
|
|
38425
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
38426
|
+
var$25 = jl_StringBuilder__init_();
|
|
38427
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
38428
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
38429
|
+
$rt_throw($e);
|
|
38423
38430
|
} catch ($$e) {
|
|
38424
38431
|
$$je = $rt_wrapException($$e);
|
|
38425
38432
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -38479,7 +38486,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38479
38486
|
$timeSampleCountdown = $timeSampleCountdown + -1 | 0;
|
|
38480
38487
|
if ($timeSampleCountdown <= 0) {
|
|
38481
38488
|
$timeSampleCountdown = 64;
|
|
38482
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis());
|
|
38489
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis(), $this.$pc0);
|
|
38483
38490
|
}
|
|
38484
38491
|
if ($ebreak)
|
|
38485
38492
|
break n;
|
|
@@ -38503,13 +38510,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38503
38510
|
asrs_Simulator$SimThread_stopExecution($this, 0, asrs_Simulator$Reason_BREAKPOINT);
|
|
38504
38511
|
return;
|
|
38505
38512
|
}
|
|
38506
|
-
if ($e.$message
|
|
38507
|
-
asrs_Simulator$Reason_$callClinit();
|
|
38508
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38509
|
-
} else {
|
|
38513
|
+
if ($e.$message !== null) {
|
|
38510
38514
|
asrs_Simulator$Reason_$callClinit();
|
|
38511
38515
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
38512
38516
|
$this.$pe = $e;
|
|
38517
|
+
} else {
|
|
38518
|
+
asrs_Simulator$Reason_$callClinit();
|
|
38519
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38520
|
+
if ($backStepping)
|
|
38521
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
38513
38522
|
}
|
|
38514
38523
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
38515
38524
|
return;
|
|
@@ -38586,12 +38595,11 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38586
38595
|
return;
|
|
38587
38596
|
}
|
|
38588
38597
|
}
|
|
38589
|
-
$
|
|
38590
|
-
|
|
38591
|
-
asrrh_RegisterFile_programCounterValue = asrrh_RegisterFile_programCounterValue + 4 | 0;
|
|
38598
|
+
$this.$pc0 = asrrh_RegisterFile_getProgramCounter();
|
|
38599
|
+
asrrh_RegisterFile_incrementPC();
|
|
38592
38600
|
bd: {
|
|
38593
38601
|
try {
|
|
38594
|
-
|
|
38602
|
+
$se = asrrh_Memory_getStatement(asr_Globals_memory, $this.$pc0);
|
|
38595
38603
|
break bd;
|
|
38596
38604
|
} catch ($$e) {
|
|
38597
38605
|
$$je = $rt_wrapException($$e);
|
|
@@ -38611,7 +38619,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38611
38619
|
}
|
|
38612
38620
|
continue bc;
|
|
38613
38621
|
}
|
|
38614
|
-
if (
|
|
38622
|
+
if ($se === null) {
|
|
38615
38623
|
asrs_Simulator$Reason_$callClinit();
|
|
38616
38624
|
asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_CLIFF_TERMINATION);
|
|
38617
38625
|
return;
|
|
@@ -38622,15 +38630,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38622
38630
|
try {
|
|
38623
38631
|
be: {
|
|
38624
38632
|
try {
|
|
38625
|
-
$instruction = asr_ProgramStatement_getInstruction(
|
|
38633
|
+
$instruction = asr_ProgramStatement_getInstruction($se);
|
|
38626
38634
|
if ($instruction !== null)
|
|
38627
38635
|
break be;
|
|
38628
|
-
$
|
|
38629
|
-
$
|
|
38630
|
-
$
|
|
38631
|
-
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($
|
|
38632
|
-
asr_SimulationException__init_4($
|
|
38633
|
-
$rt_throw($
|
|
38636
|
+
$e = new asr_SimulationException();
|
|
38637
|
+
$tmp_0 = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
|
|
38638
|
+
var$25 = jl_StringBuilder__init_();
|
|
38639
|
+
jl_StringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$25, $rt_s(1880)), $tmp_0), var$12);
|
|
38640
|
+
asr_SimulationException__init_4($e, $se, jl_StringBuilder_toString(var$25), 2);
|
|
38641
|
+
$rt_throw($e);
|
|
38634
38642
|
} catch ($$e) {
|
|
38635
38643
|
$$je = $rt_wrapException($$e);
|
|
38636
38644
|
if ($$je instanceof asr_BreakpointException) {
|
|
@@ -38690,7 +38698,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38690
38698
|
$timeSampleCountdown = $timeSampleCountdown + -1 | 0;
|
|
38691
38699
|
if ($timeSampleCountdown <= 0) {
|
|
38692
38700
|
$timeSampleCountdown = 64;
|
|
38693
|
-
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis());
|
|
38701
|
+
asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($timeRegister, jl_System_currentTimeMillis(), $this.$pc0);
|
|
38694
38702
|
}
|
|
38695
38703
|
if ($ebreak)
|
|
38696
38704
|
break b;
|
|
@@ -38715,13 +38723,15 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38715
38723
|
asrs_Simulator$SimThread_stopExecution($this, 0, asrs_Simulator$Reason_BREAKPOINT);
|
|
38716
38724
|
return;
|
|
38717
38725
|
}
|
|
38718
|
-
if ($e.$message
|
|
38719
|
-
asrs_Simulator$Reason_$callClinit();
|
|
38720
|
-
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38721
|
-
} else {
|
|
38726
|
+
if ($e.$message !== null) {
|
|
38722
38727
|
asrs_Simulator$Reason_$callClinit();
|
|
38723
38728
|
$this.$constructReturnReason = asrs_Simulator$Reason_EXCEPTION;
|
|
38724
38729
|
$this.$pe = $e;
|
|
38730
|
+
} else {
|
|
38731
|
+
asrs_Simulator$Reason_$callClinit();
|
|
38732
|
+
$this.$constructReturnReason = asrs_Simulator$Reason_NORMAL_TERMINATION;
|
|
38733
|
+
if ($backStepping)
|
|
38734
|
+
asrs_BackStepper_addDoNothing($backStepper, $this.$pc0);
|
|
38725
38735
|
}
|
|
38726
38736
|
asrs_Simulator$SimThread_stopExecution($this, 1, $this.$constructReturnReason);
|
|
38727
38737
|
return;
|
|
@@ -38729,7 +38739,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
|
|
|
38729
38739
|
$rt_invalidPointer();
|
|
38730
38740
|
}
|
|
38731
38741
|
}
|
|
38732
|
-
$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,
|
|
38742
|
+
$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);
|
|
38733
38743
|
};
|
|
38734
38744
|
var asrs_Simulator$SimThread__clinit_ = () => {
|
|
38735
38745
|
asrs_Simulator$SimThread_$assertionsDisabled = 0;
|
|
@@ -43840,47 +43850,48 @@ $rt_metadata([
|
|
|
43840
43850
|
0,
|
|
43841
43851
|
0,
|
|
43842
43852
|
0,
|
|
43843
|
-
|
|
43844
|
-
|
|
43853
|
+
asr_JsProgramStatement,
|
|
43854
|
+
"JsProgramStatement",
|
|
43855
|
+
11,
|
|
43845
43856
|
jl_Object,
|
|
43846
43857
|
[],
|
|
43847
43858
|
1,
|
|
43848
43859
|
0,
|
|
43849
|
-
() => asrrh_ControlAndStatusRegisterFile_$callClinit(),
|
|
43850
43860
|
0,
|
|
43851
|
-
|
|
43861
|
+
0,
|
|
43862
|
+
ju_Observer,
|
|
43852
43863
|
0,
|
|
43853
43864
|
jl_Object,
|
|
43854
43865
|
[],
|
|
43855
|
-
|
|
43866
|
+
1537,
|
|
43856
43867
|
0,
|
|
43857
|
-
() => asrrh_RegisterFile_$callClinit(),
|
|
43858
43868
|
0,
|
|
43859
|
-
jm_BigInteger,
|
|
43860
|
-
"BigInteger",
|
|
43861
|
-
18,
|
|
43862
|
-
jl_Number,
|
|
43863
|
-
[jl_Comparable, ji_Serializable],
|
|
43864
|
-
1,
|
|
43865
|
-
0,
|
|
43866
|
-
() => jm_BigInteger_$callClinit(),
|
|
43867
|
-
["$hashCode", $rt_wrapFunction0(jm_BigInteger_hashCode), "$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString), "$compareTo0", $rt_wrapFunction1(jm_BigInteger_compareTo0)],
|
|
43868
|
-
asr_JsRiscV$Body,
|
|
43869
43869
|
0,
|
|
43870
|
+
asr_JsMemoryObserver,
|
|
43871
|
+
"JsMemoryObserver",
|
|
43872
|
+
11,
|
|
43870
43873
|
jl_Object,
|
|
43871
|
-
[],
|
|
43872
|
-
1536,
|
|
43874
|
+
[ju_Observer],
|
|
43873
43875
|
0,
|
|
43874
43876
|
0,
|
|
43875
43877
|
0,
|
|
43876
|
-
|
|
43878
|
+
0,
|
|
43879
|
+
asrrh_ControlAndStatusRegisterFile,
|
|
43877
43880
|
0,
|
|
43878
43881
|
jl_Object,
|
|
43879
|
-
[
|
|
43882
|
+
[],
|
|
43880
43883
|
1,
|
|
43881
43884
|
0,
|
|
43885
|
+
() => asrrh_ControlAndStatusRegisterFile_$callClinit(),
|
|
43886
|
+
0,
|
|
43887
|
+
asrrh_RegisterFile,
|
|
43882
43888
|
0,
|
|
43883
|
-
|
|
43889
|
+
jl_Object,
|
|
43890
|
+
[],
|
|
43891
|
+
1,
|
|
43892
|
+
0,
|
|
43893
|
+
() => asrrh_RegisterFile_$callClinit(),
|
|
43894
|
+
0
|
|
43884
43895
|
]);
|
|
43885
43896
|
$rt_metadata([
|
|
43886
43897
|
juf_ToIntFunction,
|
|
@@ -43899,73 +43910,70 @@ $rt_metadata([
|
|
|
43899
43910
|
0,
|
|
43900
43911
|
0,
|
|
43901
43912
|
0,
|
|
43902
|
-
|
|
43903
|
-
|
|
43904
|
-
11,
|
|
43913
|
+
otjc_JSArrayReader,
|
|
43914
|
+
0,
|
|
43905
43915
|
jl_Object,
|
|
43906
|
-
[],
|
|
43907
|
-
|
|
43916
|
+
[otj_JSObject],
|
|
43917
|
+
1537,
|
|
43908
43918
|
0,
|
|
43909
43919
|
0,
|
|
43910
43920
|
0,
|
|
43911
|
-
|
|
43921
|
+
otjc_JSArray,
|
|
43912
43922
|
0,
|
|
43913
43923
|
jl_Object,
|
|
43914
|
-
[
|
|
43924
|
+
[otjc_JSArrayReader],
|
|
43915
43925
|
1,
|
|
43916
43926
|
0,
|
|
43917
43927
|
0,
|
|
43918
|
-
|
|
43919
|
-
|
|
43920
|
-
|
|
43921
|
-
11,
|
|
43928
|
+
0,
|
|
43929
|
+
asrs_BackStepper,
|
|
43930
|
+
0,
|
|
43922
43931
|
jl_Object,
|
|
43923
43932
|
[],
|
|
43924
43933
|
1,
|
|
43925
43934
|
0,
|
|
43935
|
+
() => asrs_BackStepper_$callClinit(),
|
|
43926
43936
|
0,
|
|
43927
|
-
|
|
43928
|
-
ju_Observer,
|
|
43937
|
+
asr_JsBackStep,
|
|
43929
43938
|
0,
|
|
43930
43939
|
jl_Object,
|
|
43931
43940
|
[],
|
|
43932
|
-
|
|
43941
|
+
17,
|
|
43933
43942
|
0,
|
|
43934
43943
|
0,
|
|
43935
43944
|
0,
|
|
43936
|
-
|
|
43937
|
-
"JsMemoryObserver",
|
|
43938
|
-
11,
|
|
43939
|
-
jl_Object,
|
|
43940
|
-
[ju_Observer],
|
|
43945
|
+
asr_JsUndoGroup,
|
|
43941
43946
|
0,
|
|
43947
|
+
jl_Object,
|
|
43948
|
+
[],
|
|
43949
|
+
17,
|
|
43942
43950
|
0,
|
|
43943
43951
|
0,
|
|
43944
43952
|
0,
|
|
43945
|
-
asr_JsRiscV$
|
|
43953
|
+
asr_JsRiscV$Body,
|
|
43946
43954
|
0,
|
|
43947
43955
|
jl_Object,
|
|
43948
|
-
[
|
|
43949
|
-
|
|
43956
|
+
[],
|
|
43957
|
+
1536,
|
|
43950
43958
|
0,
|
|
43951
43959
|
0,
|
|
43952
|
-
|
|
43953
|
-
|
|
43960
|
+
0,
|
|
43961
|
+
asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0,
|
|
43954
43962
|
0,
|
|
43955
43963
|
jl_Object,
|
|
43956
|
-
[],
|
|
43964
|
+
[asr_JsRiscV$Body],
|
|
43957
43965
|
1,
|
|
43958
43966
|
0,
|
|
43959
|
-
() => asrrh_FloatingPointRegisterFile_$callClinit(),
|
|
43960
43967
|
0,
|
|
43961
|
-
asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$
|
|
43968
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulateWithBreakpointsAndLimit$lambda$_17_0_run)],
|
|
43969
|
+
asr_JsRiscV$simulate$lambda$_12_0,
|
|
43962
43970
|
0,
|
|
43963
43971
|
jl_Object,
|
|
43964
43972
|
[asr_JsRiscV$Body],
|
|
43965
43973
|
1,
|
|
43966
43974
|
0,
|
|
43967
43975
|
0,
|
|
43968
|
-
["$run1", $rt_wrapFunction0(asr_JsRiscV$
|
|
43976
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulate$lambda$_12_0_run)],
|
|
43969
43977
|
asr_JsCompilationResult,
|
|
43970
43978
|
"JsCompilationResult",
|
|
43971
43979
|
11,
|
|
@@ -43984,54 +43992,55 @@ $rt_metadata([
|
|
|
43984
43992
|
0,
|
|
43985
43993
|
0,
|
|
43986
43994
|
0,
|
|
43987
|
-
|
|
43995
|
+
asrrh_FloatingPointRegisterFile,
|
|
43988
43996
|
0,
|
|
43989
43997
|
jl_Object,
|
|
43990
|
-
[
|
|
43998
|
+
[],
|
|
43991
43999
|
1,
|
|
43992
44000
|
0,
|
|
44001
|
+
() => asrrh_FloatingPointRegisterFile_$callClinit(),
|
|
43993
44002
|
0,
|
|
43994
|
-
|
|
43995
|
-
otjc_JSArrayReader,
|
|
43996
|
-
0,
|
|
43997
|
-
jl_Object,
|
|
43998
|
-
[otj_JSObject],
|
|
43999
|
-
1537,
|
|
44000
|
-
0,
|
|
44001
|
-
0,
|
|
44002
|
-
0,
|
|
44003
|
-
otjc_JSArray,
|
|
44003
|
+
asr_JsRiscV$simulateWithLimit$lambda$_13_0,
|
|
44004
44004
|
0,
|
|
44005
44005
|
jl_Object,
|
|
44006
|
-
[
|
|
44006
|
+
[asr_JsRiscV$Body],
|
|
44007
44007
|
1,
|
|
44008
44008
|
0,
|
|
44009
44009
|
0,
|
|
44010
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulateWithLimit$lambda$_13_0_run)],
|
|
44011
|
+
jm_BigInteger,
|
|
44012
|
+
"BigInteger",
|
|
44013
|
+
18,
|
|
44014
|
+
jl_Number,
|
|
44015
|
+
[jl_Comparable, ji_Serializable],
|
|
44016
|
+
1,
|
|
44010
44017
|
0,
|
|
44011
|
-
|
|
44012
|
-
|
|
44013
|
-
|
|
44014
|
-
[],
|
|
44015
|
-
17,
|
|
44018
|
+
() => jm_BigInteger_$callClinit(),
|
|
44019
|
+
["$hashCode", $rt_wrapFunction0(jm_BigInteger_hashCode), "$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString), "$compareTo0", $rt_wrapFunction1(jm_BigInteger_compareTo0)],
|
|
44020
|
+
jl_Double,
|
|
44016
44021
|
0,
|
|
44022
|
+
jl_Number,
|
|
44023
|
+
[jl_Comparable],
|
|
44024
|
+
1,
|
|
44017
44025
|
0,
|
|
44026
|
+
() => jl_Double_$callClinit(),
|
|
44018
44027
|
0,
|
|
44019
|
-
|
|
44028
|
+
asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_0,
|
|
44020
44029
|
0,
|
|
44021
44030
|
jl_Object,
|
|
44022
|
-
[],
|
|
44031
|
+
[juf_Function],
|
|
44023
44032
|
1,
|
|
44024
44033
|
0,
|
|
44025
|
-
() => asrs_BackStepper_$callClinit(),
|
|
44026
44034
|
0,
|
|
44027
|
-
|
|
44035
|
+
["$apply0", $rt_wrapFunction1(asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_0_apply)],
|
|
44036
|
+
asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_1,
|
|
44028
44037
|
0,
|
|
44029
44038
|
jl_Object,
|
|
44030
|
-
[],
|
|
44031
|
-
|
|
44032
|
-
0,
|
|
44039
|
+
[juf_IntFunction],
|
|
44040
|
+
1,
|
|
44033
44041
|
0,
|
|
44034
44042
|
0,
|
|
44043
|
+
["$apply", $rt_wrapFunction1(asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_1_apply)],
|
|
44035
44044
|
jl_IllegalStateException,
|
|
44036
44045
|
"IllegalStateException",
|
|
44037
44046
|
19,
|
|
@@ -44058,30 +44067,31 @@ $rt_metadata([
|
|
|
44058
44067
|
0,
|
|
44059
44068
|
0,
|
|
44060
44069
|
0,
|
|
44061
|
-
|
|
44070
|
+
asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0,
|
|
44062
44071
|
0,
|
|
44063
|
-
|
|
44064
|
-
[
|
|
44072
|
+
jl_Object,
|
|
44073
|
+
[asr_JsRiscV$Body],
|
|
44065
44074
|
1,
|
|
44066
44075
|
0,
|
|
44067
|
-
() => jl_Double_$callClinit(),
|
|
44068
|
-
0,
|
|
44069
|
-
asr_JsRiscV$getStatementsAtSourceLocation$lambda$_63_0,
|
|
44070
44076
|
0,
|
|
44077
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$simulateWithBreakpoints$lambda$_16_0_run)],
|
|
44078
|
+
asr_JsStackFrame,
|
|
44079
|
+
"JsStackFrame",
|
|
44080
|
+
11,
|
|
44071
44081
|
jl_Object,
|
|
44072
|
-
[
|
|
44082
|
+
[],
|
|
44073
44083
|
1,
|
|
44074
44084
|
0,
|
|
44075
44085
|
0,
|
|
44076
|
-
|
|
44077
|
-
asr_JsRiscV$
|
|
44086
|
+
0,
|
|
44087
|
+
asr_JsRiscV$step$lambda$_10_0,
|
|
44078
44088
|
0,
|
|
44079
44089
|
jl_Object,
|
|
44080
|
-
[
|
|
44090
|
+
[asr_JsRiscV$Body],
|
|
44081
44091
|
1,
|
|
44082
44092
|
0,
|
|
44083
44093
|
0,
|
|
44084
|
-
["$
|
|
44094
|
+
["$run1", $rt_wrapFunction0(asr_JsRiscV$step$lambda$_10_0_run)],
|
|
44085
44095
|
asr_JsRiscVTokenizedLine,
|
|
44086
44096
|
"JsRiscVTokenizedLine",
|
|
44087
44097
|
11,
|
|
@@ -44366,24 +44376,6 @@ $rt_metadata([
|
|
|
44366
44376
|
0,
|
|
44367
44377
|
0,
|
|
44368
44378
|
["$contains1", $rt_wrapFunction1(jur_CharClass$16_contains)],
|
|
44369
|
-
asrrh_Register,
|
|
44370
|
-
"Register",
|
|
44371
|
-
8,
|
|
44372
|
-
ju_Observable,
|
|
44373
|
-
[],
|
|
44374
|
-
1,
|
|
44375
|
-
0,
|
|
44376
|
-
0,
|
|
44377
|
-
["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
|
|
44378
|
-
asr_JsRiscV$PokeRegisterWrite,
|
|
44379
|
-
"JsRiscV$PokeRegisterWrite",
|
|
44380
|
-
11,
|
|
44381
|
-
jl_Object,
|
|
44382
|
-
[],
|
|
44383
|
-
16,
|
|
44384
|
-
0,
|
|
44385
|
-
0,
|
|
44386
|
-
0,
|
|
44387
44379
|
asr_RISCVprogram,
|
|
44388
44380
|
"RISCVprogram",
|
|
44389
44381
|
2,
|
|
@@ -44393,31 +44385,15 @@ $rt_metadata([
|
|
|
44393
44385
|
0,
|
|
44394
44386
|
0,
|
|
44395
44387
|
0,
|
|
44396
|
-
|
|
44397
|
-
|
|
44398
|
-
|
|
44399
|
-
|
|
44400
|
-
|
|
44401
|
-
0,
|
|
44402
|
-
0,
|
|
44403
|
-
0,
|
|
44404
|
-
asr_JsRiscV$run$lambda$_9_0,
|
|
44405
|
-
"JsRiscV$run$lambda$_9_0",
|
|
44406
|
-
11,
|
|
44407
|
-
jl_Object,
|
|
44408
|
-
[otjc_JSPromise$Executor],
|
|
44409
|
-
1,
|
|
44410
|
-
0,
|
|
44411
|
-
0,
|
|
44412
|
-
0,
|
|
44413
|
-
otjc_JSPromise,
|
|
44414
|
-
0,
|
|
44415
|
-
jl_Object,
|
|
44416
|
-
[otj_JSObject],
|
|
44388
|
+
asrrh_Register,
|
|
44389
|
+
"Register",
|
|
44390
|
+
8,
|
|
44391
|
+
ju_Observable,
|
|
44392
|
+
[],
|
|
44417
44393
|
1,
|
|
44418
44394
|
0,
|
|
44419
44395
|
0,
|
|
44420
|
-
|
|
44396
|
+
["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
|
|
44421
44397
|
jl_AutoCloseable,
|
|
44422
44398
|
0,
|
|
44423
44399
|
jl_Object,
|
|
@@ -44458,6 +44434,22 @@ $rt_metadata([
|
|
|
44458
44434
|
0,
|
|
44459
44435
|
0,
|
|
44460
44436
|
0,
|
|
44437
|
+
asrs_BackStepper$BackstepStack,
|
|
44438
|
+
0,
|
|
44439
|
+
jl_Object,
|
|
44440
|
+
[],
|
|
44441
|
+
1,
|
|
44442
|
+
0,
|
|
44443
|
+
0,
|
|
44444
|
+
0,
|
|
44445
|
+
asrs_BackStepper$BackStep,
|
|
44446
|
+
0,
|
|
44447
|
+
jl_Object,
|
|
44448
|
+
[],
|
|
44449
|
+
1,
|
|
44450
|
+
0,
|
|
44451
|
+
0,
|
|
44452
|
+
0,
|
|
44461
44453
|
jl_Long,
|
|
44462
44454
|
"Long",
|
|
44463
44455
|
19,
|
|
@@ -44467,103 +44459,112 @@ $rt_metadata([
|
|
|
44467
44459
|
0,
|
|
44468
44460
|
() => jl_Long_$callClinit(),
|
|
44469
44461
|
["$toString", $rt_wrapFunction0(jl_Long_toString0), "$hashCode", $rt_wrapFunction0(jl_Long_hashCode), "$equals", $rt_wrapFunction1(jl_Long_equals), "$compareTo0", $rt_wrapFunction1(jl_Long_compareTo)],
|
|
44470
|
-
|
|
44471
|
-
"AddressErrorException",
|
|
44472
|
-
8,
|
|
44473
|
-
jl_Exception,
|
|
44474
|
-
[],
|
|
44475
|
-
1,
|
|
44476
|
-
0,
|
|
44477
|
-
0,
|
|
44478
|
-
0,
|
|
44479
|
-
asr_JsCompilationResult$_init_$lambda$_0_0,
|
|
44462
|
+
otjc_JSObjects,
|
|
44480
44463
|
0,
|
|
44481
44464
|
jl_Object,
|
|
44482
|
-
[
|
|
44483
|
-
|
|
44465
|
+
[],
|
|
44466
|
+
17,
|
|
44484
44467
|
0,
|
|
44485
44468
|
0,
|
|
44486
|
-
|
|
44487
|
-
|
|
44469
|
+
0,
|
|
44470
|
+
otji_JSWrapper$Helper,
|
|
44488
44471
|
0,
|
|
44489
44472
|
jl_Object,
|
|
44490
44473
|
[],
|
|
44491
|
-
1537,
|
|
44492
44474
|
0,
|
|
44493
44475
|
0,
|
|
44476
|
+
() => otji_JSWrapper$Helper_$callClinit(),
|
|
44494
44477
|
0,
|
|
44495
|
-
|
|
44478
|
+
otjc_JSUndefined,
|
|
44496
44479
|
0,
|
|
44497
44480
|
jl_Object,
|
|
44498
|
-
[
|
|
44481
|
+
[otj_JSObject],
|
|
44499
44482
|
1,
|
|
44500
44483
|
0,
|
|
44501
44484
|
0,
|
|
44502
44485
|
0,
|
|
44503
|
-
|
|
44486
|
+
otjc_JSPromise$Executor,
|
|
44504
44487
|
0,
|
|
44505
44488
|
jl_Object,
|
|
44506
|
-
[],
|
|
44489
|
+
[otj_JSObject],
|
|
44507
44490
|
1537,
|
|
44508
44491
|
0,
|
|
44509
44492
|
0,
|
|
44510
44493
|
0,
|
|
44511
|
-
|
|
44512
|
-
|
|
44494
|
+
asr_JsRiscV$run$lambda$_9_0,
|
|
44495
|
+
"JsRiscV$run$lambda$_9_0",
|
|
44496
|
+
11,
|
|
44513
44497
|
jl_Object,
|
|
44514
|
-
[
|
|
44498
|
+
[otjc_JSPromise$Executor],
|
|
44515
44499
|
1,
|
|
44516
44500
|
0,
|
|
44517
44501
|
0,
|
|
44518
44502
|
0,
|
|
44519
|
-
|
|
44503
|
+
otjc_JSPromise,
|
|
44520
44504
|
0,
|
|
44521
44505
|
jl_Object,
|
|
44522
|
-
[
|
|
44506
|
+
[otj_JSObject],
|
|
44523
44507
|
1,
|
|
44524
44508
|
0,
|
|
44525
44509
|
0,
|
|
44526
44510
|
0,
|
|
44527
|
-
|
|
44511
|
+
asr_JsCompilationResult$_init_$lambda$_0_0,
|
|
44528
44512
|
0,
|
|
44529
44513
|
jl_Object,
|
|
44530
|
-
[],
|
|
44514
|
+
[juf_Function],
|
|
44531
44515
|
1,
|
|
44532
44516
|
0,
|
|
44533
44517
|
0,
|
|
44534
|
-
|
|
44535
|
-
|
|
44518
|
+
["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
|
|
44519
|
+
juf_Supplier,
|
|
44536
44520
|
0,
|
|
44537
44521
|
jl_Object,
|
|
44538
44522
|
[],
|
|
44523
|
+
1537,
|
|
44524
|
+
0,
|
|
44525
|
+
0,
|
|
44526
|
+
0,
|
|
44527
|
+
asr_JsCompilationResult$_init_$lambda$_0_1,
|
|
44528
|
+
0,
|
|
44529
|
+
jl_Object,
|
|
44530
|
+
[juf_Supplier],
|
|
44539
44531
|
1,
|
|
44540
44532
|
0,
|
|
44541
44533
|
0,
|
|
44542
44534
|
0,
|
|
44543
|
-
|
|
44535
|
+
juf_BiConsumer,
|
|
44544
44536
|
0,
|
|
44545
44537
|
jl_Object,
|
|
44546
44538
|
[],
|
|
44547
|
-
|
|
44539
|
+
1537,
|
|
44548
44540
|
0,
|
|
44549
44541
|
0,
|
|
44550
44542
|
0,
|
|
44551
|
-
|
|
44543
|
+
asr_JsCompilationResult$_init_$lambda$_0_2,
|
|
44552
44544
|
0,
|
|
44553
44545
|
jl_Object,
|
|
44554
|
-
[],
|
|
44546
|
+
[juf_BiConsumer],
|
|
44547
|
+
1,
|
|
44555
44548
|
0,
|
|
44556
44549
|
0,
|
|
44557
|
-
() => otji_JSWrapper$Helper_$callClinit(),
|
|
44558
44550
|
0,
|
|
44559
|
-
|
|
44551
|
+
asr_JsCompilationResult$_init_$lambda$_0_3,
|
|
44560
44552
|
0,
|
|
44561
44553
|
jl_Object,
|
|
44562
|
-
[
|
|
44554
|
+
[juf_BiConsumer],
|
|
44563
44555
|
1,
|
|
44564
44556
|
0,
|
|
44565
44557
|
0,
|
|
44566
44558
|
0,
|
|
44559
|
+
asr_JsRiscV$PokeRegisterWrite,
|
|
44560
|
+
"JsRiscV$PokeRegisterWrite",
|
|
44561
|
+
11,
|
|
44562
|
+
jl_Object,
|
|
44563
|
+
[],
|
|
44564
|
+
16,
|
|
44565
|
+
0,
|
|
44566
|
+
0,
|
|
44567
|
+
0,
|
|
44567
44568
|
asr_JsPokeWrite,
|
|
44568
44569
|
0,
|
|
44569
44570
|
jl_Object,
|
|
@@ -44572,6 +44573,15 @@ $rt_metadata([
|
|
|
44572
44573
|
0,
|
|
44573
44574
|
0,
|
|
44574
44575
|
0,
|
|
44576
|
+
asrrh_AddressErrorException,
|
|
44577
|
+
"AddressErrorException",
|
|
44578
|
+
8,
|
|
44579
|
+
jl_Exception,
|
|
44580
|
+
[],
|
|
44581
|
+
1,
|
|
44582
|
+
0,
|
|
44583
|
+
0,
|
|
44584
|
+
0,
|
|
44575
44585
|
asra_TokenTypes,
|
|
44576
44586
|
0,
|
|
44577
44587
|
jl_Enum,
|
|
@@ -46587,17 +46597,17 @@ $rt_metadata([
|
|
|
46587
46597
|
0,
|
|
46588
46598
|
0,
|
|
46589
46599
|
0,
|
|
46590
|
-
|
|
46591
|
-
|
|
46592
|
-
8,
|
|
46600
|
+
asr_ErrorList,
|
|
46601
|
+
0,
|
|
46593
46602
|
jl_Object,
|
|
46594
46603
|
[],
|
|
46595
46604
|
1,
|
|
46596
46605
|
0,
|
|
46597
46606
|
0,
|
|
46598
46607
|
0,
|
|
46599
|
-
|
|
46600
|
-
|
|
46608
|
+
asrrh_StackFrame,
|
|
46609
|
+
"StackFrame",
|
|
46610
|
+
8,
|
|
46601
46611
|
jl_Object,
|
|
46602
46612
|
[],
|
|
46603
46613
|
1,
|
|
@@ -47114,14 +47124,6 @@ $rt_metadata([
|
|
|
47114
47124
|
0,
|
|
47115
47125
|
0,
|
|
47116
47126
|
["$find0", $rt_wrapFunction3(jur_BackReferencedSingleSet_find), "$findBack", $rt_wrapFunction4(jur_BackReferencedSingleSet_findBack), "$processBackRefReplacement", $rt_wrapFunction0(jur_BackReferencedSingleSet_processBackRefReplacement)],
|
|
47117
|
-
jm_Conversion,
|
|
47118
|
-
0,
|
|
47119
|
-
jl_Object,
|
|
47120
|
-
[],
|
|
47121
|
-
0,
|
|
47122
|
-
0,
|
|
47123
|
-
() => jm_Conversion_$callClinit(),
|
|
47124
|
-
0,
|
|
47125
47127
|
jus_IntStream,
|
|
47126
47128
|
0,
|
|
47127
47129
|
jl_Object,
|
|
@@ -47146,6 +47148,14 @@ $rt_metadata([
|
|
|
47146
47148
|
0,
|
|
47147
47149
|
0,
|
|
47148
47150
|
0,
|
|
47151
|
+
jm_Conversion,
|
|
47152
|
+
0,
|
|
47153
|
+
jl_Object,
|
|
47154
|
+
[],
|
|
47155
|
+
0,
|
|
47156
|
+
0,
|
|
47157
|
+
() => jm_Conversion_$callClinit(),
|
|
47158
|
+
0,
|
|
47149
47159
|
ju_AbstractList$1,
|
|
47150
47160
|
0,
|
|
47151
47161
|
jl_Object,
|
|
@@ -47178,14 +47188,6 @@ $rt_metadata([
|
|
|
47178
47188
|
0,
|
|
47179
47189
|
() => asrs_Simulator$Reason_$callClinit(),
|
|
47180
47190
|
0,
|
|
47181
|
-
asrrh_Stack,
|
|
47182
|
-
0,
|
|
47183
|
-
jl_Object,
|
|
47184
|
-
[],
|
|
47185
|
-
1,
|
|
47186
|
-
0,
|
|
47187
|
-
() => asrrh_Stack_$callClinit(),
|
|
47188
|
-
0,
|
|
47189
47191
|
juf_Predicate,
|
|
47190
47192
|
0,
|
|
47191
47193
|
jl_Object,
|
|
@@ -47202,6 +47204,14 @@ $rt_metadata([
|
|
|
47202
47204
|
0,
|
|
47203
47205
|
0,
|
|
47204
47206
|
0,
|
|
47207
|
+
asrrh_Stack,
|
|
47208
|
+
0,
|
|
47209
|
+
jl_Object,
|
|
47210
|
+
[],
|
|
47211
|
+
1,
|
|
47212
|
+
0,
|
|
47213
|
+
() => asrrh_Stack_$callClinit(),
|
|
47214
|
+
0,
|
|
47205
47215
|
asrrh_InterruptController,
|
|
47206
47216
|
0,
|
|
47207
47217
|
jl_Object,
|
|
@@ -47867,14 +47877,6 @@ $rt_metadata([
|
|
|
47867
47877
|
0,
|
|
47868
47878
|
0,
|
|
47869
47879
|
0,
|
|
47870
|
-
asrs_BackStepper$Action,
|
|
47871
|
-
0,
|
|
47872
|
-
jl_Enum,
|
|
47873
|
-
[],
|
|
47874
|
-
65552,
|
|
47875
|
-
0,
|
|
47876
|
-
() => asrs_BackStepper$Action_$callClinit(),
|
|
47877
|
-
0,
|
|
47878
47880
|
asrs_BackStepper$PokeRestore,
|
|
47879
47881
|
"BackStepper$PokeRestore",
|
|
47880
47882
|
3,
|
|
@@ -47884,6 +47886,14 @@ $rt_metadata([
|
|
|
47884
47886
|
0,
|
|
47885
47887
|
0,
|
|
47886
47888
|
0,
|
|
47889
|
+
asrs_BackStepper$Action,
|
|
47890
|
+
0,
|
|
47891
|
+
jl_Enum,
|
|
47892
|
+
[],
|
|
47893
|
+
65552,
|
|
47894
|
+
0,
|
|
47895
|
+
() => asrs_BackStepper$Action_$callClinit(),
|
|
47896
|
+
0,
|
|
47887
47897
|
jusi_SimpleStreamImpl$toArray$lambda$_20_0,
|
|
47888
47898
|
0,
|
|
47889
47899
|
jl_Object,
|
|
@@ -49703,9 +49713,6 @@ $rt_stringPool([
|
|
|
49703
49713
|
"t5",
|
|
49704
49714
|
"t6",
|
|
49705
49715
|
"pc",
|
|
49706
|
-
"Negative bit address",
|
|
49707
|
-
"BigInteger out of int range",
|
|
49708
|
-
"BigInteger out of long range",
|
|
49709
49716
|
"ft0",
|
|
49710
49717
|
"ft1",
|
|
49711
49718
|
"ft2",
|
|
@@ -49738,6 +49745,9 @@ $rt_stringPool([
|
|
|
49738
49745
|
"ft9",
|
|
49739
49746
|
"ft10",
|
|
49740
49747
|
"ft11",
|
|
49748
|
+
"Negative bit address",
|
|
49749
|
+
"BigInteger out of int range",
|
|
49750
|
+
"BigInteger out of long range",
|
|
49741
49751
|
"Infinity",
|
|
49742
49752
|
"NaN",
|
|
49743
49753
|
" , ",
|
|
@@ -51175,6 +51185,19 @@ var $rt_jso_marker = Symbol("jsoClass");
|
|
|
51175
51185
|
Object.defineProperty(c, "sourcePath", {
|
|
51176
51186
|
get: $rt_callWithReceiver(asr_JsProgramStatement_getSourcePath$exported$1)
|
|
51177
51187
|
});
|
|
51188
|
+
c = asr_JsCompilationResult.prototype;
|
|
51189
|
+
Object.defineProperty(c, "hasErrors", {
|
|
51190
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$2)
|
|
51191
|
+
});
|
|
51192
|
+
Object.defineProperty(c, "hasWarnings", {
|
|
51193
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_hasWarnings$exported$0)
|
|
51194
|
+
});
|
|
51195
|
+
Object.defineProperty(c, "report", {
|
|
51196
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$3)
|
|
51197
|
+
});
|
|
51198
|
+
Object.defineProperty(c, "errors", {
|
|
51199
|
+
get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$1)
|
|
51200
|
+
});
|
|
51178
51201
|
c = asr_JsStackFrame.prototype;
|
|
51179
51202
|
Object.defineProperty(c, "pc", {
|
|
51180
51203
|
get: $rt_callWithReceiver(asr_JsStackFrame_getPc$exported$0)
|
|
@@ -51191,19 +51214,6 @@ var $rt_jso_marker = Symbol("jsoClass");
|
|
|
51191
51214
|
Object.defineProperty(c, "toAddress", {
|
|
51192
51215
|
get: $rt_callWithReceiver(asr_JsStackFrame_getToAddress$exported$1)
|
|
51193
51216
|
});
|
|
51194
|
-
c = asr_JsCompilationResult.prototype;
|
|
51195
|
-
Object.defineProperty(c, "hasErrors", {
|
|
51196
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$2)
|
|
51197
|
-
});
|
|
51198
|
-
Object.defineProperty(c, "hasWarnings", {
|
|
51199
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_hasWarnings$exported$0)
|
|
51200
|
-
});
|
|
51201
|
-
Object.defineProperty(c, "report", {
|
|
51202
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$3)
|
|
51203
|
-
});
|
|
51204
|
-
Object.defineProperty(c, "errors", {
|
|
51205
|
-
get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$1)
|
|
51206
|
-
});
|
|
51207
51217
|
c = asr_JsRiscVTokenizedLine.prototype;
|
|
51208
51218
|
Object.defineProperty(c, "sourceLine", {
|
|
51209
51219
|
get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getSourceLine$exported$0)
|
|
@@ -51281,18 +51291,18 @@ function $rt_export_class_JsRISCVIO_55() {
|
|
|
51281
51291
|
return asr_JsRISCVIO__init_$exported$0();
|
|
51282
51292
|
}
|
|
51283
51293
|
$rt_export_class_JsRISCVIO_55.prototype = asr_JsRISCVIO.prototype;
|
|
51284
|
-
function $
|
|
51294
|
+
function $rt_export_class_JsProgramStatement_244() {
|
|
51285
51295
|
throw new Error("Can't instantiate this class directly");
|
|
51286
51296
|
}
|
|
51287
|
-
$
|
|
51288
|
-
function $rt_export_class_JsStackFrame_253() {
|
|
51289
|
-
throw new Error("Can't instantiate this class directly");
|
|
51290
|
-
}
|
|
51291
|
-
$rt_export_class_JsStackFrame_253.prototype = asr_JsStackFrame.prototype;
|
|
51297
|
+
$rt_export_class_JsProgramStatement_244.prototype = asr_JsProgramStatement.prototype;
|
|
51292
51298
|
function $rt_export_class_JsCompilationResult_259() {
|
|
51293
51299
|
throw new Error("Can't instantiate this class directly");
|
|
51294
51300
|
}
|
|
51295
51301
|
$rt_export_class_JsCompilationResult_259.prototype = asr_JsCompilationResult.prototype;
|
|
51302
|
+
function $rt_export_class_JsStackFrame_271() {
|
|
51303
|
+
throw new Error("Can't instantiate this class directly");
|
|
51304
|
+
}
|
|
51305
|
+
$rt_export_class_JsStackFrame_271.prototype = asr_JsStackFrame.prototype;
|
|
51296
51306
|
function $rt_export_class_JsRiscVTokenizedLine_273() {
|
|
51297
51307
|
throw new Error("Can't instantiate this class directly");
|
|
51298
51308
|
}
|