@specy/risc-v 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.js +945 -930
  2. package/dist/index.mjs +945 -930
  3. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -3129,6 +3129,8 @@ var asr_JsRiscV_setIs64Bit$exported$27 = (var$1, var$2) => {
3129
3129
  ju_Observable_notifyObservers(var$1, null);
3130
3130
  }
3131
3131
  if (asr_Globals_initialized) {
3132
+ asrr_InstructionSet_$callClinit();
3133
+ asrr_InstructionSet_rv64 = var$3;
3132
3134
  var$1 = asrr_InstructionSet__init_();
3133
3135
  asr_Globals_instructionSet = var$1;
3134
3136
  asrr_InstructionSet_populate(var$1);
@@ -3286,9 +3288,9 @@ var asr_JsRiscV__clinit_ = () => {
3286
3288
  jnc_CodingErrorAction__clinit_();
3287
3289
  jnc_CoderResult__clinit_();
3288
3290
  jn_ByteOrder__clinit_();
3289
- asrjt_Float64__clinit_();
3290
3291
  asrjt_Float32__clinit_();
3291
3292
  jm_BigInteger__clinit_();
3293
+ asrjt_Float64__clinit_();
3292
3294
  asrjo_Arithmetic__clinit_();
3293
3295
  asrj_RoundingMode__clinit_();
3294
3296
  asrj_Flags__clinit_();
@@ -7003,144 +7005,39 @@ var jl_System_currentTimeMillis = () => {
7003
7005
  return Long_fromNumber((/* @__PURE__ */ new Date()).getTime());
7004
7006
  };
7005
7007
  var jl_CloneNotSupportedException = $rt_classWithoutFields(jl_Exception);
7006
- function asr_JsCompilationResult() {
7007
- let a = this;
7008
- jl_Object.call(a);
7009
- a.$report = null;
7010
- a.$errors1 = null;
7011
- }
7012
- var asr_JsCompilationResult__init_0 = ($this, var$1) => {
7013
- let var$2, var$3, var$4;
7014
- var$2 = asr_ErrorList_generateReport(var$1, 1);
7015
- var$3 = asr_ErrorList_generateReport(var$1, 0);
7016
- var$4 = new jl_StringBuilder();
7017
- jl_AbstractStringBuilder__init_(var$4);
7018
- jl_StringBuilder_append(jl_StringBuilder_append(var$4, var$2), var$3);
7019
- $this.$report = jl_AbstractStringBuilder_toString(var$4);
7020
- var$1 = ju_Collection_stream(var$1.$messages);
7021
- var$4 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7022
- var$4.$_06 = $this;
7023
- var$1 = jusi_SimpleStreamImpl_map(var$1, var$4);
7024
- var$4 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7008
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7009
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7010
+ let var$2, var$3, var$4, var$5;
7025
7011
  var$1 = var$1;
7026
- var$3 = ju_ArrayList__init_();
7027
- var$2 = var$1;
7028
- while (true) {
7029
- var$1 = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7030
- var$1.$_08 = var$4;
7031
- var$1.$_12 = var$3;
7032
- if (!jusi_WrappingStreamImpl_next(var$2, var$1))
7033
- break;
7012
+ asr_JsRiscV_$callClinit();
7013
+ var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7014
+ var$3 = var$2.data;
7015
+ var$4 = 0;
7016
+ while (var$4 < asra_TokenList_size(var$1)) {
7017
+ var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7018
+ var$4 = var$4 + 1 | 0;
7034
7019
  }
7035
- $this.$errors1 = var$3;
7036
- };
7037
- var asr_JsCompilationResult__init_ = (var_0) => {
7038
- let var_1 = new asr_JsCompilationResult();
7039
- asr_JsCompilationResult__init_0(var_1, var_0);
7040
- return var_1;
7041
- };
7042
- var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7043
- let var$2;
7044
- var$1 = var$1.$errors1;
7045
- var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7046
- return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7047
- };
7048
- var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7049
- var$1 = var$1;
7050
- return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7051
- };
7052
- var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
7053
- return $rt_ustr(var$1.$report);
7054
- };
7055
- function asr_AssemblyException() {
7056
- jl_Exception.call(this);
7057
- this.$errs = null;
7058
- }
7059
- var asr_AssemblyException__init_0 = ($this, $errs) => {
7060
- jl_Throwable__init_($this);
7061
- $this.$errs = $errs;
7020
+ var$5 = new asr_JsRiscVTokenizedLine();
7021
+ var$5.$line0 = var$1.$processedLine;
7022
+ var$5.$tokens0 = var$2;
7023
+ return var$5;
7062
7024
  };
7063
- var asr_AssemblyException__init_ = (var_0) => {
7064
- let var_1 = new asr_AssemblyException();
7065
- asr_AssemblyException__init_0(var_1, var_0);
7066
- return var_1;
7025
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
7026
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
7027
+ asr_JsRiscV_$callClinit();
7028
+ return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
7067
7029
  };
7068
- function asr_JsProgramStatement() {
7030
+ function asr_JsRiscVTokenizedLine() {
7069
7031
  let a = this;
7070
7032
  jl_Object.call(a);
7071
- a.$sourceLine1 = 0;
7072
- a.$address2 = 0;
7073
- a.$binaryStatement0 = 0;
7074
- a.$source3 = null;
7075
- a.$assemblyStatement = null;
7076
- a.$machineStatement0 = null;
7033
+ a.$line0 = null;
7034
+ a.$tokens0 = null;
7077
7035
  }
7078
- var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
7079
- let var$2, var$3, var$4, var$5, var$6;
7080
- $this.$sourceLine1 = $programStatement.$sourceLine0;
7081
- $this.$address2 = $programStatement.$textAddress0;
7082
- $this.$binaryStatement0 = $programStatement.$binaryStatement;
7083
- $this.$source3 = $programStatement.$source;
7084
- var$2 = $programStatement.$basicStatementList;
7085
- var$3 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7086
- var$4 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7087
- var$5 = new jl_StringBuffer();
7088
- jl_AbstractStringBuilder__init_(var$5);
7089
- var$6 = ju_AbstractList_iterator(var$2.$list);
7090
- while (ju_AbstractList$1_hasNext(var$6)) {
7091
- a: {
7092
- var$2 = ju_AbstractList$1_next(var$6);
7093
- switch (var$2.$type3) {
7094
- case 0:
7095
- break;
7096
- case 1:
7097
- if (var$3 == 10) {
7098
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7099
- break a;
7100
- }
7101
- jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7102
- break a;
7103
- case 2:
7104
- if (var$4 == 10) {
7105
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7106
- break a;
7107
- }
7108
- jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7109
- break a;
7110
- case 3:
7111
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7112
- break a;
7113
- default:
7114
- break a;
7115
- }
7116
- jl_AbstractStringBuilder_append1(var$5, var$2.$sValue);
7117
- }
7118
- }
7119
- $this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$5);
7120
- $this.$machineStatement0 = $programStatement.$machineStatement;
7121
- };
7122
- var asr_JsProgramStatement__init_ = (var_0) => {
7123
- let var_1 = new asr_JsProgramStatement();
7124
- asr_JsProgramStatement__init_0(var_1, var_0);
7125
- return var_1;
7126
- };
7127
- var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
7128
- return var$1.$sourceLine1;
7129
- };
7130
- var asr_JsProgramStatement_getAssemblyStatement$exported$1 = (var$1) => {
7131
- return $rt_ustr(var$1.$assemblyStatement);
7132
- };
7133
- var asr_JsProgramStatement_getSource$exported$2 = (var$1) => {
7134
- return $rt_ustr(var$1.$source3);
7135
- };
7136
- var asr_JsProgramStatement_getAddress$exported$3 = (var$1) => {
7137
- return var$1.$address2;
7138
- };
7139
- var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7140
- return var$1.$binaryStatement0;
7036
+ var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
7037
+ return $rt_ustr(var$1.$line0);
7141
7038
  };
7142
- var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7143
- return $rt_ustr(var$1.$machineStatement0);
7039
+ var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
7040
+ return otji_JS_wrap(var$1.$tokens0);
7144
7041
  };
7145
7042
  var asrrh_RegisterFile = $rt_classWithoutFields();
7146
7043
  var asrrh_RegisterFile_instance = null;
@@ -7464,8 +7361,6 @@ var ju_Arrays_stream = ($array) => {
7464
7361
  var$3.$size2 = var$4 - 0 | 0;
7465
7362
  return var$3;
7466
7363
  };
7467
- var juf_ToIntFunction = $rt_classWithoutFields(0);
7468
- var asr_JsRiscV$getRegistersValues$lambda$_20_0 = $rt_classWithoutFields();
7469
7364
  var asr_JsRiscV$getUndoStack$lambda$_21_0 = $rt_classWithoutFields();
7470
7365
  var asr_JsRiscV$getUndoStack$lambda$_21_0_apply = (var$0, var$1) => {
7471
7366
  let var$2, var$3;
@@ -7503,40 +7398,142 @@ var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7503
7398
  var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7504
7399
  return var$1.$param10;
7505
7400
  };
7506
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7507
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7508
- let var$2, var$3, var$4, var$5;
7509
- var$1 = var$1;
7510
- asr_JsRiscV_$callClinit();
7511
- var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7512
- var$3 = var$2.data;
7513
- var$4 = 0;
7514
- while (var$4 < asra_TokenList_size(var$1)) {
7515
- var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7516
- var$4 = var$4 + 1 | 0;
7401
+ function asr_JsProgramStatement() {
7402
+ let a = this;
7403
+ jl_Object.call(a);
7404
+ a.$sourceLine1 = 0;
7405
+ a.$address2 = 0;
7406
+ a.$binaryStatement0 = 0;
7407
+ a.$source3 = null;
7408
+ a.$assemblyStatement = null;
7409
+ a.$machineStatement0 = null;
7410
+ }
7411
+ var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
7412
+ let var$2, var$3, var$4, var$5, var$6;
7413
+ $this.$sourceLine1 = $programStatement.$sourceLine0;
7414
+ $this.$address2 = $programStatement.$textAddress0;
7415
+ $this.$binaryStatement0 = $programStatement.$binaryStatement;
7416
+ $this.$source3 = $programStatement.$source;
7417
+ var$2 = $programStatement.$basicStatementList;
7418
+ var$3 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7419
+ var$4 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7420
+ var$5 = new jl_StringBuffer();
7421
+ jl_AbstractStringBuilder__init_(var$5);
7422
+ var$6 = ju_AbstractList_iterator(var$2.$list);
7423
+ while (ju_AbstractList$1_hasNext(var$6)) {
7424
+ a: {
7425
+ var$2 = ju_AbstractList$1_next(var$6);
7426
+ switch (var$2.$type3) {
7427
+ case 0:
7428
+ break;
7429
+ case 1:
7430
+ if (var$3 == 10) {
7431
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7432
+ break a;
7433
+ }
7434
+ jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7435
+ break a;
7436
+ case 2:
7437
+ if (var$4 == 10) {
7438
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7439
+ break a;
7440
+ }
7441
+ jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7442
+ break a;
7443
+ case 3:
7444
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7445
+ break a;
7446
+ default:
7447
+ break a;
7448
+ }
7449
+ jl_AbstractStringBuilder_append1(var$5, var$2.$sValue);
7450
+ }
7517
7451
  }
7518
- var$5 = new asr_JsRiscVTokenizedLine();
7519
- var$5.$line0 = var$1.$processedLine;
7520
- var$5.$tokens0 = var$2;
7521
- return var$5;
7452
+ $this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$5);
7453
+ $this.$machineStatement0 = $programStatement.$machineStatement;
7522
7454
  };
7523
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
7524
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
7525
- asr_JsRiscV_$callClinit();
7526
- return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
7455
+ var asr_JsProgramStatement__init_ = (var_0) => {
7456
+ let var_1 = new asr_JsProgramStatement();
7457
+ asr_JsProgramStatement__init_0(var_1, var_0);
7458
+ return var_1;
7527
7459
  };
7528
- function asr_JsRiscVTokenizedLine() {
7460
+ var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
7461
+ return var$1.$sourceLine1;
7462
+ };
7463
+ var asr_JsProgramStatement_getAssemblyStatement$exported$1 = (var$1) => {
7464
+ return $rt_ustr(var$1.$assemblyStatement);
7465
+ };
7466
+ var asr_JsProgramStatement_getSource$exported$2 = (var$1) => {
7467
+ return $rt_ustr(var$1.$source3);
7468
+ };
7469
+ var asr_JsProgramStatement_getAddress$exported$3 = (var$1) => {
7470
+ return var$1.$address2;
7471
+ };
7472
+ var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7473
+ return var$1.$binaryStatement0;
7474
+ };
7475
+ var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7476
+ return $rt_ustr(var$1.$machineStatement0);
7477
+ };
7478
+ function asr_JsCompilationResult() {
7529
7479
  let a = this;
7530
7480
  jl_Object.call(a);
7531
- a.$line0 = null;
7532
- a.$tokens0 = null;
7481
+ a.$report = null;
7482
+ a.$errors1 = null;
7533
7483
  }
7534
- var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
7535
- return $rt_ustr(var$1.$line0);
7484
+ var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
7485
+ let var$2, var$3, var$4;
7486
+ $this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
7487
+ $errorReport = ju_Collection_stream($errorReport.$messages);
7488
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7489
+ var$2.$_06 = $this;
7490
+ $errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
7491
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7492
+ $errorReport = $errorReport;
7493
+ var$3 = ju_ArrayList__init_();
7494
+ var$4 = $errorReport;
7495
+ while (true) {
7496
+ $errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7497
+ $errorReport.$_08 = var$2;
7498
+ $errorReport.$_12 = var$3;
7499
+ if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
7500
+ break;
7501
+ }
7502
+ $this.$errors1 = var$3;
7536
7503
  };
7537
- var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
7538
- return otji_JS_wrap(var$1.$tokens0);
7504
+ var asr_JsCompilationResult__init_ = (var_0) => {
7505
+ let var_1 = new asr_JsCompilationResult();
7506
+ asr_JsCompilationResult__init_0(var_1, var_0);
7507
+ return var_1;
7508
+ };
7509
+ var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7510
+ let var$2;
7511
+ var$1 = var$1.$errors1;
7512
+ var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7513
+ return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7514
+ };
7515
+ var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7516
+ var$1 = var$1;
7517
+ return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7539
7518
  };
