@specy/risc-v 0.1.4 → 0.1.5

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 +1254 -1219
  2. package/dist/index.mjs +1254 -1219
  3. package/package.json +3 -2
package/dist/index.mjs CHANGED
@@ -2663,11 +2663,11 @@ var asr_JsRiscV_getCallStack$exported$4 = (var$1) => {
2663
2663
  while (var$3 < asr_RARS_getCallStack(var$1.$main).data.length) {
2664
2664
  var$5 = new asr_JsStackFrame();
2665
2665
  var$6 = asr_RARS_getCallStack(var$1.$main).data[var$3];
2666
- var$5.$pc3 = var$6.$getPC();
2667
- var$5.$toAddress = var$6.$getToAddress();
2668
- var$5.$sp = var$6.$getSP();
2669
- var$5.$fp = var$6.$getFP();
2670
- var$5.$registers = var$6.$getRegisters();
2666
+ var$5.$pc3 = var$6.$pc4;
2667
+ var$5.$toAddress0 = var$6.$toAddress;
2668
+ var$5.$sp = var$6.$sp0;
2669
+ var$5.$fp = var$6.$fp0;
2670
+ var$5.$registers = var$6.$registers0;
2671
2671
  ju_ArrayList_add(var$4, var$5);
2672
2672
  var$3 = var$3 + 1 | 0;
2673
2673
  }
@@ -3162,8 +3162,7 @@ var asr_JsRiscV_readMemoryBytes$exported$30 = (var$1, var$2, var$3) => {
3162
3162
  var asr_JsRiscV_getStackPointer$exported$31 = (var$1) => {
3163
3163
  asr_JsRiscV_$callClinit();
3164
3164
  var$1;
3165
- asrrh_RegisterFile_$callClinit();
3166
- return Long_lo(asrrh_RegisterBlock_getRegister(asrrh_RegisterFile_instance, $rt_s(17)).$getValue());
3165
+ return Long_lo(asrrh_RegisterFile_getStackPointerRegister().$getValue());
3167
3166
  };
3168
3167
  var asr_JsRiscV_initializeRISCV$exported$0 = () => {
3169
3168
  asr_JsRiscV_$callClinit();
@@ -3178,7 +3177,7 @@ var asr_JsRiscV_makeRiscVfromSource$exported$1 = (var$1) => {
3178
3177
  var$3 = new asrrf_MemoryFileSystem();
3179
3178
  var$3.$files = ju_HashMap__init_();
3180
3179
  var$4 = var$3;
3181
- ju_HashMap_put(var$4.$files, $rt_s(18), var$1);
3180
+ ju_HashMap_put(var$4.$files, $rt_s(17), var$1);
3182
3181
  var$5 = asr_RISCVprogram__init_();
3183
3182
  var$6 = ju_ArrayList__init_();
3184
3183
  var$4 = ju_AbstractList_iterator(asrrf_MemoryFileSystem_getFiles(var$4));
@@ -3193,7 +3192,7 @@ var asr_JsRiscV_makeRiscVfromSource$exported$1 = (var$1) => {
3193
3192
  return var$2;
3194
3193
  }
3195
3194
  var$8 = ju_AbstractList$1_next(var$4);
3196
- var$9 = jl_String_equals(var$8.$name2, $rt_s(18)) ? var$5 : asr_RISCVprogram__init_();
3195
+ var$9 = jl_String_equals(var$8.$name2, $rt_s(17)) ? var$5 : asr_RISCVprogram__init_();
3197
3196
  asr_RISCVprogram_readSource(var$9, var$8.$name2, var$8.$source2);
3198
3197
  var$8 = asra_Tokenizer__init_();
3199
3198
  var$9.$tokenizer = var$8;
@@ -3287,8 +3286,8 @@ var asr_JsRiscV__clinit_ = () => {
3287
3286
  jnc_CodingErrorAction__clinit_();
3288
3287
  jnc_CoderResult__clinit_();
3289
3288
  jn_ByteOrder__clinit_();
3290
- asrjt_Float32__clinit_();
3291
3289
  asrjt_Float64__clinit_();
3290
+ asrjt_Float32__clinit_();
3292
3291
  jm_BigInteger__clinit_();
3293
3292
  asrjo_Arithmetic__clinit_();
3294
3293
  asrj_RoundingMode__clinit_();
@@ -3683,7 +3682,7 @@ var otji_JSWrapper_wrap = ($jsNumber) => {
3683
3682
  if ($jsNumber === null)
3684
3683
  return null;
3685
3684
  $type = $rt_str(typeof $jsNumber);
3686
- $isObject = !jl_String_equals($type, $rt_s(19)) && !jl_String_equals($type, $rt_s(20)) ? 0 : 1;
3685
+ $isObject = !jl_String_equals($type, $rt_s(18)) && !jl_String_equals($type, $rt_s(19)) ? 0 : 1;
3687
3686
  otji_JSWrapper$Helper_$callClinit();
3688
3687
  $wrappers = otji_JSWrapper$Helper_wrappers;
3689
3688
  if ($wrappers !== null) {
@@ -3696,7 +3695,7 @@ var otji_JSWrapper_wrap = ($jsNumber) => {
3696
3695
  $wrappers.set($jsNumber, new WeakRef($wrapper));
3697
3696
  return $wrapper;
3698
3697
  }
3699
- if (jl_String_equals($type, $rt_s(21))) {
3698
+ if (jl_String_equals($type, $rt_s(20))) {
3700
3699
  $stringWrappers = otji_JSWrapper$Helper_stringWrappers;
3701
3700
  $stringFinalizationRegistry = otji_JSWrapper$Helper_stringFinalizationRegistry;
3702
3701
  $existingRef = $stringWrappers.get($jsNumber);
@@ -3709,7 +3708,7 @@ var otji_JSWrapper_wrap = ($jsNumber) => {
3709
3708
  otji_JSWrapper_register$js_body$_4($stringFinalizationRegistry, $wrapperAsJs, $jsNumber);
3710
3709
  return $wrapper;
3711
3710
  }
3712
- if (jl_String_equals($type, $rt_s(22))) {
3711
+ if (jl_String_equals($type, $rt_s(21))) {
3713
3712
  $numberWrappers = otji_JSWrapper$Helper_numberWrappers;
3714
3713
  $numberFinalizationRegistry = otji_JSWrapper$Helper_numberFinalizationRegistry;
3715
3714
  $existingRef = $numberWrappers.get($jsNumber);
@@ -3722,7 +3721,7 @@ var otji_JSWrapper_wrap = ($jsNumber) => {
3722
3721
  otji_JSWrapper_register$js_body$_4($numberFinalizationRegistry, $wrapperAsJs, $jsNumber);
3723
3722
  return $wrapper;
3724
3723
  }
3725
- if (jl_String_equals($type, $rt_s(23))) {
3724
+ if (jl_String_equals($type, $rt_s(22))) {
3726
3725
  $existingRef = otji_JSWrapper$Helper_undefinedWrapper;
3727
3726
  $existing = $existingRef === null ? void 0 : $existingRef.deref();
3728
3727
  if (!(typeof $existing == "undefined" ? 1 : 0))
@@ -3764,7 +3763,7 @@ var otji_JSWrapper_equals = ($this, $obj) => {
3764
3763
  return $this.$js !== $obj.$js ? 0 : 1;
3765
3764
  };
3766
3765
  var otji_JSWrapper_toString = ($this) => {
3767
- return (typeof $this.$js == "undefined" ? 1 : 0) ? $rt_s(23) : $rt_str($this.$js.toString());
3766
+ return (typeof $this.$js == "undefined" ? 1 : 0) ? $rt_s(22) : $rt_str($this.$js.toString());
3768
3767
  };
3769
3768
  var otji_JSWrapper_register$js_body$_4 = (var$1, var$2, var$3) => {
3770
3769
  return var$1.register(var$2, var$3);
@@ -3815,7 +3814,7 @@ var asr_RARS_initializeRISCV = () => {
3815
3814
  if (!asr_Globals_initialized) {
3816
3815
  asrrh_Memory_$callClinit();
3817
3816
  asr_Globals_memory = asrrh_Memory_uniqueMemoryInstance;
3818
- asr_Globals_symbolTable = asra_SymbolTable__init_($rt_s(24));
3817
+ asr_Globals_symbolTable = asra_SymbolTable__init_($rt_s(23));
3819
3818
  var$1 = new asr_Settings();
3820
3819
  asr_Settings_$callClinit();
3821
3820
  ju_Observable__init_(var$1);
@@ -4062,12 +4061,12 @@ var asr_Globals_getConfigProperties = () => {
4062
4061
  var$1 = new asrc_ConfigProperties();
4063
4062
  ju_HashMap__init_0(var$1);
4064
4063
  var$2 = var$1;
4065
- ju_HashMap_put(var$2, $rt_s(25), $rt_s(26));
4066
- ju_HashMap_put(var$2, $rt_s(27), $rt_s(28));
4067
- ju_HashMap_put(var$2, $rt_s(29), $rt_s(30));
4068
- ju_HashMap_put(var$2, $rt_s(31), $rt_s(32));
4069
- ju_HashMap_put(var$2, $rt_s(33), $rt_s(34));
4070
- ju_HashMap_put(var$2, $rt_s(35), $rt_s(36));
4064
+ ju_HashMap_put(var$2, $rt_s(24), $rt_s(25));
4065
+ ju_HashMap_put(var$2, $rt_s(26), $rt_s(27));
4066
+ ju_HashMap_put(var$2, $rt_s(28), $rt_s(29));
4067
+ ju_HashMap_put(var$2, $rt_s(30), $rt_s(31));
4068
+ ju_HashMap_put(var$2, $rt_s(32), $rt_s(33));
4069
+ ju_HashMap_put(var$2, $rt_s(34), $rt_s(35));
4071
4070
  asr_Globals_configProperties = var$1;
4072
4071
  }
4073
4072
  return asr_Globals_configProperties;
@@ -4079,26 +4078,26 @@ var asr_Globals_getSettings = () => {
4079
4078
  var asr_Globals_getAsciiNonPrint = () => {
4080
4079
  let $anp;
4081
4080
  asr_Globals_$callClinit();
4082
- $anp = ju_HashMap_get(asr_Globals_getConfigProperties(), $rt_s(35));
4081
+ $anp = ju_HashMap_get(asr_Globals_getConfigProperties(), $rt_s(34));
4083
4082
  if ($anp === null)
4084
- $anp = $rt_s(36);
4085
- else if (jl_String_equals($anp, $rt_s(37)))
4086
- $anp = $rt_s(38);
4083
+ $anp = $rt_s(35);
4084
+ else if (jl_String_equals($anp, $rt_s(36)))
4085
+ $anp = $rt_s(37);
4087
4086
  return $anp;
4088
4087
  };
4089
4088
  var asr_Globals__clinit_ = () => {
4090
4089
  let var$1, var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9, var$10;
4091
4090
  asr_Globals_debug = 0;
4092
- asr_Globals_userInputAlert = $rt_s(39);
4091
+ asr_Globals_userInputAlert = $rt_s(38);
4093
4092
  asr_Globals_initialized = 0;
4094
4093
  asr_Globals_$callClinit();
4095
- asr_Globals_maximumMessageCharacters = asrc_ConfigMap_getIntegerValue(asr_Globals_getConfigProperties(), $rt_s(25));
4096
- asr_Globals_maximumErrorMessages = asrc_ConfigMap_getIntegerValue(asr_Globals_getConfigProperties(), $rt_s(27));
4097
- asr_Globals_maximumBacksteps = asrc_ConfigMap_getIntegerValue(asr_Globals_getConfigProperties(), $rt_s(29));
4098
- asr_Globals_copyrightYears = $rt_s(40);
4099
- asr_Globals_copyrightHolders = $rt_s(41);
4094
+ asr_Globals_maximumMessageCharacters = asrc_ConfigMap_getIntegerValue(asr_Globals_getConfigProperties(), $rt_s(24));
4095
+ asr_Globals_maximumErrorMessages = asrc_ConfigMap_getIntegerValue(asr_Globals_getConfigProperties(), $rt_s(26));
4096
+ asr_Globals_maximumBacksteps = asrc_ConfigMap_getIntegerValue(asr_Globals_getConfigProperties(), $rt_s(28));
4097
+ asr_Globals_copyrightYears = $rt_s(39);
4098
+ asr_Globals_copyrightHolders = $rt_s(40);
4100
4099
  asr_Globals_ASCII_NON_PRINT = asr_Globals_getAsciiNonPrint();
4101
- var$1 = ju_HashMap_get(asr_Globals_getConfigProperties(), $rt_s(33));
4100
+ var$1 = ju_HashMap_get(asr_Globals_getConfigProperties(), $rt_s(32));
4102
4101
  var$2 = asr_Globals_getAsciiNonPrint();
4103
4102
  if (var$1 === null) {
4104
4103
  var$3 = $rt_createArray(jl_String, 127);
@@ -4107,9 +4106,9 @@ var asr_Globals__clinit_ = () => {
4107
4106
  var$6 = var$4.length;
4108
4107
  while (var$5 < var$6) {
4109
4108
  if (!var$5)
4110
- var$4[var$5] = $rt_s(42);
4109
+ var$4[var$5] = $rt_s(41);
4111
4110
  else if (var$5 == 10)
4112
- var$4[var$5] = $rt_s(43);
4111
+ var$4[var$5] = $rt_s(42);
4113
4112
  else if (var$5 < 32)
4114
4113
  var$4[var$5] = var$2;
4115
4114
  else {
@@ -4123,7 +4122,7 @@ var asr_Globals__clinit_ = () => {
4123
4122
  var$5 = var$5 + 1 | 0;
4124
4123
  }
4125
4124
  } else {
4126
- var$3 = jl_String_split(var$1, $rt_s(44));
4125
+ var$3 = jl_String_split(var$1, $rt_s(43));
4127
4126
  var$5 = 0;
4128
4127
  var$6 = 0;
4129
4128
  while (true) {
@@ -4133,8 +4132,8 @@ var asr_Globals__clinit_ = () => {
4133
4132
  break;
4134
4133
  if (jl_String_equals(var$4[var$6], $rt_s(4)))
4135
4134
  var$4[var$6] = var$2;
4136
- if (jl_String_equals(var$4[var$6], $rt_s(37)))
4137
- var$4[var$6] = $rt_s(38);
4135
+ if (jl_String_equals(var$4[var$6], $rt_s(36)))
4136
+ var$4[var$6] = $rt_s(37);
4138
4137
  if (var$4[var$6].$nativeString.length > var$5)
4139
4138
  var$5 = var$4[var$6].$nativeString.length;
4140
4139
  var$6 = var$6 + 1 | 0;
@@ -4142,7 +4141,7 @@ var asr_Globals__clinit_ = () => {
4142
4141
  var$8 = var$5 + 1 | 0;
4143
4142
  var$9 = 0;
4144
4143
  while (var$9 < var$7) {
4145
- var$1 = jl_String_substring($rt_s(45), 0, var$8 - var$4[var$9].$nativeString.length | 0);
4144
+ var$1 = jl_String_substring($rt_s(44), 0, var$8 - var$4[var$9].$nativeString.length | 0);
4146
4145
  var$10 = var$4[var$9];
4147
4146
  var$2 = new jl_StringBuilder();
4148
4147
  jl_AbstractStringBuilder__init_(var$2);
@@ -4175,7 +4174,7 @@ var asr_JsRISCVIO_callHandler = ($this, $name, $args) => {
4175
4174
  $handler = new jl_IllegalArgumentException();
4176
4175
  var$4 = new jl_StringBuilder();
4177
4176
  jl_AbstractStringBuilder__init_(var$4);
4178
- jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(46)), $name);
4177
+ jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(45)), $name);
4179
4178
  jl_Throwable__init_0($handler, jl_AbstractStringBuilder_toString(var$4));
4180
4179
  $rt_throw($handler);
4181
4180
  }
@@ -4199,7 +4198,7 @@ var asr_JsRISCVIO_callHandler = ($this, $name, $args) => {
4199
4198
  return otji_JSWrapper_maybeUnwrap($handler.call($handler, otji_JSWrapper_unwrap($args[0]), otji_JSWrapper_unwrap($args[1]), otji_JSWrapper_unwrap($args[2]), otji_JSWrapper_unwrap($args[3]), otji_JSWrapper_unwrap($args[4]), otji_JSWrapper_unwrap($args[5]), otji_JSWrapper_unwrap($args[6])));
4200
4199
  if (var$5 != 8) {
4201
4200
  $handler = new jl_IllegalArgumentException();
4202
- jl_Throwable__init_0($handler, $rt_s(47));
4201
+ jl_Throwable__init_0($handler, $rt_s(46));
4203
4202
  $rt_throw($handler);
4204
4203
  }
4205
4204
  return otji_JSWrapper_maybeUnwrap($handler.call($handler, otji_JSWrapper_unwrap($args[0]), otji_JSWrapper_unwrap($args[1]), otji_JSWrapper_unwrap($args[2]), otji_JSWrapper_unwrap($args[3]), otji_JSWrapper_unwrap($args[4]), otji_JSWrapper_unwrap($args[5]), otji_JSWrapper_unwrap($args[6]), otji_JSWrapper_unwrap($args[7])));
@@ -4212,7 +4211,7 @@ var asr_JsRISCVIO_callIntHandler = ($this, $name, $args) => {
4212
4211
  $result = new jl_IllegalArgumentException();
4213
4212
  var$4 = new jl_StringBuilder();
4214
4213
  jl_AbstractStringBuilder__init_(var$4);
4215
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(48)), $name), $rt_s(49));
4214
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(47)), $name), $rt_s(48));
4216
4215
  jl_Throwable__init_0($result, jl_AbstractStringBuilder_toString(var$4));
4217
4216
  $rt_throw($result);
4218
4217
  };
@@ -4224,7 +4223,7 @@ var asr_JsRISCVIO_callStringHandler = ($this, $name, $args) => {
4224
4223
  $result = new jl_IllegalArgumentException();
4225
4224
  var$4 = new jl_StringBuilder();
4226
4225
  jl_AbstractStringBuilder__init_(var$4);
4227
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(48)), $name), $rt_s(50));
4226
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(47)), $name), $rt_s(49));
4228
4227
  jl_Throwable__init_0($result, jl_AbstractStringBuilder_toString(var$4));
4229
4228
  $rt_throw($result);
4230
4229
  };
@@ -4235,13 +4234,13 @@ var asr_JsRISCVIO_openFile = ($this, $filename, $flags, $append) => {
4235
4234
  var$5[0] = otji_JSWrapper_wrap($rt_ustr($filename));
4236
4235
  var$5[1] = otji_JSWrapper_wrap($flags);
4237
4236
  var$5[2] = otji_JSWrapper_wrap(!!$append);
4238
- return asr_JsRISCVIO_callIntHandler($this, $rt_s(51), var$4);
4237
+ return asr_JsRISCVIO_callIntHandler($this, $rt_s(50), var$4);
4239
4238
  };
4240
4239
  var asr_JsRISCVIO_closeFile = ($this, $fileDescriptor) => {
4241
4240
  let var$2;
4242
4241
  var$2 = $rt_createArray(jl_Object, 1);
4243
4242
  var$2.data[0] = otji_JSWrapper_wrap($fileDescriptor);
4244
- asr_JsRISCVIO_callHandler($this, $rt_s(52), var$2);
4243
+ asr_JsRISCVIO_callHandler($this, $rt_s(51), var$2);
4245
4244
  };
4246
4245
  var asr_JsRISCVIO_writeFile = ($this, $fileDescriptor, $buffer) => {
4247
4246
  let var$3, var$4, var$5;
@@ -4251,13 +4250,13 @@ var asr_JsRISCVIO_writeFile = ($this, $fileDescriptor, $buffer) => {
4251
4250
  var$5 = $rt_createArray($rt_arraycls($rt_bytecls), 1);
4252
4251
  var$5.data[0] = $buffer;
4253
4252
  var$4[1] = otji_JSWrapper_wrap(otjc_JSArray_of(var$5));
4254
- asr_JsRISCVIO_callHandler($this, $rt_s(53), var$3);
4253
+ asr_JsRISCVIO_callHandler($this, $rt_s(52), var$3);
4255
4254
  };
4256
4255
  var asr_JsRISCVIO_inputDialog = ($this, $message) => {
4257
4256
  let var$2;
4258
4257
  var$2 = $rt_createArray(jl_Object, 1);
4259
4258
  var$2.data[0] = otji_JSWrapper_wrap($rt_ustr($message));
4260
- return asr_JsRISCVIO_callStringHandler($this, $rt_s(54), var$2);
4259
+ return asr_JsRISCVIO_callStringHandler($this, $rt_s(53), var$2);
4261
4260
  };
4262
4261
  var asr_JsRISCVIO_outputDialog = ($this, $message, $type) => {
4263
4262
  let var$3, var$4;
@@ -4265,7 +4264,7 @@ var asr_JsRISCVIO_outputDialog = ($this, $message, $type) => {
4265
4264
  var$4 = var$3.data;
4266
4265
  var$4[0] = otji_JSWrapper_wrap($rt_ustr($message));
4267
4266
  var$4[1] = otji_JSWrapper_wrap($type);
4268
- asr_JsRISCVIO_callHandler($this, $rt_s(55), var$3);
4267
+ asr_JsRISCVIO_callHandler($this, $rt_s(54), var$3);
4269
4268
  };
4270
4269
  var asr_JsRISCVIO_stdIn = ($this, $buffer, $length) => {
4271
4270
  let var$3, var$4, var$5;
@@ -4275,7 +4274,7 @@ var asr_JsRISCVIO_stdIn = ($this, $buffer, $length) => {
4275
4274
  var$5.data[0] = $buffer;
4276
4275
  var$4[0] = otji_JSWrapper_wrap(otjc_JSArray_of(var$5));
4277
4276
  var$4[1] = otji_JSWrapper_wrap($length);
4278
- asr_JsRISCVIO_callHandler($this, $rt_s(56), var$3);
4277
+ asr_JsRISCVIO_callHandler($this, $rt_s(55), var$3);
4279
4278
  };
4280
4279
  var asr_JsRISCVIO_stdOut = ($this, $buffer) => {
4281
4280
  let var$2, var$3, var$4;
@@ -4284,7 +4283,7 @@ var asr_JsRISCVIO_stdOut = ($this, $buffer) => {
4284
4283
  var$4 = $rt_createArray($rt_arraycls($rt_bytecls), 1);
4285
4284
  var$4.data[0] = $buffer;
4286
4285
  var$3[0] = otji_JSWrapper_wrap(otjc_JSArray_of(var$4));
4287
- asr_JsRISCVIO_callHandler($this, $rt_s(57), var$2);
4286
+ asr_JsRISCVIO_callHandler($this, $rt_s(56), var$2);
4288
4287
  };
4289
4288
  var asr_JsRISCVIO_stdErr = ($this, $buffer) => {
4290
4289
  let var$2, var$3, var$4;
@@ -4293,7 +4292,7 @@ var asr_JsRISCVIO_stdErr = ($this, $buffer) => {
4293
4292
  var$4 = $rt_createArray($rt_arraycls($rt_bytecls), 1);
4294
4293
  var$4.data[0] = $buffer;
4295
4294
  var$3[0] = otji_JSWrapper_wrap(otjc_JSArray_of(var$4));
4296
- asr_JsRISCVIO_callHandler($this, $rt_s(58), var$2);
4295
+ asr_JsRISCVIO_callHandler($this, $rt_s(57), var$2);
4297
4296
  };
4298
4297
  var asrrf_RISCVFileSystem = $rt_classWithoutFields();
4299
4298
  function asrrf_MemoryFileSystem() {
@@ -4339,15 +4338,15 @@ var asrr_InstructionSet_populate = ($this) => {
4339
4338
  $mask = ju_AbstractList_iterator($maskMap);
4340
4339
  while (ju_AbstractList$1_hasNext($mask)) {
4341
4340
  $matchMaps = ju_AbstractList$1_next($mask);
4342
- if (!jl_String_startsWith($matchMaps, $rt_s(59)) && !jl_String_startsWith($matchMaps, $rt_s(38)) && $matchMaps.$nativeString.length > 0) {
4341
+ if (!jl_String_startsWith($matchMaps, $rt_s(58)) && !jl_String_startsWith($matchMaps, $rt_s(37)) && $matchMaps.$nativeString.length > 0) {
4343
4342
  $inst = $rt_s(3);
4344
- $basic = ju_StringTokenizer__init_($matchMaps, $rt_s(60));
4343
+ $basic = ju_StringTokenizer__init_($matchMaps, $rt_s(59));
4345
4344
  $maskMap = ju_StringTokenizer_nextToken($basic);
4346
4345
  $matchMaps = $rt_s(3);
4347
4346
  a: {
4348
4347
  while (ju_StringTokenizer_hasMoreTokens($basic)) {
4349
4348
  $match = ju_StringTokenizer_nextToken($basic);
4350
- if (jl_String_startsWith($match, $rt_s(59))) {
4349
+ if (jl_String_startsWith($match, $rt_s(58))) {
4351
4350
  $inst = jl_String_substring0($match, 1);
4352
4351
  break a;
4353
4352
  }
@@ -4372,7 +4371,7 @@ var asrr_InstructionSet_populate = ($this) => {
4372
4371
  asrr_Instruction_createExampleTokenList($inst);
4373
4372
  if ($matchMaps !== null && $matchMaps.$nativeString.length) {
4374
4373
  $maskMap = ju_ArrayList__init_();
4375
- $matchMap = ju_StringTokenizer__init_($matchMaps, $rt_s(43));
4374
+ $matchMap = ju_StringTokenizer__init_($matchMaps, $rt_s(42));
4376
4375
  while (ju_StringTokenizer_hasMoreTokens($matchMap)) {
4377
4376
  ju_ArrayList_add($maskMap, ju_StringTokenizer_nextToken($matchMap));
4378
4377
  }
@@ -4711,9 +4710,9 @@ var asrrh_Memory_allocateBytesFromHeap = ($this, $numBytes) => {
4711
4710
  var$3 = new jl_IllegalArgumentException();
4712
4711
  var$4 = new jl_StringBuilder();
4713
4712
  jl_AbstractStringBuilder__init_(var$4);
4714
- var$5 = jl_StringBuilder_append(var$4, $rt_s(61));
4713
+ var$5 = jl_StringBuilder_append(var$4, $rt_s(60));
4715
4714
  jl_AbstractStringBuilder_append(var$5, $numBytes);
4716
- jl_StringBuilder_append(var$5, $rt_s(62));
4715
+ jl_StringBuilder_append(var$5, $rt_s(61));
4717
4716
  jl_Throwable__init_0(var$3, jl_AbstractStringBuilder_toString(var$4));
4718
4717
  $rt_throw(var$3);
4719
4718
  }
@@ -4728,9 +4727,9 @@ var asrrh_Memory_allocateBytesFromHeap = ($this, $numBytes) => {
4728
4727
  var$3 = new jl_IllegalArgumentException();
4729
4728
  var$4 = new jl_StringBuilder();
4730
4729
  jl_AbstractStringBuilder__init_(var$4);
4731
- var$5 = jl_StringBuilder_append(var$4, $rt_s(61));
4730
+ var$5 = jl_StringBuilder_append(var$4, $rt_s(60));
4732
4731
  jl_AbstractStringBuilder_append(var$5, $numBytes);
4733
- jl_StringBuilder_append(var$5, $rt_s(63));
4732
+ jl_StringBuilder_append(var$5, $rt_s(62));
4734
4733
  jl_Throwable__init_0(var$3, jl_AbstractStringBuilder_toString(var$4));
4735
4734
  $rt_throw(var$3);
4736
4735
  };
@@ -4742,13 +4741,13 @@ var asrrh_Memory_set = ($this, $address, $value, $length) => {
4742
4741
  $oldStatement = jl_System_out();
4743
4742
  var$6 = new jl_StringBuilder();
4744
4743
  jl_AbstractStringBuilder__init_(var$6);
4745
- var$7 = jl_StringBuilder_append(var$6, $rt_s(64));
4744
+ var$7 = jl_StringBuilder_append(var$6, $rt_s(63));
4746
4745
  jl_AbstractStringBuilder_append(var$7, $address);
4747
- var$7 = jl_StringBuilder_append(var$7, $rt_s(65));
4746
+ var$7 = jl_StringBuilder_append(var$7, $rt_s(64));
4748
4747
  jl_AbstractStringBuilder_append(var$7, $value);
4749
4748
  jl_AbstractStringBuilder_append0(var$7, 40);
4750
4749
  jl_AbstractStringBuilder_append(var$7, $length);
4751
- jl_StringBuilder_append(var$7, $rt_s(66));
4750
+ jl_StringBuilder_append(var$7, $rt_s(65));
4752
4751
  var$6 = jl_AbstractStringBuilder_toString(var$6);
4753
4752
  otcic_JsConsolePrintStream_println($oldStatement, var$6);
4754
4753
  }
@@ -4772,13 +4771,13 @@ var asrrh_Memory_set = ($this, $address, $value, $length) => {
4772
4771
  var$9 = asrrh_Memory_storeBytesInTable($this, $this.$memoryMapBlockTable, $relativeByteAddress, $length, $value);
4773
4772
  break a;
4774
4773
  }
4775
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(67), 7, $address));
4774
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(66), 7, $address));
4776
4775
  }
4777
4776
  if (!asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED))
4778
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(68), 7, $address));
4777
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(67), 7, $address));
4779
4778
  $relativeByteAddress = $address % 4 | 0;
4780
4779
  if (($relativeByteAddress + $length | 0) > 4)
4781
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(69), 4, $address));
4780
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(68), 4, $address));
4782
4781
  var$10 = ($address / 4 | 0) * 4 | 0;
4783
4782
  $oldStatement = asrrh_Memory_getStatementNoNotify($this, var$10);
4784
4783
  if ($oldStatement !== null)
@@ -4818,10 +4817,10 @@ var asrrh_Memory_setRawWord = ($this, $address, $value) => {
4818
4817
  $oldValue = asrrh_Memory_storeWordInTable($this, $this.$memoryMapBlockTable, $relative, $value);
4819
4818
  break a;
4820
4819
  }
4821
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(70), 7, $address));
4820
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(69), 7, $address));
4822
4821
  }
4823
4822
  if (!asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED))
4824
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(68), 7, $address));
4823
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(67), 7, $address));
4825
4824
  $oldStatement = asrrh_Memory_getStatementNoNotify($this, $address);
4826
4825
  if ($oldStatement !== null)
4827
4826
  $oldValue = $oldStatement.$binaryStatement;
@@ -4850,7 +4849,7 @@ var asrrh_Memory_setWord = ($this, $address, $value) => {
4850
4849
  var asrrh_Memory_setHalf = ($this, $address, $value) => {
4851
4850
  let var$3;
4852
4851
  if ($address % 2 | 0)
4853
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(71), 6, $address));
4852
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(70), 6, $address));
4854
4853
  if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