7519
+ var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
7520
+ return $rt_ustr(var$1.$report);
7521
+ };
7522
+ function asr_AssemblyException() {
7523
+ jl_Exception.call(this);
7524
+ this.$errs = null;
7525
+ }
7526
+ var asr_AssemblyException__init_0 = ($this, $errs) => {
7527
+ jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
7528
+ $this.$errs = $errs;
7529
+ };
7530
+ var asr_AssemblyException__init_ = (var_0) => {
7531
+ let var_1 = new asr_AssemblyException();
7532
+ asr_AssemblyException__init_0(var_1, var_0);
7533
+ return var_1;
7534
+ };
7535
+ var juf_ToIntFunction = $rt_classWithoutFields(0);
7536
+ var asr_JsRiscV$getRegistersValues$lambda$_20_0 = $rt_classWithoutFields();
7540
7537
  function asr_JsStackFrame() {
7541
7538
  let a = this;
7542
7539
  jl_Object.call(a);
@@ -8105,140 +8102,125 @@ var asr_RISCVFile_getName = ($this) => {
8105
8102
  return $this.$name2;
8106
8103
  };
8107
8104
  var jl_StringIndexOutOfBoundsException = $rt_classWithoutFields(jl_IndexOutOfBoundsException);
8108
- function asr_JsCompilationResult$_init_$lambda$_0_0() {
8109
- jl_Object.call(this);
8110
- this.$_06 = null;
8111
- }
8112
- var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8113
- let var$2, var$3;
8114
- var$1 = var$1;
8115
- var$2 = var$0.$_06;
8116
- var$3 = new asr_JsCompilationResult$JsCompilationError();
8117
- var$3.$this$016 = var$2;
8118
- var$3.$isWarning0 = var$1.$isWarning;
8119
- var$3.$message2 = var$1.$message0;
8120
- var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8121
- var$3.$filename2 = var$1.$filename0;
8122
- var$3.$lineNumber0 = var$1.$line;
8123
- var$3.$columnNumber = var$1.$position2;
8124
- return var$3;
8125
- };
8126
- var juf_Supplier = $rt_classWithoutFields(0);
8127
- var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8128
- var juf_BiConsumer = $rt_classWithoutFields(0);
8129
- var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8130
- var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8131
- function asrrh_Register() {
8105
+ function asrs_BackStepper() {
8132
8106
  let a = this;
8133
- ju_Observable.call(a);
8134
- a.$name1 = null;
8135
- a.$number = 0;
8136
- a.$resetValue0 = Long_ZERO;
8137
- a.$value2 = Long_ZERO;
8107
+ jl_Object.call(a);
8108
+ a.$engaged = 0;
8109
+ a.$backSteps = null;
8138
8110
  }
8139
- var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
8140
- ju_Observable__init_($this);
8141
- $this.$name1 = $n;
8142
- $this.$number = $num;
8143
- $this.$value2 = $val;
8144
- $this.$resetValue0 = $val;
8111
+ var asrs_BackStepper_pc = ($this) => {
8112
+ return asrrh_RegisterFile_getProgramCounter() - 4 | 0;
8145
8113
  };
8146
- var asrrh_Register__init_ = (var_0, var_1, var_2) => {
8147
- let var_3 = new asrrh_Register();
8148
- asrrh_Register__init_0(var_3, var_0, var_1, var_2);
8149
- return var_3;
8114
+ var asrs_BackStepper_addFloatingPointRestore = ($this, $register, $value) => {
8115
+ asrs_BackStepper$BackstepStack_push($this.$backSteps, asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE, asrs_BackStepper_pc($this), $register, $value);
8116
+ return $value;
8150
8117
  };
8151
- var asrrh_Register_getName = ($this) => {
8152
- return $this.$name1;
8118
+ var asrs_BackStepper_addDoNothing = ($this, $pc) => {
8119
+ if (!(!asrs_BackStepper$BackstepStack_empty($this.$backSteps) && asrs_BackStepper$BackstepStack_peek($this.$backSteps).$pc1 == $pc))
8120
+ asrs_BackStepper$BackstepStack_push1($this.$backSteps, asrs_BackStepper$Action_DO_NOTHING, $pc);
8153
8121
  };
8154
- var asrrh_Register_getValue = ($this) => {
8122
+ function asrs_BackStepper$BackstepStack() {
8123
+ let a = this;
8124
+ jl_Object.call(a);
8125
+ a.$capacity = 0;
8126
+ a.$size1 = 0;
8127
+ a.$top = 0;
8128
+ a.$stack = null;
8129
+ a.$this$015 = null;
8130
+ }
8131
+ var asrs_BackStepper$BackstepStack_empty = ($this) => {
8155
8132
  jl_Object_monitorEnterSync($this);
8156
8133
  try {
8157
- asrrh_Register_notifyAnyObservers($this, 0);
8158
- return $this.$value2;
8134
+ return $this.$size1 ? 0 : 1;
8159
8135
  } finally {
8160
8136
  jl_Object_monitorExitSync($this);
8161
8137
  }
8162
8138
  };
8163
- var asrrh_Register_getValueNoNotify = ($this) => {
8139
+ var asrs_BackStepper$BackstepStack_push = ($this, $act, $programCounter, $parm1, $parm2) => {
8140
+ let var$5, var$6, var$7, $$je;
8164
8141
  jl_Object_monitorEnterSync($this);
8165
8142
  try {
8166
- return $this.$value2;
8143
+ var$5 = $this.$size1;
8144
+ if (!var$5) {
8145
+ $this.$top = 0;
8146
+ $this.$size1 = var$5 + 1 | 0;
8147
+ } else {
8148
+ var$6 = $this.$capacity;
8149
+ if (var$5 >= var$6)
8150
+ $this.$top = ($this.$top + 1 | 0) % var$6 | 0;
8151
+ else {
8152
+ $this.$top = ($this.$top + 1 | 0) % var$6 | 0;
8153
+ $this.$size1 = var$5 + 1 | 0;
8154
+ }
8155
+ }
8156
+ var$7 = $this.$stack.data[$this.$top];
8157
+ var$7.$action = $act;
8158
+ var$7.$pc1 = $programCounter;
8159
+ a: {
8160
+ try {
8161
+ asr_Globals_$callClinit();
8162
+ var$7.$ps = asrrh_Memory_getStatementNoNotify(asr_Globals_memory, $programCounter);
8163
+ break a;
8164
+ } catch ($$e) {
8165
+ $$je = $rt_wrapException($$e);
8166
+ if ($$je instanceof jl_Exception) {
8167
+ } else {
8168
+ throw $$e;
8169
+ }
8170
+ }
8171
+ var$7.$ps = null;
8172
+ var$7.$pc1 = -1;
8173
+ }
8174
+ var$7.$param1 = $parm1;
8175
+ var$7.$param2 = $parm2;
8167
8176
  } finally {
8168
8177
  jl_Object_monitorExitSync($this);
8169
8178
  }
8170
8179
  };
8171
- var asrrh_Register_getNumber = ($this) => {
8172
- return $this.$number;
8173
- };
8174
- var asrrh_Register_setValue = ($this, $val) => {
8175
- let $old;
8180
+ var asrs_BackStepper$BackstepStack_push0 = ($this, $act, $programCounter, $parm1) => {
8176
8181
  jl_Object_monitorEnterSync($this);
8177
8182
  try {
8178
- $old = $this.$value2;
8179
- $this.$value2 = $val;
8180
- asrrh_Register_notifyAnyObservers($this, 1);
8181
- return $old;
8183
+ asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, $parm1, Long_ZERO);
8182
8184
  } finally {
8183
8185
  jl_Object_monitorExitSync($this);
8184
8186
  }
8185
8187
  };
8186
- var asrrh_Register_setValueBackdoor = ($this, $val) => {
8187
- let $old;
8188
+ var asrs_BackStepper$BackstepStack_push1 = ($this, $act, $programCounter) => {
8188
8189
  jl_Object_monitorEnterSync($this);
8189
8190
  try {
8190
- $old = $this.$value2;
8191
- $this.$value2 = $val;
8192
- return $old;
8191
+ asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, 0, Long_ZERO);
8193
8192
  } finally {
8194
8193
  jl_Object_monitorExitSync($this);
8195
8194
  }
8196
8195
  };
8197
- var asrrh_Register_resetValue = ($this) => {
8196
+ var asrs_BackStepper$BackstepStack_pop = ($this) => {
8197
+ let var$1, var$2, $bs, var$4, var$5;
8198
8198
  jl_Object_monitorEnterSync($this);
8199
8199
  try {
8200
- $this.$value2 = $this.$resetValue0;
8200
+ var$1 = $this.$stack.data;
8201
+ var$2 = $this.$top;
8202
+ $bs = var$1[var$2];
8203
+ var$4 = $this.$size1;
8204
+ if (var$4 == 1)
8205
+ $this.$top = -1;
8206
+ else {
8207
+ var$5 = $this.$capacity;
8208
+ $this.$top = ((var$2 + var$5 | 0) - 1 | 0) % var$5 | 0;
8209
+ }
8210
+ $this.$size1 = var$4 - 1 | 0;
8211
+ return $bs;
8201
8212
  } finally {
8202
8213
  jl_Object_monitorExitSync($this);
8203
8214
  }
8204
8215
  };
8205
- var asrrh_Register_changeResetValue = ($this, $reset) => {
8216
+ var asrs_BackStepper$BackstepStack_peek = ($this) => {
8206
8217
  jl_Object_monitorEnterSync($this);
8207
8218
  try {
8208
- $this.$resetValue0 = $reset;
8219
+ return $this.$stack.data[$this.$top];
8209
8220
  } finally {
8210
8221
  jl_Object_monitorExitSync($this);
8211
8222
  }
8212
8223
  };
8213
- var asrrh_Register_notifyAnyObservers = ($this, $type) => {
8214
- let var$2, var$3, var$4;
8215
- var$2 = $this;
8216
- if (ju_Observable_countObservers(var$2) > 0) {
8217
- ju_Observable_setChanged(var$2);
8218
- var$3 = new asrrh_RegisterAccessNotice();
8219
- var$4 = $this.$name1;
8220
- asrrh_AccessNotice__init_(var$3, $type);
8221
- var$3.$registerName = var$4;
8222
- ju_Observable_notifyObservers(var$2, var$3);
8223
- }
8224
- };
8225
- function asrs_BackStepper() {
8226
- let a = this;
8227
- jl_Object.call(a);
8228
- a.$engaged = 0;
8229
- a.$backSteps = null;
8230
- }
8231
- var asrs_BackStepper_pc = ($this) => {
8232
- return asrrh_RegisterFile_getProgramCounter() - 4 | 0;
8233
- };
8234
- var asrs_BackStepper_addFloatingPointRestore = ($this, $register, $value) => {
8235
- asrs_BackStepper$BackstepStack_push($this.$backSteps, asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE, asrs_BackStepper_pc($this), $register, $value);
8236
- return $value;
8237
- };
8238
- var asrs_BackStepper_addDoNothing = ($this, $pc) => {
8239
- if (!(!asrs_BackStepper$BackstepStack_empty($this.$backSteps) && asrs_BackStepper$BackstepStack_peek($this.$backSteps).$pc1 == $pc))
8240
- asrs_BackStepper$BackstepStack_push1($this.$backSteps, asrs_BackStepper$Action_DO_NOTHING, $pc);
8241
- };
8242
8224
  var jl_AutoCloseable = $rt_classWithoutFields(0);
8243
8225
  var jus_BaseStream = $rt_classWithoutFields(0);
8244
8226
  var jus_Stream = $rt_classWithoutFields(0);
@@ -8337,108 +8319,123 @@ var jusi_ArrayStreamImpl_next = ($this, $consumer) => {
8337
8319
  var jusi_ArrayStreamImpl_estimateSize = ($this) => {
8338
8320
  return $this.$size2;
8339
8321
  };
8340
- function asrs_BackStepper$BackstepStack() {
8322
+ function asrrh_Register() {
8341
8323
  let a = this;
8342
- jl_Object.call(a);
8343
- a.$capacity = 0;
8344
- a.$size1 = 0;
8345
- a.$top = 0;
8346
- a.$stack = null;
8347
- a.$this$015 = null;
8324
+ ju_Observable.call(a);
8325
+ a.$name1 = null;
8326
+ a.$number = 0;
8327
+ a.$resetValue0 = Long_ZERO;
8328
+ a.$value2 = Long_ZERO;
8348
8329
  }
8349
- var asrs_BackStepper$BackstepStack_empty = ($this) => {
8330
+ var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
8331
+ ju_Observable__init_($this);
8332
+ $this.$name1 = $n;
8333
+ $this.$number = $num;
8334
+ $this.$value2 = $val;
8335
+ $this.$resetValue0 = $val;
8336
+ };
8337
+ var asrrh_Register__init_ = (var_0, var_1, var_2) => {
8338
+ let var_3 = new asrrh_Register();
8339
+ asrrh_Register__init_0(var_3, var_0, var_1, var_2);
8340
+ return var_3;
8341
+ };
8342
+ var asrrh_Register_getName = ($this) => {
8343
+ return $this.$name1;
8344
+ };
8345
+ var asrrh_Register_getValue = ($this) => {
8350
8346
  jl_Object_monitorEnterSync($this);
8351
8347
  try {
8352
- return $this.$size1 ? 0 : 1;
8348
+ asrrh_Register_notifyAnyObservers($this, 0);
8349
+ return $this.$value2;
8353
8350
  } finally {
8354
8351
  jl_Object_monitorExitSync($this);
8355
8352
  }
8356
8353
  };
8357
- var asrs_BackStepper$BackstepStack_push = ($this, $act, $programCounter, $parm1, $parm2) => {
8358
- let var$5, var$6, var$7, $$je;
8354
+ var asrrh_Register_getValueNoNotify = ($this) => {
8359
8355
  jl_Object_monitorEnterSync($this);
8360
8356
  try {
8361
- var$5 = $this.$size1;
8362
- if (!var$5) {
8363
- $this.$top = 0;
8364
- $this.$size1 = var$5 + 1 | 0;
8365
- } else {
8366
- var$6 = $this.$capacity;
8367
- if (var$5 >= var$6)
8368
- $this.$top = ($this.$top + 1 | 0) % var$6 | 0;
8369
- else {
8370
- $this.$top = ($this.$top + 1 | 0) % var$6 | 0;
8371
- $this.$size1 = var$5 + 1 | 0;
8372
- }
8373
- }
8374
- var$7 = $this.$stack.data[$this.$top];
8375
- var$7.$action = $act;
8376
- var$7.$pc1 = $programCounter;
8377
- a: {
8378
- try {
8379
- asr_Globals_$callClinit();
8380
- var$7.$ps = asrrh_Memory_getStatementNoNotify(asr_Globals_memory, $programCounter);
8381
- break a;
8382
- } catch ($$e) {
8383
- $$je = $rt_wrapException($$e);
8384
- if ($$je instanceof jl_Exception) {
8385
- } else {
8386
- throw $$e;
8387
- }
8388
- }
8389
- var$7.$ps = null;
8390
- var$7.$pc1 = -1;
8391
- }
8392
- var$7.$param1 = $parm1;
8393
- var$7.$param2 = $parm2;
8357
+ return $this.$value2;
8394
8358
  } finally {
8395
8359
  jl_Object_monitorExitSync($this);
8396
8360
  }
8397
8361
  };
8398
- var asrs_BackStepper$BackstepStack_push0 = ($this, $act, $programCounter, $parm1) => {
8362
+ var asrrh_Register_getNumber = ($this) => {
8363
+ return $this.$number;
8364
+ };
8365
+ var asrrh_Register_setValue = ($this, $val) => {
8366
+ let $old;
8399
8367
  jl_Object_monitorEnterSync($this);
8400
8368
  try {
8401
- asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, $parm1, Long_ZERO);
8369
+ $old = $this.$value2;
8370
+ $this.$value2 = $val;
8371
+ asrrh_Register_notifyAnyObservers($this, 1);
8372
+ return $old;
8402
8373
  } finally {
8403
8374
  jl_Object_monitorExitSync($this);
8404
8375
  }
8405
8376
  };
8406
- var asrs_BackStepper$BackstepStack_push1 = ($this, $act, $programCounter) => {
8377
+ var asrrh_Register_setValueBackdoor = ($this, $val) => {
8378
+ let $old;
8407
8379
  jl_Object_monitorEnterSync($this);
8408
8380
  try {
8409
- asrs_BackStepper$BackstepStack_push($this, $act, $programCounter, 0, Long_ZERO);
8381
+ $old = $this.$value2;
8382
+ $this.$value2 = $val;
8383
+ return $old;
8410
8384
  } finally {
8411
8385
  jl_Object_monitorExitSync($this);
8412
8386
  }
8413
8387
  };
8414
- var asrs_BackStepper$BackstepStack_pop = ($this) => {
8415
- let var$1, var$2, $bs, var$4, var$5;
8388
+ var asrrh_Register_resetValue = ($this) => {
8416
8389
  jl_Object_monitorEnterSync($this);
8417
8390
  try {
8418
- var$1 = $this.$stack.data;
8419
- var$2 = $this.$top;
8420
- $bs = var$1[var$2];
8421
- var$4 = $this.$size1;
8422
- if (var$4 == 1)
8423
- $this.$top = -1;
8424
- else {
8425
- var$5 = $this.$capacity;
8426
- $this.$top = ((var$2 + var$5 | 0) - 1 | 0) % var$5 | 0;
8427
- }
8428
- $this.$size1 = var$4 - 1 | 0;
8429
- return $bs;
8391
+ $this.$value2 = $this.$resetValue0;
8430
8392
  } finally {
8431
8393
  jl_Object_monitorExitSync($this);
8432
8394
  }
8433
8395
  };
8434
- var asrs_BackStepper$BackstepStack_peek = ($this) => {
8396
+ var asrrh_Register_changeResetValue = ($this, $reset) => {
8435
8397
  jl_Object_monitorEnterSync($this);
8436
8398
  try {
8437
- return $this.$stack.data[$this.$top];
8399
+ $this.$resetValue0 = $reset;
8438
8400
  } finally {
8439
8401
  jl_Object_monitorExitSync($this);
8440
8402
  }
8441
8403
  };
8404
+ var asrrh_Register_notifyAnyObservers = ($this, $type) => {
8405
+ let var$2, var$3, var$4;
8406
+ var$2 = $this;
8407
+ if (ju_Observable_countObservers(var$2) > 0) {
8408
+ ju_Observable_setChanged(var$2);
8409
+ var$3 = new asrrh_RegisterAccessNotice();
8410
+ var$4 = $this.$name1;
8411
+ asrrh_AccessNotice__init_(var$3, $type);
8412
+ var$3.$registerName = var$4;
8413
+ ju_Observable_notifyObservers(var$2, var$3);
8414
+ }
8415
+ };
8416
+ function asr_JsCompilationResult$_init_$lambda$_0_0() {
8417
+ jl_Object.call(this);
8418
+ this.$_06 = null;
8419
+ }
8420
+ var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8421
+ let var$2, var$3;
8422
+ var$1 = var$1;
8423
+ var$2 = var$0.$_06;
8424
+ var$3 = new asr_JsCompilationResult$JsCompilationError();
8425
+ var$3.$this$016 = var$2;
8426
+ var$3.$isWarning0 = var$1.$isWarning;
8427
+ var$3.$message2 = var$1.$message0;
8428
+ var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8429
+ var$3.$filename2 = var$1.$filename0;
8430
+ var$3.$lineNumber0 = var$1.$line;
8431
+ var$3.$columnNumber = var$1.$position2;
8432
+ return var$3;
8433
+ };
8434
+ var juf_Supplier = $rt_classWithoutFields(0);
8435
+ var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8436
+ var juf_BiConsumer = $rt_classWithoutFields(0);
8437
+ var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8438
+ var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8442
8439
  var jl_Math = $rt_classWithoutFields();
8443
8440
  var jl_Math_pow = ($x, $y) => {
8444
8441
  return jl_Math_powImpl($x, $y);
@@ -11693,82 +11690,6 @@ var ju_Comparator$NaturalOrder_compare = ($this, $o1, $o2) => {
11693
11690
  var ju_Comparator$NaturalOrder__clinit_ = () => {
11694
11691
  ju_Comparator$NaturalOrder_INSTANCE = new ju_Comparator$NaturalOrder();
11695
11692
  };
11696
- function asr_ErrorList() {
11697
- let a = this;
11698
- jl_Object.call(a);
11699
- a.$messages = null;
11700
- a.$errorCount = 0;
11701
- a.$warningCount = 0;
11702
- }
11703
- var asr_ErrorList__init_0 = ($this) => {
11704
- $this.$messages = ju_ArrayList__init_();
11705
- $this.$errorCount = 0;
11706
- $this.$warningCount = 0;
11707
- };
11708
- var asr_ErrorList__init_ = () => {
11709
- let var_0 = new asr_ErrorList();
11710
- asr_ErrorList__init_0(var_0);
11711
- return var_0;
11712
- };
11713
- var asr_ErrorList_errorsOccurred = ($this) => {
11714
- return !$this.$errorCount ? 0 : 1;
11715
- };
11716
- var asr_ErrorList_warningsOccurred = ($this) => {
11717
- return !$this.$warningCount ? 0 : 1;
11718
- };
11719
- var asr_ErrorList_add = ($this, $mess) => {
11720
- let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
11721
- var$2 = $this.$messages.$size0;
11722
- if ($this.$errorCount <= asr_ErrorList_getErrorLimit($this)) {
11723
- if ($this.$errorCount != asr_ErrorList_getErrorLimit($this)) {
11724
- ju_ArrayList_add0($this.$messages, var$2, $mess);
11725
- if (!$mess.$isWarning)
11726
- $this.$errorCount = $this.$errorCount + 1 | 0;
11727
- else
11728
- $this.$warningCount = $this.$warningCount + 1 | 0;
11729
- } else {
11730
- var$3 = $this.$messages;
11731
- var$4 = new asr_ErrorMessage();
11732
- var$5 = null;
11733
- var$2 = $mess.$line;
11734
- var$6 = $mess.$position2;
11735
- var$7 = asr_ErrorList_getErrorLimit($this);
11736
- var$8 = new jl_StringBuilder();
11737
- jl_AbstractStringBuilder__init_(var$8);
11738
- var$9 = jl_StringBuilder_append(var$8, $rt_s(1021));
11739
- jl_AbstractStringBuilder_append(var$9, var$7);
11740
- jl_StringBuilder_append(var$9, $rt_s(1022));
11741
- asr_ErrorMessage__init_(var$4, var$5, var$2, var$6, jl_AbstractStringBuilder_toString(var$8));
11742
- ju_ArrayList_add(var$3, var$4);
11743
- $this.$errorCount = $this.$errorCount + 1 | 0;
11744
- }
11745
- }
11746
- };
11747
- var asr_ErrorList_errorLimitExceeded = ($this) => {
11748
- return $this.$errorCount <= asr_ErrorList_getErrorLimit($this) ? 0 : 1;
11749
- };
11750
- var asr_ErrorList_getErrorLimit = ($this) => {
11751
- asr_Globals_$callClinit();
11752
- return asr_Globals_maximumErrorMessages;
11753
- };
11754
- var asr_ErrorList_generateReport = ($this, $isWarning) => {
11755
- let $report, var$3, $m;
11756
- $report = jl_StringBuilder__init_0($rt_s(3));
11757
- var$3 = ju_AbstractList_iterator($this.$messages);
11758
- while (ju_AbstractList$1_hasNext(var$3)) {
11759
- a: {
11760
- $m = ju_AbstractList$1_next(var$3);
11761
- if (!($isWarning && $m.$isWarning)) {
11762
- if ($isWarning)
11763
- break a;
11764
- if ($m.$isWarning)
11765
- break a;
11766
- }
11767
- jl_AbstractStringBuilder_append1($report, asr_ErrorMessage_generateReport($m));
11768
- }
11769
- }
11770
- return jl_AbstractStringBuilder_toString($report);
11771
- };
11772
11693
  function asrrh_RegisterBlock() {
11773
11694
  let a = this;
11774
11695
  jl_Object.call(a);
@@ -11848,6 +11769,91 @@ var asrrh_RegisterBlock_resetRegisters = ($this) => {
11848
11769
  var$3 = var$3 + 1 | 0;
11849
11770
  }
11850
11771
  };
11772
+ function asr_ErrorList() {
11773
+ let a = this;
11774
+ jl_Object.call(a);
11775
+ a.$messages = null;
11776
+ a.$errorCount = 0;
11777
+ a.$warningCount = 0;
11778
+ }
11779
+ var asr_ErrorList__init_0 = ($this) => {
11780
+ $this.$messages = ju_ArrayList__init_();
11781
+ $this.$errorCount = 0;
11782
+ $this.$warningCount = 0;
11783
+ };
11784
+ var asr_ErrorList__init_ = () => {
11785
+ let var_0 = new asr_ErrorList();
11786
+ asr_ErrorList__init_0(var_0);
11787
+ return var_0;
11788
+ };
11789
+ var asr_ErrorList_errorsOccurred = ($this) => {
11790
+ return !$this.$errorCount ? 0 : 1;
11791
+ };
11792
+ var asr_ErrorList_warningsOccurred = ($this) => {
11793
+ return !$this.$warningCount ? 0 : 1;
11794
+ };
11795
+ var asr_ErrorList_add = ($this, $mess) => {
11796
+ let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
11797
+ var$2 = $this.$messages.$size0;
11798
+ if ($this.$errorCount <= asr_ErrorList_getErrorLimit($this)) {
11799
+ if ($this.$errorCount != asr_ErrorList_getErrorLimit($this)) {
11800
+ ju_ArrayList_add0($this.$messages, var$2, $mess);
11801
+ if (!$mess.$isWarning)
11802
+ $this.$errorCount = $this.$errorCount + 1 | 0;
11803
+ else
11804
+ $this.$warningCount = $this.$warningCount + 1 | 0;
11805
+ } else {
11806
+ var$3 = $this.$messages;
11807
+ var$4 = new asr_ErrorMessage();
11808
+ var$5 = null;
11809
+ var$2 = $mess.$line;
11810
+ var$6 = $mess.$position2;
11811
+ var$7 = asr_ErrorList_getErrorLimit($this);
11812
+ var$8 = new jl_StringBuilder();
11813
+ jl_AbstractStringBuilder__init_(var$8);
11814
+ var$9 = jl_StringBuilder_append(var$8, $rt_s(1021));
11815
+ jl_AbstractStringBuilder_append(var$9, var$7);
11816
+ jl_StringBuilder_append(var$9, $rt_s(1022));
11817
+ asr_ErrorMessage__init_(var$4, var$5, var$2, var$6, jl_AbstractStringBuilder_toString(var$8));
11818
+ ju_ArrayList_add(var$3, var$4);
11819
+ $this.$errorCount = $this.$errorCount + 1 | 0;
11820
+ }
11821
+ }
11822
+ };
11823
+ var asr_ErrorList_errorLimitExceeded = ($this) => {
11824
+ return $this.$errorCount <= asr_ErrorList_getErrorLimit($this) ? 0 : 1;
11825
+ };
11826
+ var asr_ErrorList_getErrorLimit = ($this) => {
11827
+ asr_Globals_$callClinit();
11828
+ return asr_Globals_maximumErrorMessages;
11829
+ };
11830
+ var asr_ErrorList_generateErrorAndWarningReport = ($this) => {
11831
+ let var$1, var$2, var$3;
11832
+ var$1 = asr_ErrorList_generateReport($this, 1);
11833
+ var$2 = asr_ErrorList_generateReport($this, 0);
11834
+ var$3 = new jl_StringBuilder();
11835
+ jl_AbstractStringBuilder__init_(var$3);
11836
+ jl_StringBuilder_append(jl_StringBuilder_append(var$3, var$1), var$2);
11837
+ return jl_AbstractStringBuilder_toString(var$3);
11838
+ };
11839
+ var asr_ErrorList_generateReport = ($this, $isWarning) => {
11840
+ let $report, var$3, $m;
11841
+ $report = jl_StringBuilder__init_0($rt_s(3));
11842
+ var$3 = ju_AbstractList_iterator($this.$messages);
11843
+ while (ju_AbstractList$1_hasNext(var$3)) {
11844
+ a: {
11845
+ $m = ju_AbstractList$1_next(var$3);
11846
+ if (!($isWarning && $m.$isWarning)) {
11847
+ if ($isWarning)
11848
+ break a;
11849
+ if ($m.$isWarning)
11850
+ break a;
11851
+ }
11852
+ jl_AbstractStringBuilder_append1($report, asr_ErrorMessage_generateReport($m));
11853
+ }
11854
+ }
11855
+ return jl_AbstractStringBuilder_toString($report);
11856
+ };
11851
11857
  function asrrh_StackFrame() {
11852
11858
  let a = this;
11853
11859
  jl_Object.call(a);
@@ -13450,22 +13456,6 @@ var jusi_StreamOverSpliterator_next = ($this, $consumer) => {
13450
13456
  var jusi_StreamOverSpliterator_estimateSize = ($this) => {
13451
13457
  return Long_lo(Long_fromInt($this.$spliterator0.$collection.$size()));
13452
13458
  };
13453
- var jus_IntStream = $rt_classWithoutFields(0);
13454
- var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
13455
- function jusi_MappingToIntStreamImpl() {
13456
- let a = this;
13457
- jusi_SimpleIntStreamImpl.call(a);
13458
- a.$source1 = null;
13459
- a.$mapper0 = null;
13460
- }
13461
- var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
13462
- let var$2, var$3;
13463
- var$2 = $this.$source1;
13464
- var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
13465
- var$3.$_09 = $this;
13466
- var$3.$_13 = $consumer;
13467
- return jusi_ArrayStreamImpl_next(var$2, var$3);
13468
- };
13469
13459
  function jusi_WrappingStreamImpl() {
13470
13460
  jusi_SimpleStreamImpl.call(this);
13471
13461
  this.$sourceStream = null;
@@ -13487,6 +13477,22 @@ var jusi_MappingStreamImpl_wrap = ($this, $consumer) => {
13487
13477
  var$2.$_10 = $consumer;
13488
13478
  return var$2;
13489
13479
  };
13480
+ var jus_IntStream = $rt_classWithoutFields(0);
13481
+ var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
13482
+ function jusi_MappingToIntStreamImpl() {
13483
+ let a = this;
13484
+ jusi_SimpleIntStreamImpl.call(a);
13485
+ a.$source1 = null;
13486
+ a.$mapper0 = null;
13487
+ }
13488
+ var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
13489
+ let var$2, var$3;
13490
+ var$2 = $this.$source1;
13491
+ var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
13492
+ var$3.$_09 = $this;
13493
+ var$3.$_13 = $consumer;
13494
+ return jusi_ArrayStreamImpl_next(var$2, var$3);
13495
+ };
13490
13496
  var asru_Binary = $rt_classWithoutFields();
13491
13497
  var asru_Binary_chars = null;
13492
13498
  var asru_Binary_intToBinaryString = ($value, $length) => {
@@ -23508,17 +23514,60 @@ var asr_ErrorMessage__init_1 = ($this, $isWarning, $sourceProgram, $line, $posit
23508
23514
  }
23509
23515
  $this.$macroExpansionHistory = $sourceProgram;
23510
23516
  };
23511
- var asr_ErrorMessage__init_2 = (var_0, var_1, var_2, var_3, var_4) => {
23517
+ var asr_ErrorMessage__init_3 = (var_0, var_1, var_2, var_3, var_4) => {
23512
23518
  let var_5 = new asr_ErrorMessage();
23513
23519
  asr_ErrorMessage__init_1(var_5, var_0, var_1, var_2, var_3, var_4);
23514
23520
  return var_5;
23515
23521
  };
23522
+ var asr_ErrorMessage__init_2 = ($this, $statement, $message) => {
23523
+ let var$3, var$4, $defineLine, var$6, $$je;
23524
+ $this.$isWarning = 0;
23525
+ var$3 = $statement.$sourceProgram0;
23526
+ $this.$filename0 = var$3 === null ? $rt_s(3) : var$3.$filename;
23527
+ $this.$position2 = 0;
23528
+ $this.$message0 = $message;
23529
+ var$3 = $statement.$source;
23530
+ $message = jur_Pattern_matcher(jur_Pattern_compile($rt_s(1495)), var$3);
23531
+ var$4 = jl_String_trim(jl_String__init_0(var$3));
23532
+ $defineLine = ju_ArrayList__init_();
23533
+ a: {
23534
+ while (true) {
23535
+ if (!jur_Matcher_find($message))
23536
+ break a;
23537
+ var$3 = jur_Matcher_group($message, 0);
23538
+ if (jl_String_indexOf0(var$4, var$3))
23539
+ break a;
23540
+ try {
23541
+ ju_ArrayList_add($defineLine, jl_Integer_valueOf(jl_Integer_parseInt0(jl_String_substring(var$3, 1, jl_String_length(var$3) - 1 | 0))));
23542
+ } catch ($$e) {
23543
+ $$je = $rt_wrapException($$e);
23544
+ if ($$je instanceof jl_NumberFormatException) {
23545
+ break;
23546
+ } else {
23547
+ throw $$e;
23548
+ }
23549
+ }
23550
+ var$4 = jl_String_trim(jl_String_substring0(var$4, var$3.$nativeString.length));
23551
+ }
23552
+ }
23553
+ if (!$defineLine.$size0) {
23554
+ $this.$line = $statement.$sourceLine0;
23555
+ $this.$macroExpansionHistory = $rt_s(3);
23556
+ } else {
23557
+ $this.$line = ju_ArrayList_get($defineLine, 0).$value1;
23558
+ var$6 = $statement.$sourceLine0;
23559
+ $statement = new jl_StringBuilder();
23560
+ jl_AbstractStringBuilder__init_($statement);
23561
+ jl_AbstractStringBuilder_append($statement, var$6);
23562
+ $this.$macroExpansionHistory = jl_AbstractStringBuilder_toString($statement);
23563
+ }
23564
+ };
23516
23565
  var asr_ErrorMessage_generateReport = ($this) => {
23517
23566
  let var$1, var$2, var$3, var$4;
23518
- var$1 = !$this.$isWarning ? $rt_s(1495) : $rt_s(1496);
23567
+ var$1 = !$this.$isWarning ? $rt_s(1496) : $rt_s(1497);
23519
23568
  var$2 = new jl_StringBuilder();
23520
23569
  jl_AbstractStringBuilder__init_(var$2);
23521
- jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1497));
23570
+ jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1498));
23522
23571
  var$1 = jl_AbstractStringBuilder_toString(var$2);
23523
23572
  if ($this.$filename0.$nativeString.length > 0) {
23524
23573
  var$3 = $this.$filename0;
@@ -23532,14 +23581,14 @@ var asr_ErrorMessage_generateReport = ($this) => {
23532
23581
  var$4 = $this.$line;
23533
23582
  var$3 = new jl_StringBuilder();
23534
23583
  jl_AbstractStringBuilder__init_(var$3);
23535
- jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, var$1), $rt_s(1498)), var$2), var$4);
23584
+ jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, var$1), $rt_s(1499)), var$2), var$4);
23536
23585
  var$1 = jl_AbstractStringBuilder_toString(var$3);
23537
23586
  }
23538
23587
  var$4 = $this.$position2;
23539
23588
  if (var$4 > 0) {
23540
23589
  var$2 = new jl_StringBuilder();
23541
23590
  jl_AbstractStringBuilder__init_(var$2);
23542
- jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1499)), var$4);
23591
+ jl_AbstractStringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$2, var$1), $rt_s(1500)), var$4);
23543
23592
  var$1 = jl_AbstractStringBuilder_toString(var$2);
23544
23593
  }
23545
23594
  var$3 = $this.$message0;
@@ -23924,9 +23973,9 @@ var asrs_Simulator$SimThread_handleTrap = ($this, $se, $pc) => {
23924
23973
  let $utvec, $base, $exceptionHandler, var$6, $$je;
23925
23974
  $utvec = asrs_Simulator$SimThread_$assertionsDisabled;
23926
23975
  if (!$utvec && $se.$cause == -1)
23927
- $rt_throw(jl_AssertionError__init_($rt_s(1500)));
23928
- if (!$utvec && $se.$cause < 0)
23929
23976
  $rt_throw(jl_AssertionError__init_($rt_s(1501)));
23977
+ if (!$utvec && $se.$cause < 0)
23978
+ $rt_throw(jl_AssertionError__init_($rt_s(1502)));
23930
23979
  a: {
23931
23980
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1113), Long_fromInt($se.$cause));
23932
23981
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(676), Long_fromInt($pc));
@@ -23965,10 +24014,10 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
23965
24014
  let $mode, $code, $utvec, $base, $exceptionHandler, var$9, $$je;
23966
24015
  $mode = asrs_Simulator$SimThread_$assertionsDisabled;
23967
24016
  if (!$mode && !($cause & -2147483648))
23968
- $rt_throw(jl_AssertionError__init_($rt_s(1502)));
24017
+ $rt_throw(jl_AssertionError__init_($rt_s(1503)));
23969
24018
  $code = $cause & 2147483647;
23970
24019
  if (!$mode && !(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(675)) & 1 && asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1110)) & 1 << $code))
23971
- $rt_throw(jl_AssertionError__init_($rt_s(1503)));
24020
+ $rt_throw(jl_AssertionError__init_($rt_s(1504)));
23972
24021
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1113), Long_fromInt($cause));
23973
24022
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(676), Long_fromInt($pc));
23974
24023
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1114), Long_fromInt($value));
@@ -24003,7 +24052,7 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
24003
24052
  var$9.$cause = -1;
24004
24053
  var$9.$value5 = 0;
24005
24054
  var$9.$message = null;
24006
- var$9.$message = asr_ErrorMessage__init_0(null, 0, 0, $rt_s(1504));
24055
+ var$9.$message = asr_ErrorMessage__init_0(null, 0, 0, $rt_s(1505));
24007
24056
  $this.$pe = var$9;
24008
24057
  asrs_Simulator$SimThread_stopExecution($this, 1, asrs_Simulator$Reason_EXCEPTION);
24009
24058
  return 0;
@@ -24270,7 +24319,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
24270
24319
  throw $$e;
24271
24320
  }
24272
24321
  }
24273
- $tmp_0 = $e.$type1 != 5 ? asr_SimulationException__init_5($rt_s(1505), 0) : asr_SimulationException__init_5($rt_s(1506), 1);
24322
+ $tmp_0 = $e.$type1 != 5 ? asr_SimulationException__init_5($rt_s(1506), 0) : asr_SimulationException__init_5($rt_s(1507), 1);
24274
24323
  if (!asrrh_InterruptController_registerSynchronousTrap($tmp_0, $this.$pc0)) {
24275
24324
  $this.$pe = $tmp_0;
24276
24325
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(676), Long_fromInt($this.$pc0));
@@ -24297,7 +24346,7 @@ var asrs_Simulator$SimThread_run = ($this) => {
24297
24346
  $instruction = new asr_SimulationException();
24298
24347
  $e = asru_Binary_intToHexString(asr_ProgramStatement_getBinaryStatement($se));
24299
24348
  $tmp_0 = jl_StringBuilder__init_();
24300
- jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($tmp_0, $rt_s(1507)), $e), var$5);
24349
+ jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($tmp_0, $rt_s(1508)), $e), var$5);
24301
24350
  asr_SimulationException__init_4($instruction, $se, jl_StringBuilder_toString($tmp_0), 2);