4855
4854
  $value = asrrh_Memory_set($this, $address, $value, 2);
4856
4855
  else {
@@ -4887,16 +4886,16 @@ var asrrh_Memory_setStatement = ($this, $address, $statement) => {
4887
4886
  let var$3, var$4, var$5, var$6, var$7;
4888
4887
  asrrh_Memory_checkStoreWordAligned($address);
4889
4888
  if (!asrrh_Memory_inTextSegment($address))
4890
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(72), 7, $address));
4889
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(71), 7, $address));
4891
4890
  asr_Globals_$callClinit();
4892
4891
  if (asr_Globals_debug) {
4893
4892
  var$3 = jl_System_out();
4894
4893
  var$4 = $statement.$binaryStatement;
4895
4894
  var$5 = new jl_StringBuilder();
4896
4895
  jl_AbstractStringBuilder__init_(var$5);
4897
- var$6 = jl_StringBuilder_append(var$5, $rt_s(64));
4896
+ var$6 = jl_StringBuilder_append(var$5, $rt_s(63));
4898
4897
  jl_AbstractStringBuilder_append(var$6, $address);
4899
- jl_AbstractStringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(65)), var$4);
4898
+ jl_AbstractStringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(64)), var$4);
4900
4899
  var$5 = jl_AbstractStringBuilder_toString(var$5);
4901
4900
  otcic_JsConsolePrintStream_println(var$3, var$5);
4902
4901
  }
@@ -4936,12 +4935,12 @@ var asrrh_Memory_get0 = ($this, $address, $length, $notify) => {
4936
4935
  $relativeByteAddress = asrrh_Memory_fetchBytesFromTable($this, $this.$memoryMapBlockTable, $relativeByteAddress, $length);
4937
4936
  } else {
4938
4937
  if (!asrrh_Memory_inTextSegment($address))
4939
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(67), 5, $address));
4938
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(66), 5, $address));
4940
4939
  if (!asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED))
4941
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(73), 5, $address));
4940
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(72), 5, $address));
4942
4941
  var$6 = $address % 4 | 0;
4943
4942
  if ((var$6 + $length | 0) > 4)
4944
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(74), 4, $address));
4943
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(73), 4, $address));
4945
4944
  $stmt = asrrh_Memory_getStatementNoNotify($this, ($address / 4 | 0) * 4 | 0);
4946
4945
  $relativeByteAddress = $stmt === null ? 0 : $length == 4 ? $stmt.$binaryStatement : $stmt.$binaryStatement >> (8 * var$6 | 0) & ((1 << ($length * 8 | 0)) - 1 | 0);
4947
4946
  }
@@ -4958,7 +4957,7 @@ var asrrh_Memory_getWord = ($this, $address) => {
4958
4957
  var asrrh_Memory_getHalf = ($this, $address) => {
4959
4958
  if (!($address % 2 | 0))
4960
4959
  return asrrh_Memory_get($this, $address, 2);
4961
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(75), 4, $address));
4960
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(74), 4, $address));
4962
4961
  };
4963
4962
  var asrrh_Memory_getByte = ($this, $address) => {
4964
4963
  return asrrh_Memory_get($this, $address, 1);
@@ -4973,7 +4972,7 @@ var asrrh_Memory_getStatement0 = ($this, $address, $notify) => {
4973
4972
  let var$3, var$4, var$5, var$6, var$7;
4974
4973
  asrrh_Memory_checkLoadWordAligned($address);
4975
4974
  if (!asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED) && !asrrh_Memory_inTextSegment($address))
4976
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(76), 5, $address));
4975
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(75), 5, $address));
4977
4976
  if (!asrrh_Memory_inTextSegment($address))
4978
4977
  return asr_ProgramStatement__init_(asrrh_Memory_get($this, $address, 4), $address);
4979
4978
  var$3 = asrrh_Memory_textBaseAddress;
@@ -5007,13 +5006,13 @@ var asrrh_Memory_checkLoadWordAligned = ($address) => {
5007
5006
  asrrh_Memory_$callClinit();
5008
5007
  if (asrrh_Memory_wordAligned($address))
5009
5008
  return;
5010
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(74), 4, $address));
5009
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(73), 4, $address));
5011
5010
  };
5012
5011
  var asrrh_Memory_checkStoreWordAligned = ($address) => {
5013
5012
  asrrh_Memory_$callClinit();
5014
5013
  if (asrrh_Memory_wordAligned($address))
5015
5014
  return;
5016
- $rt_throw(asrrh_AddressErrorException__init_($rt_s(77), 6, $address));
5015
+ $rt_throw(asrrh_AddressErrorException__init_($rt_s(76), 6, $address));
5017
5016
  };
5018
5017
  var asrrh_Memory_inTextSegment = ($address) => {
5019
5018
  asrrh_Memory_$callClinit();
@@ -5179,7 +5178,7 @@ var asra_SymbolTable_addSymbol = ($this, $token, $address, $b, $errors) => {
5179
5178
  $address = $token.$sourcePos;
5180
5179
  $token = new jl_StringBuilder();
5181
5180
  jl_AbstractStringBuilder__init_($token);
5182
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(78)), $label), $rt_s(79));
5181
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($token, $rt_s(77)), $label), $rt_s(78));
5183
5182
  asr_ErrorMessage__init_(var$6, var$7, $b, $address, jl_AbstractStringBuilder_toString($token));
5184
5183
  asr_ErrorList_add($errors, var$6);
5185
5184
  } else {
@@ -5195,9 +5194,9 @@ var asra_SymbolTable_addSymbol = ($this, $token, $address, $b, $errors) => {
5195
5194
  $errors = $this.$filename1;
5196
5195
  var$6 = new jl_StringBuilder();
5197
5196
  jl_AbstractStringBuilder__init_(var$6);
5198
- $label = jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(80)), $label), $rt_s(81));
5197
+ $label = jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(79)), $label), $rt_s(80));
5199
5198
  jl_AbstractStringBuilder_append($label, $address);
5200
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($label, $rt_s(82)), $errors), $rt_s(83));
5199
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append($label, $rt_s(81)), $errors), $rt_s(82));
5201
5200
  $errors = jl_AbstractStringBuilder_toString(var$6);
5202
5201
  otcic_JsConsolePrintStream_println($token, $errors);
5203
5202
  }
@@ -5272,7 +5271,7 @@ var asra_SymbolTable_clear = ($this) => {
5272
5271
  $this.$table = ju_ArrayList__init_();
5273
5272
  };
5274
5273
  var asra_SymbolTable__clinit_ = () => {
5275
- asra_SymbolTable_startLabel = $rt_s(18);
5274
+ asra_SymbolTable_startLabel = $rt_s(17);
5276
5275
  };
5277
5276
  function asr_Settings() {
5278
5277
  let a = this;
@@ -5316,27 +5315,27 @@ var asr_Settings__clinit_ = () => {
5316
5315
  var$1 = new asrc_SettingsProperties();
5317
5316
  ju_HashMap__init_0(var$1);
5318
5317
  var$2 = var$1;
5319
- ju_HashMap_put(var$2, $rt_s(84), $rt_s(85));
5320
- ju_HashMap_put(var$2, $rt_s(86), $rt_s(85));
5321
- ju_HashMap_put(var$2, $rt_s(87), $rt_s(85));
5322
- ju_HashMap_put(var$2, $rt_s(88), $rt_s(89));
5323
- ju_HashMap_put(var$2, $rt_s(90), $rt_s(85));
5324
- ju_HashMap_put(var$2, $rt_s(91), $rt_s(89));
5325
- ju_HashMap_put(var$2, $rt_s(92), $rt_s(89));
5326
- ju_HashMap_put(var$2, $rt_s(93), $rt_s(89));
5327
- ju_HashMap_put(var$2, $rt_s(94), $rt_s(89));
5328
- ju_HashMap_put(var$2, $rt_s(95), $rt_s(89));
5329
- ju_HashMap_put(var$2, $rt_s(96), $rt_s(85));
5330
- ju_HashMap_put(var$2, $rt_s(97), $rt_s(85));
5331
- ju_HashMap_put(var$2, $rt_s(98), $rt_s(85));
5332
- ju_HashMap_put(var$2, $rt_s(99), $rt_s(89));
5333
- ju_HashMap_put(var$2, $rt_s(100), $rt_s(85));
5334
- ju_HashMap_put(var$2, $rt_s(101), $rt_s(85));
5335
- ju_HashMap_put(var$2, $rt_s(102), $rt_s(89));
5336
- ju_HashMap_put(var$2, $rt_s(103), $rt_s(3));
5318
+ ju_HashMap_put(var$2, $rt_s(83), $rt_s(84));
5319
+ ju_HashMap_put(var$2, $rt_s(85), $rt_s(84));
5320
+ ju_HashMap_put(var$2, $rt_s(86), $rt_s(84));
5321
+ ju_HashMap_put(var$2, $rt_s(87), $rt_s(88));
5322
+ ju_HashMap_put(var$2, $rt_s(89), $rt_s(84));
5323
+ ju_HashMap_put(var$2, $rt_s(90), $rt_s(88));
5324
+ ju_HashMap_put(var$2, $rt_s(91), $rt_s(88));
5325
+ ju_HashMap_put(var$2, $rt_s(92), $rt_s(88));
5326
+ ju_HashMap_put(var$2, $rt_s(93), $rt_s(88));
5327
+ ju_HashMap_put(var$2, $rt_s(94), $rt_s(88));
5328
+ ju_HashMap_put(var$2, $rt_s(95), $rt_s(84));
5329
+ ju_HashMap_put(var$2, $rt_s(96), $rt_s(84));
5330
+ ju_HashMap_put(var$2, $rt_s(97), $rt_s(84));
5331
+ ju_HashMap_put(var$2, $rt_s(98), $rt_s(88));
5332
+ ju_HashMap_put(var$2, $rt_s(99), $rt_s(84));
5333
+ ju_HashMap_put(var$2, $rt_s(100), $rt_s(84));
5334
+ ju_HashMap_put(var$2, $rt_s(101), $rt_s(88));
5335
+ ju_HashMap_put(var$2, $rt_s(102), $rt_s(3));
5337
5336
  asr_Settings_settingsProperties = var$1;
5338
- asr_Settings_stringSettingsKeys = $rt_wrapArray(jl_String, [$rt_s(104), $rt_s(105), $rt_s(106), $rt_s(103), $rt_s(107), $rt_s(108), $rt_s(109)]);
5339
- asr_Settings_defaultStringSettingsValues = $rt_wrapArray(jl_String, [$rt_s(3), $rt_s(110), $rt_s(6), $rt_s(3), $rt_s(111), $rt_s(112), $rt_s(113)]);
5337
+ asr_Settings_stringSettingsKeys = $rt_wrapArray(jl_String, [$rt_s(103), $rt_s(104), $rt_s(105), $rt_s(102), $rt_s(106), $rt_s(107), $rt_s(108)]);
5338
+ asr_Settings_defaultStringSettingsValues = $rt_wrapArray(jl_String, [$rt_s(3), $rt_s(109), $rt_s(6), $rt_s(3), $rt_s(110), $rt_s(111), $rt_s(112)]);
5340
5339
  };
5341
5340
  var ju_Map = $rt_classWithoutFields(0);
5342
5341
  function ju_AbstractMap() {
@@ -5429,26 +5428,26 @@ var ju_AbstractMap_toString = ($this) => {
5429
5428
  $e = ju_HashMap$EntryIterator_next($iter);
5430
5429
  $e_0 = $e.$key;
5431
5430
  if ($e_0 === $this)
5432
- $e_0 = $rt_s(114);
5431
+ $e_0 = $rt_s(113);
5433
5432
  jl_StringBuilder_append($sb, $e_0);
5434
5433
  jl_AbstractStringBuilder_append0($sb, 61);
5435
5434
  $e_0 = $e.$value0;
5436
5435
  if ($e_0 === $this)
5437
- $e_0 = $rt_s(114);
5436
+ $e_0 = $rt_s(113);
5438
5437
  jl_StringBuilder_append($sb, $e_0);
5439
5438
  }
5440
5439
  $e_0 = $iter;
5441
5440
  while (ju_HashMap$AbstractMapIterator_hasNext(var$3)) {
5442
- jl_AbstractStringBuilder_append1($sb, $rt_s(115));
5441
+ jl_AbstractStringBuilder_append1($sb, $rt_s(114));
5443
5442
  $e = ju_HashMap$EntryIterator_next($e_0);
5444
5443
  $iter = $e.$key;
5445
5444
  if ($iter === $this)
5446
- $iter = $rt_s(114);
5445
+ $iter = $rt_s(113);
5447
5446
  jl_StringBuilder_append($sb, $iter);
5448
5447
  jl_AbstractStringBuilder_append0($sb, 61);
5449
5448
  $iter = $e.$value0;
5450
5449
  if ($iter === $this)
5451
- $iter = $rt_s(114);
5450
+ $iter = $rt_s(113);
5452
5451
  jl_StringBuilder_append($sb, $iter);
5453
5452
  }
5454
5453
  jl_AbstractStringBuilder_append0($sb, 125);
@@ -5611,29 +5610,29 @@ var asru_SystemIO = $rt_classWithoutFields();
5611
5610
  var asru_SystemIO_fileErrorString = null;
5612
5611
  var asru_SystemIO_io = null;
5613
5612
  var asru_SystemIO_readInteger = ($serviceNumber) => {
5614
- return asr_JsRISCVIO_callIntHandler(asru_SystemIO_io, $rt_s(116), $rt_createArray(jl_Object, 0));
5613
+ return asr_JsRISCVIO_callIntHandler(asru_SystemIO_io, $rt_s(115), $rt_createArray(jl_Object, 0));
5615
5614
  };
5616
5615
  var asru_SystemIO_readFloat = ($serviceNumber) => {
5617
5616
  let var$2, var$3;
5618
- var$2 = asr_JsRISCVIO_callHandler(asru_SystemIO_io, $rt_s(117), $rt_createArray(jl_Object, 0));
5617
+ var$2 = asr_JsRISCVIO_callHandler(asru_SystemIO_io, $rt_s(116), $rt_createArray(jl_Object, 0));
5619
5618
  if (typeof var$2 === "number" ? 1 : 0)
5620
5619
  return var$2;
5621
5620
  var$2 = new jl_IllegalArgumentException();
5622
5621
  var$3 = new jl_StringBuilder();
5623
5622
  jl_AbstractStringBuilder__init_(var$3);
5624
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, $rt_s(48)), $rt_s(117)), $rt_s(118));
5623
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, $rt_s(47)), $rt_s(116)), $rt_s(117));
5625
5624
  jl_Throwable__init_0(var$2, jl_AbstractStringBuilder_toString(var$3));
5626
5625
  $rt_throw(var$2);
5627
5626
  };
5628
5627
  var asru_SystemIO_readDouble = ($serviceNumber) => {
5629
5628
  let var$2, var$3;
5630
- var$2 = asr_JsRISCVIO_callHandler(asru_SystemIO_io, $rt_s(119), $rt_createArray(jl_Object, 0));
5629
+ var$2 = asr_JsRISCVIO_callHandler(asru_SystemIO_io, $rt_s(118), $rt_createArray(jl_Object, 0));
5631
5630
  if (typeof var$2 === "number" ? 1 : 0)
5632
5631
  return var$2;
5633
5632
  var$2 = new jl_IllegalArgumentException();
5634
5633
  var$3 = new jl_StringBuilder();
5635
5634
  jl_AbstractStringBuilder__init_(var$3);
5636
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, $rt_s(48)), $rt_s(119)), $rt_s(120));
5635
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$3, $rt_s(47)), $rt_s(118)), $rt_s(119));
5637
5636
  jl_Throwable__init_0(var$2, jl_AbstractStringBuilder_toString(var$3));
5638
5637
  $rt_throw(var$2);
5639
5638
  };
@@ -5642,11 +5641,11 @@ var asru_SystemIO_printString = ($string) => {
5642
5641
  var$2 = asru_SystemIO_io;
5643
5642
  var$3 = $rt_createArray(jl_Object, 1);
5644
5643
  var$3.data[0] = otji_JSWrapper_wrap($rt_ustr($string));
5645
- asr_JsRISCVIO_callHandler(var$2, $rt_s(121), var$3);
5644
+ asr_JsRISCVIO_callHandler(var$2, $rt_s(120), var$3);
5646
5645
  };
5647
5646
  var asru_SystemIO_readChar = ($serviceNumber) => {
5648
5647
  let $input, $e, var$4, $$je;
5649
- $input = asr_JsRISCVIO_callStringHandler(asru_SystemIO_io, $rt_s(122), $rt_createArray(jl_Object, 0));
5648
+ $input = asr_JsRISCVIO_callStringHandler(asru_SystemIO_io, $rt_s(121), $rt_createArray(jl_Object, 0));
5650
5649
  if ($input.$nativeString.length == 1) {
5651
5650
  $input = jl_String_valueOf1(jl_String_charAt($input, 0));
5652
5651
  a: {
@@ -5668,7 +5667,7 @@ var asru_SystemIO_readChar = ($serviceNumber) => {
5668
5667
  $input = new jl_IllegalArgumentException();
5669
5668
  var$4 = new jl_StringBuilder();
5670
5669
  jl_AbstractStringBuilder__init_(var$4);
5671
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(48)), $rt_s(122)), $rt_s(123));
5670
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(47)), $rt_s(121)), $rt_s(122));
5672
5671
  jl_Throwable__init_0($input, jl_AbstractStringBuilder_toString(var$4));
5673
5672
  $rt_throw($input);
5674
5673
  };
@@ -5680,9 +5679,9 @@ var asru_SystemIO_resetFiles = () => {
5680
5679
  var$1 = var$1 + 1 | 0;
5681
5680
  }
5682
5681
  var$2 = asru_SystemIO$FileIOData_fileNames.data;
5683
- var$2[0] = $rt_s(124);
5684
- var$2[1] = $rt_s(125);
5685
- var$2[2] = $rt_s(126);
5682
+ var$2[0] = $rt_s(123);
5683
+ var$2[1] = $rt_s(124);
5684
+ var$2[2] = $rt_s(125);
5686
5685
  var$2 = asru_SystemIO$FileIOData_fileFlags.data;
5687
5686
  var$2[0] = 0;
5688
5687
  var$2[1] = 1;
@@ -5698,7 +5697,7 @@ var asru_SystemIO_resetFiles = () => {
5698
5697
  otcic_JsConsolePrintStream_flush(jl_System_err());
5699
5698
  };
5700
5699
  var asru_SystemIO__clinit_ = () => {
5701
- asru_SystemIO_fileErrorString = jl_String__init_0($rt_s(127));
5700
+ asru_SystemIO_fileErrorString = jl_String__init_0($rt_s(126));
5702
5701
  };
5703
5702
  function asr_RISCVprogram() {
5704
5703
  let a = this;
@@ -5749,7 +5748,7 @@ var asr_RISCVprogram_readSource = ($this, $file, $source) => {
5749
5748
  let var$3, var$4;
5750
5749
  $this.$filename = $file;
5751
5750
  var$3 = new ju_ArrayList();
5752
- var$4 = jl_String_split($source, $rt_s(43));
5751
+ var$4 = jl_String_split($source, $rt_s(42));
5753
5752
  ju_Objects_requireNonNull(var$4);
5754
5753
  $file = new ju_Arrays$ArrayAsList();
5755
5754
  $file.$array3 = var$4;
@@ -6111,7 +6110,7 @@ var jl_Enum_compareTo = ($this, var$1) => {
6111
6110
  var$1 = jl_String_valueOf(jl_Enum_getDeclaringClass(var$1));
6112
6111
  var$4 = new jl_StringBuilder();
6113
6112
  jl_AbstractStringBuilder__init_(var$4);
6114
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(128)), var$3), $rt_s(129)), var$1);
6113
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$4, $rt_s(127)), var$3), $rt_s(128)), var$1);
6115
6114
  jl_Throwable__init_0(var$2, jl_AbstractStringBuilder_toString(var$4));
6116
6115
  $rt_throw(var$2);
6117
6116
  };
@@ -6165,28 +6164,28 @@ var asr_Settings$Bool_getName = ($this) => {
6165
6164
  };