24302
24351
  $rt_throw($instruction);
24303
24352
  } catch ($$e) {
@@ -24815,7 +24864,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24815
24864
  $machineList = ju_ArrayList__init_();
24816
24865
  $this.$errors = asr_ErrorList__init_();
24817
24866
  if (asr_Globals_debug)
24818
- otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1508));
24867
+ otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1509));
24819
24868
  $statement = $tokenizedProgramFiles;
24820
24869
  $theTokenList = ju_AbstractList_iterator($statement);
24821
24870
  a: {
@@ -24859,7 +24908,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24859
24908
  $tokenizedProgramFiles = $this.$errors;
24860
24909
  $sourceLineList = new asr_ErrorMessage();
24861
24910
  $tokenList = $this.$fileCurrentlyBeingAssembled;
24862
- asr_ErrorMessage__init_($sourceLineList, $tokenList, asra_Macro_getFromLine(asra_MacroPool_getCurrent(asr_RISCVprogram_getLocalMacroPool($tokenList))), 0, $rt_s(1509));
24911
+ asr_ErrorMessage__init_($sourceLineList, $tokenList, asra_Macro_getFromLine(asra_MacroPool_getCurrent(asr_RISCVprogram_getLocalMacroPool($tokenList))), 0, $rt_s(1510));
24863
24912
  asr_ErrorList_add($tokenizedProgramFiles, $sourceLineList);
24864
24913
  }
24865
24914
  asra_Assembler_transferGlobals($this);
@@ -24873,7 +24922,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24873
24922
  if (asr_ErrorList_errorsOccurred($this.$errors))
24874
24923
  $rt_throw(asr_AssemblyException__init_($this.$errors));
24875
24924
  if (asr_Globals_debug)
24876
- otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1510));
24925
+ otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1511));
24877
24926
  $statements = ju_AbstractList_iterator($statement);
24878
24927
  c: {
24879
24928
  d: while (true) {
@@ -24908,7 +24957,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24908
24957
  if (asr_Globals_debug) {
24909
24958
  $tokenList = jl_System_out();
24910
24959
  $tokenizedProgramFiles = jl_StringBuilder__init_();
24911
- jl_StringBuilder_append(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1511)), $instruction);
24960
+ jl_StringBuilder_append(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1512)), $instruction);
24912
24961
  $tokenizedProgramFiles = jl_StringBuilder_toString($tokenizedProgramFiles);
24913
24962
  otcic_JsConsolePrintStream_println($tokenList, $tokenizedProgramFiles);
24914
24963
  }
@@ -24927,7 +24976,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24927
24976
  $rt_throw(asr_AssemblyException__init_($this.$errors));
24928
24977
  }
24929
24978
  if (asr_Globals_debug)
24930
- otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1512));
24979
+ otcic_JsConsolePrintStream_println(jl_System_out(), $rt_s(1513));
24931
24980
  $tokenList = ju_AbstractList_iterator($machineList);
24932
24981
  f: {
24933
24982
  while (true) {
@@ -24959,7 +25008,7 @@ var asra_Assembler_assemble = ($this, $tokenizedProgramFiles, $extendedAssembler
24959
25008
  $i = asra_Token_getStartPos($t);
24960
25009
  $sourceLine = asrrh_AddressErrorException_getAddress($e);
24961
25010
  $tokenizedProgramFiles = jl_StringBuilder__init_();
24962
- jl_StringBuilder_append0(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1513)), $sourceLine);
25011
+ jl_StringBuilder_append0(jl_StringBuilder_append($tokenizedProgramFiles, $rt_s(1514)), $sourceLine);
24963
25012
  asr_ErrorMessage__init_($statements, $t_0, $extendedAssemblerEnabled, $i, jl_StringBuilder_toString($tokenizedProgramFiles));
24964
25013
  asr_ErrorList_add($parsedList, $statements);
24965
25014
  }
@@ -24990,14 +25039,14 @@ var asra_Assembler_catchDuplicateAddresses = ($this, $instructions, $errors) =>
24990
25039
  $ps2 = $ps1.$sourceProgram0;
24991
25040
  var$11 = $ps2 === null ? $rt_s(3) : $ps2.$filename;
24992
25041
  var$12 = $ps1.$sourceLine0;
24993
- $ps2 = !asrrh_Memory_inTextSegment(var$7) ? $rt_s(1514) : $rt_s(1422);
25042
+ $ps2 = !asrrh_Memory_inTextSegment(var$7) ? $rt_s(1515) : $rt_s(1422);
24994
25043
  $ps1 = new jl_StringBuilder();
24995
25044
  jl_AbstractStringBuilder__init_($ps1);
24996
- var$13 = jl_StringBuilder_append($ps1, $rt_s(1515));
25045
+ var$13 = jl_StringBuilder_append($ps1, $rt_s(1516));
24997
25046
  jl_AbstractStringBuilder_append(var$13, var$7);
24998
- var$13 = jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1516)), var$11), $rt_s(1498));
25047
+ var$13 = jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1517)), var$11), $rt_s(1499));
24999
25048
  jl_AbstractStringBuilder_append(var$13, var$12);
25000
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1517)), $ps2), $rt_s(1518));
25049
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$13, $rt_s(1518)), $ps2), $rt_s(1519));
25001
25050
  asr_ErrorMessage__init_(var$8, var$9, var$10, 0, jl_AbstractStringBuilder_toString($ps1));
25002
25051
  asr_ErrorList_add($errors, var$8);
25003
25052
  }
@@ -25079,7 +25128,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25079
25128
  $i = 0;
25080
25129
  }
25081
25130
  if ($i)
25082
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, asra_TokenList_get($instrMatches, 0).$sourceLine, 0, $rt_s(1519)));
25131
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, asra_TokenList_get($instrMatches, 0).$sourceLine, 0, $rt_s(1520)));
25083
25132
  else {
25084
25133
  $i = $macro.$fromLine + 1 | 0;
25085
25134
  var$17 = Long_fromInt($counter);
@@ -25092,7 +25141,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25092
25141
  $counter = ($i - $macro.$fromLine | 0) + asra_Macro_getOriginalFromLine($macro) | 0;
25093
25142
  $inst = jl_String_trim($substituted);
25094
25143
  $programStatement = jl_StringBuilder__init_();
25095
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append1($programStatement, 60), $counter), $rt_s(1520)), $inst);
25144
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append1($programStatement, 60), $counter), $rt_s(1521)), $inst);
25096
25145
  $statements = asra_Assembler_parseLine($this, $tokenList2, jl_StringBuilder_toString($programStatement), $sourceLineNumber, $extendedAssemblerEnabled);
25097
25146
  if ($statements !== null)
25098
25147
  ju_AbstractCollection_addAll($source, $statements);
@@ -25110,7 +25159,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25110
25159
  $i = asra_Token_getStartPos($token);
25111
25160
  $macro = asra_Token_getValue($token);
25112
25161
  $inst = jl_StringBuilder__init_();
25113
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($inst, $rt_s(1521)), $macro), $rt_s(1522));
25162
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($inst, $rt_s(1522)), $macro), $rt_s(1523));
25114
25163
  asr_ErrorMessage__init_1($source, 1, $instrMatches, $extendedAssemblerEnabled, $i, jl_StringBuilder_toString($inst));
25115
25164
  asr_ErrorList_add($tokenList, $source);
25116
25165
  return null;
@@ -25125,7 +25174,7 @@ var asra_Assembler_parseLine = ($this, $tokenList, $source, $sourceLineNumber, $
25125
25174
  return $ret;
25126
25175
  $inst = asra_OperandFormat_bestOperandMatch($tokens, $instrMatches);
25127
25176
  if ($inst instanceof asrr_ExtendedInstruction && !$extendedAssemblerEnabled)
25128
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1523)));
25177
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1524)));
25129
25178
  if (asra_OperandFormat_tokenOperandMatch($tokens, $inst, $this.$errors)) {
25130
25179
  $programStatement = asr_ProgramStatement__init_0($this.$fileCurrentlyBeingAssembled, $source, $tokenList, $tokens, $inst, asra_Assembler$AddressSpace_get($this.$textAddress), $sourceLineNumber);
25131
25180
  $instLength = $inst.$getInstructionLength();
@@ -25151,7 +25200,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25151
25200
  $i = asra_Token_getSourceLine($token);
25152
25201
  $section = jl_String_valueOf($direct);
25153
25202
  $str = jl_StringBuilder__init_();
25154
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append($str, $rt_s(1524)), $i), $rt_s(1525)), $section);
25203
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append0(jl_StringBuilder_append($str, $rt_s(1525)), $i), $rt_s(1526)), $section);
25155
25204
  $section = jl_StringBuilder_toString($str);
25156
25205
  otcic_JsConsolePrintStream_println($label, $section);
25157
25206
  }
@@ -25163,7 +25212,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25163
25212
  $size = asra_Token_getStartPos($token);
25164
25213
  $token = asra_Token_getValue($token);
25165
25214
  $section = jl_StringBuilder__init_();
25166
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1526));
25215
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1527));
25167
25216
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25168
25217
  asr_ErrorList_add($tokens, $direct);
25169
25218
  return;
@@ -25180,7 +25229,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25180
25229
  $size = asra_Token_getStartPos($token);
25181
25230
  $token = asra_Token_getValue($token);
25182
25231
  $section = jl_StringBuilder__init_();
25183
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1527));
25232
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1528));
25184
25233
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25185
25234
  asr_ErrorList_add($tokens, $direct);
25186
25235
  return;
@@ -25193,13 +25242,13 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25193
25242
  $size = asra_Token_getStartPos(asra_TokenList_get($tokens, 1));
25194
25243
  $tokens = asra_Token_getValue(asra_TokenList_get($tokens, 1));
25195
25244
  $token = jl_StringBuilder__init_();
25196
- jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1528)), $tokens), 34);
25245
+ jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1529)), $tokens), 34);
25197
25246
  asr_ErrorMessage__init_($label, $section, $i, $size, jl_StringBuilder_toString($token));
25198
25247
  asr_ErrorList_add($direct, $label);
25199
25248
  return;
25200
25249
  }
25201
25250
  if ($this.$inMacroSegment) {
25202
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1529)));
25251
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1530)));
25203
25252
  return;
25204
25253
  }
25205
25254
  $this.$inMacroSegment = 1;
@@ -25217,7 +25266,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25217
25266
  $size = asra_Token_getStartPos($arg);
25218
25267
  $label = asra_Token_getValue($arg);
25219
25268
  $section = jl_StringBuilder__init_();
25220
- jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($section, $rt_s(1530)), $label), 39);
25269
+ jl_StringBuilder_append1(jl_StringBuilder_append(jl_StringBuilder_append($section, $rt_s(1531)), $label), 39);
25221
25270
  asr_ErrorMessage__init_($token, $direct, $i, $size, jl_StringBuilder_toString($section));
25222
25271
  asr_ErrorList_add($tokens, $token);
25223
25272
  return;
@@ -25230,7 +25279,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25230
25279
  }
25231
25280
  if ($direct === asra_Directives_END_MACRO) {
25232
25281
  if (asra_TokenList_size($tokens) > 1) {
25233
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1531)));
25282
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1532)));
25234
25283
  return;
25235
25284
  }
25236
25285
  if ($this.$inMacroSegment) {
@@ -25238,7 +25287,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25238
25287
  asra_MacroPool_commitMacro(asr_RISCVprogram_getLocalMacroPool($this.$fileCurrentlyBeingAssembled), $token);
25239
25288
  break a;
25240
25289
  }
25241
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1532)));
25290
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1533)));
25242
25291
  return;
25243
25292
  }
25244
25293
  if ($this.$inMacroSegment)
@@ -25264,15 +25313,15 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25264
25313
  }
25265
25314
  if ($direct === asra_Directives_SECTION) {
25266
25315
  if (asra_TokenList_size($tokens) < 2) {
25267
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_2(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1533)));
25316
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_3(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1534)));
25268
25317
  break a;
25269
25318
  }
25270
25319
  $section = asra_TokenList_get($tokens, 1);
25271
25320
  if (asra_Token_getType($section) !== asra_TokenTypes_QUOTED_STRING && asra_Token_getType($section) !== asra_TokenTypes_IDENTIFIER)
25272
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1534)));
25321
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_0(asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1535)));
25273
25322
  else {
25274
25323
  $str = asra_Token_getValue($section);
25275
- if (!jl_String_startsWith($str, $rt_s(1420)) && !jl_String_startsWith($str, $rt_s(1535)) && !jl_String_startsWith($str, $rt_s(1536))) {
25324
+ if (!jl_String_startsWith($str, $rt_s(1420)) && !jl_String_startsWith($str, $rt_s(1536)) && !jl_String_startsWith($str, $rt_s(1537))) {
25276
25325
  if (jl_String_startsWith($str, $rt_s(1422)))
25277
25326
  $this.$inDataSegment0 = 0;
25278
25327
  else {
@@ -25282,7 +25331,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25282
25331
  $size = asra_Token_getSourceLine($token);
25283
25332
  $value = asra_Token_getStartPos($token);
25284
25333
  $token = jl_StringBuilder__init_();
25285
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1537)), $str), $rt_s(1538));
25334
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1538)), $str), $rt_s(1539));
25286
25335
  asr_ErrorMessage__init_1($direct, 1, $label, $size, $value, jl_StringBuilder_toString($token));
25287
25336
  asr_ErrorList_add($tokens, $direct);
25288
25337
  }
@@ -25316,7 +25365,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25316
25365
  $size = asra_Token_getStartPos($token);
25317
25366
  $token = asra_Token_getValue($token);
25318
25367
  $section = jl_StringBuilder__init_();
25319
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1539));
25368
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1540));
25320
25369
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25321
25370
  asr_ErrorList_add($tokens, $direct);
25322
25371
  return;
@@ -25324,7 +25373,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25324
25373
  if (asra_TokenTypes_isIntegerTokenType(asra_Token_getType(asra_TokenList_get($tokens, 1))) && asru_Binary_stringToInt(asra_Token_getValue(asra_TokenList_get($tokens, 1))) >= 0) {
25325
25374
  $value = asru_Binary_stringToInt(asra_Token_getValue(asra_TokenList_get($tokens, 1)));
25326
25375
  if ($value < 2 && !$this.$inDataSegment0) {
25327
- asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_2(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1540)));
25376
+ asr_ErrorList_add($this.$errors, asr_ErrorMessage__init_3(1, asra_Token_getSourceProgram($token), asra_Token_getSourceLine($token), asra_Token_getStartPos($token), $rt_s(1541)));
25328
25377
  $tokens = $this.$dataAddress;
25329
25378
  asra_Assembler$AddressSpace_set($tokens, asra_Assembler_alignToBoundary($this, asra_Assembler$AddressSpace_get($tokens), 4));
25330
25379
  } else if (!$value)
@@ -25342,7 +25391,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25342
25391
  $size = asra_Token_getStartPos($token);
25343
25392
  $token = asra_Token_getValue($token);
25344
25393
  $section = jl_StringBuilder__init_();
25345
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1541));
25394
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1542));
25346
25395
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25347
25396
  asr_ErrorList_add($tokens, $direct);
25348
25397
  return;
@@ -25358,7 +25407,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25358
25407
  $size = asra_Token_getStartPos($token);
25359
25408
  $token = asra_Token_getValue($token);
25360
25409
  $section = jl_StringBuilder__init_();
25361
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1539));
25410
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1540));
25362
25411
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25363
25412
  asr_ErrorList_add($tokens, $direct);
25364
25413
  return;
@@ -25375,7 +25424,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25375
25424
  $size = asra_Token_getStartPos($token);
25376
25425
  $token = asra_Token_getValue($token);
25377
25426
  $section = jl_StringBuilder__init_();
25378
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1541));
25427
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1542));
25379
25428
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25380
25429
  asr_ErrorList_add($tokens, $direct);
25381
25430
  return;
@@ -25389,7 +25438,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25389
25438
  $size = asra_Token_getStartPos($token);
25390
25439
  $token = asra_Token_getValue($token);
25391
25440
  $section = jl_StringBuilder__init_();
25392
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1542));
25441
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1543));
25393
25442
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25394
25443
  asr_ErrorList_add($tokens, $direct);
25395
25444
  return;
@@ -25409,7 +25458,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25409
25458
  $size = asra_Token_getStartPos($token);
25410
25459
  $token = asra_Token_getValue($token);
25411
25460
  $section = jl_StringBuilder__init_();
25412
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1543));
25461
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1544));
25413
25462
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25414
25463
  asr_ErrorList_add($tokens, $direct);
25415
25464
  return;
@@ -25422,7 +25471,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25422
25471
  $size = asra_Token_getStartPos($token);
25423
25472
  $token = asra_Token_getValue($token);
25424
25473
  $section = jl_StringBuilder__init_();
25425
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1544));
25474
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1545));
25426
25475
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25427
25476
  asr_ErrorList_add($tokens, $direct);
25428
25477
  break a;
@@ -25435,7 +25484,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25435
25484
  $size = asra_Token_getStartPos($token);
25436
25485
  $token = asra_Token_getValue($token);
25437
25486
  $section = jl_StringBuilder__init_();
25438
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1527));
25487
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1528));
25439
25488
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25440
25489
  asr_ErrorList_add($tokens, $direct);
25441
25490
  return;
@@ -25451,7 +25500,7 @@ var asra_Assembler_executeDirective = ($this, $tokens) => {
25451
25500
  $size = asra_Token_getStartPos($token);
25452
25501
  $token = asra_Token_getValue($token);
25453
25502
  $section = jl_StringBuilder__init_();
25454
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1545));
25503
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append1($section, 34), $token), $rt_s(1546));
25455
25504
  asr_ErrorMessage__init_($direct, $label, $i, $size, jl_StringBuilder_toString($section));
25456
25505
  asr_ErrorList_add($tokens, $direct);
25457
25506
  return;