6166
6165
  var asr_Settings$Bool__clinit_ = () => {
6167
6166
  let var$1, var$2, var$3;
6168
- asr_Settings$Bool_EXTENDED_ASSEMBLER_ENABLED = asr_Settings$Bool__init_($rt_s(130), 0, $rt_s(95), 1);
6169
- asr_Settings$Bool_ASSEMBLE_ON_OPEN = asr_Settings$Bool__init_($rt_s(131), 1, $rt_s(86), 0);
6170
- asr_Settings$Bool_ASSEMBLE_OPEN = asr_Settings$Bool__init_($rt_s(132), 2, $rt_s(133), 0);
6171
- asr_Settings$Bool_ASSEMBLE_ALL = asr_Settings$Bool__init_($rt_s(134), 3, $rt_s(84), 0);
6172
- asr_Settings$Bool_LABEL_WINDOW_VISIBILITY = asr_Settings$Bool__init_($rt_s(135), 4, $rt_s(96), 0);
6173
- asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX = asr_Settings$Bool__init_($rt_s(136), 5, $rt_s(91), 1);
6174
- asr_Settings$Bool_DISPLAY_VALUES_IN_HEX = asr_Settings$Bool__init_($rt_s(137), 6, $rt_s(92), 1);
6175
- asr_Settings$Bool_EXCEPTION_HANDLER_ENABLED = asr_Settings$Bool__init_($rt_s(138), 7, $rt_s(97), 0);
6176
- asr_Settings$Bool_EDITOR_LINE_NUMBERS_DISPLAYED = asr_Settings$Bool__init_($rt_s(139), 8, $rt_s(94), 1);
6177
- asr_Settings$Bool_WARNINGS_ARE_ERRORS = asr_Settings$Bool__init_($rt_s(140), 9, $rt_s(101), 0);
6178
- asr_Settings$Bool_PROGRAM_ARGUMENTS = asr_Settings$Bool__init_($rt_s(141), 10, $rt_s(98), 0);
6179
- asr_Settings$Bool_DATA_SEGMENT_HIGHLIGHTING = asr_Settings$Bool__init_($rt_s(142), 11, $rt_s(88), 1);
6180
- asr_Settings$Bool_REGISTERS_HIGHLIGHTING = asr_Settings$Bool__init_($rt_s(143), 12, $rt_s(99), 1);
6181
- asr_Settings$Bool_START_AT_MAIN = asr_Settings$Bool__init_($rt_s(144), 13, $rt_s(100), 0);
6182
- asr_Settings$Bool_EDITOR_CURRENT_LINE_HIGHLIGHTING = asr_Settings$Bool__init_($rt_s(145), 14, $rt_s(93), 1);
6183
- asr_Settings$Bool_POPUP_INSTRUCTION_GUIDANCE = asr_Settings$Bool__init_($rt_s(146), 15, $rt_s(102), 1);
6184
- asr_Settings$Bool_POPUP_SYSCALL_INPUT = asr_Settings$Bool__init_($rt_s(147), 16, $rt_s(148), 0);
6185
- asr_Settings$Bool_GENERIC_TEXT_EDITOR = asr_Settings$Bool__init_($rt_s(149), 17, $rt_s(150), 0);
6186
- asr_Settings$Bool_AUTO_INDENT = asr_Settings$Bool__init_($rt_s(151), 18, $rt_s(152), 1);
6187
- asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED = asr_Settings$Bool__init_($rt_s(153), 19, $rt_s(154), 0);
6188
- asr_Settings$Bool_RV64_ENABLED = asr_Settings$Bool__init_($rt_s(155), 20, $rt_s(156), 0);
6189
- var$1 = asr_Settings$Bool__init_($rt_s(157), 21, $rt_s(158), 0);
6167
+ asr_Settings$Bool_EXTENDED_ASSEMBLER_ENABLED = asr_Settings$Bool__init_($rt_s(129), 0, $rt_s(94), 1);
6168
+ asr_Settings$Bool_ASSEMBLE_ON_OPEN = asr_Settings$Bool__init_($rt_s(130), 1, $rt_s(85), 0);
6169
+ asr_Settings$Bool_ASSEMBLE_OPEN = asr_Settings$Bool__init_($rt_s(131), 2, $rt_s(132), 0);
6170
+ asr_Settings$Bool_ASSEMBLE_ALL = asr_Settings$Bool__init_($rt_s(133), 3, $rt_s(83), 0);
6171
+ asr_Settings$Bool_LABEL_WINDOW_VISIBILITY = asr_Settings$Bool__init_($rt_s(134), 4, $rt_s(95), 0);
6172
+ asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX = asr_Settings$Bool__init_($rt_s(135), 5, $rt_s(90), 1);
6173
+ asr_Settings$Bool_DISPLAY_VALUES_IN_HEX = asr_Settings$Bool__init_($rt_s(136), 6, $rt_s(91), 1);
6174
+ asr_Settings$Bool_EXCEPTION_HANDLER_ENABLED = asr_Settings$Bool__init_($rt_s(137), 7, $rt_s(96), 0);
6175
+ asr_Settings$Bool_EDITOR_LINE_NUMBERS_DISPLAYED = asr_Settings$Bool__init_($rt_s(138), 8, $rt_s(93), 1);
6176
+ asr_Settings$Bool_WARNINGS_ARE_ERRORS = asr_Settings$Bool__init_($rt_s(139), 9, $rt_s(100), 0);
6177
+ asr_Settings$Bool_PROGRAM_ARGUMENTS = asr_Settings$Bool__init_($rt_s(140), 10, $rt_s(97), 0);
6178
+ asr_Settings$Bool_DATA_SEGMENT_HIGHLIGHTING = asr_Settings$Bool__init_($rt_s(141), 11, $rt_s(87), 1);
6179
+ asr_Settings$Bool_REGISTERS_HIGHLIGHTING = asr_Settings$Bool__init_($rt_s(142), 12, $rt_s(98), 1);
6180
+ asr_Settings$Bool_START_AT_MAIN = asr_Settings$Bool__init_($rt_s(143), 13, $rt_s(99), 0);
6181
+ asr_Settings$Bool_EDITOR_CURRENT_LINE_HIGHLIGHTING = asr_Settings$Bool__init_($rt_s(144), 14, $rt_s(92), 1);
6182
+ asr_Settings$Bool_POPUP_INSTRUCTION_GUIDANCE = asr_Settings$Bool__init_($rt_s(145), 15, $rt_s(101), 1);
6183
+ asr_Settings$Bool_POPUP_SYSCALL_INPUT = asr_Settings$Bool__init_($rt_s(146), 16, $rt_s(147), 0);
6184
+ asr_Settings$Bool_GENERIC_TEXT_EDITOR = asr_Settings$Bool__init_($rt_s(148), 17, $rt_s(149), 0);
6185
+ asr_Settings$Bool_AUTO_INDENT = asr_Settings$Bool__init_($rt_s(150), 18, $rt_s(151), 1);
6186
+ asr_Settings$Bool_SELF_MODIFYING_CODE_ENABLED = asr_Settings$Bool__init_($rt_s(152), 19, $rt_s(153), 0);
6187
+ asr_Settings$Bool_RV64_ENABLED = asr_Settings$Bool__init_($rt_s(154), 20, $rt_s(155), 0);
6188
+ var$1 = asr_Settings$Bool__init_($rt_s(156), 21, $rt_s(157), 0);
6190
6189
  asr_Settings$Bool_DERIVE_CURRENT_WORKING_DIRECTORY = var$1;
6191
6190
  var$2 = $rt_createArray(asr_Settings$Bool, 22);
6192
6191
  var$3 = var$2.data;
@@ -6227,9 +6226,9 @@ var asrrh_MemoryConfigurations_buildConfigurationCollection = () => {
6227
6226
  if (asrrh_MemoryConfigurations_configurations === null) {
6228
6227
  var$1 = ju_ArrayList__init_();
6229
6228
  asrrh_MemoryConfigurations_configurations = var$1;
6230
- ju_ArrayList_add(var$1, asrrh_MemoryConfiguration__init_($rt_s(159), $rt_s(159), asrrh_MemoryConfigurations_configurationItemNames, asrrh_MemoryConfigurations_defaultConfigurationItemValues));
6231
- ju_ArrayList_add(asrrh_MemoryConfigurations_configurations, asrrh_MemoryConfiguration__init_($rt_s(160), $rt_s(161), asrrh_MemoryConfigurations_configurationItemNames, asrrh_MemoryConfigurations_dataBasedCompactConfigurationItemValues));
6232
- ju_ArrayList_add(asrrh_MemoryConfigurations_configurations, asrrh_MemoryConfiguration__init_($rt_s(162), $rt_s(163), asrrh_MemoryConfigurations_configurationItemNames, asrrh_MemoryConfigurations_textBasedCompactConfigurationItemValues));
6229
+ ju_ArrayList_add(var$1, asrrh_MemoryConfiguration__init_($rt_s(158), $rt_s(158), asrrh_MemoryConfigurations_configurationItemNames, asrrh_MemoryConfigurations_defaultConfigurationItemValues));
6230
+ ju_ArrayList_add(asrrh_MemoryConfigurations_configurations, asrrh_MemoryConfiguration__init_($rt_s(159), $rt_s(160), asrrh_MemoryConfigurations_configurationItemNames, asrrh_MemoryConfigurations_dataBasedCompactConfigurationItemValues));
6231
+ ju_ArrayList_add(asrrh_MemoryConfigurations_configurations, asrrh_MemoryConfiguration__init_($rt_s(161), $rt_s(162), asrrh_MemoryConfigurations_configurationItemNames, asrrh_MemoryConfigurations_textBasedCompactConfigurationItemValues));
6233
6232
  var$2 = ju_ArrayList_get(asrrh_MemoryConfigurations_configurations, 0);
6234
6233
  asrrh_MemoryConfigurations_defaultConfiguration = var$2;
6235
6234
  asrrh_MemoryConfigurations_currentConfiguration = var$2;
@@ -6251,8 +6250,8 @@ var asrrh_MemoryConfigurations_buildConfigurationCollection = () => {
6251
6250
  if (var$2 !== null && var$2 !== asrrh_MemoryConfigurations_currentConfiguration) {
6252
6251
  asrrh_MemoryConfigurations_currentConfiguration = var$2;
6253
6252
  asrrh_Memory_clear(asr_Globals_memory);
6254
- asrrh_Register_changeResetValue(asrrh_RegisterFile_getRegister($rt_s(164)), Long_fromInt(asrrh_MemoryConfiguration_getGlobalPointer(var$2)));
6255
- asrrh_Register_changeResetValue(asrrh_RegisterFile_getRegister($rt_s(17)), Long_fromInt(asrrh_MemoryConfiguration_getStackPointer(var$2)));
6253
+ asrrh_Register_changeResetValue(asrrh_RegisterFile_getRegister($rt_s(163)), Long_fromInt(asrrh_MemoryConfiguration_getGlobalPointer(var$2)));
6254
+ asrrh_Register_changeResetValue(asrrh_RegisterFile_getRegister($rt_s(164)), Long_fromInt(asrrh_MemoryConfiguration_getStackPointer(var$2)));
6256
6255
  asrrh_Register_changeResetValue(asrrh_RegisterFile_programCounter, Long_fromInt(asrrh_MemoryConfiguration_getTextBaseAddress(var$2)));
6257
6256
  asrrh_RegisterFile_initializeProgramCounter(asrrh_MemoryConfiguration_getTextBaseAddress(var$2));
6258
6257
  asrrh_RegisterFile_resetRegisters();
@@ -6300,10 +6299,10 @@ var jl_Boolean_valueOf = ($value) => {
6300
6299
  return !$value ? jl_Boolean_FALSE : jl_Boolean_TRUE;
6301
6300
  };
6302
6301
  var jl_Boolean_valueOf0 = ($value) => {
6303
- return jl_Boolean_valueOf($value !== null && jl_String_equals(jl_String_toLowerCase($value), $rt_s(89)) ? 1 : 0);
6302
+ return jl_Boolean_valueOf($value !== null && jl_String_equals(jl_String_toLowerCase($value), $rt_s(88)) ? 1 : 0);
6304
6303
  };
6305
6304
  var jl_Boolean_toString = ($this) => {
6306
- return !$this.$value4 ? $rt_s(85) : $rt_s(89);
6305
+ return !$this.$value4 ? $rt_s(84) : $rt_s(88);
6307
6306
  };
6308
6307
  var jl_Boolean_equals = ($this, $obj) => {
6309
6308
  if ($this === $obj)
@@ -6733,7 +6732,7 @@ var asr_ProgramStatement_toString = ($this) => {
6733
6732
  jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$5, var$3), var$2), $rt_s(198)), var$4);
6734
6733
  var$2 = jl_AbstractStringBuilder_toString(var$5);
6735
6734
  } else {
6736
- $firstSpace = jl_String_indexOf0(var$2, $rt_s(38));
6735
+ $firstSpace = jl_String_indexOf0(var$2, $rt_s(37));
6737
6736
  var$2 = jl_String_substring($rt_s(197), 0, 16 - var$3.$nativeString.length | 0);
6738
6737
  var$4 = jl_String_substring($this.$basicAssemblyStatement, 0, $firstSpace);
6739
6738
  var$5 = new jl_StringBuilder();
@@ -7060,6 +7059,10 @@ var asrrh_RegisterFile_initializeProgramCounter0 = ($startAtMain) => {
7060
7059
  else
7061
7060
  asrrh_RegisterFile_initializeProgramCounter(Long_lo(asrrh_RegisterFile_programCounter.$resetValue0));
7062
7061
  };
7062
+ var asrrh_RegisterFile_getStackPointerRegister = () => {
7063
+ asrrh_RegisterFile_$callClinit();
7064
+ return asrrh_RegisterBlock_getRegister(asrrh_RegisterFile_instance, $rt_s(164));
7065
+ };
7063
7066
  var asrrh_RegisterFile_setProgramCounter = ($value) => {
7064
7067
  let $old, var$3;
7065
7068
  asrrh_RegisterFile_$callClinit();
@@ -7096,9 +7099,9 @@ var asrrh_RegisterFile__clinit_ = () => {
7096
7099
  var$3[1] = asrrh_Register__init_($rt_s(214), 1, Long_ZERO);
7097
7100
  var$4 = new asrrh_Register();
7098
7101
  asrrh_Memory_$callClinit();
7099
- asrrh_Register__init_0(var$4, $rt_s(17), 2, Long_fromInt(asrrh_Memory_stackPointer));
7102
+ asrrh_Register__init_0(var$4, $rt_s(164), 2, Long_fromInt(asrrh_Memory_stackPointer));
7100
7103
  var$3[2] = var$4;
7101
- var$3[3] = asrrh_Register__init_($rt_s(164), 3, Long_fromInt(asrrh_Memory_globalPointer));
7104
+ var$3[3] = asrrh_Register__init_($rt_s(163), 3, Long_fromInt(asrrh_Memory_globalPointer));
7102
7105
  var$3[4] = asrrh_Register__init_($rt_s(215), 4, Long_ZERO);
7103
7106
  var$3[5] = asrrh_Register__init_($rt_s(216), 5, Long_ZERO);
7104
7107
  var$3[6] = asrrh_Register__init_($rt_s(217), 6, Long_ZERO);
@@ -7242,6 +7245,260 @@ var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7242
7245
  var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7243
7246
  return $rt_ustr(var$1.$machineStatement0);
7244
7247
  };
7248
+ var ju_Arrays = $rt_classWithoutFields();
7249
+ var ju_Arrays_copyOf1 = ($array, $length) => {
7250
+ let $result, var$4, $sz, $i;
7251
+ $array = $array.data;
7252
+ $result = $rt_createCharArray($length);
7253
+ var$4 = $result.data;
7254
+ $sz = jl_Math_min($length, $array.length);
7255
+ $i = 0;
7256
+ while ($i < $sz) {
7257
+ var$4[$i] = $array[$i];
7258
+ $i = $i + 1 | 0;
7259
+ }
7260
+ return $result;
7261
+ };
7262
+ var ju_Arrays_copyOf0 = ($array, $length) => {
7263
+ let $result, var$4, $sz, $i;
7264
+ $array = $array.data;
7265
+ $result = $rt_createByteArray($length);
7266
+ var$4 = $result.data;
7267
+ $sz = jl_Math_min($length, $array.length);
7268
+ $i = 0;
7269
+ while ($i < $sz) {
7270
+ var$4[$i] = $array[$i];
7271
+ $i = $i + 1 | 0;
7272
+ }
7273
+ return $result;
7274
+ };
7275
+ var ju_Arrays_copyOf2 = ($array, $length) => {
7276
+ let $result, var$4, $sz, $i;
7277
+ $array = $array.data;
7278
+ $result = $rt_createIntArray($length);
7279
+ var$4 = $result.data;
7280
+ $sz = jl_Math_min($length, $array.length);
7281
+ $i = 0;
7282
+ while ($i < $sz) {
7283
+ var$4[$i] = $array[$i];
7284
+ $i = $i + 1 | 0;
7285
+ }
7286
+ return $result;
7287
+ };
7288
+ var ju_Arrays_copyOf = ($original, $newLength) => {
7289
+ let var$3, $result, $sz, $i;
7290
+ var$3 = $original.data;
7291
+ $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7292
+ $sz = jl_Math_min($newLength, var$3.length);
7293
+ $i = 0;
7294
+ while ($i < $sz) {
7295
+ $result.data[$i] = var$3[$i];
7296
+ $i = $i + 1 | 0;
7297
+ }
7298
+ return $result;
7299
+ };
7300
+ var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7301
+ let var$5, var$6, var$7;
7302
+ if ($fromIndex > $toIndex) {
7303
+ var$5 = new jl_IllegalArgumentException();
7304
+ jl_Throwable__init_(var$5);
7305
+ $rt_throw(var$5);
7306
+ }
7307
+ while ($fromIndex < $toIndex) {
7308
+ var$6 = $a.data;
7309
+ var$7 = $fromIndex + 1 | 0;
7310
+ var$6[$fromIndex] = $val;
7311
+ $fromIndex = var$7;
7312
+ }
7313
+ };
7314
+ var ju_Arrays_fill = ($a, $val) => {
7315
+ ju_Arrays_fill0($a, 0, $a.data.length, $val);
7316
+ };
7317
+ var ju_Arrays_sort = ($a) => {
7318
+ let var$2, $second, $chunkSize, var$5, $i, var$7, var$8, var$9, $i_0, var$11, var$12, var$13, var$14, var$15, var$16, var$17;
7319
+ var$2 = $a.data.length;
7320
+ if (!var$2)
7321
+ return;
7322
+ $second = $rt_createIntArray(var$2);
7323
+ $chunkSize = 1;
7324
+ var$5 = $a;
7325
+ while ($chunkSize < var$2) {
7326
+ $i = 0;
7327
+ while (true) {
7328
+ var$7 = var$5.data;
7329
+ var$8 = var$7.length;
7330
+ if ($i >= var$8)
7331
+ break;
7332
+ var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7333
+ $i_0 = $i + (2 * $chunkSize | 0) | 0;
7334
+ var$8 = jl_Math_min(var$8, $i_0);
7335
+ var$11 = $i;
7336
+ var$12 = var$9;
7337
+ a: {
7338
+ b: {
7339
+ while ($i != var$9) {
7340
+ if (var$12 == var$8)
7341
+ break b;
7342
+ var$13 = var$7[$i];
7343
+ var$14 = var$7[var$12];
7344
+ if (var$13 > var$14) {
7345
+ var$15 = $second.data;
7346
+ var$16 = var$11 + 1 | 0;
7347
+ var$15[var$11] = var$14;
7348
+ var$12 = var$12 + 1 | 0;
7349
+ } else {
7350
+ var$15 = $second.data;
7351
+ var$16 = var$11 + 1 | 0;
7352
+ var$15[var$11] = var$13;
7353
+ $i = $i + 1 | 0;
7354
+ }
7355
+ var$11 = var$16;
7356
+ }
7357
+ while (true) {
7358
+ if (var$12 >= var$8)
7359
+ break a;
7360
+ var$15 = $second.data;
7361
+ var$17 = var$11 + 1 | 0;
7362
+ $i = var$12 + 1 | 0;
7363
+ var$15[var$11] = var$7[var$12];
7364
+ var$11 = var$17;
7365
+ var$12 = $i;
7366
+ }
7367
+ }
7368
+ while (true) {
7369
+ if ($i >= var$9)
7370
+ break a;
7371
+ var$15 = $second.data;
7372
+ var$17 = var$11 + 1 | 0;
7373
+ var$8 = $i + 1 | 0;
7374
+ var$15[var$11] = var$7[$i];
7375
+ var$11 = var$17;
7376
+ $i = var$8;
7377
+ }
7378
+ }
7379
+ $i = $i_0;
7380
+ }
7381
+ $chunkSize = $chunkSize * 2 | 0;
7382
+ var$15 = var$5;
7383
+ var$5 = $second;
7384
+ $second = var$15;
7385
+ }
7386
+ c: {
7387
+ if (var$5 !== $a) {
7388
+ $i_0 = 0;
7389
+ while (true) {
7390
+ $a = var$5.data;
7391
+ if ($i_0 >= $a.length)
7392
+ break c;
7393
+ $second.data[$i_0] = $a[$i_0];
7394
+ $i_0 = $i_0 + 1 | 0;
7395
+ }
7396
+ }
7397
+ }
7398
+ };
7399
+ var ju_Arrays_binarySearch = ($a, $key) => {
7400
+ let var$3, var$4, var$5, var$6, var$7;
7401
+ $a = $a.data;
7402
+ var$3 = 0;
7403
+ var$4 = $a.length;
7404
+ if (var$3 > var$4) {
7405
+ var$5 = new jl_IllegalArgumentException();
7406
+ jl_Throwable__init_(var$5);
7407
+ $rt_throw(var$5);
7408
+ }
7409
+ var$6 = var$4 - 1 | 0;
7410
+ a: {
7411
+ while (true) {
7412
+ if (var$3 > var$6) {
7413
+ var$4 = (-var$3 | 0) - 1 | 0;
7414
+ break a;
7415
+ }
7416
+ var$4 = (var$3 + var$6 | 0) / 2 | 0;
7417
+ var$7 = $a[var$4];
7418
+ if (var$7 == $key)
7419
+ break;
7420
+ if ($key >= var$7)
7421
+ var$3 = var$4 + 1 | 0;
7422
+ else
7423
+ var$6 = var$4 - 1 | 0;
7424
+ }
7425
+ }
7426
+ return var$4;
7427
+ };
7428
+ var ju_Arrays_stream = ($array) => {
7429
+ let var$2, var$3, var$4;
7430
+ var$2 = $array.data;
7431
+ var$3 = new jusi_ArrayStreamImpl();
7432
+ var$4 = var$2.length;
7433
+ var$3.$array6 = $array;
7434
+ var$3.$index1 = 0;
7435
+ var$3.$end1 = var$4;
7436
+ var$3.$size2 = var$4 - 0 | 0;
7437
+ return var$3;
7438
+ };
7439
+ var juf_ToIntFunction = $rt_classWithoutFields(0);
7440
+ var asr_JsRiscV$getRegistersValues$lambda$_20_0 = $rt_classWithoutFields();
7441
+ var asr_JsRiscV$getUndoStack$lambda$_21_0 = $rt_classWithoutFields();
7442
+ var asr_JsRiscV$getUndoStack$lambda$_21_0_apply = (var$0, var$1) => {
7443
+ let var$2, var$3;
7444
+ var$1 = var$1;
7445
+ var$2 = new asr_JsBackStep();
7446
+ var$3 = var$1.$action;
7447
+ var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7448
+ var$2.$pc2 = var$1.$pc1;
7449
+ var$2.$param10 = var$1.$param1;
7450
+ var$2.$param20 = Long_lo(var$1.$param2);
7451
+ return var$2;
7452
+ };
7453
+ var asr_JsRiscV$getUndoStack$lambda$_21_1 = $rt_classWithoutFields();
7454
+ var asr_JsRiscV$getUndoStack$lambda$_21_1_apply = (var$0, var$1) => {
7455
+ asr_JsRiscV_$callClinit();
7456
+ return $rt_createArray(asr_JsBackStep, var$1);
7457
+ };
7458
+ function asr_JsBackStep() {
7459
+ let a = this;
7460
+ jl_Object.call(a);
7461
+ a.$action0 = 0;
7462
+ a.$pc2 = 0;
7463
+ a.$param10 = 0;
7464
+ a.$param20 = 0;
7465
+ }
7466
+ var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7467
+ return var$1.$pc2;
7468
+ };
7469
+ var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7470
+ return var$1.$param20;
7471
+ };
7472
+ var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7473
+ return var$1.$action0;
7474
+ };
7475
+ var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7476
+ return var$1.$param10;
7477
+ };
7478
+ function asr_JsStackFrame() {
7479
+ let a = this;
7480
+ jl_Object.call(a);
7481
+ a.$pc3 = 0;
7482
+ a.$toAddress0 = 0;
7483
+ a.$sp = 0;
7484
+ a.$fp = 0;
7485
+ a.$registers = null;
7486
+ }
7487
+ var asr_JsStackFrame_getPc$exported$0 = (var$1) => {
7488
+ return var$1.$pc3;
7489
+ };
7490
+ var asr_JsStackFrame_getToAddress$exported$1 = (var$1) => {
7491
+ return var$1.$toAddress0;
7492
+ };
7493
+ var asr_JsStackFrame_getRegisters$exported$2 = (var$1) => {
7494
+ return otji_JS_wrap0(var$1.$registers);
7495
+ };
7496
+ var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
7497
+ return var$1.$sp;
7498
+ };
7499
+ var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
7500
+ return var$1.$fp;
7501
+ };
7245
7502
  function asr_JsCompilationResult() {
7246
7503
  let a = this;
7247
7504
  jl_Object.call(a);
@@ -7304,260 +7561,6 @@ var asr_AssemblyException__init_ = (var_0) => {
7304
7561
  asr_AssemblyException__init_0(var_1, var_0);
7305
7562
  return var_1;
7306
7563
  };
7307
- function asr_JsStackFrame() {
7308
- let a = this;
7309
- jl_Object.call(a);
7310
- a.$pc3 = 0;
7311
- a.$toAddress = 0;
7312
- a.$sp = 0;
7313
- a.$fp = 0;
7314
- a.$registers = null;
7315
- }
7316
- var asr_JsStackFrame_getPc$exported$0 = (var$1) => {
7317
- return var$1.$pc3;
7318
- };
7319
- var asr_JsStackFrame_getToAddress$exported$1 = (var$1) => {
7320
- return var$1.$toAddress;
7321
- };
7322
- var asr_JsStackFrame_getRegisters$exported$2 = (var$1) => {
7323
- return otji_JS_wrap0(var$1.$registers);
7324
- };
7325
- var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
7326
- return var$1.$sp;
7327
- };
7328
- var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
7329
- return var$1.$fp;
7330
- };
7331
- var ju_Arrays = $rt_classWithoutFields();
7332
- var ju_Arrays_copyOf1 = ($array, $length) => {
7333
- let $result, var$4, $sz, $i;
7334
- $array = $array.data;
7335
- $result = $rt_createCharArray($length);
7336
- var$4 = $result.data;
7337
- $sz = jl_Math_min($length, $array.length);
7338
- $i = 0;
7339
- while ($i < $sz) {
7340
- var$4[$i] = $array[$i];
7341
- $i = $i + 1 | 0;
7342
- }
7343
- return $result;
7344
- };
7345
- var ju_Arrays_copyOf0 = ($array, $length) => {
7346
- let $result, var$4, $sz, $i;
7347
- $array = $array.data;
7348
- $result = $rt_createByteArray($length);
7349
- var$4 = $result.data;
7350
- $sz = jl_Math_min($length, $array.length);
7351
- $i = 0;
7352
- while ($i < $sz) {
7353
- var$4[$i] = $array[$i];
7354
- $i = $i + 1 | 0;
7355
- }
7356
- return $result;
7357
- };
7358
- var ju_Arrays_copyOf2 = ($array, $length) => {
7359
- let $result, var$4, $sz, $i;
7360
- $array = $array.data;
7361
- $result = $rt_createIntArray($length);
7362
- var$4 = $result.data;
7363
- $sz = jl_Math_min($length, $array.length);
7364
- $i = 0;
7365
- while ($i < $sz) {
7366
- var$4[$i] = $array[$i];
7367
- $i = $i + 1 | 0;
7368
- }
7369
- return $result;
7370
- };
7371
- var ju_Arrays_copyOf = ($original, $newLength) => {
7372
- let var$3, $result, $sz, $i;
7373
- var$3 = $original.data;
7374
- $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7375
- $sz = jl_Math_min($newLength, var$3.length);
7376
- $i = 0;
7377
- while ($i < $sz) {
7378
- $result.data[$i] = var$3[$i];
7379
- $i = $i + 1 | 0;
7380
- }
7381
- return $result;
7382
- };
7383
- var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7384
- let var$5, var$6, var$7;
7385
- if ($fromIndex > $toIndex) {
7386
- var$5 = new jl_IllegalArgumentException();
7387
- jl_Throwable__init_(var$5);
7388
- $rt_throw(var$5);
7389
- }
7390
- while ($fromIndex < $toIndex) {
7391
- var$6 = $a.data;
7392
- var$7 = $fromIndex + 1 | 0;
7393
- var$6[$fromIndex] = $val;
7394
- $fromIndex = var$7;
7395
- }
7396
- };
7397
- var ju_Arrays_fill = ($a, $val) => {
7398
- ju_Arrays_fill0($a, 0, $a.data.length, $val);
7399
- };
7400
- var ju_Arrays_sort = ($a) => {
7401
- let var$2, $second, $chunkSize, var$5, $i, var$7, var$8, var$9, $i_0, var$11, var$12, var$13, var$14, var$15, var$16, var$17;
7402
- var$2 = $a.data.length;
7403
- if (!var$2)
7404
- return;
7405
- $second = $rt_createIntArray(var$2);
7406
- $chunkSize = 1;
7407
- var$5 = $a;
7408
- while ($chunkSize < var$2) {
7409
- $i = 0;
7410
- while (true) {
7411
- var$7 = var$5.data;
7412
- var$8 = var$7.length;
7413
- if ($i >= var$8)
7414
- break;
7415
- var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7416
- $i_0 = $i + (2 * $chunkSize | 0) | 0;
7417
- var$8 = jl_Math_min(var$8, $i_0);
7418
- var$11 = $i;
7419
- var$12 = var$9;
7420
- a: {
7421
- b: {
7422
- while ($i != var$9) {
7423
- if (var$12 == var$8)
7424
- break b;
7425
- var$13 = var$7[$i];
7426
- var$14 = var$7[var$12];
7427
- if (var$13 > var$14) {
7428
- var$15 = $second.data;
7429
- var$16 = var$11 + 1 | 0;
7430
- var$15[var$11] = var$14;
7431
- var$12 = var$12 + 1 | 0;
7432
- } else {
7433
- var$15 = $second.data;
7434
- var$16 = var$11 + 1 | 0;
7435
- var$15[var$11] = var$13;
7436
- $i = $i + 1 | 0;
7437
- }
7438
- var$11 = var$16;
7439
- }
7440
- while (true) {
7441
- if (var$12 >= var$8)
7442
- break a;
7443
- var$15 = $second.data;
7444
- var$17 = var$11 + 1 | 0;
7445
- $i = var$12 + 1 | 0;
7446
- var$15[var$11] = var$7[var$12];
7447
- var$11 = var$17;
7448
- var$12 = $i;
7449
- }
7450
- }
7451
- while (true) {
7452
- if ($i >= var$9)
7453
- break a;
7454
- var$15 = $second.data;
7455
- var$17 = var$11 + 1 | 0;
7456
- var$8 = $i + 1 | 0;
7457
- var$15[var$11] = var$7[$i];
7458
- var$11 = var$17;
7459
- $i = var$8;
7460
- }
7461
- }
7462
- $i = $i_0;
7463
- }
7464
- $chunkSize = $chunkSize * 2 | 0;
7465
- var$15 = var$5;
7466
- var$5 = $second;
7467
- $second = var$15;
7468
- }
7469
- c: {
7470
- if (var$5 !== $a) {
7471
- $i_0 = 0;
7472
- while (true) {
7473
- $a = var$5.data;
7474
- if ($i_0 >= $a.length)
7475
- break c;
7476
- $second.data[$i_0] = $a[$i_0];
7477
- $i_0 = $i_0 + 1 | 0;
7478
- }
7479
- }
7480
- }
7481
- };
7482
- var ju_Arrays_binarySearch = ($a, $key) => {
7483
- let var$3, var$4, var$5, var$6, var$7;
7484
- $a = $a.data;
7485
- var$3 = 0;
7486
- var$4 = $a.length;
7487
- if (var$3 > var$4) {
7488
- var$5 = new jl_IllegalArgumentException();
7489
- jl_Throwable__init_(var$5);
7490
- $rt_throw(var$5);
7491
- }
7492
- var$6 = var$4 - 1 | 0;
7493
- a: {
7494
- while (true) {
7495
- if (var$3 > var$6) {
7496
- var$4 = (-var$3 | 0) - 1 | 0;
7497
- break a;
7498
- }
7499
- var$4 = (var$3 + var$6 | 0) / 2 | 0;
7500
- var$7 = $a[var$4];
7501
- if (var$7 == $key)
7502
- break;
7503
- if ($key >= var$7)
7504
- var$3 = var$4 + 1 | 0;
7505
- else
7506
- var$6 = var$4 - 1 | 0;
7507
- }
7508
- }
7509
- return var$4;
7510
- };
7511
- var ju_Arrays_stream = ($array) => {
7512
- let var$2, var$3, var$4;
7513
- var$2 = $array.data;
7514
- var$3 = new jusi_ArrayStreamImpl();
7515
- var$4 = var$2.length;
7516
- var$3.$array6 = $array;
7517
- var$3.$index1 = 0;
7518
- var$3.$end1 = var$4;
7519
- var$3.$size2 = var$4 - 0 | 0;
7520
- return var$3;
7521
- };
7522
- var asr_JsRiscV$getUndoStack$lambda$_21_0 = $rt_classWithoutFields();
7523
- var asr_JsRiscV$getUndoStack$lambda$_21_0_apply = (var$0, var$1) => {
7524
- let var$2, var$3;
7525
- var$1 = var$1;
7526
- var$2 = new asr_JsBackStep();
7527
- var$3 = var$1.$action;
7528
- var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7529
- var$2.$pc2 = var$1.$pc1;
7530
- var$2.$param10 = var$1.$param1;
7531
- var$2.$param20 = Long_lo(var$1.$param2);
7532
- return var$2;
7533
- };
7534
- var asr_JsRiscV$getUndoStack$lambda$_21_1 = $rt_classWithoutFields();
7535
- var asr_JsRiscV$getUndoStack$lambda$_21_1_apply = (var$0, var$1) => {
7536
- asr_JsRiscV_$callClinit();
7537
- return $rt_createArray(asr_JsBackStep, var$1);
7538
- };
7539
- function asr_JsBackStep() {
7540
- let a = this;
7541
- jl_Object.call(a);
7542
- a.$action0 = 0;
7543
- a.$pc2 = 0;
7544
- a.$param10 = 0;
7545
- a.$param20 = 0;
7546
- }
7547
- var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7548
- return var$1.$pc2;
7549
- };
7550
- var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7551
- return var$1.$param20;
7552
- };
7553
- var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7554
- return var$1.$action0;
7555
- };
7556
- var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7557
- return var$1.$param10;
7558
- };
7559
- var juf_ToIntFunction = $rt_classWithoutFields(0);
7560
- var asr_JsRiscV$getRegistersValues$lambda$_20_0 = $rt_classWithoutFields();
7561
7564
  var ju_Map$Entry = $rt_classWithoutFields(0);
7562
7565
  function ju_MapEntry() {
7563
7566
  let a = this;
@@ -7763,7 +7766,7 @@ var asrr_BasicInstruction__init_ = ($this, $example, $description, $instrFormat,
7763
7766
  $this.$mnemonic = asrr_Instruction_extractOperator($this, $example);
7764
7767
  $this.$description = $description;
7765
7768
  $this.$instructionFormat = $instrFormat;
7766
- $description = jl_String_replaceAll($operMask, $rt_s(38), $rt_s(3));
7769
+ $description = jl_String_replaceAll($operMask, $rt_s(37), $rt_s(3));
7767
7770
  $this.$operationMask = $description;
7768
7771
  if ($description.$nativeString.length != 32) {
7769
7772
  $description = jl_System_out();
@@ -8213,29 +8216,104 @@ var asrs_BackStepper_addDoNothing = ($this, $pc) => {
8213
8216
  if (!(!asrs_BackStepper$BackstepStack_empty($this.$backSteps) && asrs_BackStepper$BackstepStack_peek($this.$backSteps).$pc1 == $pc))
8214
8217
  asrs_BackStepper$BackstepStack_push1($this.$backSteps, asrs_BackStepper$Action_DO_NOTHING, $pc);
8215
8218
  };
8216
- function asr_JsCompilationResult$_init_$lambda$_0_0() {
8217
- jl_Object.call(this);
8218
- this.$_06 = null;
8219
+ var jl_AutoCloseable = $rt_classWithoutFields(0);
8220
+ var jus_BaseStream = $rt_classWithoutFields(0);
8221
+ var jus_Stream = $rt_classWithoutFields(0);
8222
+ var jusi_SimpleStreamImpl = $rt_classWithoutFields();
8223
+ var jusi_SimpleStreamImpl_filter = ($this, $predicate) => {
8224
+ let var$2;
8225
+ var$2 = new jusi_FilteringStreamImpl();
8226
+ jusi_WrappingStreamImpl__init_(var$2, $this);
8227
+ var$2.$filter0 = $predicate;
8228
+ return var$2;
8229
+ };
8230
+ var jusi_SimpleStreamImpl_map = ($this, $mapper) => {
8231
+ let var$2;
8232
+ var$2 = new jusi_MappingStreamImpl();
8233
+ jusi_WrappingStreamImpl__init_(var$2, $this);
8234
+ var$2.$mapper = $mapper;
8235
+ return var$2;
8236
+ };
8237
+ var jusi_SimpleStreamImpl_toArray = ($this, $generator) => {
8238
+ let var$2, $estimatedSize, $array, $consumer, var$6, $list, $i;
8239
+ var$2 = $this;
8240
+ $estimatedSize = var$2.$sourceStream.$estimateSize();
8241
+ if ($estimatedSize >= 0) {
8242
+ $array = $generator.$apply($estimatedSize);
8243
+ $consumer = new jusi_SimpleStreamImpl$ArrayFillingConsumer();
8244
+ $consumer.$array4 = $array;
8245
+ while (jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8246
+ }
8247
+ var$6 = $array.data;
8248
+ $estimatedSize = $consumer.$index3;
8249
+ if ($estimatedSize < var$6.length)
8250
+ $array = ju_Arrays_copyOf($array, $estimatedSize);
8251
+ return $array;
8252
+ }
8253
+ $list = ju_ArrayList__init_();
8254
+ while (true) {
8255
+ ju_Objects_requireNonNull($list);
8256
+ $consumer = new jusi_SimpleStreamImpl$toArray$lambda$_21_0();
8257
+ $consumer.$_02 = $list;
8258
+ if (!jusi_WrappingStreamImpl_next(var$2, $consumer))
8259
+ break;
8260
+ }
8261
+ $list = $list;
8262
+ $array = $generator.$apply($list.$size0);
8263
+ $i = 0;
8264
+ while (true) {
8265
+ var$6 = $array.data;
8266
+ if ($i >= var$6.length)
8267
+ break;
8268
+ var$6[$i] = ju_ArrayList_get($list, $i);
8269
+ $i = $i + 1 | 0;
8270
+ }
8271
+ return $array;
8272
+ };
8273
+ var jusi_SimpleStreamImpl_findFirst = ($this) => {
8274
+ let $consumer, var$2, var$3;
8275
+ $consumer = new jusi_FindFirstConsumer();
8276
+ var$2 = $this;
8277
+ while ($consumer.$result === null && jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8278
+ }
8279
+ $consumer = $consumer.$result;
8280
+ if ($consumer !== null)
8281
+ var$3 = ju_Optional__init_(ju_Objects_requireNonNull($consumer));
8282
+ else {
8283
+ if (ju_Optional_emptyInstance === null)
8284
+ ju_Optional_emptyInstance = ju_Optional__init_(null);
8285
+ var$3 = ju_Optional_emptyInstance;
8286
+ }
8287
+ return var$3;
8288
+ };
8289
+ function jusi_ArrayStreamImpl() {
8290
+ let a = this;
8291
+ jusi_SimpleStreamImpl.call(a);
8292
+ a.$array6 = null;
8293
+ a.$index1 = 0;
8294
+ a.$end1 = 0;
8295
+ a.$size2 = 0;
8219
8296
  }
8220
- var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8297
+ var jusi_ArrayStreamImpl_next = ($this, $consumer) => {
8221
8298
  let var$2, var$3;
8222
- var$1 = var$1;
8223
- var$2 = var$0.$_06;
8224
- var$3 = new asr_JsCompilationResult$JsCompilationError();
8225
- var$3.$this$016 = var$2;
8226
- var$3.$isWarning0 = var$1.$isWarning;
8227
- var$3.$message2 = var$1.$message0;
8228
- var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8229
- var$3.$filename2 = var$1.$filename0;
8230
- var$3.$lineNumber0 = var$1.$line;
8231
- var$3.$columnNumber = var$1.$position2;
8232
- return var$3;
8299
+ a: {
8300
+ while (true) {
8301
+ var$2 = $this.$index1;
8302
+ if (var$2 >= $this.$end1)
8303
+ break a;
8304
+ var$3 = $this.$array6.data;
8305
+ $this.$index1 = var$2 + 1 | 0;
8306
+ if ($consumer.$test(var$3[var$2]))
8307
+ continue;
8308
+ else
8309
+ break;
8310
+ }
8311
+ }
8312
+ return $this.$index1 >= $this.$end1 ? 0 : 1;
8313
+ };
8314
+ var jusi_ArrayStreamImpl_estimateSize = ($this) => {
8315
+ return $this.$size2;
8233
8316
  };
8234
- var juf_Supplier = $rt_classWithoutFields(0);
8235
- var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8236
- var juf_BiConsumer = $rt_classWithoutFields(0);
8237
- var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8238
- var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8239
8317
  function asrs_BackStepper$BackstepStack() {
8240
8318
  let a = this;
8241
8319
  jl_Object.call(a);
@@ -8338,104 +8416,29 @@ var asrs_BackStepper$BackstepStack_peek = ($this) => {
8338
8416
  jl_Object_monitorExitSync($this);
8339
8417
  }
8340
8418
  };
8341
- var jl_AutoCloseable = $rt_classWithoutFields(0);
8342
- var jus_BaseStream = $rt_classWithoutFields(0);
8343
- var jus_Stream = $rt_classWithoutFields(0);
8344
- var jusi_SimpleStreamImpl = $rt_classWithoutFields();
8345
- var jusi_SimpleStreamImpl_filter = ($this, $predicate) => {
8346
- let var$2;
8347
- var$2 = new jusi_FilteringStreamImpl();
8348
- jusi_WrappingStreamImpl__init_(var$2, $this);
8349
- var$2.$filter0 = $predicate;
8350
- return var$2;
8351
- };
8352
- var jusi_SimpleStreamImpl_map = ($this, $mapper) => {
8353
- let var$2;
8354
- var$2 = new jusi_MappingStreamImpl();
8355
- jusi_WrappingStreamImpl__init_(var$2, $this);
8356
- var$2.$mapper = $mapper;
8357
- return var$2;
8358
- };
8359
- var jusi_SimpleStreamImpl_toArray = ($this, $generator) => {
8360
- let var$2, $estimatedSize, $array, $consumer, var$6, $list, $i;
8361
- var$2 = $this;
8362
- $estimatedSize = var$2.$sourceStream.$estimateSize();
8363
- if ($estimatedSize >= 0) {
8364
- $array = $generator.$apply($estimatedSize);
8365
- $consumer = new jusi_SimpleStreamImpl$ArrayFillingConsumer();
8366
- $consumer.$array4 = $array;
8367
- while (jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8368
- }
8369
- var$6 = $array.data;
8370
- $estimatedSize = $consumer.$index3;
8371
- if ($estimatedSize < var$6.length)
8372
- $array = ju_Arrays_copyOf($array, $estimatedSize);
8373
- return $array;
8374
- }
8375
- $list = ju_ArrayList__init_();
8376
- while (true) {
8377
- ju_Objects_requireNonNull($list);
8378
- $consumer = new jusi_SimpleStreamImpl$toArray$lambda$_21_0();
8379
- $consumer.$_02 = $list;
8380
- if (!jusi_WrappingStreamImpl_next(var$2, $consumer))
8381
- break;
8382
- }
8383
- $list = $list;
8384
- $array = $generator.$apply($list.$size0);
8385
- $i = 0;
8386
- while (true) {
8387
- var$6 = $array.data;
8388
- if ($i >= var$6.length)
8389
- break;
8390
- var$6[$i] = ju_ArrayList_get($list, $i);
8391
- $i = $i + 1 | 0;
8392
- }
8393
- return $array;
8394
- };
8395
- var jusi_SimpleStreamImpl_findFirst = ($this) => {
8396
- let $consumer, var$2, var$3;
8397
- $consumer = new jusi_FindFirstConsumer();
8398
- var$2 = $this;
8399
- while ($consumer.$result === null && jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8400
- }
8401
- $consumer = $consumer.$result;
8402
- if ($consumer !== null)
8403
- var$3 = ju_Optional__init_(ju_Objects_requireNonNull($consumer));
8404
- else {
8405
- if (ju_Optional_emptyInstance === null)
8406
- ju_Optional_emptyInstance = ju_Optional__init_(null);
8407
- var$3 = ju_Optional_emptyInstance;
8408
- }
8409
- return var$3;
8410
- };
8411
- function jusi_ArrayStreamImpl() {
8412
- let a = this;
8413
- jusi_SimpleStreamImpl.call(a);
8414
- a.$array6 = null;
8415
- a.$index1 = 0;
8416
- a.$end1 = 0;
8417
- a.$size2 = 0;
8419
+ function asr_JsCompilationResult$_init_$lambda$_0_0() {
8420
+ jl_Object.call(this);
8421
+ this.$_06 = null;
8418
8422
  }
8419
- var jusi_ArrayStreamImpl_next = ($this, $consumer) => {
8423
+ var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8420
8424
  let var$2, var$3;
8421
- a: {
8422
- while (true) {
8423
- var$2 = $this.$index1;
8424
- if (var$2 >= $this.$end1)
8425
- break a;
8426
- var$3 = $this.$array6.data;
8427
- $this.$index1 = var$2 + 1 | 0;
8428
- if ($consumer.$test(var$3[var$2]))
8429
- continue;
8430
- else
8431
- break;
8432
- }
8433
- }
8434
- return $this.$index1 >= $this.$end1 ? 0 : 1;
8435
- };
8436
- var jusi_ArrayStreamImpl_estimateSize = ($this) => {
8437
- return $this.$size2;
8425
+ var$1 = var$1;
8426
+ var$2 = var$0.$_06;
8427
+ var$3 = new asr_JsCompilationResult$JsCompilationError();
8428
+ var$3.$this$016 = var$2;
8429
+ var$3.$isWarning0 = var$1.$isWarning;
8430
+ var$3.$message2 = var$1.$message0;
8431
+ var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8432
+ var$3.$filename2 = var$1.$filename0;
8433
+ var$3.$lineNumber0 = var$1.$line;
8434
+ var$3.$columnNumber = var$1.$position2;
8435
+ return var$3;
8438
8436
  };
8437
+ var juf_Supplier = $rt_classWithoutFields(0);
8438
+ var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8439
+ var juf_BiConsumer = $rt_classWithoutFields(0);
8440
+ var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8441
+ var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8439
8442
  var jl_Math = $rt_classWithoutFields();
8440
8443
  var jl_Math_pow = ($x, $y) => {
8441
8444
  return jl_Math_powImpl($x, $y);
@@ -10099,10 +10102,29 @@ var asrri_JAL__init_ = () => {
10099
10102
  return var_0;
10100
10103
  };
10101
10104
  var asrri_JAL_simulate = ($this, $statement) => {
10102
- let $operands;
10105
+ let $operands, $address, var$4, var$5, var$6, var$7, var$8, var$9, var$10, var$11;
10103
10106
  $operands = $statement.$operands.data;
10104
10107
  asrr_InstructionSet_processReturnAddress($operands[0]);
10105
- asrr_InstructionSet_processJump((asrrh_RegisterFile_getProgramCounter() - 4 | 0) + $operands[1] | 0);
10108
+ $address = (asrrh_RegisterFile_getProgramCounter() - 4 | 0) + $operands[1] | 0;
10109
+ var$4 = new asrrh_StackFrame();
10110
+ var$5 = asrrh_RegisterFile_getProgramCounter();
10111
+ var$6 = Long_lo(asrrh_RegisterFile_getStackPointerRegister().$getValue());
10112
+ var$7 = Long_lo(asrrh_RegisterBlock_getRegister(asrrh_RegisterFile_instance, $rt_s(212)).$getValue());
10113
+ var$8 = asrrh_RegisterFile_instance.$regFile.data.length;
10114
+ var$9 = $rt_createIntArray(var$8);
10115
+ var$10 = var$9.data;
10116
+ var$11 = 0;
10117
+ while (var$11 < var$8) {
10118
+ var$10[var$11] = Long_lo(asrrh_RegisterFile_instance.$regFile.data[var$11].$getValue());
10119
+ var$11 = var$11 + 1 | 0;
10120
+ }
10121
+ var$4.$pc4 = var$5;
10122
+ var$4.$sp0 = var$6;
10123
+ var$4.$fp0 = var$7;
10124
+ var$4.$toAddress = $address;
10125
+ var$4.$registers0 = var$9;
10126
+ ju_ArrayList_add(asrrh_Stack_callStack, var$4);
10127
+ asrr_InstructionSet_processJump($address);
10106
10128
  };
10107
10129
  var asrri_JALR = $rt_classWithoutFields(asrr_BasicInstruction);
10108
10130
  var asrri_JALR__init_ = ($this) => {
@@ -10118,6 +10140,10 @@ var asrri_JALR_simulate = ($this, $statement) => {
10118
10140
  $operands = $statement.$operands.data;
10119
10141
  $target = asrrh_RegisterFile_getValue0($operands[1]);
10120
10142
  asrr_InstructionSet_processReturnAddress($operands[0]);
10143
+ if (!$operands[0] && $operands[1] == 1 && !ju_AbstractCollection_isEmpty(asrrh_Stack_callStack)) {
10144
+ $statement = asrrh_Stack_callStack;
10145
+ ju_ArrayList_remove($statement, $statement.$size0 - 1 | 0);
10146
+ }
10121
10147
  asrr_InstructionSet_processJump(($target + ($operands[2] << 20 >> 20) | 0) & -2);
10122
10148
  };
10123
10149
  var asrri_Load = $rt_classWithoutFields(asrr_BasicInstruction);
@@ -11077,10 +11103,10 @@ var asrr_PseudoOps_PSEUDO_OPS_64 = null;
11077
11103
  var asrr_PseudoOps__clinit_ = () => {
11078
11104
  asrr_PseudoOps_PSEUDO_OPS = $rt_wrapArray(jl_String, [
11079
11105
  $rt_s(757),
11080
- $rt_s(59),
11106
+ $rt_s(58),
11081
11107
  $rt_s(758),
11082
11108
  $rt_s(759),
11083
- $rt_s(59),
11109
+ $rt_s(58),
11084
11110
  $rt_s(760),
11085
11111
  $rt_s(761),
11086
11112
  $rt_s(762),
@@ -11088,10 +11114,10 @@ var asrr_PseudoOps__clinit_ = () => {
11088
11114
  $rt_s(764),
11089
11115
  $rt_s(765),
11090
11116
  $rt_s(766),
11091
- $rt_s(59),
11117
+ $rt_s(58),
11092
11118
  $rt_s(767),
11093
11119
  $rt_s(768),
11094
- $rt_s(59),
11120
+ $rt_s(58),
11095
11121
  $rt_s(769),
11096
11122
  $rt_s(770),
11097
11123
  $rt_s(771),
@@ -11099,7 +11125,7 @@ var asrr_PseudoOps__clinit_ = () => {
11099
11125
  $rt_s(773),
11100
11126
  $rt_s(774),
11101
11127
  $rt_s(775),
11102
- $rt_s(59),
11128
+ $rt_s(58),
11103
11129
  $rt_s(776),
11104
11130
  $rt_s(3),
11105
11131
  $rt_s(3),
@@ -11123,15 +11149,15 @@ var asrr_PseudoOps__clinit_ = () => {
11123
11149
  $rt_s(793),
11124
11150
  $rt_s(794),
11125
11151
  $rt_s(795),
11126
- $rt_s(59),
11152
+ $rt_s(58),
11127
11153
  $rt_s(796),
11128
- $rt_s(59),
11154
+ $rt_s(58),
11129
11155
  $rt_s(797),
11130
11156
  $rt_s(798),
11131
11157
  $rt_s(799),
11132
- $rt_s(59),
11158
+ $rt_s(58),
11133
11159
  $rt_s(800),
11134
- $rt_s(59),
11160
+ $rt_s(58),
11135
11161
  $rt_s(801),
11136
11162
  $rt_s(802),
11137
11163
  $rt_s(803),
@@ -11193,10 +11219,10 @@ var asrr_PseudoOps__clinit_ = () => {
11193
11219
  $rt_s(852),
11194
11220
  $rt_s(3),
11195
11221
  $rt_s(853),
11196
- $rt_s(59),
11222
+ $rt_s(58),
11197
11223
  $rt_s(854),
11198
11224
  $rt_s(855),
11199
- $rt_s(59),
11225
+ $rt_s(58),
11200
11226
  $rt_s(3),
11201
11227
  $rt_s(856),
11202
11228
  $rt_s(857),
@@ -11744,6 +11770,15 @@ var asrrh_RegisterBlock_resetRegisters = ($this) => {
11744
11770
  var$3 = var$3 + 1 | 0;
11745
11771
  }
11746
11772
  };
11773
+ function asrrh_StackFrame() {
11774
+ let a = this;
11775
+ jl_Object.call(a);
11776
+ a.$pc4 = 0;
11777
+ a.$toAddress = 0;
11778
+ a.$sp0 = 0;
11779
+ a.$fp0 = 0;
11780
+ a.$registers0 = null;
11781
+ }
11747
11782
  function asr_ErrorList() {
11748
11783
  let a = this;
11749
11784
  jl_Object.call(a);
@@ -11851,7 +11886,6 @@ var asr_ErrorList_generateReport = ($this, $isWarning) => {
11851
11886
  }
11852
11887
  return jl_AbstractStringBuilder_toString($report);
11853
11888
  };
11854
- var asrrh_StackFrame = $rt_classWithoutFields();
11855
11889
  function asrrh_MemoryConfiguration() {
11856
11890
  let a = this;
11857
11891
  jl_Object.call(a);
@@ -12347,7 +12381,7 @@ var asrrs_SyscallOpen_simulate = ($this, $statement) => {
12347
12381
  if ($retValue < 32) {
12348
12382
  var$6[$retValue] = jl_String__init_0(var$2);
12349
12383
  asru_SystemIO$FileIOData_fileFlags.data[$retValue] = var$3;
12350
- asru_SystemIO_fileErrorString = jl_String__init_0($rt_s(127));
12384
+ asru_SystemIO_fileErrorString = jl_String__init_0($rt_s(126));
12351
12385
  } else {
12352
12386
  $statement = new jl_StringBuilder();
12353
12387
  jl_AbstractStringBuilder__init_($statement);
@@ -12928,17 +12962,17 @@ var asrrs_SyscallReadString_simulate = ($this, $statement) => {
12928
12962
  }
12929
12963
  a: {
12930
12964
  var$5 = asr_JsRISCVIO_callStringHandler(asru_SystemIO_io, $rt_s(1059), $rt_createArray(jl_Object, 0));
12931
- if (var$5 === $rt_s(43))
12965
+ if (var$5 === $rt_s(42))
12932
12966
  $stringLength = 1;
12933
- else if ($rt_s(43).$nativeString.length > var$5.$nativeString.length)
12967
+ else if ($rt_s(42).$nativeString.length > var$5.$nativeString.length)
12934
12968
  $stringLength = 0;
12935
12969
  else {
12936
12970
  $index = 0;
12937
- var$8 = var$5.$nativeString.length - $rt_s(43).$nativeString.length | 0;
12971
+ var$8 = var$5.$nativeString.length - $rt_s(42).$nativeString.length | 0;
12938
12972
  while (var$8 < var$5.$nativeString.length) {
12939
12973
  var$9 = jl_String_charAt(var$5, var$8);
12940
12974
  $stringLength = $index + 1 | 0;
12941
- if (var$9 != jl_String_charAt($rt_s(43), $index)) {
12975
+ if (var$9 != jl_String_charAt($rt_s(42), $index)) {
12942
12976
  $stringLength = 0;
12943
12977
  break a;
12944
12978
  }
@@ -13042,7 +13076,7 @@ var asrrs_SyscallGetCWD_simulate = ($this, $statement) => {
13042
13076
  ju_Hashtable_put(var$3, $rt_s(1067), $rt_s(1068));
13043
13077
  ju_Hashtable_put(var$3, $rt_s(1069), $rt_s(1070));
13044
13078
  ju_Hashtable_put(var$3, $rt_s(1071), $rt_s(1072));
13045
- ju_Hashtable_put(var$3, $rt_s(1073), $rt_s(43));
13079
+ ju_Hashtable_put(var$3, $rt_s(1073), $rt_s(42));
13046
13080
  ju_Hashtable_put(var$3, $rt_s(1074), $rt_s(1075));
13047
13081
  ju_Hashtable_put(var$3, $rt_s(1076), $rt_s(1066));
13048
13082
  ju_Hashtable_put(var$3, $rt_s(1077), $rt_s(1070));
@@ -13328,7 +13362,7 @@ var otcic_JsConsolePrintStream_println = ($this, $s) => {
13328
13362
  let var$2;
13329
13363
  var$2 = $this;
13330
13364
  otcic_JSStdoutPrintStream_print(var$2, $s);
13331
- otcic_JSStdoutPrintStream_print(var$2, $rt_s(43));
13365
+ otcic_JSStdoutPrintStream_print(var$2, $rt_s(42));
13332
13366
  };
13333
13367
  var otcic_JsConsolePrintStream_println0 = ($this, $s) => {
13334
13368
  let var$2;
@@ -13445,6 +13479,22 @@ var jusi_StreamOverSpliterator_next = ($this, $consumer) => {
13445
13479
  var jusi_StreamOverSpliterator_estimateSize = ($this) => {
13446
13480
  return Long_lo(Long_fromInt($this.$spliterator0.$collection.$size()));
13447
13481
  };
13482
+ var jus_IntStream = $rt_classWithoutFields(0);
13483
+ var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
13484
+ function jusi_MappingToIntStreamImpl() {
13485
+ let a = this;
13486
+ jusi_SimpleIntStreamImpl.call(a);
13487
+ a.$source1 = null;
13488
+ a.$mapper0 = null;
13489
+ }
13490
+ var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
13491
+ let var$2, var$3;
13492
+ var$2 = $this.$source1;
13493
+ var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
13494
+ var$3.$_09 = $this;
13495
+ var$3.$_13 = $consumer;
13496
+ return jusi_ArrayStreamImpl_next(var$2, var$3);
13497
+ };
13448
13498
  function jusi_WrappingStreamImpl() {
13449
13499
  jusi_SimpleStreamImpl.call(this);
13450
13500
  this.$sourceStream = null;
@@ -13466,22 +13516,6 @@ var jusi_MappingStreamImpl_wrap = ($this, $consumer) => {
13466
13516
  var$2.$_10 = $consumer;
13467
13517
  return var$2;
13468
13518
  };
13469
- var jus_IntStream = $rt_classWithoutFields(0);
13470
- var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
13471
- function jusi_MappingToIntStreamImpl() {
13472
- let a = this;
13473
- jusi_SimpleIntStreamImpl.call(a);
13474
- a.$source1 = null;
13475
- a.$mapper0 = null;
13476
- }
13477
- var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
13478
- let var$2, var$3;
13479
- var$2 = $this.$source1;
13480
- var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
13481
- var$3.$_09 = $this;
13482
- var$3.$_13 = $consumer;
13483
- return jusi_ArrayStreamImpl_next(var$2, var$3);
13484
- };
13485
13519
  var asru_Binary = $rt_classWithoutFields();
13486
13520
  var asru_Binary_chars = null;
13487
13521
  var asru_Binary_intToBinaryString = ($value, $length) => {
@@ -14077,38 +14111,6 @@ var asrrh_Stack_callStack = null;
14077
14111
  var asrrh_Stack__clinit_ = () => {
14078
14112
  asrrh_Stack_callStack = ju_ArrayList__init_();
14079
14113
  };
14080
- var jlr_Array = $rt_classWithoutFields();
14081
- var jlr_Array_getLength = (var$1) => {
14082
- if (var$1 === null || var$1.constructor.$meta.item === "undefined") {
14083
- $rt_throw(jl_IllegalArgumentException__init_());
14084
- }
14085
- return var$1.data.length;
14086
- };
14087
- var jlr_Array_newInstance = (var$1, $length) => {
14088
- if (var$1 === null) {
14089
- var$1 = new jl_NullPointerException();
14090
- jl_Throwable__init_(var$1);
14091
- $rt_throw(var$1);
14092
- }
14093
- if (var$1 === $rt_cls($rt_voidcls)) {
14094
- var$1 = new jl_IllegalArgumentException();
14095
- jl_Throwable__init_(var$1);
14096
- $rt_throw(var$1);
14097
- }
14098
- if ($length >= 0)
14099
- return jlr_Array_newInstanceImpl(var$1.$platformClass, $length);
14100
- var$1 = new jl_NegativeArraySizeException();
14101
- jl_Throwable__init_(var$1);
14102
- $rt_throw(var$1);
14103
- };
14104
- var jlr_Array_newInstanceImpl = (var$1, var$2) => {
14105
- if (var$1.$meta.primitive) {
14106
- switch (var$1) {
14107
- }
14108
- ;
14109
- }
14110
- return $rt_createArray(var$1, var$2);
14111
- };
14112
14114
  var asrs_Simulator$Reason = $rt_classWithoutFields(jl_Enum);
14113
14115
  var asrs_Simulator$Reason_BREAKPOINT = null;
14114
14116
  var asrs_Simulator$Reason_EXCEPTION = null;
@@ -14155,6 +14157,38 @@ var asrs_Simulator$Reason__clinit_ = () => {
14155
14157
  var$3[6] = var$1;
14156
14158
  asrs_Simulator$Reason_$VALUES = var$2;
14157
14159
  };
14160
+ var jlr_Array = $rt_classWithoutFields();
14161
+ var jlr_Array_getLength = (var$1) => {
14162
+ if (var$1 === null || var$1.constructor.$meta.item === "undefined") {
14163
+ $rt_throw(jl_IllegalArgumentException__init_());
14164
+ }
14165
+ return var$1.data.length;
14166
+ };
14167
+ var jlr_Array_newInstance = (var$1, $length) => {
14168
+ if (var$1 === null) {
14169
+ var$1 = new jl_NullPointerException();
14170
+ jl_Throwable__init_(var$1);
14171
+ $rt_throw(var$1);
14172
+ }
14173
+ if (var$1 === $rt_cls($rt_voidcls)) {
14174
+ var$1 = new jl_IllegalArgumentException();
14175
+ jl_Throwable__init_(var$1);
14176
+ $rt_throw(var$1);
14177
+ }
14178
+ if ($length >= 0)
14179
+ return jlr_Array_newInstanceImpl(var$1.$platformClass, $length);
14180
+ var$1 = new jl_NegativeArraySizeException();
14181
+ jl_Throwable__init_(var$1);
14182
+ $rt_throw(var$1);
14183
+ };
14184
+ var jlr_Array_newInstanceImpl = (var$1, var$2) => {
14185
+ if (var$1.$meta.primitive) {
14186
+ switch (var$1) {
14187
+ }
14188
+ ;
14189
+ }
14190
+ return $rt_createArray(var$1, var$2);
14191
+ };
14158
14192
  function jur_Pattern() {
14159
14193
  let a = this;
14160
14194
  jl_Object.call(a);
@@ -14167,16 +14201,16 @@ function jur_Pattern() {
14167
14201
  a.$consCount = 0;
14168
14202
  a.$start2 = null;
14169
14203
  }
14170
- var jur_Pattern_matcher = ($this, $input) => {
14204
+ var jur_Pattern_matcher = ($this, var$1) => {
14171
14205
  let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
14172
14206
  var$2 = new jur_Matcher();
14173
14207
  var$2.$leftBound0 = -1;
14174
14208
  var$2.$rightBound0 = -1;
14175
14209
  var$2.$pat = $this;
14176
14210
  var$2.$start6 = $this.$start2;
14177
- var$2.$string1 = $input;
14211
+ var$2.$string1 = var$1;
14178
14212
  var$2.$leftBound0 = 0;
14179
- var$3 = $input.$nativeString.length;
14213
+ var$3 = var$1.$nativeString.length;
14180
14214
  var$2.$rightBound0 = var$3;
14181
14215
  var$4 = new jur_MatchResultImpl();
14182
14216
  var$5 = var$2.$leftBound0;
@@ -14193,7 +14227,7 @@ var jur_Pattern_matcher = ($this, $input) => {
14193
14227
  if (var$7 > 0)
14194
14228
  var$4.$compQuantCounters = $rt_createIntArray(var$7);
14195
14229
  ju_Arrays_fill(var$4.$groupBounds, -1);
14196
- jur_MatchResultImpl_reset(var$4, $input, var$5, var$3);
14230
+ jur_MatchResultImpl_reset(var$4, var$1, var$5, var$3);
14197
14231
  var$2.$matchResult = var$4;
14198
14232
  var$4.$anchoringBounds = 1;
14199
14233
  return var$2;
@@ -15591,7 +15625,7 @@ var asra_Tokenizer_processCandidateToken = ($this, $token, $program, $line, $the
15591
15625
  asra_TokenList_add($tokenList, asra_Token__init_($type, $value, $program, $line, $tokenStartPos));
15592
15626
  };
15593
15627
  var asra_Tokenizer__clinit_ = () => {
15594
- asra_Tokenizer_escapedCharactersValues = $rt_wrapArray(jl_String, [$rt_s(1153), $rt_s(1154), $rt_s(1155), $rt_s(561), $rt_s(1156), $rt_s(112), $rt_s(1157), $rt_s(1158), $rt_s(6)]);
15628
+ asra_Tokenizer_escapedCharactersValues = $rt_wrapArray(jl_String, [$rt_s(1153), $rt_s(1154), $rt_s(1155), $rt_s(561), $rt_s(1156), $rt_s(111), $rt_s(1157), $rt_s(1158), $rt_s(6)]);
15595
15629
  };
15596
15630
  var ju_NoSuchElementException = $rt_classWithoutFields(jl_RuntimeException);
15597
15631
  function asr_JsCompilationResult$JsCompilationError() {
@@ -15875,7 +15909,7 @@ var jl_Thread__clinit_ = () => {
15875
15909
  var$2 = null;
15876
15910
  var$1.$finishedLock = new jl_Object();
15877
15911
  var$1.$alive = 1;
15878
- var$1.$name7 = $rt_s(18);
15912
+ var$1.$name7 = $rt_s(17);
15879
15913
  var$1.$target = var$2;
15880
15914
  var$3 = jl_Thread_nextId;
15881
15915
  jl_Thread_nextId = var$3 + 1 | 0;
@@ -15986,13 +16020,13 @@ var asrc_SyscallProperties_reset = ($this) => {
15986
16020
  var$1 = $this;
15987
16021
  ju_HashMap_put(var$1, $rt_s(1061), $rt_s(1159));
15988
16022
  ju_HashMap_put(var$1, $rt_s(300), $rt_s(248));
15989
- ju_HashMap_put(var$1, $rt_s(297), $rt_s(113));
16023
+ ju_HashMap_put(var$1, $rt_s(297), $rt_s(112));
15990
16024
  ju_HashMap_put(var$1, $rt_s(294), $rt_s(1160));
15991
16025
  ju_HashMap_put(var$1, $rt_s(309), $rt_s(1161));
15992
16026
  ju_HashMap_put(var$1, $rt_s(343), $rt_s(1162));
15993
16027
  ju_HashMap_put(var$1, $rt_s(340), $rt_s(1163));
15994
16028
  ju_HashMap_put(var$1, $rt_s(337), $rt_s(1164));
15995
- ju_HashMap_put(var$1, $rt_s(346), $rt_s(112));
16029
+ ju_HashMap_put(var$1, $rt_s(346), $rt_s(111));
15996
16030
  ju_HashMap_put(var$1, $rt_s(349), $rt_s(1156));
15997
16031
  ju_HashMap_put(var$1, $rt_s(261), $rt_s(561));
15998
16032
  ju_HashMap_put(var$1, $rt_s(291), $rt_s(522));
@@ -17187,7 +17221,7 @@ var jur_PatternSyntaxException_getMessage = ($this) => {
17187
17221
  var$10 = new jl_StringBuilder();
17188
17222
  jl_AbstractStringBuilder__init_(var$10);
17189
17223
  jl_AbstractStringBuilder_append(var$10, var$9);
17190
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$10, $rt_s(115)), var$8), $rt_s(115)), $filler);
17224
+ jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$10, $rt_s(114)), var$8), $rt_s(114)), $filler);
17191
17225
  $filler = jl_AbstractStringBuilder_toString(var$10);
17192
17226
  } else
17193
17227
  $filler = $rt_s(3);
@@ -19700,7 +19734,7 @@ function jur_LowHighSurrogateRangeSet() {
19700
19734
  }
19701
19735
  var jur_LowHighSurrogateRangeSet_getName = ($this) => {
19702
19736
  let var$1, var$2, var$3;
19703
- var$1 = !$this.$alt1 ? $rt_s(38) : $rt_s(1399);
19737
+ var$1 = !$this.$alt1 ? $rt_s(37) : $rt_s(1399);
19704
19738
  var$2 = $this.$surrChars.$toString();
19705
19739
  var$3 = new jl_StringBuilder();
19706
19740
  jl_AbstractStringBuilder__init_(var$3);
@@ -19818,7 +19852,7 @@ var jur_SupplRangeSet_matches = ($this, $stringIndex, $testString, $matchResult)
19818
19852
  };
19819
19853
  var jur_SupplRangeSet_getName = ($this) => {
19820
19854
  let var$1, var$2, var$3;
19821
- var$1 = !$this.$alt0 ? $rt_s(38) : $rt_s(1399);
19855
+ var$1 = !$this.$alt0 ? $rt_s(37) : $rt_s(1399);
19822
19856
  var$2 = $this.$chars.$toString();
19823
19857
  var$3 = new jl_StringBuilder();
19824
19858
  jl_AbstractStringBuilder__init_(var$3);
@@ -19851,7 +19885,7 @@ var jur_UCISupplRangeSet_contains = ($this, $ch) => {
19851
19885
  };
19852
19886
  var jur_UCISupplRangeSet_getName = ($this) => {
19853
19887
  let var$1, var$2, var$3;
19854
- var$1 = !$this.$alt0 ? $rt_s(38) : $rt_s(1399);
19888
+ var$1 = !$this.$alt0 ? $rt_s(37) : $rt_s(1399);
19855
19889
  var$2 = $this.$chars.$toString();
19856
19890
  var$3 = new jl_StringBuilder();
19857
19891
  jl_AbstractStringBuilder__init_(var$3);
@@ -19879,7 +19913,7 @@ var jur_UCIRangeSet_accepts = ($this, $strIndex, $testString) => {
19879
19913
  };
19880
19914
  var jur_UCIRangeSet_getName = ($this) => {
19881
19915
  let var$1, var$2, var$3;
19882
- var$1 = !$this.$alt2 ? $rt_s(38) : $rt_s(1399);
19916
+ var$1 = !$this.$alt2 ? $rt_s(37) : $rt_s(1399);
19883
19917
  var$2 = $this.$chars1.$toString();
19884
19918
  var$3 = new jl_StringBuilder();
19885
19919
  jl_AbstractStringBuilder__init_(var$3);
@@ -19907,7 +19941,7 @@ var jur_RangeSet_accepts = ($this, $strIndex, $testString) => {
19907
19941
  };
19908
19942
  var jur_RangeSet_getName = ($this) => {
19909
19943
  let var$1, var$2, var$3;
19910
- var$1 = !$this.$alt3 ? $rt_s(38) : $rt_s(1399);
19944
+ var$1 = !$this.$alt3 ? $rt_s(37) : $rt_s(1399);
19911
19945
  var$2 = $this.$chars0.$toString();
19912
19946
  var$3 = new jl_StringBuilder();
19913
19947
  jl_AbstractStringBuilder__init_(var$3);
@@ -20944,7 +20978,7 @@ var jur_DotSet_matches = ($this, $stringIndex, $testString, $matchResult) => {
20944
20978
  return $this.$lt0.$isLineTerminator($high) ? -1 : $this.$next3.$matches(var$5, $testString, $matchResult);
20945
20979
  };
20946
20980
  var jur_DotSet_getName = ($this) => {
20947
- return $rt_s(36);
20981
+ return $rt_s(35);
20948
20982
  };
20949
20983
  var jur_DotSet_setNext = ($this, $next) => {
20950
20984
  $this.$next3 = $next;
@@ -25471,7 +25505,7 @@ var asra_Assembler_transferGlobals = ($this) => {
25471
25505
  var$4 = var$6.$filename1;
25472
25506
  var$6 = new jl_StringBuilder();
25473
25507
  jl_AbstractStringBuilder__init_(var$6);
25474
- jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(jl_StringBuilder_append(var$6, $rt_s(80)), var$5), $rt_s(1548)), var$4), $rt_s(83));
25508
+ 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));
25475
25509
  var$5 = jl_AbstractStringBuilder_toString(var$6);
25476
25510
  otcic_JsConsolePrintStream_println(var$9, var$5);
25477
25511
  }
@@ -31135,227 +31169,125 @@ var asrj_Environment__init_ = () => {
31135
31169
  asrj_Environment__init_0(var_0);
31136
31170
  return var_0;
31137
31171
  };
31138
- var asrjo_Comparisons = $rt_classWithoutFields();
31139
- var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
31140
- if ($a.$isZero()) {
31141
- if ($b.$isZero())
31142
- return 0;
31143
- return !$b.$isSignMinus() ? -1 : 1;
31144
- }
31145
- if ($b.$isZero())
31146
- return !$a.$isSignMinus() ? 1 : -1;
31147
- if (!$a.$isInfinite()) {
31148
- if (!$b.$isInfinite())
31149
- return asrji_ExactFloat_compareTo($a.$toExactFloat(), $b.$toExactFloat());
31150
- return !$b.$isSignMinus() ? -1 : 1;
31151
- }
31152
- if ($b.$isInfinite() && $a.$isSignMinus() == $b.$isSignMinus())
31153
- return 0;
31154
- return !$a.$isSignMinus() ? -1 : 1;
31155
- };
31156
- var asrjo_Comparisons_nonNaNmin = ($a, $b) => {
31157
- if ($a.$isSignMinus() != $b.$isSignMinus()) {
31158
- if ($a.$isSignMinus())
31159
- $b = $a;
31160
- return $b;
31161
- }
31162
- if (!$a.$isInfinite() && !$b.$isInfinite()) {
31163
- if (asrjo_Comparisons_compareNoNAN($a, $b) > 0)
31164
- return $b;
31165
- return $a;
31166
- }
31167
- if ($a.$isInfinite() != $a.$isSignMinus())
31168
- return $b;
31169
- return $a;
31170
- };
31171
- var asrjo_Comparisons_handleNaNNumber = ($a, $b, $env) => {
31172
- let var$4;
31173
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31174
- var$4 = $env.$flags;
31175
- $env = asrj_Flags_invalid;
31176
- ju_GenericEnumSet_add(var$4, $env);
31177
- }
31178
- if ($a.$isNaN()) {
31179
- if ($b.$isNaN())
31180
- $b = $b.$NaN();
31181
- } else
31182
- $b = !$b.$isNaN() ? null : $a;
31183
- return $b;
31184
- };
31185
- var asrjo_Comparisons_minimumNumber = ($a, $b, $env) => {
31186
- let $tmp_0;
31187
- $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
31188
- if ($tmp_0 !== null)
31189
- return $tmp_0;
31190
- return asrjo_Comparisons_nonNaNmin($a, $b);
31191
- };
31192
- var asrjo_Comparisons_maximumNumber = ($a, $b, $env) => {
31193
- let $tmp_0;
31194
- $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
31195
- if ($tmp_0 !== null)
31196
- return $tmp_0;
31197
- if ($a === asrjo_Comparisons_nonNaNmin($a, $b))
31198
- $a = $b;
31199
- return $a;
31200
- };
31201
- var asrjo_Comparisons_compareQuietEqual = ($a, $b, $env) => {
31202
- let var$4;
31203
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31204
- var$4 = $env.$flags;
31205
- $env = asrj_Flags_invalid;
31206
- ju_GenericEnumSet_add(var$4, $env);
31207
- }
31208
- if (!$a.$isNaN() && !$b.$isNaN())
31209
- return asrjo_Comparisons_compareNoNAN($a, $b) ? 0 : 1;
31210
- return 0;
31211
- };
31212
- var asrjo_Comparisons_compareSignalingLessThan = ($a, $b, $env) => {
31213
- let var$4, var$5;
31214
- if (!(!$a.$isNaN() && !$b.$isNaN())) {
31215
- var$4 = $env.$flags;
31216
- var$5 = asrj_Flags_invalid;
31217
- ju_GenericEnumSet_add(var$4, var$5);
31218
- }
31219
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31220
- var$5 = $env.$flags;
31221
- $env = asrj_Flags_invalid;
31222
- ju_GenericEnumSet_add(var$5, $env);
31223
- }
31224
- return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) >= 0 ? 0 : 1 : 0;
31225
- };
31226
- var asrjo_Comparisons_compareSignalingLessThanEqual = ($a, $b, $env) => {
31227
- let var$4, var$5;
31228
- if (!(!$a.$isNaN() && !$b.$isNaN())) {
31229
- var$4 = $env.$flags;
31230
- var$5 = asrj_Flags_invalid;
31231
- ju_GenericEnumSet_add(var$4, var$5);
31232
- }
31233
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31234
- var$5 = $env.$flags;
31235
- $env = asrj_Flags_invalid;
31236
- ju_GenericEnumSet_add(var$5, $env);
31237
- }
31238
- return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) > 0 ? 0 : 1 : 0;
31239
- };
31240
31172
  var asrjt_Floating = $rt_classWithoutFields();
31241
31173
  var asrjt_Floating_isFinite = ($this) => {
31242
31174
  return !$this.$isZero() && !$this.$isNormal() && !$this.$isSubnormal() ? 0 : 1;
31243
31175
  };
31244
- function asrjt_Float32() {
31176
+ function asrjt_Float64() {
31245
31177
  asrjt_Floating.call(this);
31246
- this.$bits0 = 0;
31178
+ this.$bits1 = Long_ZERO;
31247
31179
  }
31248
- var asrjt_Float32_Zero = null;
31249
- var asrjt_Float32_NegativeZero = null;
31250
- var asrjt_Float32_NaN = null;
31251
- var asrjt_Float32_Infinity = null;
31252
- var asrjt_Float32_NegativeInfinity = null;
31253
- var asrjt_Float32_$assertionsDisabled = 0;
31254
- var asrjt_Float32__init_2 = ($this, $bits) => {
31255
- $this.$bits0 = $bits;
31180
+ var asrjt_Float64_Zero = null;
31181
+ var asrjt_Float64_NegativeZero = null;
31182
+ var asrjt_Float64_NaN = null;
31183
+ var asrjt_Float64_Infinity = null;
31184
+ var asrjt_Float64_NegativeInfinity = null;
31185
+ var asrjt_Float64_$assertionsDisabled = 0;
31186
+ var asrjt_Float64__init_1 = ($this, $bits) => {
31187
+ $this.$bits1 = $bits;
31256
31188
  };
31257
- var asrjt_Float32__init_ = (var_0) => {
31258
- let var_1 = new asrjt_Float32();
31259
- asrjt_Float32__init_2(var_1, var_0);
31189
+ var asrjt_Float64__init_ = (var_0) => {
31190
+ let var_1 = new asrjt_Float64();
31191
+ asrjt_Float64__init_1(var_1, var_0);
31260
31192
  return var_1;
31261
31193
  };
31262
- var asrjt_Float32__init_1 = ($this, $sign, $exponent, $significand) => {
31263
- asrjt_Float32__init_2($this, (!$sign ? 0 : -2147483648) | (($exponent + 127 | 0) & 255) << 23 | $significand & 8388607);
31194
+ var asrjt_Float64__init_2 = ($this, $sign, $exponent, $significand) => {
31195
+ 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))));
31264
31196
  };
31265
- var asrjt_Float32__init_0 = (var_0, var_1, var_2) => {
31266
- let var_3 = new asrjt_Float32();
31267
- asrjt_Float32__init_1(var_3, var_0, var_1, var_2);
31197
+ var asrjt_Float64__init_0 = (var_0, var_1, var_2) => {
31198
+ let var_3 = new asrjt_Float64();
31199
+ asrjt_Float64__init_2(var_3, var_0, var_1, var_2);
31268
31200
  return var_3;
31269
31201
  };
31270
- var asrjt_Float32_exponent = ($this) => {
31271
- return (($this.$bits0 >>> 23 | 0) & 255) - 127 | 0;
31202
+ var asrjt_Float64_exponent = ($this) => {
31203
+ return (Long_lo(Long_shru($this.$bits1, 52)) & 2047) - 1023 | 0;
31272
31204
  };
31273
- var asrjt_Float32_negate = ($this) => {
31274
- return asrjt_Float32__init_($this.$bits0 ^ -2147483648);
31205
+ var asrjt_Float64_negate = ($this) => {
31206
+ return asrjt_Float64__init_(Long_xor($this.$bits1, Long_create(0, 2147483648)));
31275
31207
  };
31276
- var asrjt_Float32_isSignMinus = ($this) => {
31277
- return ($this.$bits0 >>> 31 | 0) != 1 ? 0 : 1;
31208
+ var asrjt_Float64_isSignMinus = ($this) => {
31209
+ return Long_ne(Long_shru($this.$bits1, 63), Long_fromInt(1)) ? 0 : 1;
31278
31210
  };
31279
- var asrjt_Float32_isInfinite = ($this) => {
31280
- return asrjt_Float32_exponent($this) == 128 && !($this.$bits0 & 8388607) ? 1 : 0;
31211
+ var asrjt_Float64_isInfinite = ($this) => {
31212
+ return asrjt_Float64_exponent($this) == 1024 && Long_eq(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_ZERO) ? 1 : 0;
31281
31213
  };
31282
- var asrjt_Float32_isNormal = ($this) => {
31283
- return asrjt_Float32_exponent($this) != -127 && asrjt_Float32_exponent($this) != 128 ? 1 : 0;
31214
+ var asrjt_Float64_isNormal = ($this) => {
31215
+ return asrjt_Float64_exponent($this) != -1023 && asrjt_Float64_exponent($this) != 1024 ? 1 : 0;
31284
31216
  };
31285
- var asrjt_Float32_isSubnormal = ($this) => {
31286
- return asrjt_Float32_exponent($this) == -127 && !asrjt_Float32_isZero($this) ? 1 : 0;
31217
+ var asrjt_Float64_isSubnormal = ($this) => {
31218
+ return asrjt_Float64_exponent($this) == -1023 && !asrjt_Float64_isZero($this) ? 1 : 0;
31287
31219
  };
31288
- var asrjt_Float32_isNaN = ($this) => {
31289
- return asrjt_Float32_exponent($this) == 128 && !asrjt_Float32_isInfinite($this) ? 1 : 0;
31220
+ var asrjt_Float64_isNaN = ($this) => {
31221
+ return asrjt_Float64_exponent($this) == 1024 && !asrjt_Float64_isInfinite($this) ? 1 : 0;
31290
31222
  };
31291
- var asrjt_Float32_isSignalling = ($this) => {
31292
- if (!asrjt_Float32_isNaN($this))
31223
+ var asrjt_Float64_isSignalling = ($this) => {
31224
+ if (!asrjt_Float64_isNaN($this))
31293
31225
  return 0;
31294
- return $this.$bits0 & 4194304 ? 0 : 1;
31226
+ return Long_ne(Long_and($this.$bits1, Long_create(0, 524288)), Long_ZERO) ? 0 : 1;
31295
31227
  };
31296
- var asrjt_Float32_isZero = ($this) => {
31228
+ var asrjt_Float64_isZero = ($this) => {
31297
31229
  let var$1;
31298
- var$1 = $this.$bits0;
31299
- return var$1 && var$1 != -2147483648 ? 0 : 1;
31230
+ var$1 = $this.$bits1;
31231
+ return Long_ne(var$1, Long_ZERO) && Long_ne(var$1, Long_create(0, 2147483648)) ? 0 : 1;
31300
31232
  };
31301
- var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
31233
+ var asrjt_Float64_fromExactFloat0 = ($this, $ef, $env) => {
31302
31234
  let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
31303
31235
  if (asrji_ExactFloat_isZero($ef))
31304
- return !$ef.$sign ? asrjt_Float32_Zero : asrjt_Float32_NegativeZero;
31236
+ return !$ef.$sign ? asrjt_Float64_Zero : asrjt_Float64_NegativeZero;
31305
31237
  $ef = asrji_ExactFloat_normalize($ef);
31306
31238
  $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
31307
- if ($normalizedExponent > -126) {
31308
- if ($normalizedExponent > 128) {
31239
+ if ($normalizedExponent > -1022) {
31240
+ if ($normalizedExponent > 1024) {
31309
31241
  $mainBits = $env.$flags;
31310
31242
  $roundedBits = asrj_Flags_overflow;
31311
31243
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31312
31244
  $mainBits = $env.$flags;
31313
31245
  $roundedBits = asrj_Flags_inexact;
31314
31246
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31315
- asrjt_Float32$1_$callClinit();
31316
- switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31247
+ asrjt_Float64$1_$callClinit();
31248
+ switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31317
31249
  case 1:
31318
31250
  break;
31319
31251
  case 2:
31320
31252
  case 3:
31321
31253
  $normalizedExponent = $ef.$sign;
31322
31254
  if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31323
- return asrjt_Float32__init_0($normalizedExponent, 127, -1);
31324
- return !$normalizedExponent ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31255
+ return asrjt_Float64__init_0($normalizedExponent, 1023, Long_fromInt(-1));
31256
+ return !$normalizedExponent ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31325
31257
  case 4:
31326
31258
  case 5:
31327
- return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31259
+ return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31328
31260
  default:
31329
- if (!asrjt_Float32_$assertionsDisabled)
31261
+ if (!asrjt_Float64_$assertionsDisabled)
31330
31262
  $rt_throw(jl_AssertionError__init_($rt_s(1617)));
31331
- return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31263
+ return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31332
31264
  }
31333
- return asrjt_Float32__init_0($ef.$sign, 127, -1);
31265
+ return asrjt_Float64__init_0($ef.$sign, 1023, Long_fromInt(-1));
31334
31266
  }
31335
- if (jm_BigInteger_bitLength($ef.$significand) <= 24) {
31336
- if (!asrjt_Float32_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -127)
31267
+ if (jm_BigInteger_bitLength($ef.$significand) <= 53) {
31268
+ if (!asrjt_Float64_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -1023)
31337
31269
  $rt_throw(jl_AssertionError__init_($rt_s(1618)));
31338
- $a = new asrjt_Float32();
31270
+ $a = new asrjt_Float64();
31339
31271
  $normalizedExponent = $ef.$sign;
31340
31272
  $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
31341
31273
  $ef = $ef.$significand;
31342
- asrjt_Float32__init_1($a, $normalizedExponent, $bitsToRound, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef, 24 - jm_BigInteger_bitLength($ef) | 0)) & 8388607);
31274
+ 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)));
31343
31275
  return $a;
31344
31276
  }
31345
31277
  $mainBits = $env.$flags;
31346
31278
  $roundedBits = asrj_Flags_inexact;
31347
31279
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31348
- $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 24 | 0;
31280
+ $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 53 | 0;
31349
31281
  $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31350
31282
  $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31351
31283
  $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31352
- $towardsZero = asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)) & 8388607);
31353
- $awayZero = !jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 24 ? asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 24 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($upBits, 1)) & 8388607) : asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact($upBits) & 8388607);
31284
+ $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)));
31285
+ $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)));
31354
31286
  } else {
31355
- if ($ef.$exponent0 > -150) {
31356
- if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 23)
31287
+ if ($ef.$exponent0 > -1075) {
31288
+ if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 52)
31357
31289
  $rt_throw(jl_AssertionError__init_($rt_s(1619)));
31358
- return asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef.$significand, 149 + $ef.$exponent0 | 0)));
31290
+ return asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftLeft($ef.$significand, 1074 + $ef.$exponent0 | 0)));
31359
31291
  }
31360
31292
  $mainBits = $env.$flags;
31361
31293
  $roundedBits = asrj_Flags_inexact;
@@ -31363,21 +31295,21 @@ var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
31363
31295
  $mainBits = $env.$flags;
31364
31296
  $roundedBits = asrj_Flags_underflow;
31365
31297
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31366
- $bitsToRound = -149 - $ef.$exponent0 | 0;
31298
+ $bitsToRound = -1074 - $ef.$exponent0 | 0;
31367
31299
  $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31368
31300
  $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31369
- $towardsZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
31301
+ $towardsZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
31370
31302
  $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31371
- if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 23)
31372
- $awayZero = asrjt_Float32__init_0($ef.$sign, -126, jm_BigInteger_intValueExact($upBits) & 8388607);
31303
+ if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 52)
31304
+ $awayZero = asrjt_Float64__init_0($ef.$sign, -1022, Long_and(jm_BigInteger_longValueExact($upBits), Long_create(4294967295, 1048575)));
31373
31305
  else {
31374
- if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 23)
31306
+ if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 52)
31375
31307
  $rt_throw(jl_AssertionError__init_1());
31376
- $awayZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact($upBits));
31308
+ $awayZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact($upBits));
31377
31309
  }