@@ -25477,7 +25526,7 @@ var asra_Assembler_transferGlobals = ($this) => {
25477
25526
  $symtabEntry = new jl_StringBuilder();
25478
25527
  jl_AbstractStringBuilder__init_($symtabEntry);
25479
25528
  jl_AbstractStringBuilder_append0($symtabEntry, 34);
25480
- jl_StringBuilder_append(jl_StringBuilder_append($symtabEntry, $label), $rt_s(1546));
25529
+ jl_StringBuilder_append(jl_StringBuilder_append($symtabEntry, $label), $rt_s(1547));
25481
25530
  asr_ErrorMessage__init_(var$5, var$6, var$7, var$8, jl_AbstractStringBuilder_toString($symtabEntry));
25482
25531
  asr_ErrorList_add(var$4, var$5);
25483
25532
  } else {
@@ -25492,7 +25541,7 @@ var asra_Assembler_transferGlobals = ($this) => {
25492
25541
  $label = new jl_StringBuilder();
25493
25542
  jl_AbstractStringBuilder__init_($label);
25494
25543
  jl_AbstractStringBuilder_append0($label, 34);
25495
- jl_StringBuilder_append(jl_StringBuilder_append($label, $symtabEntry), $rt_s(1547));
25544
+ jl_StringBuilder_append(jl_StringBuilder_append($label, $symtabEntry), $rt_s(1548));
25496
25545
  asr_ErrorMessage__init_(var$5, var$6, var$7, var$8, jl_AbstractStringBuilder_toString($label));
25497
25546
  asr_ErrorList_add(var$4, var$5);
25498
25547
  } else {
@@ -25514,7 +25563,7 @@ var asra_Assembler_transferGlobals = ($this) => {
25514
25563
  var$4 = var$6.$filename1;
25515
25564
  var$6 = new jl_StringBuilder();
25516
25565
  jl_AbstractStringBuilder__init_(var$6);
25517
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(79)), var$5), $rt_s(1548)), var$4), $rt_s(82));
25566
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(79)), var$5), $rt_s(1549)), var$4), $rt_s(82));
25518
25567
  var$5 = jl_AbstractStringBuilder_toString(var$6);
25519
25568
  otcic_JsConsolePrintStream_println(var$9, var$5);
25520
25569
  }
@@ -25548,7 +25597,7 @@ var asra_Assembler_matchInstruction = ($this, $token) => {
25548
25597
  var$8 = $token.$value;
25549
25598
  $token = new jl_StringBuilder();
25550
25599
  jl_AbstractStringBuilder__init_($token);
25551
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1549)), var$8), $rt_s(1550));
25600
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1550)), var$8), $rt_s(1551));
25552
25601
  asr_ErrorMessage__init_(var$4, var$5, var$6, var$7, jl_AbstractStringBuilder_toString($token));
25553
25602
  asr_ErrorList_add(var$3, var$4);
25554
25603
  }
@@ -25576,7 +25625,7 @@ var asra_Assembler_matchInstruction = ($this, $token) => {
25576
25625
  $token = new jl_StringBuilder();
25577
25626
  jl_AbstractStringBuilder__init_($token);
25578
25627
  jl_AbstractStringBuilder_append0($token, 34);
25579
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$10), $rt_s(1551));
25628
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$10), $rt_s(1552));
25580
25629
  asr_ErrorMessage__init_(var$3, var$4, var$9, var$6, jl_AbstractStringBuilder_toString($token));
25581
25630
  asr_ErrorList_add($inst, var$3);
25582
25631
  } else {
@@ -25588,7 +25637,7 @@ var asra_Assembler_matchInstruction = ($this, $token) => {
25588
25637
  var$10 = $token.$value;
25589
25638
  $token = new jl_StringBuilder();
25590
25639
  jl_AbstractStringBuilder__init_($token);
25591
- jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1552)), var$10), 34);
25640
+ jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(1553)), var$10), 34);
25592
25641
  asr_ErrorMessage__init_(var$3, var$8, var$9, var$6, jl_AbstractStringBuilder_toString($token));
25593
25642
  asr_ErrorList_add($inst, var$3);
25594
25643
  }
@@ -25619,7 +25668,7 @@ var asra_Assembler_storeNumeric = ($this, $tokens, $directive, $errors) => {
25619
25668
  if (asra_TokenTypes_isIntegerTokenType($repetitionsToken.$type)) {
25620
25669
  $repetitions = asru_Binary_stringToInt($repetitionsToken.$value);
25621
25670
  if ($repetitions <= 0) {
25622
- asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $repetitionsToken.$sourceLine, $repetitionsToken.$sourcePos, $rt_s(1553)));
25671
+ asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $repetitionsToken.$sourceLine, $repetitionsToken.$sourcePos, $rt_s(1554)));
25623
25672
  return;
25624
25673
  }
25625
25674
  b: {
@@ -25643,7 +25692,7 @@ var asra_Assembler_storeNumeric = ($this, $tokens, $directive, $errors) => {
25643
25692
  return;
25644
25693
  }
25645
25694
  }
25646
- asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $valueToken.$sourceLine, $valueToken.$sourcePos, $rt_s(1554)));
25695
+ asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$fileCurrentlyBeingAssembled, $valueToken.$sourceLine, $valueToken.$sourcePos, $rt_s(1555)));
25647
25696
  return;
25648
25697
  }
25649
25698
  while ($i < asra_TokenList_size($tokens)) {
@@ -25668,7 +25717,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25668
25717
  $token = new jl_StringBuilder();
25669
25718
  jl_AbstractStringBuilder__init_($token);
25670
25719
  jl_AbstractStringBuilder_append0($token, 34);
25671
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1555));
25720
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1556));
25672
25721
  asr_ErrorMessage__init_($directive, var$5, var$6, $dataAddress, jl_AbstractStringBuilder_toString($token));
25673
25722
  asr_ErrorList_add($errors, $directive);
25674
25723
  } else if (!$this.$inDataSegment0) {
@@ -25680,7 +25729,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25680
25729
  $token = new jl_StringBuilder();
25681
25730
  jl_AbstractStringBuilder__init_($token);
25682
25731
  jl_AbstractStringBuilder_append0($token, 34);
25683
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1556));
25732
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$8), $rt_s(1557));
25684
25733
  asr_ErrorMessage__init_($directive, var$5, var$6, $dataAddress, jl_AbstractStringBuilder_toString($token));
25685
25734
  asr_ErrorList_add($errors, $directive);
25686
25735
  } else {
@@ -25724,7 +25773,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25724
25773
  var$18 = asru_Binary_intToHexString($value);
25725
25774
  var$19 = new jl_StringBuilder();
25726
25775
  jl_AbstractStringBuilder__init_(var$19);
25727
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$19, $rt_s(1557)), var$17), $rt_s(1558)), var$18);
25776
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$19, $rt_s(1558)), var$17), $rt_s(1559)), var$18);
25728
25777
  asr_ErrorMessage__init_1(var$8, 1, var$5, var$11, var$12, jl_AbstractStringBuilder_toString(var$19));
25729
25778
  asr_ErrorList_add($errors, var$8);
25730
25779
  }
@@ -25764,7 +25813,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25764
25813
  var$18 = asru_Binary_intToHexString($dataAddress);
25765
25814
  var$5 = new jl_StringBuilder();
25766
25815
  jl_AbstractStringBuilder__init_(var$5);
25767
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1557)), var$8), $rt_s(1558)), var$18);
25816
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1558)), var$8), $rt_s(1559)), var$18);
25768
25817
  asr_ErrorMessage__init_1($directive, 1, var$20, var$11, var$12, jl_AbstractStringBuilder_toString(var$5));
25769
25818
  asr_ErrorList_add($errors, $directive);
25770
25819
  }
@@ -25786,7 +25835,7 @@ var asra_Assembler_storeInteger = ($this, $token, $directive, $errors) => {
25786
25835
  jl_AbstractStringBuilder__init_($token);
25787
25836
  jl_AbstractStringBuilder_append0($token, 34);
25788
25837
  jl_AbstractStringBuilder_append($token, $dataAddress);
25789
- jl_StringBuilder_append($token, $rt_s(1559));
25838
+ jl_StringBuilder_append($token, $rt_s(1560));
25790
25839
  asr_ErrorMessage__init_($directive, var$18, var$12, var$6, jl_AbstractStringBuilder_toString($token));
25791
25840
  asr_ErrorList_add($errors, $directive);
25792
25841
  return;
@@ -25815,7 +25864,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25815
25864
  var$8 = new jl_StringBuilder();
25816
25865
  jl_AbstractStringBuilder__init_(var$8);
25817
25866
  jl_AbstractStringBuilder_append0(var$8, 34);
25818
- jl_StringBuilder_append(jl_StringBuilder_append(var$8, $token), $rt_s(1560));
25867
+ jl_StringBuilder_append(jl_StringBuilder_append(var$8, $token), $rt_s(1561));
25819
25868
  asr_ErrorMessage__init_(var$6, $directive, var$7, $lengthInBytes, jl_AbstractStringBuilder_toString(var$8));
25820
25869
  asr_ErrorList_add($errors, var$6);
25821
25870
  return;
@@ -25839,7 +25888,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25839
25888
  $token = new jl_StringBuilder();
25840
25889
  jl_AbstractStringBuilder__init_($token);
25841
25890
  jl_AbstractStringBuilder_append0($token, 34);
25842
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1560));
25891
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1561));
25843
25892
  asr_ErrorMessage__init_($directive, var$9, var$10, var$7, jl_AbstractStringBuilder_toString($token));
25844
25893
  asr_ErrorList_add($errors, $directive);
25845
25894
  return;
@@ -25866,7 +25915,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25866
25915
  $token = new jl_StringBuilder();
25867
25916
  jl_AbstractStringBuilder__init_($token);
25868
25917
  jl_AbstractStringBuilder_append0($token, 34);
25869
- jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1561));
25918
+ jl_StringBuilder_append(jl_StringBuilder_append($token, var$6), $rt_s(1562));
25870
25919
  asr_ErrorMessage__init_($directive, var$9, var$10, var$7, jl_AbstractStringBuilder_toString($token));
25871
25920
  asr_ErrorList_add($errors, $directive);
25872
25921
  return;
@@ -25904,7 +25953,7 @@ var asra_Assembler_storeRealNumber = ($this, $token, $directive, $errors) => {
25904
25953
  jl_AbstractStringBuilder__init_($token);
25905
25954
  jl_AbstractStringBuilder_append0($token, 34);
25906
25955
  jl_AbstractStringBuilder_append($token, var$7);
25907
- jl_StringBuilder_append($token, $rt_s(1562));
25956
+ jl_StringBuilder_append($token, $rt_s(1563));
25908
25957
  asr_ErrorMessage__init_($directive, var$8, var$11, var$10, jl_AbstractStringBuilder_toString($token));
25909
25958
  asr_ErrorList_add($errors, $directive);
25910
25959
  }
@@ -25926,7 +25975,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
25926
25975
  $token = new jl_StringBuilder();
25927
25976
  jl_AbstractStringBuilder__init_($token);
25928
25977
  jl_AbstractStringBuilder_append0($token, 34);
25929
- jl_StringBuilder_append(jl_StringBuilder_append($token, $invalidCodePoint), $rt_s(1563));
25978
+ jl_StringBuilder_append(jl_StringBuilder_append($token, $invalidCodePoint), $rt_s(1564));
25930
25979
  asr_ErrorMessage__init_($codePoint, var$7, var$8, $j, jl_AbstractStringBuilder_toString($token));
25931
25980
  asr_ErrorList_add($errors, $codePoint);
25932
25981
  } else {
@@ -25992,7 +26041,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
25992
26041
  var$8 = $token.$sourcePos;
25993
26042
  var$15 = new jl_StringBuilder();
25994
26043
  jl_AbstractStringBuilder__init_(var$15);
25995
- jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1564)), $codePoint), 34);
26044
+ jl_AbstractStringBuilder_append0(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1565)), $codePoint), 34);
25996
26045
  asr_ErrorMessage__init_($invalidCodePoint, var$14, $theChar, var$8, jl_AbstractStringBuilder_toString(var$15));
25997
26046
  asr_ErrorList_add($errors, $invalidCodePoint);
25998
26047
  $theChar = var$13;
@@ -26005,7 +26054,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
26005
26054
  $theChar = $token.$sourcePos;
26006
26055
  var$15 = new jl_StringBuilder();
26007
26056
  jl_AbstractStringBuilder__init_(var$15);
26008
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1565)), $invalidCodePoint), $rt_s(1566));
26057
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$15, $rt_s(1566)), $invalidCodePoint), $rt_s(1567));
26009
26058
  asr_ErrorMessage__init_($codePoint, var$14, $b, $theChar, jl_AbstractStringBuilder_toString(var$15));
26010
26059
  asr_ErrorList_add($errors, $codePoint);
26011
26060
  $theChar = var$8;
@@ -26051,7 +26100,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
26051
26100
  jl_AbstractStringBuilder__init_($invalidCodePoint);
26052
26101
  jl_AbstractStringBuilder_append0($invalidCodePoint, 34);
26053
26102
  jl_AbstractStringBuilder_append($invalidCodePoint, var$8);
26054
- jl_StringBuilder_append($invalidCodePoint, $rt_s(1562));
26103
+ jl_StringBuilder_append($invalidCodePoint, $rt_s(1563));
26055
26104
  asr_ErrorMessage__init_($codePoint, var$7, $b, $theChar, jl_AbstractStringBuilder_toString($invalidCodePoint));
26056
26105
  asr_ErrorList_add($errors, $codePoint);
26057
26106
  }
@@ -26079,7 +26128,7 @@ var asra_Assembler_storeStrings = ($this, $tokens, $direct, $errors) => {
26079
26128
  jl_AbstractStringBuilder__init_($token);
26080
26129
  jl_AbstractStringBuilder_append0($token, 34);
26081
26130
  jl_AbstractStringBuilder_append($token, $j);
26082
- jl_StringBuilder_append($token, $rt_s(1562));
26131
+ jl_StringBuilder_append($token, $rt_s(1563));
26083
26132
  asr_ErrorMessage__init_($codePoint, var$15, $theChar, var$8, jl_AbstractStringBuilder_toString($token));
26084
26133
  asr_ErrorList_add($errors, $codePoint);
26085
26134
  }
@@ -26102,7 +26151,7 @@ var asra_Assembler_passesDataSegmentCheck = ($this, $token) => {
26102
26151
  var$7 = new jl_StringBuilder();
26103
26152
  jl_AbstractStringBuilder__init_(var$7);
26104
26153
  jl_AbstractStringBuilder_append0(var$7, 34);
26105
- jl_StringBuilder_append(jl_StringBuilder_append(var$7, $token), $rt_s(1567));
26154
+ jl_StringBuilder_append(jl_StringBuilder_append(var$7, $token), $rt_s(1568));
26106
26155
  asr_ErrorMessage__init_(var$3, var$4, var$5, var$6, jl_AbstractStringBuilder_toString(var$7));
26107
26156
  asr_ErrorList_add(var$2, var$3);
26108
26157
  return 0;
@@ -26139,7 +26188,7 @@ var asra_Assembler_writeToDataSegment = ($this, $value, $lengthInBytes, $token,
26139
26188
  jl_AbstractStringBuilder__init_($token);
26140
26189
  jl_AbstractStringBuilder_append0($token, 34);
26141
26190
  jl_AbstractStringBuilder_append($token, $lengthInBytes);
26142
- jl_StringBuilder_append($token, $rt_s(1562));
26191
+ jl_StringBuilder_append($token, $rt_s(1563));
26143
26192
  asr_ErrorMessage__init_(var$5, var$7, var$8, $address, jl_AbstractStringBuilder_toString($token));
26144
26193
  asr_ErrorList_add($errors, var$5);
26145
26194
  return $this.$dataAddress.$address;
@@ -26309,7 +26358,7 @@ var asra_Macro_getSubstitutedLine = ($this, $line, $args, $counter, $errors) =>
26309
26358
  if ($j != -1)
26310
26359
  $substitute = asra_TokenList_get($args, $j + 1 | 0).$value;
26311
26360
  else
26312
- asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$program, $token.$sourceLine, $token.$sourcePos, $rt_s(1568)));
26361
+ asr_ErrorList_add($errors, asr_ErrorMessage__init_0($this.$program, $token.$sourceLine, $token.$sourcePos, $rt_s(1569)));
26313
26362
  $s = asra_Macro_replaceToken($this, $s, $token, $substitute);
26314
26363
  } else {
26315
26364
  $substitute = $token.$value;
@@ -26350,7 +26399,7 @@ var asra_Macro_getSubstitutedLine = ($this, $line, $args, $counter, $errors) =>
26350
26399
  var$13 = $token.$value;
26351
26400
  var$5 = new jl_StringBuilder();
26352
26401
  jl_AbstractStringBuilder__init_(var$5);
26353
- jl_StringBuilder_append3(jl_StringBuilder_append(jl_StringBuilder_append(var$5, var$13), $rt_s(1569)), $counter);
26402
+ jl_StringBuilder_append3(jl_StringBuilder_append(jl_StringBuilder_append(var$5, var$13), $rt_s(1570)), $counter);
26354
26403
  $s = asra_Macro_replaceToken($this, $s, $token, jl_AbstractStringBuilder_toString(var$5));
26355
26404
  }
26356
26405
  }