31378
31310
  }
31379
- asrjt_Float32$1_$callClinit();
31380
- switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31311
+ asrjt_Float64$1_$callClinit();
31312
+ switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31381
31313
  case 1:
31382
31314
  break;
31383
31315
  case 2:
@@ -31393,185 +31325,185 @@ var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
31393
31325
  return $towardsZero;
31394
31326
  return $awayZero;
31395
31327
  }
31396
- if ($env.$mode !== asrj_RoundingMode_away && $awayZero.$bits0 & 1)
31328
+ if ($env.$mode !== asrj_RoundingMode_away && Long_ne(Long_and($awayZero.$bits1, Long_fromInt(1)), Long_ZERO))
31397
31329
  return $towardsZero;
31398
31330
  return $awayZero;
31399
31331
  }
31400
31332
  return $towardsZero;
31401
31333
  };
31402
- var asrjt_Float32_toExactFloat = ($this) => {
31334
+ var asrjt_Float64_toExactFloat = ($this) => {
31403
31335
  let $sign, $exponent, $significand;
31404
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isInfinite($this))
31336
+ if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isInfinite($this))
31405
31337
  $rt_throw(jl_AssertionError__init_($rt_s(1620)));
31406
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isNaN($this))
31338
+ if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isNaN($this))
31407
31339
  $rt_throw(jl_AssertionError__init_($rt_s(1621)));
31408
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isZero($this))
31340
+ if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isZero($this))
31409
31341
  $rt_throw(jl_AssertionError__init_($rt_s(1622)));
31410
- $sign = asrjt_Float32_isSignMinus($this);
31411
- if (asrjt_Float32_isZero($this)) {
31342
+ $sign = asrjt_Float64_isSignMinus($this);
31343
+ if (asrjt_Float64_isZero($this)) {
31412
31344
  $exponent = 0;
31413
31345
  $significand = jm_BigInteger_ZERO;
31414
- } else if (asrjt_Float32_isNormal($this)) {
31415
- $exponent = asrjt_Float32_exponent($this) - 23 | 0;
31416
- $significand = jm_BigInteger_valueOf(Long_fromInt(($this.$bits0 & 8388607) + 8388608 | 0));
31346
+ } else if (asrjt_Float64_isNormal($this)) {
31347
+ $exponent = asrjt_Float64_exponent($this) - 52 | 0;
31348
+ $significand = jm_BigInteger_valueOf(Long_add(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_create(0, 1048576)));
31417
31349
  } else {
31418
- if (!asrjt_Float32_isSubnormal($this)) {
31419
- if (asrjt_Float32_$assertionsDisabled)
31350
+ if (!asrjt_Float64_isSubnormal($this)) {
31351
+ if (asrjt_Float64_$assertionsDisabled)
31420
31352
  return null;
31421
31353
  $rt_throw(jl_AssertionError__init_($rt_s(1623)));
31422
31354
  }
31423
- $exponent = asrjt_Float32_exponent($this) - 22 | 0;
31424
- $significand = jm_BigInteger_valueOf(Long_fromInt($this.$bits0 & 8388607));
31355
+ $exponent = asrjt_Float64_exponent($this) - 51 | 0;
31356
+ $significand = jm_BigInteger_valueOf(Long_and($this.$bits1, Long_create(4294967295, 1048575)));
31425
31357
  }
31426
31358
  return asrji_ExactFloat__init_($sign, $exponent, $significand);
31427
31359
  };
31428
- var asrjt_Float32_maxPrecision = ($this) => {
31429
- return 30;
31360
+ var asrjt_Float64_maxPrecision = ($this) => {
31361
+ return 60;
31430
31362
  };
31431
- var asrjt_Float32_negate0 = ($this) => {
31432
- return asrjt_Float32_negate($this);
31363
+ var asrjt_Float64_negate0 = ($this) => {
31364
+ return asrjt_Float64_negate($this);
31433
31365
  };
31434
- var asrjt_Float32_fromExactFloat = ($this, var$1, var$2) => {
31435
- return asrjt_Float32_fromExactFloat0($this, var$1, var$2);
31366
+ var asrjt_Float64_fromExactFloat = ($this, var$1, var$2) => {
31367
+ return asrjt_Float64_fromExactFloat0($this, var$1, var$2);
31436
31368
  };
31437
- var asrjt_Float32_NegativeInfinity0 = ($this) => {
31438
- return asrjt_Float32_NegativeInfinity;
31369
+ var asrjt_Float64_NegativeInfinity0 = ($this) => {
31370
+ return asrjt_Float64_NegativeInfinity;
31439
31371
  };
31440
- var asrjt_Float32_Infinity0 = ($this) => {
31441
- return asrjt_Float32_Infinity;
31372
+ var asrjt_Float64_Infinity0 = ($this) => {
31373
+ return asrjt_Float64_Infinity;
31442
31374
  };
31443
- var asrjt_Float32_NegativeZero0 = ($this) => {
31444
- return asrjt_Float32_NegativeZero;
31375
+ var asrjt_Float64_NegativeZero0 = ($this) => {
31376
+ return asrjt_Float64_NegativeZero;
31445
31377
  };
31446
- var asrjt_Float32_Zero0 = ($this) => {
31447
- return asrjt_Float32_Zero;
31378
+ var asrjt_Float64_Zero0 = ($this) => {
31379
+ return asrjt_Float64_Zero;
31448
31380
  };
31449
- var asrjt_Float32_NaN0 = ($this) => {
31450
- return asrjt_Float32_NaN;
31381
+ var asrjt_Float64_NaN0 = ($this) => {
31382
+ return asrjt_Float64_NaN;
31451
31383
  };
31452
- var asrjt_Float32__clinit_ = () => {
31453
- asrjt_Float32_$assertionsDisabled = 0;
31454
- asrjt_Float32_Zero = asrjt_Float32__init_(0);
31455
- asrjt_Float32_NegativeZero = asrjt_Float32__init_(-2147483648);
31456
- asrjt_Float32_NaN = asrjt_Float32__init_(2143289344);
31457
- asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
31458
- asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
31384
+ var asrjt_Float64__clinit_ = () => {
31385
+ asrjt_Float64_$assertionsDisabled = 0;
31386
+ asrjt_Float64_Zero = asrjt_Float64__init_(Long_ZERO);
31387
+ asrjt_Float64_NegativeZero = asrjt_Float64__init_(Long_create(0, 2147483648));
31388
+ asrjt_Float64_NaN = asrjt_Float64__init_(Long_create(0, 2146959360));
31389
+ asrjt_Float64_Infinity = asrjt_Float64__init_(Long_create(0, 2146435072));
31390
+ asrjt_Float64_NegativeInfinity = asrjt_Float64__init_(Long_create(0, 4293918720));
31459
31391
  };
31460
- function asrjt_Float64() {
31392
+ function asrjt_Float32() {
31461
31393
  asrjt_Floating.call(this);
31462
- this.$bits1 = Long_ZERO;
31394
+ this.$bits0 = 0;
31463
31395
  }
31464
- var asrjt_Float64_Zero = null;
31465
- var asrjt_Float64_NegativeZero = null;
31466
- var asrjt_Float64_NaN = null;
31467
- var asrjt_Float64_Infinity = null;
31468
- var asrjt_Float64_NegativeInfinity = null;
31469
- var asrjt_Float64_$assertionsDisabled = 0;
31470
- var asrjt_Float64__init_1 = ($this, $bits) => {
31471
- $this.$bits1 = $bits;
31396
+ var asrjt_Float32_Zero = null;
31397
+ var asrjt_Float32_NegativeZero = null;
31398
+ var asrjt_Float32_NaN = null;
31399
+ var asrjt_Float32_Infinity = null;
31400
+ var asrjt_Float32_NegativeInfinity = null;
31401
+ var asrjt_Float32_$assertionsDisabled = 0;
31402
+ var asrjt_Float32__init_2 = ($this, $bits) => {
31403
+ $this.$bits0 = $bits;
31472
31404
  };
31473
- var asrjt_Float64__init_ = (var_0) => {
31474
- let var_1 = new asrjt_Float64();
31475
- asrjt_Float64__init_1(var_1, var_0);
31405
+ var asrjt_Float32__init_ = (var_0) => {
31406
+ let var_1 = new asrjt_Float32();
31407
+ asrjt_Float32__init_2(var_1, var_0);
31476
31408
  return var_1;
31477
31409
  };
31478
- var asrjt_Float64__init_2 = ($this, $sign, $exponent, $significand) => {
31479
- 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))));
31410
+ var asrjt_Float32__init_1 = ($this, $sign, $exponent, $significand) => {
31411
+ asrjt_Float32__init_2($this, (!$sign ? 0 : -2147483648) | (($exponent + 127 | 0) & 255) << 23 | $significand & 8388607);
31480
31412
  };
31481
- var asrjt_Float64__init_0 = (var_0, var_1, var_2) => {
31482
- let var_3 = new asrjt_Float64();
31483
- asrjt_Float64__init_2(var_3, var_0, var_1, var_2);
31413
+ var asrjt_Float32__init_0 = (var_0, var_1, var_2) => {
31414
+ let var_3 = new asrjt_Float32();
31415
+ asrjt_Float32__init_1(var_3, var_0, var_1, var_2);
31484
31416
  return var_3;
31485
31417
  };
31486
- var asrjt_Float64_exponent = ($this) => {
31487
- return (Long_lo(Long_shru($this.$bits1, 52)) & 2047) - 1023 | 0;
31418
+ var asrjt_Float32_exponent = ($this) => {
31419
+ return (($this.$bits0 >>> 23 | 0) & 255) - 127 | 0;
31488
31420
  };
31489
- var asrjt_Float64_negate = ($this) => {
31490
- return asrjt_Float64__init_(Long_xor($this.$bits1, Long_create(0, 2147483648)));
31421
+ var asrjt_Float32_negate = ($this) => {
31422
+ return asrjt_Float32__init_($this.$bits0 ^ -2147483648);
31491
31423
  };
31492
- var asrjt_Float64_isSignMinus = ($this) => {
31493
- return Long_ne(Long_shru($this.$bits1, 63), Long_fromInt(1)) ? 0 : 1;
31424
+ var asrjt_Float32_isSignMinus = ($this) => {
31425
+ return ($this.$bits0 >>> 31 | 0) != 1 ? 0 : 1;
31494
31426
  };
31495
- var asrjt_Float64_isInfinite = ($this) => {
31496
- return asrjt_Float64_exponent($this) == 1024 && Long_eq(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_ZERO) ? 1 : 0;
31427
+ var asrjt_Float32_isInfinite = ($this) => {
31428
+ return asrjt_Float32_exponent($this) == 128 && !($this.$bits0 & 8388607) ? 1 : 0;
31497
31429
  };
31498
- var asrjt_Float64_isNormal = ($this) => {
31499
- return asrjt_Float64_exponent($this) != -1023 && asrjt_Float64_exponent($this) != 1024 ? 1 : 0;
31430
+ var asrjt_Float32_isNormal = ($this) => {
31431
+ return asrjt_Float32_exponent($this) != -127 && asrjt_Float32_exponent($this) != 128 ? 1 : 0;
31500
31432
  };
31501
- var asrjt_Float64_isSubnormal = ($this) => {
31502
- return asrjt_Float64_exponent($this) == -1023 && !asrjt_Float64_isZero($this) ? 1 : 0;
31433
+ var asrjt_Float32_isSubnormal = ($this) => {
31434
+ return asrjt_Float32_exponent($this) == -127 && !asrjt_Float32_isZero($this) ? 1 : 0;
31503
31435
  };
31504
- var asrjt_Float64_isNaN = ($this) => {
31505
- return asrjt_Float64_exponent($this) == 1024 && !asrjt_Float64_isInfinite($this) ? 1 : 0;
31436
+ var asrjt_Float32_isNaN = ($this) => {
31437
+ return asrjt_Float32_exponent($this) == 128 && !asrjt_Float32_isInfinite($this) ? 1 : 0;
31506
31438
  };
31507
- var asrjt_Float64_isSignalling = ($this) => {
31508
- if (!asrjt_Float64_isNaN($this))
31439
+ var asrjt_Float32_isSignalling = ($this) => {
31440
+ if (!asrjt_Float32_isNaN($this))
31509
31441
  return 0;
31510
- return Long_ne(Long_and($this.$bits1, Long_create(0, 524288)), Long_ZERO) ? 0 : 1;
31442
+ return $this.$bits0 & 4194304 ? 0 : 1;
31511
31443
  };
31512
- var asrjt_Float64_isZero = ($this) => {
31444
+ var asrjt_Float32_isZero = ($this) => {
31513
31445
  let var$1;
31514
- var$1 = $this.$bits1;
31515
- return Long_ne(var$1, Long_ZERO) && Long_ne(var$1, Long_create(0, 2147483648)) ? 0 : 1;
31446
+ var$1 = $this.$bits0;
31447
+ return var$1 && var$1 != -2147483648 ? 0 : 1;
31516
31448
  };
31517
- var asrjt_Float64_fromExactFloat0 = ($this, $ef, $env) => {
31449
+ var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
31518
31450
  let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
31519
31451
  if (asrji_ExactFloat_isZero($ef))
31520
- return !$ef.$sign ? asrjt_Float64_Zero : asrjt_Float64_NegativeZero;
31452
+ return !$ef.$sign ? asrjt_Float32_Zero : asrjt_Float32_NegativeZero;
31521
31453
  $ef = asrji_ExactFloat_normalize($ef);
31522
31454
  $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
31523
- if ($normalizedExponent > -1022) {
31524
- if ($normalizedExponent > 1024) {
31455
+ if ($normalizedExponent > -126) {
31456
+ if ($normalizedExponent > 128) {
31525
31457
  $mainBits = $env.$flags;
31526
31458
  $roundedBits = asrj_Flags_overflow;
31527
31459
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31528
31460
  $mainBits = $env.$flags;
31529
31461
  $roundedBits = asrj_Flags_inexact;
31530
31462
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31531
- asrjt_Float64$1_$callClinit();
31532
- switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31463
+ asrjt_Float32$1_$callClinit();
31464
+ switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31533
31465
  case 1:
31534
31466
  break;
31535
31467
  case 2:
31536
31468
  case 3:
31537
31469
  $normalizedExponent = $ef.$sign;
31538
31470
  if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31539
- return asrjt_Float64__init_0($normalizedExponent, 1023, Long_fromInt(-1));
31540
- return !$normalizedExponent ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31471
+ return asrjt_Float32__init_0($normalizedExponent, 127, -1);
31472
+ return !$normalizedExponent ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31541
31473
  case 4:
31542
31474
  case 5:
31543
- return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31475
+ return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31544
31476
  default:
31545
- if (!asrjt_Float64_$assertionsDisabled)
31477
+ if (!asrjt_Float32_$assertionsDisabled)
31546
31478
  $rt_throw(jl_AssertionError__init_($rt_s(1617)));
31547
- return !$ef.$sign ? asrjt_Float64_Infinity : asrjt_Float64_NegativeInfinity;
31479
+ return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31548
31480
  }
31549
- return asrjt_Float64__init_0($ef.$sign, 1023, Long_fromInt(-1));
31481
+ return asrjt_Float32__init_0($ef.$sign, 127, -1);
31550
31482
  }
31551
- if (jm_BigInteger_bitLength($ef.$significand) <= 53) {
31552
- if (!asrjt_Float64_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -1023)
31483
+ if (jm_BigInteger_bitLength($ef.$significand) <= 24) {
31484
+ if (!asrjt_Float32_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -127)
31553
31485
  $rt_throw(jl_AssertionError__init_($rt_s(1618)));
31554
- $a = new asrjt_Float64();
31486
+ $a = new asrjt_Float32();
31555
31487
  $normalizedExponent = $ef.$sign;
31556
31488
  $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
31557
31489
  $ef = $ef.$significand;
31558
- 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)));
31490
+ asrjt_Float32__init_1($a, $normalizedExponent, $bitsToRound, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef, 24 - jm_BigInteger_bitLength($ef) | 0)) & 8388607);
31559
31491
  return $a;
31560
31492
  }
31561
31493
  $mainBits = $env.$flags;
31562
31494
  $roundedBits = asrj_Flags_inexact;
31563
31495
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31564
- $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 53 | 0;
31496
+ $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 24 | 0;
31565
31497
  $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31566
31498
  $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31567
31499
  $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31568
- $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)));
31569
- $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)));
31500
+ $towardsZero = asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)) & 8388607);
31501
+ $awayZero = !jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 24 ? asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 24 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($upBits, 1)) & 8388607) : asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact($upBits) & 8388607);
31570
31502
  } else {
31571
- if ($ef.$exponent0 > -1075) {
31572
- if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 52)
31503
+ if ($ef.$exponent0 > -150) {
31504
+ if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 23)
31573
31505
  $rt_throw(jl_AssertionError__init_($rt_s(1619)));
31574
- return asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftLeft($ef.$significand, 1074 + $ef.$exponent0 | 0)));
31506
+ return asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef.$significand, 149 + $ef.$exponent0 | 0)));
31575
31507
  }
31576
31508
  $mainBits = $env.$flags;
31577
31509
  $roundedBits = asrj_Flags_inexact;
@@ -31579,21 +31511,21 @@ var asrjt_Float64_fromExactFloat0 = ($this, $ef, $env) => {
31579
31511
  $mainBits = $env.$flags;
31580
31512
  $roundedBits = asrj_Flags_underflow;
31581
31513
  ju_GenericEnumSet_add($mainBits, $roundedBits);
31582
- $bitsToRound = -1074 - $ef.$exponent0 | 0;
31514
+ $bitsToRound = -149 - $ef.$exponent0 | 0;
31583
31515
  $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
31584
31516
  $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
31585
- $towardsZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
31517
+ $towardsZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
31586
31518
  $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
31587
- if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 52)
31588
- $awayZero = asrjt_Float64__init_0($ef.$sign, -1022, Long_and(jm_BigInteger_longValueExact($upBits), Long_create(4294967295, 1048575)));
31519
+ if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 23)
31520
+ $awayZero = asrjt_Float32__init_0($ef.$sign, -126, jm_BigInteger_intValueExact($upBits) & 8388607);
31589
31521
  else {
31590
- if (!asrjt_Float64_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 52)
31522
+ if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 23)
31591
31523
  $rt_throw(jl_AssertionError__init_1());