@@ -29482,37 +29531,37 @@ var asrs_BackStepper$Action_values = () => {
29482
29531
  var asrs_BackStepper$Action__clinit_ = () => {
29483
29532
  let var$1, var$2, var$3;
29484
29533
  var$1 = new asrs_BackStepper$Action();
29485
- jl_Enum__init_(var$1, $rt_s(1570), 0);
29534
+ jl_Enum__init_(var$1, $rt_s(1571), 0);
29486
29535
  asrs_BackStepper$Action_MEMORY_RESTORE_RAW_WORD = var$1;
29487
29536
  var$1 = new asrs_BackStepper$Action();
29488
- jl_Enum__init_(var$1, $rt_s(1571), 1);
29537
+ jl_Enum__init_(var$1, $rt_s(1572), 1);
29489
29538
  asrs_BackStepper$Action_MEMORY_RESTORE_DOUBLE_WORD = var$1;
29490
29539
  var$1 = new asrs_BackStepper$Action();
29491
- jl_Enum__init_(var$1, $rt_s(1572), 2);
29540
+ jl_Enum__init_(var$1, $rt_s(1573), 2);
29492
29541
  asrs_BackStepper$Action_MEMORY_RESTORE_WORD = var$1;
29493
29542
  var$1 = new asrs_BackStepper$Action();
29494
- jl_Enum__init_(var$1, $rt_s(1573), 3);
29543
+ jl_Enum__init_(var$1, $rt_s(1574), 3);
29495
29544
  asrs_BackStepper$Action_MEMORY_RESTORE_HALF = var$1;
29496
29545
  var$1 = new asrs_BackStepper$Action();
29497
- jl_Enum__init_(var$1, $rt_s(1574), 4);
29546
+ jl_Enum__init_(var$1, $rt_s(1575), 4);
29498
29547
  asrs_BackStepper$Action_MEMORY_RESTORE_BYTE = var$1;
29499
29548
  var$1 = new asrs_BackStepper$Action();
29500
- jl_Enum__init_(var$1, $rt_s(1575), 5);
29549
+ jl_Enum__init_(var$1, $rt_s(1576), 5);
29501
29550
  asrs_BackStepper$Action_REGISTER_RESTORE = var$1;
29502
29551
  var$1 = new asrs_BackStepper$Action();
29503
- jl_Enum__init_(var$1, $rt_s(1576), 6);
29552
+ jl_Enum__init_(var$1, $rt_s(1577), 6);
29504
29553
  asrs_BackStepper$Action_PC_RESTORE = var$1;
29505
29554
  var$1 = new asrs_BackStepper$Action();
29506
- jl_Enum__init_(var$1, $rt_s(1577), 7);
29555
+ jl_Enum__init_(var$1, $rt_s(1578), 7);
29507
29556
  asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_RESTORE = var$1;
29508
29557
  var$1 = new asrs_BackStepper$Action();
29509
- jl_Enum__init_(var$1, $rt_s(1578), 8);
29558
+ jl_Enum__init_(var$1, $rt_s(1579), 8);
29510
29559
  asrs_BackStepper$Action_CONTROL_AND_STATUS_REGISTER_BACKDOOR = var$1;
29511
29560
  var$1 = new asrs_BackStepper$Action();
29512
- jl_Enum__init_(var$1, $rt_s(1579), 9);
29561
+ jl_Enum__init_(var$1, $rt_s(1580), 9);
29513
29562
  asrs_BackStepper$Action_FLOATING_POINT_REGISTER_RESTORE = var$1;
29514
29563
  var$1 = new asrs_BackStepper$Action();
29515
- jl_Enum__init_(var$1, $rt_s(1580), 10);
29564
+ jl_Enum__init_(var$1, $rt_s(1581), 10);
29516
29565
  asrs_BackStepper$Action_DO_NOTHING = var$1;
29517
29566
  var$2 = $rt_createArray(asrs_BackStepper$Action, 11);
29518
29567
  var$3 = var$2.data;
@@ -29556,58 +29605,24 @@ var asr_SimulationException__init_ = (var_0, var_1, var_2) => {
29556
29605
  return var_3;
29557
29606
  };
29558
29607
  var asr_SimulationException__init_0 = ($this, $ps, $m) => {
29559
- let var$3, var$4, var$5, var$6, var$7, var$8, $$je;
29560
- jl_Throwable__init_($this);
29561
- $this.$cause = -1;
29562
- $this.$value5 = 0;
29563
- $this.$message = null;
29608
+ let var$3, var$4, var$5, var$6;
29564
29609
  var$3 = new asr_ErrorMessage();
29565
29610
  var$4 = asru_Binary_intToHexString(asrrh_RegisterFile_getProgramCounter() - 4 | 0);
29566
29611
  var$5 = new jl_StringBuilder();
29567
29612
  jl_AbstractStringBuilder__init_(var$5);
29568
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1581)), var$4), $rt_s(11)), $m);
29569
- var$6 = jl_AbstractStringBuilder_toString(var$5);
29570
- var$3.$isWarning = 0;
29571
- $m = $ps.$sourceProgram0;
29572
- var$3.$filename0 = $m === null ? $rt_s(3) : $m.$filename;
29573
- var$3.$position2 = 0;
29574
- var$3.$message0 = var$6;
29575
- var$4 = $ps.$source;
29576
- $m = jur_Pattern_matcher(jur_Pattern_compile($rt_s(1582)), var$4);
29577
- var$6 = jl_String_trim(jl_String__init_0(var$4));
29578
- var$4 = ju_ArrayList__init_();
29579
- a: {
29580
- while (true) {
29581
- if (!jur_Matcher_find($m))
29582
- break a;
29583
- var$7 = jur_Matcher_group($m, 0);
29584
- if (jl_String_indexOf0(var$6, var$7))
29585
- break a;
29586
- try {
29587
- ju_ArrayList_add(var$4, jl_Integer_valueOf(jl_Integer_parseInt0(jl_String_substring(var$7, 1, jl_String_length(var$7) - 1 | 0))));
29588
- } catch ($$e) {
29589
- $$je = $rt_wrapException($$e);
29590
- if ($$je instanceof jl_NumberFormatException) {
29591
- break;
29592
- } else {
29593
- throw $$e;
29594
- }
29595
- }
29596
- var$6 = jl_String_trim(jl_String_substring0(var$6, var$7.$nativeString.length));
29597
- }
29598
- }
29599
- if (!var$4.$size0) {
29600
- var$3.$line = $ps.$sourceLine0;
29601
- var$3.$macroExpansionHistory = $rt_s(3);
29602
- } else {
29603
- var$3.$line = ju_ArrayList_get(var$4, 0).$value1;
29604
- var$8 = $ps.$sourceLine0;
29605
- $ps = new jl_StringBuilder();
29606
- jl_AbstractStringBuilder__init_($ps);
29607
- jl_AbstractStringBuilder_append($ps, var$8);
29608
- var$3.$macroExpansionHistory = jl_AbstractStringBuilder_toString($ps);
29609
- }
29610
- $this.$message = var$3;
29613
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, $rt_s(1582)), var$4), $rt_s(11)), $m);
29614
+ asr_ErrorMessage__init_2(var$3, $ps, jl_AbstractStringBuilder_toString(var$5));
29615
+ jl_Throwable__init_0($this, asr_ErrorMessage_generateReport(var$3));
29616
+ $this.$cause = -1;
29617
+ $this.$value5 = 0;
29618
+ $this.$message = null;
29619
+ var$5 = new asr_ErrorMessage();
29620
+ var$6 = asru_Binary_intToHexString(asrrh_RegisterFile_getProgramCounter() - 4 | 0);
29621
+ var$4 = new jl_StringBuilder();
29622
+ jl_AbstractStringBuilder__init_(var$4);
29623
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(1582)), var$6), $rt_s(11)), $m);
29624
+ asr_ErrorMessage__init_2(var$5, $ps, jl_AbstractStringBuilder_toString(var$4));
29625
+ $this.$message = var$5;
29611
29626
  };
29612
29627
  var asr_SimulationException__init_1 = ($this, $ps, $aee) => {
29613
29628
  asr_SimulationException__init_0($this, $ps, $aee.$message1);
@@ -31182,222 +31197,6 @@ var asrjt_Floating = $rt_classWithoutFields();
31182
31197
  var asrjt_Floating_isFinite = ($this) => {
31183
31198
  return !$this.$isZero() && !$this.$isNormal() && !$this.$isSubnormal() ? 0 : 1;
31184
31199
  };
31185
- function asrjt_Float64() {
31186
- asrjt_Floating.call(this);
31187
- this.$bits1 = Long_ZERO;
31188
- }
31189
- var asrjt_Float64_Zero = null;
31190
- var asrjt_Float64_NegativeZero = null;
31191
- var asrjt_Float64_NaN = null;
31192
- var asrjt_Float64_Infinity = null;
31193
- var asrjt_Float64_NegativeInfinity = null;
31194
- var asrjt_Float64_$assertionsDisabled = 0;
31195
- var asrjt_Float64__init_1 = ($this, $bits) => {
31196
- $this.$bits1 = $bits;
31197
- };
31198
- var asrjt_Float64__init_ = (var_0) => {
31199
- let var_1 = new asrjt_Float64();
31200
- asrjt_Float64__init_1(var_1, var_0);
31201
- return var_1;
31202
- };
31203
- var asrjt_Float64__init_2 = ($this, $sign, $exponent, $significand) => {
31204
- asrjt_Float64__init_1($this, Long_or(Long_or(!$sign ? Long_ZERO : Long_create(0, 2147483648), Long_shl(Long_and(Long_fromInt($exponent + 1023 | 0), Long_fromInt(2047)), 52)), Long_and($significand, Long_create(4294967295, 1048575))));
31205
- };
31206
- var asrjt_Float64__init_0 = (var_0, var_1, var_2) => {
31207
- let var_3 = new asrjt_Float64();
31208
- asrjt_Float64__init_2(var_3, var_0, var_1, var_2);
31209
- return var_3;
31210
- };
31211
- var asrjt_Float64_exponent = ($this) => {
31212
- return (Long_lo(Long_shru($this.$bits1, 52)) & 2047) - 1023 | 0;
31213
- };
31214
- var asrjt_Float64_negate = ($this) => {
31215
- return asrjt_Float64__init_(Long_xor($this.$bits1, Long_create(0, 2147483648)));
31216
- };
31217
- var asrjt_Float64_isSignMinus = ($this) => {
31218
- return Long_ne(Long_shru($this.$bits1, 63), Long_fromInt(1)) ? 0 : 1;
31219
- };
31220
- var asrjt_Float64_isInfinite = ($this) => {
31221
- return asrjt_Float64_exponent($this) == 1024 && Long_eq(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_ZERO) ? 1 : 0;
31222
- };
31223
- var asrjt_Float64_isNormal = ($this) => {
31224
- return asrjt_Float64_exponent($this) != -1023 && asrjt_Float64_exponent($this) != 1024 ? 1 : 0;
31225
- };
31226
- var asrjt_Float64_isSubnormal = ($this) => {
31227
- return asrjt_Float64_exponent($this) == -1023 && !asrjt_Float64_isZero($this) ? 1 : 0;
31228
- };
31229
- var asrjt_Float64_isNaN = ($this) => {
31230
- return asrjt_Float64_exponent($this) == 1024 && !asrjt_Float64_isInfinite($this) ? 1 : 0;
31231
- };
31232
- var asrjt_Float64_isSignalling = ($this) => {
31233
- if (!asrjt_Float64_isNaN($this))
31234
- return 0;
31235
- return Long_ne(Long_and($this.$bits1, Long_create(0, 524288)), Long_ZERO) ? 0 : 1;
31236
- };
31237
- var asrjt_Float64_isZero = ($this) => {
31238
- let var$1;
31239
- var$1 = $this.$bits1;
31240
- return Long_ne(var$1, Long_ZERO) && Long_ne(var$1, Long_create(0, 2147483648)) ? 0 : 1;
31241
- };
31242
- var asrjt_Float64_fromExactFloat0 = ($this, $ef, $env) => {
31243
- let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
31244
- if (asrji_ExactFloat_isZero($ef))
31245
- return !$ef.$sign ? asrjt_Float64_Zero : asrjt_Float64_NegativeZero;
31246
- $ef = asrji_ExactFloat_normalize($ef);
31247
- $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
31248
- if ($normalizedExponent > -1022) {
31249
- if ($normalizedExponent > 1024) {
31250
- $mainBits = $env.$flags;
31251
- $roundedBits = asrj_Flags_overflow;
31252
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31253
- $mainBits = $env.$flags;
31254
- $roundedBits = asrj_Flags_inexact;
31255
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31256
- asrjt_Float64$1_$callClinit();
31257
- switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31258
- case 1:
31259
- break;
31260
- case 2:
31261
- case 3:
31262
- $normalizedExponent = $ef.$sign;
31263
- if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31264
- return asrjt_Float64__init_0($normalizedExponent, 1023, Long_fromInt(-1));
31265
- return !$normalizedExponent ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31266
- case 4:
31267
- case 5:
31268
- return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31269
- default:
31270
- if (!asrjt_Float64_$assertionsDisabled)
31271
- $rt_throw(jl_AssertionError__init_($rt_s(1617)));
31272
- return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31273
- }
31274
- return asrjt_Float64__init_0($ef.$sign, 1023, Long_fromInt(-1));
31275
- }
31276
- if (jm_BigInteger_bitLength($ef.$significand) <= 53) {
31277
- if (!asrjt_Float64_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -1023)
31278
- $rt_throw(jl_AssertionError__init_($rt_s(1618)));
31279
- $a = new asrjt_Float64();
31280
- $normalizedExponent = $ef.$sign;
31281
- $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
31282
- $ef = $ef.$significand;
31283
- asrjt_Float64__init_2($a, $normalizedExponent, $bitsToRound, Long_and(jm_BigInteger_longValueExact(jm_BigInteger_shiftLeft($ef, 53 - jm_BigInteger_bitLength($ef) | 0)), Long_create(4294967295, 1048575)));
31284
- return $a;
31285
- }
31286
- $mainBits = $env.$flags;
31287
- $roundedBits = asrj_Flags_inexact;
31288
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31289
- $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 53 | 0;
31290
- $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31291
- $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31292
- $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31293
- $towardsZero = asrjt_Float64__init_0($ef.$sign, ($ef.$exponent0 + 52 | 0) + $bitsToRound | 0, Long_and(jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)), Long_create(4294967295, 1048575)));
31294
- $awayZero = !jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 53 ? asrjt_Float64__init_0($ef.$sign, ($ef.$exponent0 + 53 | 0) + $bitsToRound | 0, Long_and(jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($upBits, 1)), Long_create(4294967295, 1048575))) : asrjt_Float64__init_0($ef.$sign, ($ef.$exponent0 + 52 | 0) + $bitsToRound | 0, Long_and(jm_BigInteger_longValueExact($upBits), Long_create(4294967295, 1048575)));
31295
- } else {
31296
- if ($ef.$exponent0 > -1075) {
31297
- if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 52)
31298
- $rt_throw(jl_AssertionError__init_($rt_s(1619)));
31299
- return asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftLeft($ef.$significand, 1074 + $ef.$exponent0 | 0)));
31300
- }
31301
- $mainBits = $env.$flags;
31302
- $roundedBits = asrj_Flags_inexact;
31303
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31304
- $mainBits = $env.$flags;
31305
- $roundedBits = asrj_Flags_underflow;
31306
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31307
- $bitsToRound = -1074 - $ef.$exponent0 | 0;
31308
- $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31309
- $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31310
- $towardsZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
31311
- $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31312
- if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 52)
31313
- $awayZero = asrjt_Float64__init_0($ef.$sign, -1022, Long_and(jm_BigInteger_longValueExact($upBits), Long_create(4294967295, 1048575)));
31314
- else {
31315
- if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 52)
31316
- $rt_throw(jl_AssertionError__init_1());
31317
- $awayZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact($upBits));
31318
- }
31319
- }
31320
- asrjt_Float64$1_$callClinit();
31321
- switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31322
- case 1:
31323
- break;
31324
- case 2:
31325
- case 3:
31326
- if ($ef.$sign == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31327
- return $towardsZero;
31328
- return $awayZero;
31329
- default:
31330
- $ef = jm_BigInteger_ONE;
31331
- $normalizedExponent = $bitsToRound - 1 | 0;
31332
- if (!jm_BigInteger_equals($roundedBits, jm_BigInteger_shiftLeft($ef, $normalizedExponent))) {
31333
- if (jm_BigInteger_compareTo($roundedBits, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, $normalizedExponent)) <= 0)
31334
- return $towardsZero;
31335
- return $awayZero;
31336
- }
31337
- if ($env.$mode !== asrj_RoundingMode_away && Long_ne(Long_and($awayZero.$bits1, Long_fromInt(1)), Long_ZERO))
31338
- return $towardsZero;
31339
- return $awayZero;
31340
- }
31341
- return $towardsZero;
31342
- };
31343
- var asrjt_Float64_toExactFloat = ($this) => {
31344
- let $sign, $exponent, $significand;
31345
- if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isInfinite($this))
31346
- $rt_throw(jl_AssertionError__init_($rt_s(1620)));
31347
- if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isNaN($this))
31348
- $rt_throw(jl_AssertionError__init_($rt_s(1621)));
31349
- if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isZero($this))
31350
- $rt_throw(jl_AssertionError__init_($rt_s(1622)));
31351
- $sign = asrjt_Float64_isSignMinus($this);
31352
- if (asrjt_Float64_isZero($this)) {
31353
- $exponent = 0;
31354
- $significand = jm_BigInteger_ZERO;
31355
- } else if (asrjt_Float64_isNormal($this)) {
31356
- $exponent = asrjt_Float64_exponent($this) - 52 | 0;
31357
- $significand = jm_BigInteger_valueOf(Long_add(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_create(0, 1048576)));
31358
- } else {
31359
- if (!asrjt_Float64_isSubnormal($this)) {
31360
- if (asrjt_Float64_$assertionsDisabled)
31361
- return null;
31362
- $rt_throw(jl_AssertionError__init_($rt_s(1623)));
31363
- }
31364
- $exponent = asrjt_Float64_exponent($this) - 51 | 0;
31365
- $significand = jm_BigInteger_valueOf(Long_and($this.$bits1, Long_create(4294967295, 1048575)));
31366
- }
31367
- return asrji_ExactFloat__init_($sign, $exponent, $significand);
31368
- };
31369
- var asrjt_Float64_maxPrecision = ($this) => {
31370
- return 60;
31371
- };
31372
- var asrjt_Float64_negate0 = ($this) => {
31373
- return asrjt_Float64_negate($this);
31374
- };
31375
- var asrjt_Float64_fromExactFloat = ($this, var$1, var$2) => {
31376
- return asrjt_Float64_fromExactFloat0($this, var$1, var$2);
31377
- };
31378
- var asrjt_Float64_NegativeInfinity0 = ($this) => {
31379
- return asrjt_Float64_NegativeInfinity;
31380
- };
31381
- var asrjt_Float64_Infinity0 = ($this) => {
31382
- return asrjt_Float64_Infinity;
31383
- };
31384
- var asrjt_Float64_NegativeZero0 = ($this) => {
31385
- return asrjt_Float64_NegativeZero;
31386
- };
31387
- var asrjt_Float64_Zero0 = ($this) => {
31388
- return asrjt_Float64_Zero;
31389
- };
31390
- var asrjt_Float64_NaN0 = ($this) => {
31391
- return asrjt_Float64_NaN;
31392
- };
31393
- var asrjt_Float64__clinit_ = () => {
31394
- asrjt_Float64_$assertionsDisabled = 0;
31395
- asrjt_Float64_Zero = asrjt_Float64__init_(Long_ZERO);
31396
- asrjt_Float64_NegativeZero = asrjt_Float64__init_(Long_create(0, 2147483648));
31397
- asrjt_Float64_NaN = asrjt_Float64__init_(Long_create(0, 2146959360));
31398
- asrjt_Float64_Infinity = asrjt_Float64__init_(Long_create(0, 2146435072));
31399
- asrjt_Float64_NegativeInfinity = asrjt_Float64__init_(Long_create(0, 4293918720));
31400
- };
31401
31200
  function asrjt_Float32() {
31402
31201
  asrjt_Floating.call(this);
31403
31202
  this.$bits0 = 0;
@@ -32091,6 +31890,222 @@ var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32091
31890
  var$4.$significand = $i;
32092
31891
  return $helper.$fromExactFloat(var$4, $env);
32093
31892
  };
31893
+ function asrjt_Float64() {
31894
+ asrjt_Floating.call(this);
31895
+ this.$bits1 = Long_ZERO;
31896
+ }
31897
+ var asrjt_Float64_Zero = null;
31898
+ var asrjt_Float64_NegativeZero = null;
31899
+ var asrjt_Float64_NaN = null;
31900
+ var asrjt_Float64_Infinity = null;
31901
+ var asrjt_Float64_NegativeInfinity = null;
31902
+ var asrjt_Float64_$assertionsDisabled = 0;
31903
+ var asrjt_Float64__init_1 = ($this, $bits) => {
31904
+ $this.$bits1 = $bits;
31905
+ };
31906
+ var asrjt_Float64__init_ = (var_0) => {
31907
+ let var_1 = new asrjt_Float64();
31908
+ asrjt_Float64__init_1(var_1, var_0);
31909
+ return var_1;
31910
+ };
31911
+ var asrjt_Float64__init_2 = ($this, $sign, $exponent, $significand) => {
31912
+ asrjt_Float64__init_1($this, Long_or(Long_or(!$sign ? Long_ZERO : Long_create(0, 2147483648), Long_shl(Long_and(Long_fromInt($exponent + 1023 | 0), Long_fromInt(2047)), 52)), Long_and($significand, Long_create(4294967295, 1048575))));
31913
+ };
31914
+ var asrjt_Float64__init_0 = (var_0, var_1, var_2) => {
31915
+ let var_3 = new asrjt_Float64();
31916
+ asrjt_Float64__init_2(var_3, var_0, var_1, var_2);
31917
+ return var_3;
31918
+ };
31919
+ var asrjt_Float64_exponent = ($this) => {
31920
+ return (Long_lo(Long_shru($this.$bits1, 52)) & 2047) - 1023 | 0;
31921
+ };
31922
+ var asrjt_Float64_negate = ($this) => {
31923
+ return asrjt_Float64__init_(Long_xor($this.$bits1, Long_create(0, 2147483648)));
31924
+ };
31925
+ var asrjt_Float64_isSignMinus = ($this) => {
31926
+ return Long_ne(Long_shru($this.$bits1, 63), Long_fromInt(1)) ? 0 : 1;
31927
+ };
31928
+ var asrjt_Float64_isInfinite = ($this) => {
31929
+ return asrjt_Float64_exponent($this) == 1024 && Long_eq(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_ZERO) ? 1 : 0;
31930
+ };
31931
+ var asrjt_Float64_isNormal = ($this) => {
31932
+ return asrjt_Float64_exponent($this) != -1023 && asrjt_Float64_exponent($this) != 1024 ? 1 : 0;
31933
+ };
31934
+ var asrjt_Float64_isSubnormal = ($this) => {
31935
+ return asrjt_Float64_exponent($this) == -1023 && !asrjt_Float64_isZero($this) ? 1 : 0;
31936
+ };
31937
+ var asrjt_Float64_isNaN = ($this) => {
31938
+ return asrjt_Float64_exponent($this) == 1024 && !asrjt_Float64_isInfinite($this) ? 1 : 0;
31939
+ };
31940
+ var asrjt_Float64_isSignalling = ($this) => {
31941
+ if (!asrjt_Float64_isNaN($this))
31942
+ return 0;
31943
+ return Long_ne(Long_and($this.$bits1, Long_create(0, 524288)), Long_ZERO) ? 0 : 1;
31944
+ };
31945
+ var asrjt_Float64_isZero = ($this) => {
31946
+ let var$1;
31947
+ var$1 = $this.$bits1;
31948
+ return Long_ne(var$1, Long_ZERO) && Long_ne(var$1, Long_create(0, 2147483648)) ? 0 : 1;
31949
+ };
31950
+ var asrjt_Float64_fromExactFloat0 = ($this, $ef, $env) => {
31951
+ let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
31952
+ if (asrji_ExactFloat_isZero($ef))
31953
+ return !$ef.$sign ? asrjt_Float64_Zero : asrjt_Float64_NegativeZero;
31954
+ $ef = asrji_ExactFloat_normalize($ef);
31955
+ $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
31956
+ if ($normalizedExponent > -1022) {
31957
+ if ($normalizedExponent > 1024) {
31958
+ $mainBits = $env.$flags;
31959
+ $roundedBits = asrj_Flags_overflow;
31960
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31961
+ $mainBits = $env.$flags;
31962
+ $roundedBits = asrj_Flags_inexact;
31963
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31964
+ asrjt_Float64$1_$callClinit();
31965
+ switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31966
+ case 1:
31967
+ break;
31968
+ case 2:
31969
+ case 3:
31970
+ $normalizedExponent = $ef.$sign;
31971
+ if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31972
+ return asrjt_Float64__init_0($normalizedExponent, 1023, Long_fromInt(-1));
31973
+ return !$normalizedExponent ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31974
+ case 4:
31975
+ case 5:
31976
+ return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31977
+ default:
31978
+ if (!asrjt_Float64_$assertionsDisabled)
31979
+ $rt_throw(jl_AssertionError__init_($rt_s(1617)));
31980
+ return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31981
+ }
31982
+ return asrjt_Float64__init_0($ef.$sign, 1023, Long_fromInt(-1));
31983
+ }
31984
+ if (jm_BigInteger_bitLength($ef.$significand) <= 53) {
31985
+ if (!asrjt_Float64_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -1023)
31986
+ $rt_throw(jl_AssertionError__init_($rt_s(1618)));
31987
+ $a = new asrjt_Float64();
31988
+ $normalizedExponent = $ef.$sign;
31989
+ $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
31990
+ $ef = $ef.$significand;
31991
+ asrjt_Float64__init_2($a, $normalizedExponent, $bitsToRound, Long_and(jm_BigInteger_longValueExact(jm_BigInteger_shiftLeft($ef, 53 - jm_BigInteger_bitLength($ef) | 0)), Long_create(4294967295, 1048575)));
31992
+ return $a;
31993
+ }
31994
+ $mainBits = $env.$flags;
31995
+ $roundedBits = asrj_Flags_inexact;
31996
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
31997
+ $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 53 | 0;
31998
+ $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31999
+ $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
32000
+ $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
32001
+ $towardsZero = asrjt_Float64__init_0($ef.$sign, ($ef.$exponent0 + 52 | 0) + $bitsToRound | 0, Long_and(jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)), Long_create(4294967295, 1048575)));
32002
+ $awayZero = !jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 53 ? asrjt_Float64__init_0($ef.$sign, ($ef.$exponent0 + 53 | 0) + $bitsToRound | 0, Long_and(jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($upBits, 1)), Long_create(4294967295, 1048575))) : asrjt_Float64__init_0($ef.$sign, ($ef.$exponent0 + 52 | 0) + $bitsToRound | 0, Long_and(jm_BigInteger_longValueExact($upBits), Long_create(4294967295, 1048575)));
32003
+ } else {
32004
+ if ($ef.$exponent0 > -1075) {
32005
+ if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 52)
32006
+ $rt_throw(jl_AssertionError__init_($rt_s(1619)));
32007
+ return asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftLeft($ef.$significand, 1074 + $ef.$exponent0 | 0)));
32008
+ }
32009
+ $mainBits = $env.$flags;
32010
+ $roundedBits = asrj_Flags_inexact;
32011
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
32012
+ $mainBits = $env.$flags;
32013
+ $roundedBits = asrj_Flags_underflow;
32014
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
32015
+ $bitsToRound = -1074 - $ef.$exponent0 | 0;
32016
+ $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
32017
+ $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
32018
+ $towardsZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
32019
+ $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
32020
+ if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 52)
32021
+ $awayZero = asrjt_Float64__init_0($ef.$sign, -1022, Long_and(jm_BigInteger_longValueExact($upBits), Long_create(4294967295, 1048575)));
32022
+ else {
32023
+ if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 52)
32024
+ $rt_throw(jl_AssertionError__init_1());
32025
+ $awayZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact($upBits));
32026
+ }
32027
+ }
32028
+ asrjt_Float64$1_$callClinit();
32029
+ switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
32030
+ case 1:
32031
+ break;
32032
+ case 2:
32033
+ case 3:
32034
+ if ($ef.$sign == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
32035
+ return $towardsZero;
32036
+ return $awayZero;
32037
+ default:
32038
+ $ef = jm_BigInteger_ONE;
32039
+ $normalizedExponent = $bitsToRound - 1 | 0;
32040
+ if (!jm_BigInteger_equals($roundedBits, jm_BigInteger_shiftLeft($ef, $normalizedExponent))) {
32041
+ if (jm_BigInteger_compareTo($roundedBits, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, $normalizedExponent)) <= 0)
32042
+ return $towardsZero;
32043
+ return $awayZero;
32044
+ }
32045
+ if ($env.$mode !== asrj_RoundingMode_away && Long_ne(Long_and($awayZero.$bits1, Long_fromInt(1)), Long_ZERO))
32046
+ return $towardsZero;
32047
+ return $awayZero;
32048
+ }
32049
+ return $towardsZero;
32050
+ };
32051
+ var asrjt_Float64_toExactFloat = ($this) => {
32052
+ let $sign, $exponent, $significand;
32053
+ if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isInfinite($this))
32054
+ $rt_throw(jl_AssertionError__init_($rt_s(1620)));
32055
+ if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isNaN($this))
32056
+ $rt_throw(jl_AssertionError__init_($rt_s(1621)));
32057
+ if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isZero($this))
32058
+ $rt_throw(jl_AssertionError__init_($rt_s(1622)));
32059
+ $sign = asrjt_Float64_isSignMinus($this);
32060
+ if (asrjt_Float64_isZero($this)) {
32061
+ $exponent = 0;
32062
+ $significand = jm_BigInteger_ZERO;
32063
+ } else if (asrjt_Float64_isNormal($this)) {
32064
+ $exponent = asrjt_Float64_exponent($this) - 52 | 0;
32065
+ $significand = jm_BigInteger_valueOf(Long_add(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_create(0, 1048576)));
32066
+ } else {
32067
+ if (!asrjt_Float64_isSubnormal($this)) {
32068
+ if (asrjt_Float64_$assertionsDisabled)
32069
+ return null;
32070
+ $rt_throw(jl_AssertionError__init_($rt_s(1623)));
32071
+ }
32072
+ $exponent = asrjt_Float64_exponent($this) - 51 | 0;
32073
+ $significand = jm_BigInteger_valueOf(Long_and($this.$bits1, Long_create(4294967295, 1048575)));
32074
+ }
32075
+ return asrji_ExactFloat__init_($sign, $exponent, $significand);
32076
+ };
32077
+ var asrjt_Float64_maxPrecision = ($this) => {
32078
+ return 60;
32079
+ };
32080
+ var asrjt_Float64_negate0 = ($this) => {
32081
+ return asrjt_Float64_negate($this);
32082
+ };
32083
+ var asrjt_Float64_fromExactFloat = ($this, var$1, var$2) => {
32084
+ return asrjt_Float64_fromExactFloat0($this, var$1, var$2);
32085
+ };
32086
+ var asrjt_Float64_NegativeInfinity0 = ($this) => {
32087
+ return asrjt_Float64_NegativeInfinity;
32088
+ };
32089
+ var asrjt_Float64_Infinity0 = ($this) => {
32090
+ return asrjt_Float64_Infinity;
32091
+ };
32092
+ var asrjt_Float64_NegativeZero0 = ($this) => {
32093
+ return asrjt_Float64_NegativeZero;
32094
+ };
32095
+ var asrjt_Float64_Zero0 = ($this) => {
32096
+ return asrjt_Float64_Zero;
32097
+ };
32098
+ var asrjt_Float64_NaN0 = ($this) => {
32099
+ return asrjt_Float64_NaN;
32100
+ };
32101
+ var asrjt_Float64__clinit_ = () => {
32102
+ asrjt_Float64_$assertionsDisabled = 0;
32103
+ asrjt_Float64_Zero = asrjt_Float64__init_(Long_ZERO);
32104
+ asrjt_Float64_NegativeZero = asrjt_Float64__init_(Long_create(0, 2147483648));
32105
+ asrjt_Float64_NaN = asrjt_Float64__init_(Long_create(0, 2146959360));
32106
+ asrjt_Float64_Infinity = asrjt_Float64__init_(Long_create(0, 2146435072));
32107
+ asrjt_Float64_NegativeInfinity = asrjt_Float64__init_(Long_create(0, 4293918720));
32108
+ };
32094
32109
  var asrjo_Comparisons = $rt_classWithoutFields();
32095
32110
  var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