31592
- $awayZero = asrjt_Float64__init_0($ef.$sign, -1023, jm_BigInteger_longValueExact($upBits));
31524
+ $awayZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact($upBits));
31593
31525
  }
31594
31526
  }
31595
- asrjt_Float64$1_$callClinit();
31596
- switch (asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31527
+ asrjt_Float32$1_$callClinit();
31528
+ switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31597
31529
  case 1:
31598
31530
  break;
31599
31531
  case 2:
@@ -31609,69 +31541,279 @@ var asrjt_Float64_fromExactFloat0 = ($this, $ef, $env) => {
31609
31541
  return $towardsZero;
31610
31542
  return $awayZero;
31611
31543
  }
31612
- if ($env.$mode !== asrj_RoundingMode_away && Long_ne(Long_and($awayZero.$bits1, Long_fromInt(1)), Long_ZERO))
31544
+ if ($env.$mode !== asrj_RoundingMode_away && $awayZero.$bits0 & 1)
31613
31545
  return $towardsZero;
31614
31546
  return $awayZero;
31615
31547
  }
31616
31548
  return $towardsZero;
31617
31549
  };
31618
- var asrjt_Float64_toExactFloat = ($this) => {
31550
+ var asrjt_Float32_toExactFloat = ($this) => {
31619
31551
  let $sign, $exponent, $significand;
31620
- if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isInfinite($this))
31552
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isInfinite($this))
31621
31553
  $rt_throw(jl_AssertionError__init_($rt_s(1620)));
31622
- if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isNaN($this))
31554
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isNaN($this))
31623
31555
  $rt_throw(jl_AssertionError__init_($rt_s(1621)));
31624
- if (!asrjt_Float64_$assertionsDisabled && asrjt_Float64_isZero($this))
31556
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isZero($this))
31625
31557
  $rt_throw(jl_AssertionError__init_($rt_s(1622)));
31626
- $sign = asrjt_Float64_isSignMinus($this);
31627
- if (asrjt_Float64_isZero($this)) {
31558
+ $sign = asrjt_Float32_isSignMinus($this);
31559
+ if (asrjt_Float32_isZero($this)) {
31628
31560
  $exponent = 0;
31629
31561
  $significand = jm_BigInteger_ZERO;
31630
- } else if (asrjt_Float64_isNormal($this)) {
31631
- $exponent = asrjt_Float64_exponent($this) - 52 | 0;
31632
- $significand = jm_BigInteger_valueOf(Long_add(Long_and($this.$bits1, Long_create(4294967295, 1048575)), Long_create(0, 1048576)));
31562
+ } else if (asrjt_Float32_isNormal($this)) {
31563
+ $exponent = asrjt_Float32_exponent($this) - 23 | 0;
31564
+ $significand = jm_BigInteger_valueOf(Long_fromInt(($this.$bits0 & 8388607) + 8388608 | 0));
31633
31565
  } else {
31634
- if (!asrjt_Float64_isSubnormal($this)) {
31635
- if (asrjt_Float64_$assertionsDisabled)
31566
+ if (!asrjt_Float32_isSubnormal($this)) {
31567
+ if (asrjt_Float32_$assertionsDisabled)
31636
31568
  return null;
31637
31569
  $rt_throw(jl_AssertionError__init_($rt_s(1623)));
31638
31570
  }
31639
- $exponent = asrjt_Float64_exponent($this) - 51 | 0;
31640
- $significand = jm_BigInteger_valueOf(Long_and($this.$bits1, Long_create(4294967295, 1048575)));
31571
+ $exponent = asrjt_Float32_exponent($this) - 22 | 0;
31572
+ $significand = jm_BigInteger_valueOf(Long_fromInt($this.$bits0 & 8388607));
31641
31573
  }
31642
31574
  return asrji_ExactFloat__init_($sign, $exponent, $significand);
31643
31575
  };
31644
- var asrjt_Float64_maxPrecision = ($this) => {
31645
- return 60;
31576
+ var asrjt_Float32_maxPrecision = ($this) => {
31577
+ return 30;
31646
31578
  };
31647
- var asrjt_Float64_negate0 = ($this) => {
31648
- return asrjt_Float64_negate($this);
31579
+ var asrjt_Float32_negate0 = ($this) => {
31580
+ return asrjt_Float32_negate($this);
31649
31581
  };
31650
- var asrjt_Float64_fromExactFloat = ($this, var$1, var$2) => {
31651
- return asrjt_Float64_fromExactFloat0($this, var$1, var$2);
31582
+ var asrjt_Float32_fromExactFloat = ($this, var$1, var$2) => {
31583
+ return asrjt_Float32_fromExactFloat0($this, var$1, var$2);
31652
31584
  };
31653
- var asrjt_Float64_NegativeInfinity0 = ($this) => {
31654
- return asrjt_Float64_NegativeInfinity;
31585
+ var asrjt_Float32_NegativeInfinity0 = ($this) => {
31586
+ return asrjt_Float32_NegativeInfinity;
31655
31587
  };
31656
- var asrjt_Float64_Infinity0 = ($this) => {
31657
- return asrjt_Float64_Infinity;
31588
+ var asrjt_Float32_Infinity0 = ($this) => {
31589
+ return asrjt_Float32_Infinity;
31658
31590
  };
31659
- var asrjt_Float64_NegativeZero0 = ($this) => {
31660
- return asrjt_Float64_NegativeZero;
31591
+ var asrjt_Float32_NegativeZero0 = ($this) => {
31592
+ return asrjt_Float32_NegativeZero;
31661
31593
  };
31662
- var asrjt_Float64_Zero0 = ($this) => {
31663
- return asrjt_Float64_Zero;
31594
+ var asrjt_Float32_Zero0 = ($this) => {
31595
+ return asrjt_Float32_Zero;
31664
31596
  };
31665
- var asrjt_Float64_NaN0 = ($this) => {
31666
- return asrjt_Float64_NaN;
31597
+ var asrjt_Float32_NaN0 = ($this) => {
31598
+ return asrjt_Float32_NaN;
31667
31599
  };
31668
- var asrjt_Float64__clinit_ = () => {
31669
- asrjt_Float64_$assertionsDisabled = 0;
31670
- asrjt_Float64_Zero = asrjt_Float64__init_(Long_ZERO);
31671
- asrjt_Float64_NegativeZero = asrjt_Float64__init_(Long_create(0, 2147483648));
31672
- asrjt_Float64_NaN = asrjt_Float64__init_(Long_create(0, 2146959360));
31673
- asrjt_Float64_Infinity = asrjt_Float64__init_(Long_create(0, 2146435072));
31674
- asrjt_Float64_NegativeInfinity = asrjt_Float64__init_(Long_create(0, 4293918720));
31600
+ var asrjt_Float32__clinit_ = () => {
31601
+ asrjt_Float32_$assertionsDisabled = 0;
31602
+ asrjt_Float32_Zero = asrjt_Float32__init_(0);
31603
+ asrjt_Float32_NegativeZero = asrjt_Float32__init_(-2147483648);
31604
+ asrjt_Float32_NaN = asrjt_Float32__init_(2143289344);
31605
+ asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
31606
+ asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
31607
+ };
31608
+ var asrjo_Conversions = $rt_classWithoutFields();
31609
+ var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
31610
+ let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
31611
+ if ($f.$isNaN()) {
31612
+ $f = $env.$flags;
31613
+ $min = asrj_Flags_invalid;
31614
+ ju_GenericEnumSet_add($f, $min);
31615
+ return $max;
31616
+ }
31617
+ if ($f.$isInfinite()) {
31618
+ $env = $env.$flags;
31619
+ $copy = asrj_Flags_invalid;
31620
+ ju_GenericEnumSet_add($env, $copy);
31621
+ if ($f.$isSignMinus())
31622
+ $max = $min;
31623
+ return $max;
31624
+ }
31625
+ $copy = asrj_Environment__init_();
31626
+ $copy.$mode = $env.$mode;
31627
+ if ($f.$isZero())
31628
+ $rounded = jm_BigInteger_ZERO;
31629
+ else {
31630
+ $f = $f.$toExactFloat();
31631
+ if (asrji_ExactFloat_isZero($f))
31632
+ $rounded = jm_BigInteger_ZERO;
31633
+ else {
31634
+ if (asrji_ExactFloat_isZero($f))
31635
+ $rounded = $f;
31636
+ else {
31637
+ $rounded = asrji_ExactFloat_normalize($f);
31638
+ var$8 = $rounded.$exponent0;
31639
+ if (var$8 < 0) {
31640
+ var$8 = -var$8 | 0;
31641
+ var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
31642
+ var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
31643
+ var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
31644
+ var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
31645
+ var$12 = $env.$mode;
31646
+ if (var$12 === asrj_RoundingMode_zero)
31647
+ $rounded = var$9;
31648
+ else {
31649
+ var$13 = asrj_RoundingMode_max;
31650
+ if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
31651
+ $rounded = jm_BigInteger_ONE;
31652
+ var$8 = var$8 - 1 | 0;
31653
+ $rounded = !jm_BigInteger_equals(var$10, jm_BigInteger_shiftLeft($rounded, var$8)) ? jm_BigInteger_compareTo(var$10, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, var$8)) <= 0 ? var$9 : var$11 : $env.$mode !== asrj_RoundingMode_away && !jm_BigInteger_testBit(var$9.$significand, 0) ? var$9 : var$11;
31654
+ } else
31655
+ $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
31656
+ }
31657
+ }
31658
+ }
31659
+ $rounded = asrji_ExactFloat_normalize($rounded);
31660
+ if (asrji_ExactFloat_compareTo($rounded, $f)) {
31661
+ var$9 = $env.$flags;
31662
+ var$10 = asrj_Flags_inexact;
31663
+ ju_GenericEnumSet_add(var$9, var$10);
31664
+ }
31665
+ if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
31666
+ $rt_throw(jl_AssertionError__init_($rt_s(1624)));
31667
+ $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
31668
+ }
31669
+ }
31670
+ if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
31671
+ $f = $env.$flags;
31672
+ $env = asrj_Flags_invalid;
31673
+ ju_GenericEnumSet_add($f, $env);
31674
+ } else if (!$quiet) {
31675
+ $f = $copy.$flags;
31676
+ $copy = asrj_Flags_inexact;
31677
+ if (ju_GenericEnumSet_contains($f, $copy)) {
31678
+ $f = $env.$flags;
31679
+ $env = asrj_Flags_inexact;
31680
+ ju_GenericEnumSet_add($f, $env);
31681
+ }
31682
+ }
31683
+ if (jm_BigInteger_compareTo($rounded, $max) == -1)
31684
+ $max = $rounded;
31685
+ if (jm_BigInteger_compareTo($max, $min) == 1)
31686
+ $min = $max;
31687
+ return $min;
31688
+ };
31689
+ var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
31690
+ return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
31691
+ };
31692
+ var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
31693
+ return Long_lo(Long_and(jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 0)), jm_BigInteger_ZERO, $env, $quiet)), Long_create(4294967295, 0)));
31694
+ };
31695
+ var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
31696
+ return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
31697
+ };
31698
+ var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
31699
+ return jm_BigInteger_longValue(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_add(jm_BigInteger_valueOf(Long_fromInt(-1)), jm_BigInteger_shiftLeft(jm_BigInteger_ONE, 64)), jm_BigInteger_ZERO, $env, $quiet));
31700
+ };
31701
+ var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
31702
+ let var$4;
31703
+ if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
31704
+ return $helper.$Zero();
31705
+ var$4 = new asrji_ExactFloat();
31706
+ if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
31707
+ var$4.$sign = 0;
31708
+ else {
31709
+ var$4.$sign = 1;
31710
+ $i = jm_BigInteger_negate($i);
31711
+ }
31712
+ var$4.$exponent0 = 0;
31713
+ var$4.$significand = $i;
31714
+ return $helper.$fromExactFloat(var$4, $env);
31715
+ };
31716
+ var asrjo_Comparisons = $rt_classWithoutFields();
31717
+ var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
31718
+ if ($a.$isZero()) {
31719
+ if ($b.$isZero())
31720
+ return 0;
31721
+ return !$b.$isSignMinus() ? -1 : 1;
31722
+ }
31723
+ if ($b.$isZero())
31724
+ return !$a.$isSignMinus() ? 1 : -1;
31725
+ if (!$a.$isInfinite()) {
31726
+ if (!$b.$isInfinite())
31727
+ return asrji_ExactFloat_compareTo($a.$toExactFloat(), $b.$toExactFloat());
31728
+ return !$b.$isSignMinus() ? -1 : 1;
31729
+ }
31730
+ if ($b.$isInfinite() && $a.$isSignMinus() == $b.$isSignMinus())
31731
+ return 0;
31732
+ return !$a.$isSignMinus() ? -1 : 1;
31733
+ };
31734
+ var asrjo_Comparisons_nonNaNmin = ($a, $b) => {
31735
+ if ($a.$isSignMinus() != $b.$isSignMinus()) {
31736
+ if ($a.$isSignMinus())
31737
+ $b = $a;
31738
+ return $b;
31739
+ }
31740
+ if (!$a.$isInfinite() && !$b.$isInfinite()) {
31741
+ if (asrjo_Comparisons_compareNoNAN($a, $b) > 0)
31742
+ return $b;
31743
+ return $a;
31744
+ }
31745
+ if ($a.$isInfinite() != $a.$isSignMinus())
31746
+ return $b;
31747
+ return $a;
31748
+ };
31749
+ var asrjo_Comparisons_handleNaNNumber = ($a, $b, $env) => {
31750
+ let var$4;
31751
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31752
+ var$4 = $env.$flags;
31753
+ $env = asrj_Flags_invalid;
31754
+ ju_GenericEnumSet_add(var$4, $env);
31755
+ }
31756
+ if ($a.$isNaN()) {
31757
+ if ($b.$isNaN())
31758
+ $b = $b.$NaN();
31759
+ } else
31760
+ $b = !$b.$isNaN() ? null : $a;
31761
+ return $b;
31762
+ };
31763
+ var asrjo_Comparisons_minimumNumber = ($a, $b, $env) => {
31764
+ let $tmp_0;
31765
+ $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
31766
+ if ($tmp_0 !== null)
31767
+ return $tmp_0;
31768
+ return asrjo_Comparisons_nonNaNmin($a, $b);
31769
+ };
31770
+ var asrjo_Comparisons_maximumNumber = ($a, $b, $env) => {
31771
+ let $tmp_0;
31772
+ $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
31773
+ if ($tmp_0 !== null)
31774
+ return $tmp_0;
31775
+ if ($a === asrjo_Comparisons_nonNaNmin($a, $b))
31776
+ $a = $b;
31777
+ return $a;
31778
+ };
31779
+ var asrjo_Comparisons_compareQuietEqual = ($a, $b, $env) => {
31780
+ let var$4;
31781
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31782
+ var$4 = $env.$flags;
31783
+ $env = asrj_Flags_invalid;
31784
+ ju_GenericEnumSet_add(var$4, $env);
31785
+ }
31786
+ if (!$a.$isNaN() && !$b.$isNaN())
31787
+ return asrjo_Comparisons_compareNoNAN($a, $b) ? 0 : 1;
31788
+ return 0;
31789
+ };
31790
+ var asrjo_Comparisons_compareSignalingLessThan = ($a, $b, $env) => {
31791
+ let var$4, var$5;
31792
+ if (!(!$a.$isNaN() && !$b.$isNaN())) {
31793
+ var$4 = $env.$flags;
31794
+ var$5 = asrj_Flags_invalid;
31795
+ ju_GenericEnumSet_add(var$4, var$5);
31796
+ }
31797
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31798
+ var$5 = $env.$flags;
31799
+ $env = asrj_Flags_invalid;
31800
+ ju_GenericEnumSet_add(var$5, $env);
31801
+ }
31802
+ return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) >= 0 ? 0 : 1 : 0;
31803
+ };
31804
+ var asrjo_Comparisons_compareSignalingLessThanEqual = ($a, $b, $env) => {
31805
+ let var$4, var$5;
31806
+ if (!(!$a.$isNaN() && !$b.$isNaN())) {
31807
+ var$4 = $env.$flags;
31808
+ var$5 = asrj_Flags_invalid;
31809
+ ju_GenericEnumSet_add(var$4, var$5);
31810
+ }
31811
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
31812
+ var$5 = $env.$flags;
31813
+ $env = asrj_Flags_invalid;
31814
+ ju_GenericEnumSet_add(var$5, $env);
31815
+ }
31816
+ return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) > 0 ? 0 : 1 : 0;
31675
31817
  };
31676
31818
  function jm_BigInteger() {
31677
31819
  let a = this;
@@ -31875,7 +32017,7 @@ var jm_BigInteger_testBit = ($this, $n) => {
31875
32017
  return !($this.$digits.data[0] & 1) ? 0 : 1;
31876
32018
  if ($n < 0) {
31877
32019
  var$2 = new jl_ArithmeticException();
31878
- jl_Throwable__init_0(var$2, $rt_s(1624));
32020
+ jl_Throwable__init_0(var$2, $rt_s(1625));
31879
32021
  $rt_throw(var$2);
31880
32022
  }
31881
32023
  $intCount = $n >> 5;
@@ -31903,7 +32045,7 @@ var jm_BigInteger_intValueExact = ($this) => {
31903
32045
  if ($this.$numberLength <= 1 && jm_BigInteger_bitLength($this) <= 31)
31904
32046
  return $rt_imul($this.$sign0, $this.$digits.data[0]);
31905
32047
  var$1 = new jl_ArithmeticException();
31906
- jl_Throwable__init_0(var$1, $rt_s(1625));
32048
+ jl_Throwable__init_0(var$1, $rt_s(1626));
31907
32049
  $rt_throw(var$1);
31908
32050
  };
31909
32051
  var jm_BigInteger_longValue = ($this) => {
@@ -31921,7 +32063,7 @@ var jm_BigInteger_longValueExact = ($this) => {
31921
32063
  if ($this.$numberLength <= 2 && jm_BigInteger_bitLength($this) <= 63)
31922
32064
  return jm_BigInteger_longValue($this);
31923
32065
  var$1 = new jl_ArithmeticException();
31924
- jl_Throwable__init_0(var$1, $rt_s(1626));
32066
+ jl_Throwable__init_0(var$1, $rt_s(1627));
31925
32067
  $rt_throw(var$1);
31926
32068
  };
31927
32069
  var jm_BigInteger_compareTo = ($this, $val) => {
@@ -32042,114 +32184,6 @@ var jm_BigInteger__clinit_ = () => {
32042
32184
  $i = $i + 1 | 0;
32043
32185
  }
32044
32186
  };
32045
- var asrjo_Conversions = $rt_classWithoutFields();
32046
- var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
32047
- let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
32048
- if ($f.$isNaN()) {
32049
- $f = $env.$flags;
32050
- $min = asrj_Flags_invalid;
32051
- ju_GenericEnumSet_add($f, $min);
32052
- return $max;
32053
- }
32054
- if ($f.$isInfinite()) {
32055
- $env = $env.$flags;
32056
- $copy = asrj_Flags_invalid;
32057
- ju_GenericEnumSet_add($env, $copy);
32058
- if ($f.$isSignMinus())
32059
- $max = $min;
32060
- return $max;
32061
- }
32062
- $copy = asrj_Environment__init_();
32063
- $copy.$mode = $env.$mode;
32064
- if ($f.$isZero())
32065
- $rounded = jm_BigInteger_ZERO;
32066
- else {
32067
- $f = $f.$toExactFloat();
32068
- if (asrji_ExactFloat_isZero($f))
32069
- $rounded = jm_BigInteger_ZERO;
32070
- else {
32071
- if (asrji_ExactFloat_isZero($f))
32072
- $rounded = $f;
32073
- else {
32074
- $rounded = asrji_ExactFloat_normalize($f);
32075
- var$8 = $rounded.$exponent0;
32076
- if (var$8 < 0) {
32077
- var$8 = -var$8 | 0;
32078
- var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
32079
- var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
32080
- var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
32081
- var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
32082
- var$12 = $env.$mode;
32083
- if (var$12 === asrj_RoundingMode_zero)
32084
- $rounded = var$9;
32085
- else {
32086
- var$13 = asrj_RoundingMode_max;
32087
- if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
32088
- $rounded = jm_BigInteger_ONE;
32089
- var$8 = var$8 - 1 | 0;
32090
- $rounded = !jm_BigInteger_equals(var$10, jm_BigInteger_shiftLeft($rounded, var$8)) ? jm_BigInteger_compareTo(var$10, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, var$8)) <= 0 ? var$9 : var$11 : $env.$mode !== asrj_RoundingMode_away && !jm_BigInteger_testBit(var$9.$significand, 0) ? var$9 : var$11;
32091
- } else
32092
- $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
32093
- }
32094
- }
32095
- }
32096
- $rounded = asrji_ExactFloat_normalize($rounded);
32097
- if (asrji_ExactFloat_compareTo($rounded, $f)) {
32098
- var$9 = $env.$flags;
32099
- var$10 = asrj_Flags_inexact;
32100
- ju_GenericEnumSet_add(var$9, var$10);
32101
- }
32102
- if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
32103
- $rt_throw(jl_AssertionError__init_($rt_s(1627)));
32104
- $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
32105
- }
32106
- }
32107
- if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
32108
- $f = $env.$flags;
32109
- $env = asrj_Flags_invalid;
32110
- ju_GenericEnumSet_add($f, $env);
32111
- } else if (!$quiet) {
32112
- $f = $copy.$flags;
32113
- $copy = asrj_Flags_inexact;
32114
- if (ju_GenericEnumSet_contains($f, $copy)) {
32115
- $f = $env.$flags;
32116
- $env = asrj_Flags_inexact;
32117
- ju_GenericEnumSet_add($f, $env);
32118
- }
32119
- }
32120
- if (jm_BigInteger_compareTo($rounded, $max) == -1)
32121
- $max = $rounded;
32122
- if (jm_BigInteger_compareTo($max, $min) == 1)
32123
- $min = $max;
32124
- return $min;
32125
- };
32126
- var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
32127
- return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
32128
- };
32129
- var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
32130
- return Long_lo(Long_and(jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 0)), jm_BigInteger_ZERO, $env, $quiet)), Long_create(4294967295, 0)));
32131
- };
32132
- var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
32133
- return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
32134
- };
32135
- var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
32136
- return jm_BigInteger_longValue(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_add(jm_BigInteger_valueOf(Long_fromInt(-1)), jm_BigInteger_shiftLeft(jm_BigInteger_ONE, 64)), jm_BigInteger_ZERO, $env, $quiet));
32137
- };
32138
- var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32139
- let var$4;
32140
- if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
32141
- return $helper.$Zero();
32142
- var$4 = new asrji_ExactFloat();
32143
- if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
32144
- var$4.$sign = 0;
32145
- else {
32146
- var$4.$sign = 1;
32147
- $i = jm_BigInteger_negate($i);
32148
- }
32149
- var$4.$exponent0 = 0;
32150
- var$4.$significand = $i;
32151
- return $helper.$fromExactFloat(var$4, $env);
32152
- };
32153
32187
  var asrjo_Arithmetic = $rt_classWithoutFields();