32096
32111
  if ($a.$isZero()) {
@@ -34954,27 +34969,26 @@ $rt_metadata([
34954
34969
  0,
34955
34970
  0,
34956
34971
  0,
34957
- asr_JsCompilationResult,
34958
- "JsCompilationResult",
34959
- 10,
34972
+ asr_JsRiscV$getTokenizedLines$lambda$_5_0,
34973
+ 0,
34960
34974
  jl_Object,
34961
- [],
34975
+ [juf_Function],
34962
34976
  0,
34963
34977
  3,
34964
34978
  0,
34965
34979
  0,
34980
+ ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
34981
+ asr_JsRiscV$getTokenizedLines$lambda$_5_1,
34966
34982
  0,
34967
- asr_AssemblyException,
34968
- 0,
34969
- jl_Exception,
34970
- [],
34983
+ jl_Object,
34984
+ [juf_IntFunction],
34971
34985
  0,
34972
34986
  3,
34973
34987
  0,
34974
34988
  0,
34975
- 0,
34976
- asr_JsProgramStatement,
34977
- "JsProgramStatement",
34989
+ ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
34990
+ asr_JsRiscVTokenizedLine,
34991
+ "JsRiscVTokenizedLine",
34978
34992
  10,
34979
34993
  jl_Object,
34980
34994
  [],
@@ -35001,24 +35015,6 @@ $rt_metadata([
35001
35015
  0,
35002
35016
  0,
35003
35017
  0,
35004
- juf_ToIntFunction,
35005
- 0,
35006
- jl_Object,
35007
- [],
35008
- 3,
35009
- 3,
35010
- 0,
35011
- 0,
35012
- 0,
35013
- asr_JsRiscV$getRegistersValues$lambda$_20_0,
35014
- 0,
35015
- jl_Object,
35016
- [juf_ToIntFunction],
35017
- 0,
35018
- 3,
35019
- 0,
35020
- 0,
35021
- 0,
35022
35018
  asr_JsRiscV$getUndoStack$lambda$_21_0,
35023
35019
  0,
35024
35020
  jl_Object,
@@ -35047,29 +35043,48 @@ $rt_metadata([
35047
35043
  0,
35048
35044
  0,
35049
35045
  0,
35050
- asr_JsRiscV$getTokenizedLines$lambda$_5_0,
35051
- 0,
35046
+ asr_JsProgramStatement,
35047
+ "JsProgramStatement",
35048
+ 10,
35052
35049
  jl_Object,
35053
- [juf_Function],
35050
+ [],
35054
35051
  0,
35055
35052
  3,
35056
35053
  0,
35057
35054
  0,
35058
- ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
35059
- asr_JsRiscV$getTokenizedLines$lambda$_5_1,
35060
35055
  0,
35056
+ asr_JsCompilationResult,
35057
+ "JsCompilationResult",
35058
+ 10,
35061
35059
  jl_Object,
35062
- [juf_IntFunction],
35060
+ [],
35063
35061
  0,
35064
35062
  3,
35065
35063
  0,
35066
35064
  0,
35067
- ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
35068
- asr_JsRiscVTokenizedLine,
35069
- "JsRiscVTokenizedLine",
35070
- 10,
35065
+ 0,
35066
+ asr_AssemblyException,
35067
+ 0,
35068
+ jl_Exception,
35069
+ [],
35070
+ 0,
35071
+ 3,
35072
+ 0,
35073
+ 0,
35074
+ 0,
35075
+ juf_ToIntFunction,
35076
+ 0,
35071
35077
  jl_Object,
35072
35078
  [],
35079
+ 3,
35080
+ 3,
35081
+ 0,
35082
+ 0,
35083
+ 0,
35084
+ asr_JsRiscV$getRegistersValues$lambda$_20_0,
35085
+ 0,
35086
+ jl_Object,
35087
+ [juf_ToIntFunction],
35073
35088
  0,
35074
35089
  3,
35075
35090
  0,
@@ -35178,62 +35193,71 @@ $rt_metadata([
35178
35193
  0,
35179
35194
  0,
35180
35195
  0,
35181
- asr_JsCompilationResult$_init_$lambda$_0_0,
35196
+ asrs_BackStepper,
35182
35197
  0,
35183
35198
  jl_Object,
35184
- [juf_Function],
35199
+ [],
35185
35200
  0,
35186
35201
  3,
35187
35202
  0,
35188
35203
  0,
35189
- ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35190
- juf_Supplier,
35204
+ 0,
35205
+ asrs_BackStepper$BackstepStack,
35191
35206
  0,
35192
35207
  jl_Object,
35193
35208
  [],
35194
- 3,
35209
+ 0,
35195
35210
  3,
35196
35211
  0,
35197
35212
  0,
35198
35213
  0,
35199
- asr_JsCompilationResult$_init_$lambda$_0_1,
35214
+ jl_AutoCloseable,
35200
35215
  0,
35201
35216
  jl_Object,
35202
- [juf_Supplier],
35203
- 0,
35217
+ [],
35218
+ 3,
35204
35219
  3,
35205
35220
  0,
35206
35221
  0,
35207
35222
  0,
35208
- juf_BiConsumer,
35223
+ jus_BaseStream,
35209
35224
  0,
35210
35225
  jl_Object,
35211
- [],
35226
+ [jl_AutoCloseable],
35212
35227
  3,
35213
35228
  3,
35214
35229
  0,
35215
35230
  0,
35216
35231
  0,
35217
- asr_JsCompilationResult$_init_$lambda$_0_2,
35232
+ jus_Stream,
35218
35233
  0,
35219
35234
  jl_Object,
35220
- [juf_BiConsumer],
35221
- 0,
35235
+ [jus_BaseStream],
35236
+ 3,
35222
35237
  3,
35223
35238
  0,
35224
35239
  0,
35225
35240
  0
35226
35241
  ]);
35227
35242
  $rt_metadata([
35228
- asr_JsCompilationResult$_init_$lambda$_0_3,
35243
+ jusi_SimpleStreamImpl,
35229
35244
  0,
35230
35245
  jl_Object,
35231
- [juf_BiConsumer],
35232
- 0,
35246
+ [jus_Stream],
35247
+ 1,
35233
35248
  3,
35234
35249
  0,
35235
35250
  0,
35236
35251
  0,
35252
+ jusi_ArrayStreamImpl,
35253
+ 0,
35254
+ jusi_SimpleStreamImpl,
35255
+ [],
35256
+ 0,
35257
+ 3,
35258
+ 0,
35259
+ 0,
35260
+ ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35237
35261
  asrrh_Register,
35238
35262
  "Register",
35239
35263
  7,
@@ -35244,16 +35268,16 @@ $rt_metadata([
35244
35268
  0,
35245
35269
  0,
35246
35270
  ["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
35247
- asrs_BackStepper,
35271
+ asr_JsCompilationResult$_init_$lambda$_0_0,
35248
35272
  0,
35249
35273
  jl_Object,
35250
- [],
35274
+ [juf_Function],
35251
35275
  0,
35252
35276
  3,
35253
35277
  0,
35254
35278
  0,
35255
- 0,
35256
- jl_AutoCloseable,
35279
+ ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35280
+ juf_Supplier,
35257
35281
  0,
35258
35282
  jl_Object,
35259
35283
  [],
@@ -35262,46 +35286,37 @@ $rt_metadata([
35262
35286
  0,
35263
35287
  0,
35264
35288
  0,
35265
- jus_BaseStream,
35289
+ asr_JsCompilationResult$_init_$lambda$_0_1,
35266
35290
  0,
35267
35291
  jl_Object,
35268
- [jl_AutoCloseable],
35269
- 3,
35292
+ [juf_Supplier],
35293
+ 0,
35270
35294
  3,
35271
35295
  0,
35272
35296
  0,
35273
35297
  0,
35274
- jus_Stream,
35298
+ juf_BiConsumer,
35275
35299
  0,
35276
35300
  jl_Object,
35277
- [jus_BaseStream],
35301
+ [],
35278
35302
  3,
35279
35303
  3,
35280
35304
  0,
35281
35305
  0,
35282
35306
  0,
35283
- jusi_SimpleStreamImpl,
35307
+ asr_JsCompilationResult$_init_$lambda$_0_2,
35284
35308
  0,
35285
35309
  jl_Object,
35286
- [jus_Stream],
35287
- 1,
35288
- 3,
35289
- 0,
35290
- 0,
35291
- 0,
35292
- jusi_ArrayStreamImpl,
35293
- 0,
35294
- jusi_SimpleStreamImpl,
35295
- [],
35310
+ [juf_BiConsumer],
35296
35311
  0,
35297
35312
  3,
35298
35313
  0,
35299
35314
  0,
35300
- ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35301
- asrs_BackStepper$BackstepStack,
35315
+ 0,
35316
+ asr_JsCompilationResult$_init_$lambda$_0_3,
35302
35317
  0,
35303
35318
  jl_Object,
35304
- [],
35319
+ [juf_BiConsumer],
35305
35320
  0,
35306
35321
  3,
35307
35322
  0,
@@ -36848,7 +36863,7 @@ $rt_metadata([
36848
36863
  0,
36849
36864
  0,
36850
36865
  0,
36851
- asr_ErrorList,
36866
+ asrrh_RegisterBlock,
36852
36867
  0,
36853
36868
  jl_Object,
36854
36869
  [],
@@ -36857,7 +36872,7 @@ $rt_metadata([
36857
36872
  0,
36858
36873
  0,
36859
36874
  0,
36860
- asrrh_RegisterBlock,
36875
+ asr_ErrorList,
36861
36876
  0,
36862
36877
  jl_Object,
36863
36878
  [],
@@ -37511,6 +37526,24 @@ $rt_metadata([
37511
37526
  0,
37512
37527
  0,
37513
37528
  ["$next1", $rt_wrapFunction1(jusi_StreamOverSpliterator_next), "$estimateSize", $rt_wrapFunction0(jusi_StreamOverSpliterator_estimateSize)],
37529
+ jusi_WrappingStreamImpl,
37530
+ 0,
37531
+ jusi_SimpleStreamImpl,
37532
+ [],
37533
+ 1,
37534
+ 3,
37535
+ 0,
37536
+ 0,
37537
+ 0,
37538
+ jusi_MappingStreamImpl,
37539
+ 0,
37540
+ jusi_WrappingStreamImpl,
37541
+ [],
37542
+ 0,
37543
+ 3,
37544
+ 0,
37545
+ 0,
37546
+ ["$wrap3", $rt_wrapFunction1(jusi_MappingStreamImpl_wrap)],
37514
37547
  jus_IntStream,
37515
37548
  0,
37516
37549
  jl_Object,
@@ -37538,24 +37571,6 @@ $rt_metadata([
37538
37571
  0,
37539
37572
  0,
37540
37573
  0,
37541
- jusi_WrappingStreamImpl,
37542
- 0,
37543
- jusi_SimpleStreamImpl,
37544
- [],
37545
- 1,
37546
- 3,
37547
- 0,
37548
- 0,
37549
- 0,
37550
- jusi_MappingStreamImpl,
37551
- 0,
37552
- jusi_WrappingStreamImpl,
37553
- [],
37554
- 0,
37555
- 3,
37556
- 0,
37557
- 0,
37558
- ["$wrap3", $rt_wrapFunction1(jusi_MappingStreamImpl_wrap)],
37559
37574
  asru_Binary,
37560
37575
  0,
37561
37576
  jl_Object,
@@ -40632,48 +40647,6 @@ $rt_metadata([
40632
40647
  0,
40633
40648
  0,
40634
40649
  0,
40635
- asrjt_Float64,
40636
- 0,
40637
- asrjt_Floating,
40638
- [],
40639
- 0,
40640
- 3,
40641
- 0,
40642
- 0,
40643
- [
40644
- "$isSignMinus",
40645
- $rt_wrapFunction0(asrjt_Float64_isSignMinus),
40646
- "$isInfinite",
40647
- $rt_wrapFunction0(asrjt_Float64_isInfinite),
40648
- "$isNormal",
40649
- $rt_wrapFunction0(asrjt_Float64_isNormal),
40650
- "$isSubnormal",
40651
- $rt_wrapFunction0(asrjt_Float64_isSubnormal),
40652
- "$isNaN",
40653
- $rt_wrapFunction0(asrjt_Float64_isNaN),
40654
- "$isSignalling",
40655
- $rt_wrapFunction0(asrjt_Float64_isSignalling),
40656
- "$isZero",
40657
- $rt_wrapFunction0(asrjt_Float64_isZero),
40658
- "$toExactFloat",
40659
- $rt_wrapFunction0(asrjt_Float64_toExactFloat),
40660
- "$maxPrecision",
40661
- $rt_wrapFunction0(asrjt_Float64_maxPrecision),
40662
- "$negate2",
40663
- $rt_wrapFunction0(asrjt_Float64_negate0),
40664
- "$fromExactFloat",
40665
- $rt_wrapFunction2(asrjt_Float64_fromExactFloat),
40666
- "$NegativeInfinity",
40667
- $rt_wrapFunction0(asrjt_Float64_NegativeInfinity0),
40668
- "$Infinity",
40669
- $rt_wrapFunction0(asrjt_Float64_Infinity0),
40670
- "$NegativeZero",
40671
- $rt_wrapFunction0(asrjt_Float64_NegativeZero0),
40672
- "$Zero",
40673
- $rt_wrapFunction0(asrjt_Float64_Zero0),
40674
- "$NaN",
40675
- $rt_wrapFunction0(asrjt_Float64_NaN0)
40676
- ],
40677
40650
  asrjt_Float32,
40678
40651
  0,
40679
40652
  asrjt_Floating,
@@ -40734,6 +40707,48 @@ $rt_metadata([
40734
40707
  0,
40735
40708
  0,
40736
40709
  0,
40710
+ asrjt_Float64,
40711
+ 0,
40712
+ asrjt_Floating,
40713
+ [],
40714
+ 0,
40715
+ 3,
40716
+ 0,
40717
+ 0,
40718
+ [
40719
+ "$isSignMinus",
40720
+ $rt_wrapFunction0(asrjt_Float64_isSignMinus),
40721
+ "$isInfinite",
40722
+ $rt_wrapFunction0(asrjt_Float64_isInfinite),
40723
+ "$isNormal",
40724
+ $rt_wrapFunction0(asrjt_Float64_isNormal),
40725
+ "$isSubnormal",
40726
+ $rt_wrapFunction0(asrjt_Float64_isSubnormal),
40727
+ "$isNaN",
40728
+ $rt_wrapFunction0(asrjt_Float64_isNaN),
40729
+ "$isSignalling",
40730
+ $rt_wrapFunction0(asrjt_Float64_isSignalling),
40731
+ "$isZero",
40732
+ $rt_wrapFunction0(asrjt_Float64_isZero),
40733
+ "$toExactFloat",
40734
+ $rt_wrapFunction0(asrjt_Float64_toExactFloat),
40735
+ "$maxPrecision",
40736
+ $rt_wrapFunction0(asrjt_Float64_maxPrecision),
40737
+ "$negate2",
40738
+ $rt_wrapFunction0(asrjt_Float64_negate0),
40739
+ "$fromExactFloat",
40740
+ $rt_wrapFunction2(asrjt_Float64_fromExactFloat),
40741
+ "$NegativeInfinity",
40742
+ $rt_wrapFunction0(asrjt_Float64_NegativeInfinity0),
40743
+ "$Infinity",
40744
+ $rt_wrapFunction0(asrjt_Float64_Infinity0),
40745
+ "$NegativeZero",
40746
+ $rt_wrapFunction0(asrjt_Float64_NegativeZero0),
40747
+ "$Zero",
40748
+ $rt_wrapFunction0(asrjt_Float64_Zero0),
40749
+ "$NaN",
40750
+ $rt_wrapFunction0(asrjt_Float64_NaN0)
40751
+ ],
40737
40752
  asrjo_Comparisons,
40738
40753
  0,
40739
40754
  jl_Object,
@@ -42593,6 +42608,7 @@ $rt_stringPool([
42593
42608
  "LO",
42594
42609
  "TAG",
42595
42610
  "->",
42611
+ "<\\d+>",
42596
42612
  "Error",
42597
42613
  "Warning",
42598
42614
  " in ",
@@ -42680,7 +42696,6 @@ $rt_stringPool([
42680
42696
  "FLOATING_POINT_REGISTER_RESTORE",
42681
42697
  "DO_NOTHING",
42682
42698
  "Runtime exception at ",
42683
- "<\\d+>",
42684
42699
  "Too many or incorrectly formatted operands. Expected: ",
42685
42700
  "Too few or incorrectly formatted operands. Expected: ",
42686
42701
  "Unsigned value is too large to fit into a sign-extended immediate",
@@ -42808,15 +42823,25 @@ var $rt_jso_marker = Symbol("jsoClass");
42808
42823
  Object.defineProperty(c, "example", {
42809
42824
  get: $rt_callWithReceiver(asr_JsInstruction_getExample$exported$3)
42810
42825
  });
42811
- c = asr_JsCompilationResult.prototype;
42812
- Object.defineProperty(c, "hasErrors", {
42813
- get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
42826
+ c = asr_JsRiscVTokenizedLine.prototype;
42827
+ Object.defineProperty(c, "line", {
42828
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
42814
42829
  });
42815
- Object.defineProperty(c, "report", {
42816
- get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
42830
+ Object.defineProperty(c, "tokens", {
42831
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
42817
42832
  });
42818
- Object.defineProperty(c, "errors", {
42819
- get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
42833
+ c = asr_JsBackStep.prototype;
42834
+ Object.defineProperty(c, "pc", {
42835
+ get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
42836
+ });
42837
+ Object.defineProperty(c, "action", {
42838
+ get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
42839
+ });
42840
+ Object.defineProperty(c, "param1", {
42841
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
42842
+ });
42843
+ Object.defineProperty(c, "param2", {
42844
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
42820
42845
  });
42821
42846
  c = asr_JsProgramStatement.prototype;
42822
42847
  Object.defineProperty(c, "assemblyStatement", {
@@ -42837,25 +42862,15 @@ var $rt_jso_marker = Symbol("jsoClass");
42837
42862
  Object.defineProperty(c, "source", {
42838
42863
  get: $rt_callWithReceiver(asr_JsProgramStatement_getSource$exported$2)
42839
42864
  });
42840
- c = asr_JsBackStep.prototype;
42841
- Object.defineProperty(c, "pc", {
42842
- get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
42843
- });
42844
- Object.defineProperty(c, "action", {
42845
- get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
42846
- });
42847
- Object.defineProperty(c, "param1", {
42848
- get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
42849
- });
42850
- Object.defineProperty(c, "param2", {
42851
- get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
42865
+ c = asr_JsCompilationResult.prototype;
42866
+ Object.defineProperty(c, "hasErrors", {
42867
+ get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
42852
42868
  });
42853
- c = asr_JsRiscVTokenizedLine.prototype;
42854
- Object.defineProperty(c, "line", {
42855
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
42869
+ Object.defineProperty(c, "report", {
42870
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
42856
42871
  });
42857
- Object.defineProperty(c, "tokens", {
42858
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
42872
+ Object.defineProperty(c, "errors", {
42873
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
42859
42874
  });
42860
42875
  c = asr_JsStackFrame.prototype;
42861
42876
  Object.defineProperty(c, "pc", {
@@ -42919,22 +42934,22 @@ function $rt_export_class_JsInstruction_32() {
42919
42934
  throw new Error("Can't instantiate this class directly");
42920
42935
  }
42921
42936
  $rt_export_class_JsInstruction_32.prototype = asr_JsInstruction.prototype;
42922
- function $rt_export_class_JsCompilationResult_70() {
42937
+ function $rt_export_class_JsRiscVTokenizedLine_72() {
42923
42938
  throw new Error("Can't instantiate this class directly");
42924
42939
  }
42925
- $rt_export_class_JsCompilationResult_70.prototype = asr_JsCompilationResult.prototype;
42926
- function $rt_export_class_JsProgramStatement_72() {
42940
+ $rt_export_class_JsRiscVTokenizedLine_72.prototype = asr_JsRiscVTokenizedLine.prototype;
42941
+ function $rt_export_class_JsBackStep_77() {
42927
42942
  throw new Error("Can't instantiate this class directly");
42928
42943
  }
42929
- $rt_export_class_JsProgramStatement_72.prototype = asr_JsProgramStatement.prototype;
42930
- function $rt_export_class_JsBackStep_79() {
42944
+ $rt_export_class_JsBackStep_77.prototype = asr_JsBackStep.prototype;
42945
+ function $rt_export_class_JsProgramStatement_78() {
42931
42946
  throw new Error("Can't instantiate this class directly");
42932
42947
  }
42933
- $rt_export_class_JsBackStep_79.prototype = asr_JsBackStep.prototype;
42934
- function $rt_export_class_JsRiscVTokenizedLine_82() {
42948
+ $rt_export_class_JsProgramStatement_78.prototype = asr_JsProgramStatement.prototype;
42949
+ function $rt_export_class_JsCompilationResult_79() {
42935
42950
  throw new Error("Can't instantiate this class directly");
42936
42951
  }
42937
- $rt_export_class_JsRiscVTokenizedLine_82.prototype = asr_JsRiscVTokenizedLine.prototype;
42952
+ $rt_export_class_JsCompilationResult_79.prototype = asr_JsCompilationResult.prototype;
42938
42953
  function $rt_export_class_JsStackFrame_83() {
42939
42954
  throw new Error("Can't instantiate this class directly");
42940
42955
  }