32154
32188
  var asrjo_Arithmetic_$assertionsDisabled = 0;
32155
32189
  var asrjo_Arithmetic_add = ($a, $b, $env) => {
@@ -32674,6 +32708,7 @@ var jm_Elementary_subtract = ($a, $aSize, $b, $bSize) => {
32674
32708
  }
32675
32709
  return $res;
32676
32710
  };
32711
+ var jl_ArithmeticException = $rt_classWithoutFields(jl_RuntimeException);
32677
32712
  var jm_BitLevel = $rt_classWithoutFields();
32678
32713
  var jm_BitLevel_shiftLeft = ($source, $count) => {
32679
32714
  let $intCount, var$4, var$5, $resLength, $resDigits, var$8, var$9, var$10, var$11, var$12, $result;
@@ -32788,7 +32823,6 @@ var jm_BitLevel_shiftRight = ($source, $count) => {
32788
32823
  jm_BigInteger_cutOffLeadingZeroes($result);
32789
32824
  return $result;
32790
32825
  };
32791
- var jl_ArithmeticException = $rt_classWithoutFields(jl_RuntimeException);
32792
32826
  var asrrs_NullString = $rt_classWithoutFields();
32793
32827
  var asrrs_NullString_get = ($statement) => {
32794
32828
  return asrrs_NullString_get0($statement, $rt_s(220));
@@ -34958,9 +34992,8 @@ $rt_metadata([
34958
34992
  0,
34959
34993
  0,
34960
34994
  0,
34961
- asr_JsCompilationResult,
34962
- "JsCompilationResult",
34963
- 10,
34995
+ ju_Arrays,
34996
+ 0,
34964
34997
  jl_Object,
34965
34998
  [],
34966
34999
  0,
@@ -34968,29 +35001,19 @@ $rt_metadata([
34968
35001
  0,
34969
35002
  0,
34970
35003
  0,
34971
- asr_AssemblyException,
34972
- 0,
34973
- jl_Exception,
34974
- [],
34975
- 0,
34976
- 3,
34977
- 0,
34978
- 0,
35004
+ juf_ToIntFunction,
34979
35005
  0,
34980
- asr_JsStackFrame,
34981
- "JsStackFrame",
34982
- 10,
34983
35006
  jl_Object,
34984
35007
  [],
34985
- 0,
35008
+ 3,
34986
35009
  3,
34987
35010
  0,
34988
35011
  0,
34989
35012
  0,
34990
- ju_Arrays,
35013
+ asr_JsRiscV$getRegistersValues$lambda$_20_0,
34991
35014
  0,
34992
35015
  jl_Object,
34993
- [],
35016
+ [juf_ToIntFunction],
34994
35017
  0,
34995
35018
  3,
34996
35019
  0,
@@ -35024,19 +35047,30 @@ $rt_metadata([
35024
35047
  0,
35025
35048
  0,
35026
35049
  0,
35027
- juf_ToIntFunction,
35028
- 0,
35050
+ asr_JsStackFrame,
35051
+ "JsStackFrame",
35052
+ 10,
35029
35053
  jl_Object,
35030
35054
  [],
35055
+ 0,
35031
35056
  3,
35057
+ 0,
35058
+ 0,
35059
+ 0,
35060
+ asr_JsCompilationResult,
35061
+ "JsCompilationResult",
35062
+ 10,
35063
+ jl_Object,
35064
+ [],
35065
+ 0,
35032
35066
  3,
35033
35067
  0,
35034
35068
  0,
35035
35069
  0,
35036
- asr_JsRiscV$getRegistersValues$lambda$_20_0,
35070
+ asr_AssemblyException,
35037
35071
  0,
35038
- jl_Object,
35039
- [juf_ToIntFunction],
35072
+ jl_Exception,
35073
+ [],
35040
35074
  0,
35041
35075
  3,
35042
35076
  0,
@@ -35154,6 +35188,62 @@ $rt_metadata([
35154
35188
  0,
35155
35189
  0,
35156
35190
  0,
35191
+ jl_AutoCloseable,
35192
+ 0,
35193
+ jl_Object,
35194
+ [],
35195
+ 3,
35196
+ 3,
35197
+ 0,
35198
+ 0,
35199
+ 0,
35200
+ jus_BaseStream,
35201
+ 0,
35202
+ jl_Object,
35203
+ [jl_AutoCloseable],
35204
+ 3,
35205
+ 3,
35206
+ 0,
35207
+ 0,
35208
+ 0,
35209
+ jus_Stream,
35210
+ 0,
35211
+ jl_Object,
35212
+ [jus_BaseStream],
35213
+ 3,
35214
+ 3,
35215
+ 0,
35216
+ 0,
35217
+ 0
35218
+ ]);
35219
+ $rt_metadata([
35220
+ jusi_SimpleStreamImpl,
35221
+ 0,
35222
+ jl_Object,
35223
+ [jus_Stream],
35224
+ 1,
35225
+ 3,
35226
+ 0,
35227
+ 0,
35228
+ 0,
35229
+ jusi_ArrayStreamImpl,
35230
+ 0,
35231
+ jusi_SimpleStreamImpl,
35232
+ [],
35233
+ 0,
35234
+ 3,
35235
+ 0,
35236
+ 0,
35237
+ ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35238
+ asrs_BackStepper$BackstepStack,
35239
+ 0,
35240
+ jl_Object,
35241
+ [],
35242
+ 0,
35243
+ 3,
35244
+ 0,
35245
+ 0,
35246
+ 0,
35157
35247
  asr_JsCompilationResult$_init_$lambda$_0_0,
35158
35248
  0,
35159
35249
  jl_Object,
@@ -35180,9 +35270,7 @@ $rt_metadata([
35180
35270
  3,
35181
35271
  0,
35182
35272
  0,
35183
- 0
35184
- ]);
35185
- $rt_metadata([
35273
+ 0,
35186
35274
  juf_BiConsumer,
35187
35275
  0,
35188
35276
  jl_Object,
@@ -35210,60 +35298,6 @@ $rt_metadata([
35210
35298
  0,
35211
35299
  0,
35212
35300
  0,
35213
- asrs_BackStepper$BackstepStack,
35214
- 0,
35215
- jl_Object,
35216
- [],
35217
- 0,
35218
- 3,
35219
- 0,
35220
- 0,
35221
- 0,
35222
- jl_AutoCloseable,
35223
- 0,
35224
- jl_Object,
35225
- [],
35226
- 3,
35227
- 3,
35228
- 0,
35229
- 0,
35230
- 0,
35231
- jus_BaseStream,
35232
- 0,
35233
- jl_Object,
35234
- [jl_AutoCloseable],
35235
- 3,
35236
- 3,
35237
- 0,
35238
- 0,
35239
- 0,
35240
- jus_Stream,
35241
- 0,
35242
- jl_Object,
35243
- [jus_BaseStream],
35244
- 3,
35245
- 3,
35246
- 0,
35247
- 0,
35248
- 0,
35249
- jusi_SimpleStreamImpl,
35250
- 0,
35251
- jl_Object,
35252
- [jus_Stream],
35253
- 1,
35254
- 3,
35255
- 0,
35256
- 0,
35257
- 0,
35258
- jusi_ArrayStreamImpl,
35259
- 0,
35260
- jusi_SimpleStreamImpl,
35261
- [],
35262
- 0,
35263
- 3,
35264
- 0,
35265
- 0,
35266
- ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35267
35301
  jl_Math,
35268
35302
  0,
35269
35303
  jl_Object,
@@ -36814,8 +36848,9 @@ $rt_metadata([
36814
36848
  0,
36815
36849
  0,
36816
36850
  0,
36817
- asr_ErrorList,
36818
- 0,
36851
+ asrrh_StackFrame,
36852
+ "StackFrame",
36853
+ 7,
36819
36854
  jl_Object,
36820
36855
  [],
36821
36856
  0,
@@ -36823,7 +36858,7 @@ $rt_metadata([
36823
36858
  0,
36824
36859
  0,
36825
36860
  0,
36826
- asrrh_StackFrame,
36861
+ asr_ErrorList,
36827
36862
  0,
36828
36863
  jl_Object,
36829
36864
  [],
@@ -37467,24 +37502,6 @@ $rt_metadata([
37467
37502
  0,
37468
37503
  0,
37469
37504
  ["$next1", $rt_wrapFunction1(jusi_StreamOverSpliterator_next), "$estimateSize", $rt_wrapFunction0(jusi_StreamOverSpliterator_estimateSize)],
37470
- jusi_WrappingStreamImpl,
37471
- 0,
37472
- jusi_SimpleStreamImpl,
37473
- [],
37474
- 1,
37475
- 3,
37476
- 0,
37477
- 0,
37478
- 0,
37479
- jusi_MappingStreamImpl,
37480
- 0,
37481
- jusi_WrappingStreamImpl,
37482
- [],
37483
- 0,
37484
- 3,
37485
- 0,
37486
- 0,
37487
- ["$wrap3", $rt_wrapFunction1(jusi_MappingStreamImpl_wrap)],
37488
37505
  jus_IntStream,
37489
37506
  0,
37490
37507
  jl_Object,
@@ -37512,6 +37529,24 @@ $rt_metadata([
37512
37529
  0,
37513
37530
  0,
37514
37531
  0,
37532
+ jusi_WrappingStreamImpl,
37533
+ 0,
37534
+ jusi_SimpleStreamImpl,
37535
+ [],
37536
+ 1,
37537
+ 3,
37538
+ 0,
37539
+ 0,
37540
+ 0,
37541
+ jusi_MappingStreamImpl,
37542
+ 0,
37543
+ jusi_WrappingStreamImpl,
37544
+ [],
37545
+ 0,
37546
+ 3,
37547
+ 0,
37548
+ 0,
37549
+ ["$wrap3", $rt_wrapFunction1(jusi_MappingStreamImpl_wrap)],
37515
37550
  asru_Binary,
37516
37551
  0,
37517
37552
  jl_Object,
@@ -37566,15 +37601,6 @@ $rt_metadata([
37566
37601
  0,
37567
37602
  0,
37568
37603
  0,
37569
- jlr_Array,
37570
- 0,
37571
- jl_Object,
37572
- [],
37573
- 4,
37574
- 3,
37575
- 0,
37576
- 0,
37577
- 0,
37578
37604
  asrs_Simulator$Reason,
37579
37605
  "Simulator$Reason",
37580
37606
  3,
@@ -37585,6 +37611,15 @@ $rt_metadata([
37585
37611
  0,
37586
37612
  0,
37587
37613
  0,
37614
+ jlr_Array,
37615
+ 0,
37616
+ jl_Object,
37617
+ [],
37618
+ 4,
37619
+ 3,
37620
+ 0,
37621
+ 0,
37622
+ 0,
37588
37623
  jur_Pattern,
37589
37624
  0,
37590
37625
  jl_Object,
@@ -40579,15 +40614,6 @@ $rt_metadata([
40579
40614
  0,
40580
40615
  0,
40581
40616
  0,
40582
- asrjo_Comparisons,
40583
- 0,
40584
- jl_Object,
40585
- [],
40586
- 0,
40587
- 3,
40588
- 0,
40589
- 0,
40590
- 0,
40591
40617
  asrjt_Floating,
40592
40618
  0,
40593
40619
  jl_Object,
@@ -40597,7 +40623,7 @@ $rt_metadata([
40597
40623
  0,
40598
40624
  0,
40599
40625
  0,
40600
- asrjt_Float32,
40626
+ asrjt_Float64,
40601
40627
  0,
40602
40628
  asrjt_Floating,
40603
40629
  [],
@@ -40607,39 +40633,39 @@ $rt_metadata([
40607
40633
  0,
40608
40634
  [
40609
40635
  "$isSignMinus",
40610
- $rt_wrapFunction0(asrjt_Float32_isSignMinus),
40636
+ $rt_wrapFunction0(asrjt_Float64_isSignMinus),
40611
40637
  "$isInfinite",
40612
- $rt_wrapFunction0(asrjt_Float32_isInfinite),
40638
+ $rt_wrapFunction0(asrjt_Float64_isInfinite),
40613
40639
  "$isNormal",
40614
- $rt_wrapFunction0(asrjt_Float32_isNormal),
40640
+ $rt_wrapFunction0(asrjt_Float64_isNormal),
40615
40641
  "$isSubnormal",
40616
- $rt_wrapFunction0(asrjt_Float32_isSubnormal),
40642
+ $rt_wrapFunction0(asrjt_Float64_isSubnormal),
40617
40643
  "$isNaN",
40618
- $rt_wrapFunction0(asrjt_Float32_isNaN),
40644
+ $rt_wrapFunction0(asrjt_Float64_isNaN),
40619
40645
  "$isSignalling",
40620
- $rt_wrapFunction0(asrjt_Float32_isSignalling),
40646
+ $rt_wrapFunction0(asrjt_Float64_isSignalling),
40621
40647
  "$isZero",
40622
- $rt_wrapFunction0(asrjt_Float32_isZero),
40648
+ $rt_wrapFunction0(asrjt_Float64_isZero),
40623
40649
  "$toExactFloat",
40624
- $rt_wrapFunction0(asrjt_Float32_toExactFloat),
40650
+ $rt_wrapFunction0(asrjt_Float64_toExactFloat),
40625
40651
  "$maxPrecision",
40626
- $rt_wrapFunction0(asrjt_Float32_maxPrecision),
40652
+ $rt_wrapFunction0(asrjt_Float64_maxPrecision),
40627
40653
  "$negate2",
40628
- $rt_wrapFunction0(asrjt_Float32_negate0),
40654
+ $rt_wrapFunction0(asrjt_Float64_negate0),
40629
40655
  "$fromExactFloat",
40630
- $rt_wrapFunction2(asrjt_Float32_fromExactFloat),
40656
+ $rt_wrapFunction2(asrjt_Float64_fromExactFloat),
40631
40657
  "$NegativeInfinity",
40632
- $rt_wrapFunction0(asrjt_Float32_NegativeInfinity0),
40658
+ $rt_wrapFunction0(asrjt_Float64_NegativeInfinity0),
40633
40659
  "$Infinity",
40634
- $rt_wrapFunction0(asrjt_Float32_Infinity0),
40660
+ $rt_wrapFunction0(asrjt_Float64_Infinity0),
40635
40661
  "$NegativeZero",
40636
- $rt_wrapFunction0(asrjt_Float32_NegativeZero0),
40662
+ $rt_wrapFunction0(asrjt_Float64_NegativeZero0),
40637
40663
  "$Zero",
40638
- $rt_wrapFunction0(asrjt_Float32_Zero0),
40664
+ $rt_wrapFunction0(asrjt_Float64_Zero0),
40639
40665
  "$NaN",
40640
- $rt_wrapFunction0(asrjt_Float32_NaN0)
40666
+ $rt_wrapFunction0(asrjt_Float64_NaN0)
40641
40667
  ],
40642
- asrjt_Float64,
40668
+ asrjt_Float32,
40643
40669
  0,
40644
40670
  asrjt_Floating,
40645
40671
  [],
@@ -40649,48 +40675,48 @@ $rt_metadata([
40649
40675
  0,
40650
40676
  [
40651
40677
  "$isSignMinus",
40652
- $rt_wrapFunction0(asrjt_Float64_isSignMinus),
40678
+ $rt_wrapFunction0(asrjt_Float32_isSignMinus),
40653
40679
  "$isInfinite",
40654
- $rt_wrapFunction0(asrjt_Float64_isInfinite),
40680
+ $rt_wrapFunction0(asrjt_Float32_isInfinite),
40655
40681
  "$isNormal",
40656
- $rt_wrapFunction0(asrjt_Float64_isNormal),
40682
+ $rt_wrapFunction0(asrjt_Float32_isNormal),
40657
40683
  "$isSubnormal",
40658
- $rt_wrapFunction0(asrjt_Float64_isSubnormal),
40684
+ $rt_wrapFunction0(asrjt_Float32_isSubnormal),
40659
40685
  "$isNaN",
40660
- $rt_wrapFunction0(asrjt_Float64_isNaN),
40686
+ $rt_wrapFunction0(asrjt_Float32_isNaN),
40661
40687
  "$isSignalling",
40662
- $rt_wrapFunction0(asrjt_Float64_isSignalling),
40688
+ $rt_wrapFunction0(asrjt_Float32_isSignalling),
40663
40689
  "$isZero",
40664
- $rt_wrapFunction0(asrjt_Float64_isZero),
40690
+ $rt_wrapFunction0(asrjt_Float32_isZero),
40665
40691
  "$toExactFloat",
40666
- $rt_wrapFunction0(asrjt_Float64_toExactFloat),
40692
+ $rt_wrapFunction0(asrjt_Float32_toExactFloat),
40667
40693
  "$maxPrecision",
40668
- $rt_wrapFunction0(asrjt_Float64_maxPrecision),
40694
+ $rt_wrapFunction0(asrjt_Float32_maxPrecision),
40669
40695
  "$negate2",
40670
- $rt_wrapFunction0(asrjt_Float64_negate0),
40696
+ $rt_wrapFunction0(asrjt_Float32_negate0),
40671
40697
  "$fromExactFloat",
40672
- $rt_wrapFunction2(asrjt_Float64_fromExactFloat),
40698
+ $rt_wrapFunction2(asrjt_Float32_fromExactFloat),
40673
40699
  "$NegativeInfinity",
40674
- $rt_wrapFunction0(asrjt_Float64_NegativeInfinity0),
40700
+ $rt_wrapFunction0(asrjt_Float32_NegativeInfinity0),
40675
40701
  "$Infinity",
40676
- $rt_wrapFunction0(asrjt_Float64_Infinity0),
40702
+ $rt_wrapFunction0(asrjt_Float32_Infinity0),
40677
40703
  "$NegativeZero",
40678
- $rt_wrapFunction0(asrjt_Float64_NegativeZero0),
40704
+ $rt_wrapFunction0(asrjt_Float32_NegativeZero0),
40679
40705
  "$Zero",
40680
- $rt_wrapFunction0(asrjt_Float64_Zero0),
40706
+ $rt_wrapFunction0(asrjt_Float32_Zero0),
40681
40707
  "$NaN",
40682
- $rt_wrapFunction0(asrjt_Float64_NaN0)
40708
+ $rt_wrapFunction0(asrjt_Float32_NaN0)
40683
40709
  ],
40684
- jm_BigInteger,
40710
+ asrjo_Conversions,
40685
40711
  0,
40686
- jl_Number,
40687
- [jl_Comparable, ji_Serializable],
40712
+ jl_Object,
40713
+ [],
40688
40714
  0,
40689
40715
  3,
40690
40716
  0,
40691
40717
  0,
40692
40718
  0,
40693
- asrjo_Conversions,
40719
+ asrjo_Comparisons,
40694
40720
  0,
40695
40721
  jl_Object,
40696
40722
  [],
@@ -40699,6 +40725,15 @@ $rt_metadata([
40699
40725
  0,
40700
40726
  0,
40701
40727
  0,
40728
+ jm_BigInteger,
40729
+ 0,
40730
+ jl_Number,
40731
+ [jl_Comparable, ji_Serializable],
40732
+ 0,
40733
+ 3,
40734
+ 0,
40735
+ 0,
40736
+ 0,
40702
40737
  asrjo_Arithmetic,
40703
40738
  0,
40704
40739
  jl_Object,
@@ -40782,21 +40817,21 @@ $rt_metadata([
40782
40817
  0,
40783
40818
  0,
40784
40819
  0,
40785
- jm_BitLevel,
40820
+ jl_ArithmeticException,
40786
40821
  0,
40787
- jl_Object,
40822
+ jl_RuntimeException,
40788
40823
  [],
40789
40824
  0,
40825
+ 3,
40790
40826
  0,
40791
40827
  0,
40792
40828
  0,
40829
+ jm_BitLevel,
40793
40830
  0,
40794
- jl_ArithmeticException,
40795
- 0,
40796
- jl_RuntimeException,
40831
+ jl_Object,
40797
40832
  [],
40798
40833
  0,
40799
- 3,
40834
+ 0,
40800
40835
  0,
40801
40836
  0,
40802
40837
  0,
@@ -41071,7 +41106,6 @@ $rt_stringPool([
41071
41106
  "Illegal radix: ",
41072
41107
  "Internal RARS error: address exception while back-stepping.",
41073
41108
  "Invalid boolean setting ID",
41074
- "sp",
41075
41109
  "main",
41076
41110
  "object",
41077
41111
  "function",
@@ -41219,6 +41253,7 @@ $rt_stringPool([
41219
41253
  "CompactTextAtZero",
41220
41254
  "Compact, Text at Address 0",
41221
41255
  "gp",
41256
+ "sp",
41222
41257
  ".text base address",
41223
41258
  "data segment base address",
41224
41259
  ".extern base address",
@@ -42678,10 +42713,10 @@ $rt_stringPool([
42678
42713
  "NaNs are not exact",
42679
42714
  "Zeros should be handled explicitly",
42680
42715
  "This should not be reachable",
42716
+ "There can't be any fractions at this point",
42681
42717
  "Negative bit address",
42682
42718
  "BigInteger out of int range",
42683
42719
  "BigInteger out of long range",
42684
- "There can't be any fractions at this point",
42685
42720
  "Square root of a negative number is not real",
42686
42721
  "Cannot get here",
42687
42722
  "Both should definitely be finite by this point",
@@ -42790,15 +42825,18 @@ var $rt_jso_marker = Symbol("jsoClass");
42790
42825
  Object.defineProperty(c, "source", {
42791
42826
  get: $rt_callWithReceiver(asr_JsProgramStatement_getSource$exported$2)
42792
42827
  });
42793
- c = asr_JsCompilationResult.prototype;
42794
- Object.defineProperty(c, "hasErrors", {
42795
- get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
42828
+ c = asr_JsBackStep.prototype;
42829
+ Object.defineProperty(c, "pc", {
42830
+ get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
42796
42831
  });
42797
- Object.defineProperty(c, "report", {
42798
- get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
42832
+ Object.defineProperty(c, "action", {
42833
+ get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
42799
42834
  });
42800
- Object.defineProperty(c, "errors", {
42801
- get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
42835
+ Object.defineProperty(c, "param1", {
42836
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
42837
+ });
42838
+ Object.defineProperty(c, "param2", {
42839
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
42802
42840
  });
42803
42841
  c = asr_JsStackFrame.prototype;
42804
42842
  Object.defineProperty(c, "pc", {
@@ -42816,18 +42854,15 @@ var $rt_jso_marker = Symbol("jsoClass");
42816
42854
  Object.defineProperty(c, "toAddress", {
42817
42855
  get: $rt_callWithReceiver(asr_JsStackFrame_getToAddress$exported$1)
42818
42856
  });
42819
- c = asr_JsBackStep.prototype;
42820
- Object.defineProperty(c, "pc", {
42821
- get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
42822
- });
42823
- Object.defineProperty(c, "action", {
42824
- get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
42857
+ c = asr_JsCompilationResult.prototype;
42858
+ Object.defineProperty(c, "hasErrors", {
42859
+ get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
42825
42860
  });
42826
- Object.defineProperty(c, "param1", {
42827
- get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
42861
+ Object.defineProperty(c, "report", {
42862
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
42828
42863
  });
42829
- Object.defineProperty(c, "param2", {
42830
- get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
42864
+ Object.defineProperty(c, "errors", {
42865
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
42831
42866
  });
42832
42867
  c = asr_JsCompilationResult$JsCompilationError.prototype;
42833
42868
  Object.defineProperty(c, "macroExpansionHistory", {
@@ -42883,18 +42918,18 @@ function $rt_export_class_JsProgramStatement_74() {
42883
42918
  throw new Error("Can't instantiate this class directly");
42884
42919
  }
42885
42920
  $rt_export_class_JsProgramStatement_74.prototype = asr_JsProgramStatement.prototype;
42886
- function $rt_export_class_JsCompilationResult_75() {
42921
+ function $rt_export_class_JsBackStep_80() {
42887
42922
  throw new Error("Can't instantiate this class directly");
42888
42923
  }
42889
- $rt_export_class_JsCompilationResult_75.prototype = asr_JsCompilationResult.prototype;
42890
- function $rt_export_class_JsStackFrame_77() {
42924
+ $rt_export_class_JsBackStep_80.prototype = asr_JsBackStep.prototype;
42925
+ function $rt_export_class_JsStackFrame_81() {
42891
42926
  throw new Error("Can't instantiate this class directly");
42892
42927
  }
42893
- $rt_export_class_JsStackFrame_77.prototype = asr_JsStackFrame.prototype;
42894
- function $rt_export_class_JsBackStep_81() {
42928
+ $rt_export_class_JsStackFrame_81.prototype = asr_JsStackFrame.prototype;
42929
+ function $rt_export_class_JsCompilationResult_82() {
42895
42930
  throw new Error("Can't instantiate this class directly");
42896
42931
  }
42897
- $rt_export_class_JsBackStep_81.prototype = asr_JsBackStep.prototype;
42932
+ $rt_export_class_JsCompilationResult_82.prototype = asr_JsCompilationResult.prototype;
42898
42933
  function $rt_export_class_JsCompilationError_349() {
42899
42934
  throw new Error("Can't instantiate this class directly");
42900
42935
  }