@specy/risc-v 1.0.8 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -27,6 +27,7 @@ __export(index_exports, {
27
27
  RISCVRegisters: () => RISCVRegisters,
28
28
  RISCV_REGISTERS: () => RISCV_REGISTERS,
29
29
  StopReason: () => StopReason,
30
+ bigintToHighLow: () => bigintToHighLow,
30
31
  registerHandlers: () => registerHandlers,
31
32
  unimplementedHandler: () => unimplementedHandler
32
33
  });
@@ -2801,7 +2802,16 @@ var asr_JsRiscV_assemble$exported$7 = (var$1) => {
2801
2802
  }
2802
2803
  return var$2;
2803
2804
  };
2804
- var asr_JsRiscV_undo$exported$8 = (var$1) => {
2805
+ var asr_JsRiscV_setRegisterValue$exported$8 = (var$1, var$2, var$3, var$4) => {
2806
+ let var$5, var$6;
2807
+ asr_JsRiscV_$callClinit();
2808
+ var$2 = $rt_str(var$2);
2809
+ var$5 = var$3;
2810
+ var$6 = var$4;
2811
+ var$1;
2812
+ asrrh_RegisterFile_getRegister(var$2).$setValue(Long_or(Long_shl(Long_fromInt(var$5), 32), Long_and(Long_fromInt(var$6), Long_create(4294967295, 0))));
2813
+ };
2814
+ var asr_JsRiscV_undo$exported$9 = (var$1) => {
2805
2815
  let var$2, var$3, var$4, $$je;
2806
2816
  asr_JsRiscV_$callClinit();
2807
2817
  var$2 = var$1.$main.$main0.$backStepper;
@@ -2880,7 +2890,7 @@ var asr_JsRiscV_undo$exported$8 = (var$1) => {
2880
2890
  var$2.$engaged = 1;
2881
2891
  }
2882
2892
  };
2883
- var asr_JsRiscV_getCompiledStatements$exported$9 = (var$1) => {
2893
+ var asr_JsRiscV_getCompiledStatements$exported$10 = (var$1) => {
2884
2894
  let var$2, var$3, var$4, var$5;
2885
2895
  asr_JsRiscV_$callClinit();
2886
2896
  var$2 = var$1.$main.$main0.$machineList;
@@ -2893,17 +2903,17 @@ var asr_JsRiscV_getCompiledStatements$exported$9 = (var$1) => {
2893
2903
  }
2894
2904
  return otji_JS_wrap(var$3);
2895
2905
  };
2896
- var asr_JsRiscV_getNextStatement$exported$10 = (var$1) => {
2906
+ var asr_JsRiscV_getNextStatement$exported$11 = (var$1) => {
2897
2907
  asr_JsRiscV_$callClinit();
2898
2908
  var$1 = var$1;
2899
2909
  return asr_JsProgramStatement__init_(asr_RARS_getStatementAtAddress(var$1.$main, asrrh_RegisterFile_getProgramCounter()));
2900
2910
  };
2901
- var asr_JsRiscV_terminated$exported$11 = (var$1) => {
2911
+ var asr_JsRiscV_terminated$exported$12 = (var$1) => {
2902
2912
  asr_JsRiscV_$callClinit();
2903
2913
  var$1 = var$1;
2904
2914
  return !!(var$1.$main.$stopReason !== asrs_Simulator$Reason_CLIFF_TERMINATION ? 0 : 1);
2905
2915
  };
2906
- var asr_JsRiscV_initialize$exported$12 = (var$1, var$2) => {
2916
+ var asr_JsRiscV_initialize$exported$13 = (var$1, var$2) => {
2907
2917
  let $$je;
2908
2918
  asr_JsRiscV_$callClinit();
2909
2919
  var$2 ? 1 : 0;
@@ -2932,13 +2942,13 @@ var asr_JsRiscV_initialize$exported$12 = (var$1, var$2) => {
2932
2942
  asr_Globals_exitCode = 0;
2933
2943
  ju_ArrayList_clear(asrrh_Stack_callStack);
2934
2944
  };
2935
- var asr_JsRiscV_getRegisterValueLong$exported$13 = (var$1, var$2) => {
2945
+ var asr_JsRiscV_getRegisterValueLong$exported$14 = (var$1, var$2) => {
2936
2946
  asr_JsRiscV_$callClinit();
2937
2947
  var$2 = $rt_str(var$2);
2938
2948
  var$1;
2939
2949
  return jm_BigInteger_valueOf(asrrh_RegisterFile_getRegister(var$2).$getValue());
2940
2950
  };
2941
- var asr_JsRiscV_getUndoStack$exported$14 = (var$1) => {
2951
+ var asr_JsRiscV_getUndoStack$exported$15 = (var$1) => {
2942
2952
  let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
2943
2953
  asr_JsRiscV_$callClinit();
2944
2954
  var$2 = var$1.$main.$main0.$backStepper.$backSteps;
@@ -2959,7 +2969,7 @@ var asr_JsRiscV_getUndoStack$exported$14 = (var$1) => {
2959
2969
  var$2 = new asr_JsRiscV$getUndoStack$lambda$_26_1();
2960
2970
  return otji_JS_wrap(jusi_SimpleStreamImpl_toArray(var$1, var$2));
2961
2971
  };
2962
- var asr_JsRiscV_setMemoryBytes$exported$15 = (var$1, var$2, var$3) => {
2972
+ var asr_JsRiscV_setMemoryBytes$exported$16 = (var$1, var$2, var$3) => {
2963
2973
  let var$4, var$5, var$6, var$7;
2964
2974
  asr_JsRiscV_$callClinit();
2965
2975
  var$4 = var$2;
@@ -2975,24 +2985,24 @@ var asr_JsRiscV_setMemoryBytes$exported$15 = (var$1, var$2, var$3) => {
2975
2985
  var$6 = var$6 + 1 | 0;
2976
2986
  }
2977
2987
  };
2978
- var asr_JsRiscV_getStatementAtAddress$exported$16 = (var$1, var$2) => {
2988
+ var asr_JsRiscV_getStatementAtAddress$exported$17 = (var$1, var$2) => {
2979
2989
  let var$3;
2980
2990
  asr_JsRiscV_$callClinit();
2981
2991
  var$3 = var$2;
2982
2992
  var$1 = var$1;
2983
2993
  return asr_JsProgramStatement__init_(asr_RARS_getStatementAtAddress(var$1.$main, var$3));
2984
2994
  };
2985
- var asr_JsRiscV_getStackPointerLong$exported$17 = (var$1) => {
2995
+ var asr_JsRiscV_getStackPointerLong$exported$18 = (var$1) => {
2986
2996
  asr_JsRiscV_$callClinit();
2987
2997
  var$1;
2988
2998
  return $rt_ustr(jm_BigInteger_toString(jm_BigInteger_valueOf(asrrh_RegisterFile_getStackPointerRegister().$getValue())));
2989
2999
  };
2990
- var asr_JsRiscV_canUndo$exported$18 = (var$1) => {
3000
+ var asr_JsRiscV_canUndo$exported$19 = (var$1) => {
2991
3001
  asr_JsRiscV_$callClinit();
2992
3002
  var$1 = var$1;
2993
3003
  return !!(asrs_BackStepper$BackstepStack_empty(var$1.$main.$main0.$backStepper.$backSteps) ? 0 : 1);
2994
3004
  };
2995
- var asr_JsRiscV_setUndoSize$exported$19 = (var$1, var$2) => {
3005
+ var asr_JsRiscV_setUndoSize$exported$20 = (var$1, var$2) => {
2996
3006
  let var$3;
2997
3007
  asr_JsRiscV_$callClinit();
2998
3008
  var$3 = var$2;
@@ -3000,7 +3010,7 @@ var asr_JsRiscV_setUndoSize$exported$19 = (var$1, var$2) => {
3000
3010
  asr_Globals_$callClinit();
3001
3011
  asr_Globals_maximumBacksteps = var$3;
3002
3012
  };
3003
- var asr_JsRiscV_getParsedStatements$exported$20 = (var$1) => {
3013
+ var asr_JsRiscV_getParsedStatements$exported$21 = (var$1) => {
3004
3014
  let var$2, var$3, var$4, var$5;
3005
3015
  asr_JsRiscV_$callClinit();
3006
3016
  var$2 = var$1.$main.$main0.$parsedList;
@@ -3013,7 +3023,7 @@ var asr_JsRiscV_getParsedStatements$exported$20 = (var$1) => {
3013
3023
  }
3014
3024
  return otji_JS_wrap(var$3);
3015
3025
  };
3016
- var asr_JsRiscV_getStatementAtSourceLine$exported$21 = (var$1, var$2) => {
3026
+ var asr_JsRiscV_getStatementAtSourceLine$exported$22 = (var$1, var$2) => {
3017
3027
  let var$3;
3018
3028
  asr_JsRiscV_$callClinit();
3019
3029
  var$3 = var$2;
@@ -3031,17 +3041,17 @@ var asr_JsRiscV_getStatementAtSourceLine$exported$21 = (var$1, var$2) => {
3031
3041
  }
3032
3042
  return var$1 === null ? null : asr_JsProgramStatement__init_(var$1);
3033
3043
  };
3034
- var asr_JsRiscV_setUndoEnabled$exported$22 = (var$1, var$2) => {
3044
+ var asr_JsRiscV_setUndoEnabled$exported$23 = (var$1, var$2) => {
3035
3045
  let var$3;
3036
3046
  asr_JsRiscV_$callClinit();
3037
3047
  var$3 = var$2 ? 1 : 0;
3038
3048
  var$1.$main.$main0.$backStepper.$engaged = var$3;
3039
3049
  };
3040
- var asr_JsRiscV_getStopReason$exported$23 = (var$1) => {
3050
+ var asr_JsRiscV_getStopReason$exported$24 = (var$1) => {
3041
3051
  asr_JsRiscV_$callClinit();
3042
3052
  return var$1.$main.$stopReason;
3043
3053
  };
3044
- var asr_JsRiscV_simulate$exported$24 = (var$1) => {
3054
+ var asr_JsRiscV_simulate$exported$25 = (var$1) => {
3045
3055
  let var$2, $ptr, $tmp;
3046
3056
  $ptr = 0;
3047
3057
  if ($rt_resuming()) {
@@ -3070,7 +3080,7 @@ var asr_JsRiscV_simulate$exported$24 = (var$1) => {
3070
3080
  }
3071
3081
  $rt_nativeThread().push(var$1, var$2, $ptr);
3072
3082
  };
3073
- var asr_JsRiscV_getTokenizedLines$exported$25 = (var$1) => {
3083
+ var asr_JsRiscV_getTokenizedLines$exported$26 = (var$1) => {
3074
3084
  let var$2;
3075
3085
  asr_JsRiscV_$callClinit();
3076
3086
  var$1 = ju_Collection_stream(var$1.$main.$main0.$tokenList1);
@@ -3079,7 +3089,7 @@ var asr_JsRiscV_getTokenizedLines$exported$25 = (var$1) => {
3079
3089
  var$2 = new asr_JsRiscV$getTokenizedLines$lambda$_5_1();
3080
3090
  return otji_JS_wrap(jusi_SimpleStreamImpl_toArray(var$1, var$2));
3081
3091
  };
3082
- var asr_JsRiscV_getRegistersValuesLong$exported$26 = (var$1) => {
3092
+ var asr_JsRiscV_getRegistersValuesLong$exported$27 = (var$1) => {
3083
3093
  let var$2, var$3, var$4, var$5, var$6;
3084
3094
  asr_JsRiscV_$callClinit();
3085
3095
  var$1;
@@ -3101,14 +3111,6 @@ var asr_JsRiscV_getRegistersValuesLong$exported$26 = (var$1) => {
3101
3111
  }
3102
3112
  return var$1;
3103
3113
  };
3104
- var asr_JsRiscV_setRegisterValue$exported$27 = (var$1, var$2, var$3) => {
3105
- let var$4;
3106
- asr_JsRiscV_$callClinit();
3107
- var$2 = $rt_str(var$2);
3108
- var$4 = var$3;
3109
- var$1;
3110
- asrrh_RegisterFile_getRegister(var$2).$setValue(Long_fromInt(var$4));
3111
- };
3112
3114
  var asr_JsRiscV_step$exported$28 = (var$1) => {
3113
3115
  let var$2, var$3, $ptr, $tmp;
3114
3116
  $ptr = 0;
@@ -3375,8 +3377,8 @@ var asr_JsRiscV__clinit_ = () => {
3375
3377
  jnc_CodingErrorAction__clinit_();
3376
3378
  jnc_CoderResult__clinit_();
3377
3379
  jn_ByteOrder__clinit_();
3378
- asrjt_Float32__clinit_();
3379
3380
  asrjt_Float64__clinit_();
3381
+ asrjt_Float32__clinit_();
3380
3382
  asrjo_Arithmetic__clinit_();
3381
3383
  asrj_RoundingMode__clinit_();
3382
3384
  asrj_Flags__clinit_();
@@ -7107,63 +7109,6 @@ var jl_System_currentTimeMillis = () => {
7107
7109
  return Long_fromNumber((/* @__PURE__ */ new Date()).getTime());
7108
7110
  };
7109
7111
  var jl_CloneNotSupportedException = $rt_classWithoutFields(jl_Exception);
7110
- function asr_JsCompilationResult() {
7111
- let a = this;
7112
- jl_Object.call(a);
7113
- a.$report = null;
7114
- a.$errors1 = null;
7115
- }
7116
- var asr_JsCompilationResult__init_0 = ($this, var$1) => {
7117
- let var$2, var$3, var$4;
7118
- $this.$report = asr_ErrorList_generateErrorAndWarningReport(var$1);
7119
- var$1 = ju_Collection_stream(var$1.$messages);
7120
- var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7121
- var$2.$_06 = $this;
7122
- var$1 = jusi_SimpleStreamImpl_map(var$1, var$2);
7123
- var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7124
- var$1 = var$1;
7125
- var$3 = ju_ArrayList__init_();
7126
- var$4 = var$1;
7127
- while (true) {
7128
- var$1 = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7129
- var$1.$_08 = var$2;
7130
- var$1.$_12 = var$3;
7131
- if (!jusi_WrappingStreamImpl_next(var$4, var$1))
7132
- break;
7133
- }
7134
- $this.$errors1 = var$3;
7135
- };
7136
- var asr_JsCompilationResult__init_ = (var_0) => {
7137
- let var_1 = new asr_JsCompilationResult();
7138
- asr_JsCompilationResult__init_0(var_1, var_0);
7139
- return var_1;
7140
- };
7141
- var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7142
- let var$2;
7143
- var$1 = var$1.$errors1;
7144
- var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7145
- return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7146
- };
7147
- var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7148
- var$1 = var$1;
7149
- return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7150
- };
7151
- var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
7152
- return $rt_ustr(var$1.$report);
7153
- };
7154
- function asr_AssemblyException() {
7155
- jl_Exception.call(this);
7156
- this.$errs = null;
7157
- }
7158
- var asr_AssemblyException__init_0 = ($this, $errs) => {
7159
- jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
7160
- $this.$errs = $errs;
7161
- };
7162
- var asr_AssemblyException__init_ = (var_0) => {
7163
- let var_1 = new asr_AssemblyException();
7164
- asr_AssemblyException__init_0(var_1, var_0);
7165
- return var_1;
7166
- };
7167
7112
  var asrrh_RegisterFile = $rt_classWithoutFields();
7168
7113
  var asrrh_RegisterFile_instance = null;
7169
7114
  var asrrh_RegisterFile_programCounter = null;
@@ -7171,16 +7116,16 @@ var asrrh_RegisterFile_$callClinit = () => {
7171
7116
  asrrh_RegisterFile_$callClinit = $rt_eraseClinit(asrrh_RegisterFile);
7172
7117
  asrrh_RegisterFile__clinit_();
7173
7118
  };
7174
- var asrrh_RegisterFile_updateRegister = ($num, $val) => {
7119
+ var asrrh_RegisterFile_updateRegister = (var$1, var$2) => {
7175
7120
  let var$3;
7176
7121
  asrrh_RegisterFile_$callClinit();
7177
- if ($num) {
7122
+ if (var$1) {
7178
7123
  if (!asr_Settings_getBackSteppingEnabled(asr_Globals_getSettings()))
7179
- asrrh_RegisterBlock_updateRegister(asrrh_RegisterFile_instance, $num, $val);
7124
+ asrrh_RegisterBlock_updateRegister(asrrh_RegisterFile_instance, var$1, var$2);
7180
7125
  else {
7181
7126
  var$3 = asr_Globals_program.$backStepper;
7182
- $val = asrrh_RegisterBlock_updateRegister(asrrh_RegisterFile_instance, $num, $val);
7183
- asrs_BackStepper$BackstepStack_push(var$3.$backSteps, asrs_BackStepper$Action_REGISTER_RESTORE, asrs_BackStepper_pc(var$3), $num, $val);
7127
+ var$2 = asrrh_RegisterBlock_updateRegister(asrrh_RegisterFile_instance, var$1, var$2);
7128
+ asrs_BackStepper$BackstepStack_push(var$3.$backSteps, asrs_BackStepper$Action_REGISTER_RESTORE, asrs_BackStepper_pc(var$3), var$1, var$2);
7184
7129
  }
7185
7130
  }
7186
7131
  };
@@ -7303,6 +7248,199 @@ var asrrh_RegisterFile__clinit_ = () => {
7303
7248
  asrrh_RegisterFile_instance = var$1;
7304
7249
  asrrh_RegisterFile_programCounter = asrrh_Register__init_($rt_s(243), -1, Long_fromInt(asrrh_Memory_textBaseAddress));
7305
7250
  };
7251
+ var ju_Arrays = $rt_classWithoutFields();
7252
+ var ju_Arrays_copyOf1 = ($array, $length) => {
7253
+ let $result, var$4, $sz, $i;
7254
+ $array = $array.data;
7255
+ $result = $rt_createCharArray($length);
7256
+ var$4 = $result.data;
7257
+ $sz = jl_Math_min($length, $array.length);
7258
+ $i = 0;
7259
+ while ($i < $sz) {
7260
+ var$4[$i] = $array[$i];
7261
+ $i = $i + 1 | 0;
7262
+ }
7263
+ return $result;
7264
+ };
7265
+ var ju_Arrays_copyOf0 = ($array, $length) => {
7266
+ let $result, var$4, $sz, $i;
7267
+ $array = $array.data;
7268
+ $result = $rt_createByteArray($length);
7269
+ var$4 = $result.data;
7270
+ $sz = jl_Math_min($length, $array.length);
7271
+ $i = 0;
7272
+ while ($i < $sz) {
7273
+ var$4[$i] = $array[$i];
7274
+ $i = $i + 1 | 0;
7275
+ }
7276
+ return $result;
7277
+ };
7278
+ var ju_Arrays_copyOf2 = ($array, $length) => {
7279
+ let $result, var$4, $sz, $i;
7280
+ $array = $array.data;
7281
+ $result = $rt_createIntArray($length);
7282
+ var$4 = $result.data;
7283
+ $sz = jl_Math_min($length, $array.length);
7284
+ $i = 0;
7285
+ while ($i < $sz) {
7286
+ var$4[$i] = $array[$i];
7287
+ $i = $i + 1 | 0;
7288
+ }
7289
+ return $result;
7290
+ };
7291
+ var ju_Arrays_copyOf = ($original, $newLength) => {
7292
+ let var$3, $result, $sz, $i;
7293
+ var$3 = $original.data;
7294
+ $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7295
+ $sz = jl_Math_min($newLength, var$3.length);
7296
+ $i = 0;
7297
+ while ($i < $sz) {
7298
+ $result.data[$i] = var$3[$i];
7299
+ $i = $i + 1 | 0;
7300
+ }
7301
+ return $result;
7302
+ };
7303
+ var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7304
+ let var$5, var$6, var$7;
7305
+ if ($fromIndex > $toIndex) {
7306
+ var$5 = new jl_IllegalArgumentException();
7307
+ jl_Throwable__init_(var$5);
7308
+ $rt_throw(var$5);
7309
+ }
7310
+ while ($fromIndex < $toIndex) {
7311
+ var$6 = $a.data;
7312
+ var$7 = $fromIndex + 1 | 0;
7313
+ var$6[$fromIndex] = $val;
7314
+ $fromIndex = var$7;
7315
+ }
7316
+ };
7317
+ var ju_Arrays_fill = ($a, $val) => {
7318
+ ju_Arrays_fill0($a, 0, $a.data.length, $val);
7319
+ };
7320
+ var ju_Arrays_sort = ($a) => {
7321
+ 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;
7322
+ var$2 = $a.data.length;
7323
+ if (!var$2)
7324
+ return;
7325
+ $second = $rt_createIntArray(var$2);
7326
+ $chunkSize = 1;
7327
+ var$5 = $a;
7328
+ while ($chunkSize < var$2) {
7329
+ $i = 0;
7330
+ while (true) {
7331
+ var$7 = var$5.data;
7332
+ var$8 = var$7.length;
7333
+ if ($i >= var$8)
7334
+ break;
7335
+ var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7336
+ $i_0 = $i + (2 * $chunkSize | 0) | 0;
7337
+ var$8 = jl_Math_min(var$8, $i_0);
7338
+ var$11 = $i;
7339
+ var$12 = var$9;
7340
+ a: {
7341
+ b: {
7342
+ while ($i != var$9) {
7343
+ if (var$12 == var$8)
7344
+ break b;
7345
+ var$13 = var$7[$i];
7346
+ var$14 = var$7[var$12];
7347
+ if (var$13 > var$14) {
7348
+ var$15 = $second.data;
7349
+ var$16 = var$11 + 1 | 0;
7350
+ var$15[var$11] = var$14;
7351
+ var$12 = var$12 + 1 | 0;
7352
+ } else {
7353
+ var$15 = $second.data;
7354
+ var$16 = var$11 + 1 | 0;
7355
+ var$15[var$11] = var$13;
7356
+ $i = $i + 1 | 0;
7357
+ }
7358
+ var$11 = var$16;
7359
+ }
7360
+ while (true) {
7361
+ if (var$12 >= var$8)
7362
+ break a;
7363
+ var$15 = $second.data;
7364
+ var$17 = var$11 + 1 | 0;
7365
+ $i = var$12 + 1 | 0;
7366
+ var$15[var$11] = var$7[var$12];
7367
+ var$11 = var$17;
7368
+ var$12 = $i;
7369
+ }
7370
+ }
7371
+ while (true) {
7372
+ if ($i >= var$9)
7373
+ break a;
7374
+ var$15 = $second.data;
7375
+ var$17 = var$11 + 1 | 0;
7376
+ var$8 = $i + 1 | 0;
7377
+ var$15[var$11] = var$7[$i];
7378
+ var$11 = var$17;
7379
+ $i = var$8;
7380
+ }
7381
+ }
7382
+ $i = $i_0;
7383
+ }
7384
+ $chunkSize = $chunkSize * 2 | 0;
7385
+ var$15 = var$5;
7386
+ var$5 = $second;
7387
+ $second = var$15;
7388
+ }
7389
+ c: {
7390
+ if (var$5 !== $a) {
7391
+ $i_0 = 0;
7392
+ while (true) {
7393
+ $a = var$5.data;
7394
+ if ($i_0 >= $a.length)
7395
+ break c;
7396
+ $second.data[$i_0] = $a[$i_0];
7397
+ $i_0 = $i_0 + 1 | 0;
7398
+ }
7399
+ }
7400
+ }
7401
+ };
7402
+ var ju_Arrays_binarySearch = ($a, $key) => {
7403
+ let var$3, var$4, var$5, var$6, var$7;
7404
+ $a = $a.data;
7405
+ var$3 = 0;
7406
+ var$4 = $a.length;
7407
+ if (var$3 > var$4) {
7408
+ var$5 = new jl_IllegalArgumentException();
7409
+ jl_Throwable__init_(var$5);
7410
+ $rt_throw(var$5);
7411
+ }
7412
+ var$6 = var$4 - 1 | 0;
7413
+ a: {
7414
+ while (true) {
7415
+ if (var$3 > var$6) {
7416
+ var$4 = (-var$3 | 0) - 1 | 0;
7417
+ break a;
7418
+ }
7419
+ var$4 = (var$3 + var$6 | 0) / 2 | 0;
7420
+ var$7 = $a[var$4];
7421
+ if (var$7 == $key)
7422
+ break;
7423
+ if ($key >= var$7)
7424
+ var$3 = var$4 + 1 | 0;
7425
+ else
7426
+ var$6 = var$4 - 1 | 0;
7427
+ }
7428
+ }
7429
+ return var$4;
7430
+ };
7431
+ var ju_Arrays_stream = ($array) => {
7432
+ let var$2, var$3, var$4;
7433
+ var$2 = $array.data;
7434
+ var$3 = new jusi_ArrayStreamImpl();
7435
+ var$4 = var$2.length;
7436
+ var$3.$array6 = $array;
7437
+ var$3.$index1 = 0;
7438
+ var$3.$end1 = var$4;
7439
+ var$3.$size2 = var$4 - 0 | 0;
7440
+ return var$3;
7441
+ };
7442
+ var juf_ToIntFunction = $rt_classWithoutFields(0);
7443
+ var asr_JsRiscV$getRegistersValues$lambda$_25_0 = $rt_classWithoutFields();
7306
7444
  function jm_BigInteger() {
7307
7445
  let a = this;
7308
7446
  jl_Number.call(a);
@@ -7675,6 +7813,77 @@ var jm_BigInteger__clinit_ = () => {
7675
7813
  $i = $i + 1 | 0;
7676
7814
  }
7677
7815
  };
7816
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7817
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7818
+ let var$2, var$3, var$4, var$5;
7819
+ var$1 = var$1;
7820
+ asr_JsRiscV_$callClinit();
7821
+ var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7822
+ var$3 = var$2.data;
7823
+ var$4 = 0;
7824
+ while (var$4 < asra_TokenList_size(var$1)) {
7825
+ var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7826
+ var$4 = var$4 + 1 | 0;
7827
+ }
7828
+ var$5 = new asr_JsRiscVTokenizedLine();
7829
+ var$5.$line0 = var$1.$processedLine;
7830
+ var$5.$tokens0 = var$2;
7831
+ return var$5;
7832
+ };
7833
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
7834
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
7835
+ asr_JsRiscV_$callClinit();
7836
+ return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
7837
+ };
7838
+ function asr_JsRiscVTokenizedLine() {
7839
+ let a = this;
7840
+ jl_Object.call(a);
7841
+ a.$line0 = null;
7842
+ a.$tokens0 = null;
7843
+ }
7844
+ var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
7845
+ return $rt_ustr(var$1.$line0);
7846
+ };
7847
+ var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
7848
+ return otji_JS_wrap(var$1.$tokens0);
7849
+ };
7850
+ var asr_JsRiscV$getUndoStack$lambda$_26_0 = $rt_classWithoutFields();
7851
+ var asr_JsRiscV$getUndoStack$lambda$_26_0_apply = (var$0, var$1) => {
7852
+ let var$2, var$3;
7853
+ var$1 = var$1;
7854
+ var$2 = new asr_JsBackStep();
7855
+ var$3 = var$1.$action;
7856
+ var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7857
+ var$2.$pc2 = var$1.$pc1;
7858
+ var$2.$param10 = var$1.$param1;
7859
+ var$2.$param20 = Long_lo(var$1.$param2);
7860
+ return var$2;
7861
+ };
7862
+ var asr_JsRiscV$getUndoStack$lambda$_26_1 = $rt_classWithoutFields();
7863
+ var asr_JsRiscV$getUndoStack$lambda$_26_1_apply = (var$0, var$1) => {
7864
+ asr_JsRiscV_$callClinit();
7865
+ return $rt_createArray(asr_JsBackStep, var$1);
7866
+ };
7867
+ function asr_JsBackStep() {
7868
+ let a = this;
7869
+ jl_Object.call(a);
7870
+ a.$action0 = 0;
7871
+ a.$pc2 = 0;
7872
+ a.$param10 = 0;
7873
+ a.$param20 = 0;
7874
+ }
7875
+ var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7876
+ return var$1.$pc2;
7877
+ };
7878
+ var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7879
+ return var$1.$param20;
7880
+ };
7881
+ var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7882
+ return var$1.$action0;
7883
+ };
7884
+ var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7885
+ return var$1.$param10;
7886
+ };
7678
7887
  function asr_JsProgramStatement() {
7679
7888
  let a = this;
7680
7889
  jl_Object.call(a);
@@ -7752,267 +7961,62 @@ var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7752
7961
  var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7753
7962
  return $rt_ustr(var$1.$machineStatement0);
7754
7963
  };
7755
- var ju_Arrays = $rt_classWithoutFields();
7756
- var ju_Arrays_copyOf1 = ($array, $length) => {
7757
- let $result, var$4, $sz, $i;
7758
- $array = $array.data;
7759
- $result = $rt_createCharArray($length);
7760
- var$4 = $result.data;
7761
- $sz = jl_Math_min($length, $array.length);
7762
- $i = 0;
7763
- while ($i < $sz) {
7764
- var$4[$i] = $array[$i];
7765
- $i = $i + 1 | 0;
7766
- }
7767
- return $result;
7768
- };
7769
- var ju_Arrays_copyOf0 = ($array, $length) => {
7770
- let $result, var$4, $sz, $i;
7771
- $array = $array.data;
7772
- $result = $rt_createByteArray($length);
7773
- var$4 = $result.data;
7774
- $sz = jl_Math_min($length, $array.length);
7775
- $i = 0;
7776
- while ($i < $sz) {
7777
- var$4[$i] = $array[$i];
7778
- $i = $i + 1 | 0;
7779
- }
7780
- return $result;
7781
- };
7782
- var ju_Arrays_copyOf2 = ($array, $length) => {
7783
- let $result, var$4, $sz, $i;
7784
- $array = $array.data;
7785
- $result = $rt_createIntArray($length);
7786
- var$4 = $result.data;
7787
- $sz = jl_Math_min($length, $array.length);
7788
- $i = 0;
7789
- while ($i < $sz) {
7790
- var$4[$i] = $array[$i];
7791
- $i = $i + 1 | 0;
7792
- }
7793
- return $result;
7794
- };
7795
- var ju_Arrays_copyOf = ($original, $newLength) => {
7796
- let var$3, $result, $sz, $i;
7797
- var$3 = $original.data;
7798
- $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7799
- $sz = jl_Math_min($newLength, var$3.length);
7800
- $i = 0;
7801
- while ($i < $sz) {
7802
- $result.data[$i] = var$3[$i];
7803
- $i = $i + 1 | 0;
7804
- }
7805
- return $result;
7806
- };
7807
- var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7808
- let var$5, var$6, var$7;
7809
- if ($fromIndex > $toIndex) {
7810
- var$5 = new jl_IllegalArgumentException();
7811
- jl_Throwable__init_(var$5);
7812
- $rt_throw(var$5);
7813
- }
7814
- while ($fromIndex < $toIndex) {
7815
- var$6 = $a.data;
7816
- var$7 = $fromIndex + 1 | 0;
7817
- var$6[$fromIndex] = $val;
7818
- $fromIndex = var$7;
7819
- }
7820
- };
7821
- var ju_Arrays_fill = ($a, $val) => {
7822
- ju_Arrays_fill0($a, 0, $a.data.length, $val);
7823
- };
7824
- var ju_Arrays_sort = ($a) => {
7825
- 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;
7826
- var$2 = $a.data.length;
7827
- if (!var$2)
7828
- return;
7829
- $second = $rt_createIntArray(var$2);
7830
- $chunkSize = 1;
7831
- var$5 = $a;
7832
- while ($chunkSize < var$2) {
7833
- $i = 0;
7834
- while (true) {
7835
- var$7 = var$5.data;
7836
- var$8 = var$7.length;
7837
- if ($i >= var$8)
7838
- break;
7839
- var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7840
- $i_0 = $i + (2 * $chunkSize | 0) | 0;
7841
- var$8 = jl_Math_min(var$8, $i_0);
7842
- var$11 = $i;
7843
- var$12 = var$9;
7844
- a: {
7845
- b: {
7846
- while ($i != var$9) {
7847
- if (var$12 == var$8)
7848
- break b;
7849
- var$13 = var$7[$i];
7850
- var$14 = var$7[var$12];
7851
- if (var$13 > var$14) {
7852
- var$15 = $second.data;
7853
- var$16 = var$11 + 1 | 0;
7854
- var$15[var$11] = var$14;
7855
- var$12 = var$12 + 1 | 0;
7856
- } else {
7857
- var$15 = $second.data;
7858
- var$16 = var$11 + 1 | 0;
7859
- var$15[var$11] = var$13;
7860
- $i = $i + 1 | 0;
7861
- }
7862
- var$11 = var$16;
7863
- }
7864
- while (true) {
7865
- if (var$12 >= var$8)
7866
- break a;
7867
- var$15 = $second.data;
7868
- var$17 = var$11 + 1 | 0;
7869
- $i = var$12 + 1 | 0;
7870
- var$15[var$11] = var$7[var$12];
7871
- var$11 = var$17;
7872
- var$12 = $i;
7873
- }
7874
- }
7875
- while (true) {
7876
- if ($i >= var$9)
7877
- break a;
7878
- var$15 = $second.data;
7879
- var$17 = var$11 + 1 | 0;
7880
- var$8 = $i + 1 | 0;
7881
- var$15[var$11] = var$7[$i];
7882
- var$11 = var$17;
7883
- $i = var$8;
7884
- }
7885
- }
7886
- $i = $i_0;
7887
- }
7888
- $chunkSize = $chunkSize * 2 | 0;
7889
- var$15 = var$5;
7890
- var$5 = $second;
7891
- $second = var$15;
7892
- }
7893
- c: {
7894
- if (var$5 !== $a) {
7895
- $i_0 = 0;
7896
- while (true) {
7897
- $a = var$5.data;
7898
- if ($i_0 >= $a.length)
7899
- break c;
7900
- $second.data[$i_0] = $a[$i_0];
7901
- $i_0 = $i_0 + 1 | 0;
7902
- }
7903
- }
7904
- }
7905
- };
7906
- var ju_Arrays_binarySearch = ($a, $key) => {
7907
- let var$3, var$4, var$5, var$6, var$7;
7908
- $a = $a.data;
7909
- var$3 = 0;
7910
- var$4 = $a.length;
7911
- if (var$3 > var$4) {
7912
- var$5 = new jl_IllegalArgumentException();
7913
- jl_Throwable__init_(var$5);
7914
- $rt_throw(var$5);
7915
- }
7916
- var$6 = var$4 - 1 | 0;
7917
- a: {
7918
- while (true) {
7919
- if (var$3 > var$6) {
7920
- var$4 = (-var$3 | 0) - 1 | 0;
7921
- break a;
7922
- }
7923
- var$4 = (var$3 + var$6 | 0) / 2 | 0;
7924
- var$7 = $a[var$4];
7925
- if (var$7 == $key)
7926
- break;
7927
- if ($key >= var$7)
7928
- var$3 = var$4 + 1 | 0;
7929
- else
7930
- var$6 = var$4 - 1 | 0;
7931
- }
7932
- }
7933
- return var$4;
7934
- };
7935
- var ju_Arrays_stream = ($array) => {
7936
- let var$2, var$3, var$4;
7937
- var$2 = $array.data;
7938
- var$3 = new jusi_ArrayStreamImpl();
7939
- var$4 = var$2.length;
7940
- var$3.$array6 = $array;
7941
- var$3.$index1 = 0;
7942
- var$3.$end1 = var$4;
7943
- var$3.$size2 = var$4 - 0 | 0;
7944
- return var$3;
7945
- };
7946
- var asr_JsRiscV$getUndoStack$lambda$_26_0 = $rt_classWithoutFields();
7947
- var asr_JsRiscV$getUndoStack$lambda$_26_0_apply = (var$0, var$1) => {
7948
- let var$2, var$3;
7949
- var$1 = var$1;
7950
- var$2 = new asr_JsBackStep();
7951
- var$3 = var$1.$action;
7952
- var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7953
- var$2.$pc2 = var$1.$pc1;
7954
- var$2.$param10 = var$1.$param1;
7955
- var$2.$param20 = Long_lo(var$1.$param2);
7956
- return var$2;
7957
- };
7958
- var asr_JsRiscV$getUndoStack$lambda$_26_1 = $rt_classWithoutFields();
7959
- var asr_JsRiscV$getUndoStack$lambda$_26_1_apply = (var$0, var$1) => {
7960
- asr_JsRiscV_$callClinit();
7961
- return $rt_createArray(asr_JsBackStep, var$1);
7962
- };
7963
- function asr_JsBackStep() {
7964
+ function asr_JsCompilationResult() {
7964
7965
  let a = this;
7965
7966
  jl_Object.call(a);
7966
- a.$action0 = 0;
7967
- a.$pc2 = 0;
7968
- a.$param10 = 0;
7969
- a.$param20 = 0;
7967
+ a.$report = null;
7968
+ a.$errors1 = null;
7970
7969
  }
7971
- var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7972
- return var$1.$pc2;
7973
- };
7974
- var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7975
- return var$1.$param20;
7970
+ var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
7971
+ let var$2, var$3, var$4;
7972
+ $this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
7973
+ $errorReport = ju_Collection_stream($errorReport.$messages);
7974
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7975
+ var$2.$_06 = $this;
7976
+ $errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
7977
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7978
+ $errorReport = $errorReport;
7979
+ var$3 = ju_ArrayList__init_();
7980
+ var$4 = $errorReport;
7981
+ while (true) {
7982
+ $errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7983
+ $errorReport.$_08 = var$2;
7984
+ $errorReport.$_12 = var$3;
7985
+ if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
7986
+ break;
7987
+ }
7988
+ $this.$errors1 = var$3;
7976
7989
  };
7977
- var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7978
- return var$1.$action0;
7990
+ var asr_JsCompilationResult__init_ = (var_0) => {
7991
+ let var_1 = new asr_JsCompilationResult();
7992
+ asr_JsCompilationResult__init_0(var_1, var_0);
7993
+ return var_1;
7979
7994
  };
7980
- var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7981
- return var$1.$param10;
7995
+ var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7996
+ let var$2;
7997
+ var$1 = var$1.$errors1;
7998
+ var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7999
+ return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7982
8000
  };
7983
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7984
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7985
- let var$2, var$3, var$4, var$5;
8001
+ var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7986
8002
  var$1 = var$1;
7987
- asr_JsRiscV_$callClinit();
7988
- var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7989
- var$3 = var$2.data;
7990
- var$4 = 0;
7991
- while (var$4 < asra_TokenList_size(var$1)) {
7992
- var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7993
- var$4 = var$4 + 1 | 0;
7994
- }
7995
- var$5 = new asr_JsRiscVTokenizedLine();
7996
- var$5.$line0 = var$1.$processedLine;
7997
- var$5.$tokens0 = var$2;
7998
- return var$5;
8003
+ return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7999
8004
  };
8000
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
8001
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
8002
- asr_JsRiscV_$callClinit();
8003
- return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
8005
+ var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
8006
+ return $rt_ustr(var$1.$report);
8004
8007
  };
8005
- function asr_JsRiscVTokenizedLine() {
8006
- let a = this;
8007
- jl_Object.call(a);
8008
- a.$line0 = null;
8009
- a.$tokens0 = null;
8008
+ function asr_AssemblyException() {
8009
+ jl_Exception.call(this);
8010
+ this.$errs = null;
8010
8011
  }
8011
- var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
8012
- return $rt_ustr(var$1.$line0);
8012
+ var asr_AssemblyException__init_0 = ($this, $errs) => {
8013
+ jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
8014
+ $this.$errs = $errs;
8013
8015
  };
8014
- var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
8015
- return otji_JS_wrap(var$1.$tokens0);
8016
+ var asr_AssemblyException__init_ = (var_0) => {
8017
+ let var_1 = new asr_AssemblyException();
8018
+ asr_AssemblyException__init_0(var_1, var_0);
8019
+ return var_1;
8016
8020
  };
8017
8021
  function asr_JsStackFrame() {
8018
8022
  let a = this;
@@ -8038,8 +8042,6 @@ var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
8038
8042
  var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
8039
8043
  return var$1.$fp;
8040
8044
  };
8041
- var juf_ToIntFunction = $rt_classWithoutFields(0);
8042
- var asr_JsRiscV$getRegistersValues$lambda$_25_0 = $rt_classWithoutFields();
8043
8045
  var ju_Map$Entry = $rt_classWithoutFields(0);
8044
8046
  function ju_MapEntry() {
8045
8047
  let a = this;
@@ -8589,29 +8591,6 @@ var asr_RISCVFile_getName = ($this) => {
8589
8591
  return $this.$name2;
8590
8592
  };
8591
8593
  var jl_StringIndexOutOfBoundsException = $rt_classWithoutFields(jl_IndexOutOfBoundsException);
8592
- function asr_JsCompilationResult$_init_$lambda$_0_0() {
8593
- jl_Object.call(this);
8594
- this.$_06 = null;
8595
- }
8596
- var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8597
- let var$2, var$3;
8598
- var$1 = var$1;
8599
- var$2 = var$0.$_06;
8600
- var$3 = new asr_JsCompilationResult$JsCompilationError();
8601
- var$3.$this$016 = var$2;
8602
- var$3.$isWarning0 = var$1.$isWarning;
8603
- var$3.$message2 = var$1.$message0;
8604
- var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8605
- var$3.$filename2 = var$1.$filename0;
8606
- var$3.$lineNumber0 = var$1.$line;
8607
- var$3.$columnNumber = var$1.$position2;
8608
- return var$3;
8609
- };
8610
- var juf_Supplier = $rt_classWithoutFields(0);
8611
- var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8612
- var juf_BiConsumer = $rt_classWithoutFields(0);
8613
- var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8614
- var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8615
8594
  function asrrh_Register() {
8616
8595
  let a = this;
8617
8596
  ju_Observable.call(a);
@@ -8706,6 +8685,104 @@ var asrrh_Register_notifyAnyObservers = ($this, $type) => {
8706
8685
  ju_Observable_notifyObservers(var$2, var$3);
8707
8686
  }
8708
8687
  };
8688
+ var jl_AutoCloseable = $rt_classWithoutFields(0);
8689
+ var jus_BaseStream = $rt_classWithoutFields(0);
8690
+ var jus_Stream = $rt_classWithoutFields(0);
8691
+ var jusi_SimpleStreamImpl = $rt_classWithoutFields();
8692
+ var jusi_SimpleStreamImpl_filter = ($this, $predicate) => {
8693
+ let var$2;
8694
+ var$2 = new jusi_FilteringStreamImpl();
8695
+ jusi_WrappingStreamImpl__init_(var$2, $this);
8696
+ var$2.$filter0 = $predicate;
8697
+ return var$2;
8698
+ };
8699
+ var jusi_SimpleStreamImpl_map = ($this, $mapper) => {
8700
+ let var$2;
8701
+ var$2 = new jusi_MappingStreamImpl();
8702
+ jusi_WrappingStreamImpl__init_(var$2, $this);
8703
+ var$2.$mapper = $mapper;
8704
+ return var$2;
8705
+ };
8706
+ var jusi_SimpleStreamImpl_toArray = ($this, $generator) => {
8707
+ let var$2, $estimatedSize, $array, $consumer, var$6, $list, $i;
8708
+ var$2 = $this;
8709
+ $estimatedSize = var$2.$sourceStream.$estimateSize();
8710
+ if ($estimatedSize >= 0) {
8711
+ $array = $generator.$apply($estimatedSize);
8712
+ $consumer = new jusi_SimpleStreamImpl$ArrayFillingConsumer();
8713
+ $consumer.$array4 = $array;
8714
+ while (jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8715
+ }
8716
+ var$6 = $array.data;
8717
+ $estimatedSize = $consumer.$index3;
8718
+ if ($estimatedSize < var$6.length)
8719
+ $array = ju_Arrays_copyOf($array, $estimatedSize);
8720
+ return $array;
8721
+ }
8722
+ $list = ju_ArrayList__init_();
8723
+ while (true) {
8724
+ ju_Objects_requireNonNull($list);
8725
+ $consumer = new jusi_SimpleStreamImpl$toArray$lambda$_21_0();
8726
+ $consumer.$_02 = $list;
8727
+ if (!jusi_WrappingStreamImpl_next(var$2, $consumer))
8728
+ break;
8729
+ }
8730
+ $list = $list;
8731
+ $array = $generator.$apply($list.$size0);
8732
+ $i = 0;
8733
+ while (true) {
8734
+ var$6 = $array.data;
8735
+ if ($i >= var$6.length)
8736
+ break;
8737
+ var$6[$i] = ju_ArrayList_get($list, $i);
8738
+ $i = $i + 1 | 0;
8739
+ }
8740
+ return $array;
8741
+ };
8742
+ var jusi_SimpleStreamImpl_findFirst = ($this) => {
8743
+ let $consumer, var$2, var$3;
8744
+ $consumer = new jusi_FindFirstConsumer();
8745
+ var$2 = $this;
8746
+ while ($consumer.$result === null && jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8747
+ }
8748
+ $consumer = $consumer.$result;
8749
+ if ($consumer !== null)
8750
+ var$3 = ju_Optional__init_(ju_Objects_requireNonNull($consumer));
8751
+ else {
8752
+ if (ju_Optional_emptyInstance === null)
8753
+ ju_Optional_emptyInstance = ju_Optional__init_(null);
8754
+ var$3 = ju_Optional_emptyInstance;
8755
+ }
8756
+ return var$3;
8757
+ };
8758
+ function jusi_ArrayStreamImpl() {
8759
+ let a = this;
8760
+ jusi_SimpleStreamImpl.call(a);
8761
+ a.$array6 = null;
8762
+ a.$index1 = 0;
8763
+ a.$end1 = 0;
8764
+ a.$size2 = 0;
8765
+ }
8766
+ var jusi_ArrayStreamImpl_next = ($this, $consumer) => {
8767
+ let var$2, var$3;
8768
+ a: {
8769
+ while (true) {
8770
+ var$2 = $this.$index1;
8771
+ if (var$2 >= $this.$end1)
8772
+ break a;
8773
+ var$3 = $this.$array6.data;
8774
+ $this.$index1 = var$2 + 1 | 0;
8775
+ if ($consumer.$test(var$3[var$2]))
8776
+ continue;
8777
+ else
8778
+ break;
8779
+ }
8780
+ }
8781
+ return $this.$index1 >= $this.$end1 ? 0 : 1;
8782
+ };
8783
+ var jusi_ArrayStreamImpl_estimateSize = ($this) => {
8784
+ return $this.$size2;
8785
+ };
8709
8786
  function asrs_BackStepper() {
8710
8787
  let a = this;
8711
8788
  jl_Object.call(a);
@@ -8825,104 +8902,29 @@ var asrs_BackStepper$BackstepStack_peek = ($this) => {
8825
8902
  jl_Object_monitorExitSync($this);
8826
8903
  }
8827
8904
  };
8828
- var jl_AutoCloseable = $rt_classWithoutFields(0);
8829
- var jus_BaseStream = $rt_classWithoutFields(0);
8830
- var jus_Stream = $rt_classWithoutFields(0);
8831
- var jusi_SimpleStreamImpl = $rt_classWithoutFields();
8832
- var jusi_SimpleStreamImpl_filter = ($this, $predicate) => {
8833
- let var$2;
8834
- var$2 = new jusi_FilteringStreamImpl();
8835
- jusi_WrappingStreamImpl__init_(var$2, $this);
8836
- var$2.$filter0 = $predicate;
8837
- return var$2;
8838
- };
8839
- var jusi_SimpleStreamImpl_map = ($this, $mapper) => {
8840
- let var$2;
8841
- var$2 = new jusi_MappingStreamImpl();
8842
- jusi_WrappingStreamImpl__init_(var$2, $this);
8843
- var$2.$mapper = $mapper;
8844
- return var$2;
8845
- };
8846
- var jusi_SimpleStreamImpl_toArray = ($this, $generator) => {
8847
- let var$2, $estimatedSize, $array, $consumer, var$6, $list, $i;
8848
- var$2 = $this;
8849
- $estimatedSize = var$2.$sourceStream.$estimateSize();
8850
- if ($estimatedSize >= 0) {
8851
- $array = $generator.$apply($estimatedSize);
8852
- $consumer = new jusi_SimpleStreamImpl$ArrayFillingConsumer();
8853
- $consumer.$array4 = $array;
8854
- while (jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8855
- }
8856
- var$6 = $array.data;
8857
- $estimatedSize = $consumer.$index3;
8858
- if ($estimatedSize < var$6.length)
8859
- $array = ju_Arrays_copyOf($array, $estimatedSize);
8860
- return $array;
8861
- }
8862
- $list = ju_ArrayList__init_();
8863
- while (true) {
8864
- ju_Objects_requireNonNull($list);
8865
- $consumer = new jusi_SimpleStreamImpl$toArray$lambda$_21_0();
8866
- $consumer.$_02 = $list;
8867
- if (!jusi_WrappingStreamImpl_next(var$2, $consumer))
8868
- break;
8869
- }
8870
- $list = $list;
8871
- $array = $generator.$apply($list.$size0);
8872
- $i = 0;
8873
- while (true) {
8874
- var$6 = $array.data;
8875
- if ($i >= var$6.length)
8876
- break;
8877
- var$6[$i] = ju_ArrayList_get($list, $i);
8878
- $i = $i + 1 | 0;
8879
- }
8880
- return $array;
8881
- };
8882
- var jusi_SimpleStreamImpl_findFirst = ($this) => {
8883
- let $consumer, var$2, var$3;
8884
- $consumer = new jusi_FindFirstConsumer();
8885
- var$2 = $this;
8886
- while ($consumer.$result === null && jusi_WrappingStreamImpl_next(var$2, $consumer)) {
8887
- }
8888
- $consumer = $consumer.$result;
8889
- if ($consumer !== null)
8890
- var$3 = ju_Optional__init_(ju_Objects_requireNonNull($consumer));
8891
- else {
8892
- if (ju_Optional_emptyInstance === null)
8893
- ju_Optional_emptyInstance = ju_Optional__init_(null);
8894
- var$3 = ju_Optional_emptyInstance;
8895
- }
8896
- return var$3;
8897
- };
8898
- function jusi_ArrayStreamImpl() {
8899
- let a = this;
8900
- jusi_SimpleStreamImpl.call(a);
8901
- a.$array6 = null;
8902
- a.$index1 = 0;
8903
- a.$end1 = 0;
8904
- a.$size2 = 0;
8905
+ function asr_JsCompilationResult$_init_$lambda$_0_0() {
8906
+ jl_Object.call(this);
8907
+ this.$_06 = null;
8905
8908
  }
8906
- var jusi_ArrayStreamImpl_next = ($this, $consumer) => {
8909
+ var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8907
8910
  let var$2, var$3;
8908
- a: {
8909
- while (true) {
8910
- var$2 = $this.$index1;
8911
- if (var$2 >= $this.$end1)
8912
- break a;
8913
- var$3 = $this.$array6.data;
8914
- $this.$index1 = var$2 + 1 | 0;
8915
- if ($consumer.$test(var$3[var$2]))
8916
- continue;
8917
- else
8918
- break;
8919
- }
8920
- }
8921
- return $this.$index1 >= $this.$end1 ? 0 : 1;
8922
- };
8923
- var jusi_ArrayStreamImpl_estimateSize = ($this) => {
8924
- return $this.$size2;
8911
+ var$1 = var$1;
8912
+ var$2 = var$0.$_06;
8913
+ var$3 = new asr_JsCompilationResult$JsCompilationError();
8914
+ var$3.$this$016 = var$2;
8915
+ var$3.$isWarning0 = var$1.$isWarning;
8916
+ var$3.$message2 = var$1.$message0;
8917
+ var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8918
+ var$3.$filename2 = var$1.$filename0;
8919
+ var$3.$lineNumber0 = var$1.$line;
8920
+ var$3.$columnNumber = var$1.$position2;
8921
+ return var$3;
8925
8922
  };
8923
+ var juf_Supplier = $rt_classWithoutFields(0);
8924
+ var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8925
+ var juf_BiConsumer = $rt_classWithoutFields(0);
8926
+ var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8927
+ var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8926
8928
  var jl_Math = $rt_classWithoutFields();
8927
8929
  var jl_Math_pow = ($x, $y) => {
8928
8930
  return jl_Math_powImpl($x, $y);
@@ -12197,6 +12199,85 @@ var ju_Comparator$NaturalOrder_compare = ($this, $o1, $o2) => {
12197
12199
  var ju_Comparator$NaturalOrder__clinit_ = () => {
12198
12200
  ju_Comparator$NaturalOrder_INSTANCE = new ju_Comparator$NaturalOrder();
12199
12201
  };
12202
+ function asrrh_RegisterBlock() {
12203
+ let a = this;
12204
+ jl_Object.call(a);
12205
+ a.$regFile = null;
12206
+ a.$prefix = 0;
12207
+ }
12208
+ var asrrh_RegisterBlock__init_ = ($this, $prefix, $registers) => {
12209
+ $this.$prefix = $prefix;
12210
+ $this.$regFile = $registers;
12211
+ };
12212
+ var asrrh_RegisterBlock__init_0 = (var_0, var_1) => {
12213
+ let var_2 = new asrrh_RegisterBlock();
12214
+ asrrh_RegisterBlock__init_(var_2, var_0, var_1);
12215
+ return var_2;
12216
+ };
12217
+ var asrrh_RegisterBlock_updateRegister = ($this, $num, $val) => {
12218
+ let var$3;
12219
+ var$3 = asrrh_RegisterBlock_getRegister0($this, $num);
12220
+ return var$3 !== null ? var$3.$setValue($val) : Long_ZERO;
12221
+ };
12222
+ var asrrh_RegisterBlock_getValue = ($this, $num) => {
12223
+ return asrrh_RegisterBlock_getRegister0($this, $num).$getValue();
12224
+ };
12225
+ var asrrh_RegisterBlock_getValue0 = ($this, $name) => {
12226
+ return asrrh_RegisterBlock_getRegister($this, $name).$getValue();
12227
+ };
12228
+ var asrrh_RegisterBlock_getRegister0 = ($this, $num) => {
12229
+ let var$2, var$3, var$4, $r;
12230
+ var$2 = $this.$regFile.data;
12231
+ var$3 = var$2.length;
12232
+ var$4 = 0;
12233
+ while (true) {
12234
+ if (var$4 >= var$3)
12235
+ return null;
12236
+ $r = var$2[var$4];
12237
+ if ($r.$number == $num)
12238
+ break;
12239
+ var$4 = var$4 + 1 | 0;
12240
+ }
12241
+ return $r;
12242
+ };
12243
+ var asrrh_RegisterBlock_getRegister = ($this, $name) => {
12244
+ let var$2, var$3, var$4, $num, $r;
12245
+ if ($name.$nativeString.length < 2)
12246
+ return null;
12247
+ var$2 = $this.$regFile.data;
12248
+ var$3 = var$2.length;
12249
+ var$4 = 0;
12250
+ while (true) {
12251
+ if (var$4 >= var$3) {
12252
+ if (jl_String_charAt($name, 0) != $this.$prefix)
12253
+ return null;
12254
+ if (!jl_String_charAt($name, 1)) {
12255
+ if ($name.$nativeString.length > 2)
12256
+ return null;
12257
+ return asrrh_RegisterBlock_getRegister0($this, 0);
12258
+ }
12259
+ $num = asru_Binary_stringToIntFast(jl_String_substring0($name, 1));
12260
+ if ($num === null)
12261
+ return null;
12262
+ return asrrh_RegisterBlock_getRegister0($this, $num.$value1);
12263
+ }
12264
+ $r = var$2[var$4];
12265
+ if (jl_String_equals($r.$name1, $name))
12266
+ break;
12267
+ var$4 = var$4 + 1 | 0;
12268
+ }
12269
+ return $r;
12270
+ };
12271
+ var asrrh_RegisterBlock_resetRegisters = ($this) => {
12272
+ let var$1, var$2, var$3;
12273
+ var$1 = $this.$regFile.data;
12274
+ var$2 = var$1.length;
12275
+ var$3 = 0;
12276
+ while (var$3 < var$2) {
12277
+ var$1[var$3].$resetValue();
12278
+ var$3 = var$3 + 1 | 0;
12279
+ }
12280
+ };
12200
12281
  function asr_ErrorList() {
12201
12282
  let a = this;
12202
12283
  jl_Object.call(a);
@@ -12282,85 +12363,6 @@ var asr_ErrorList_generateReport = ($this, $isWarning) => {
12282
12363
  }
12283
12364
  return jl_AbstractStringBuilder_toString($report);
12284
12365
  };
12285
- function asrrh_RegisterBlock() {
12286
- let a = this;
12287
- jl_Object.call(a);
12288
- a.$regFile = null;
12289
- a.$prefix = 0;
12290
- }
12291
- var asrrh_RegisterBlock__init_ = ($this, $prefix, $registers) => {
12292
- $this.$prefix = $prefix;
12293
- $this.$regFile = $registers;
12294
- };
12295
- var asrrh_RegisterBlock__init_0 = (var_0, var_1) => {
12296
- let var_2 = new asrrh_RegisterBlock();
12297
- asrrh_RegisterBlock__init_(var_2, var_0, var_1);
12298
- return var_2;
12299
- };
12300
- var asrrh_RegisterBlock_updateRegister = ($this, $num, $val) => {
12301
- let var$3;
12302
- var$3 = asrrh_RegisterBlock_getRegister0($this, $num);
12303
- return var$3 !== null ? var$3.$setValue($val) : Long_ZERO;
12304
- };
12305
- var asrrh_RegisterBlock_getValue = ($this, $num) => {
12306
- return asrrh_RegisterBlock_getRegister0($this, $num).$getValue();
12307
- };
12308
- var asrrh_RegisterBlock_getValue0 = ($this, $name) => {
12309
- return asrrh_RegisterBlock_getRegister($this, $name).$getValue();
12310
- };
12311
- var asrrh_RegisterBlock_getRegister0 = ($this, $num) => {
12312
- let var$2, var$3, var$4, $r;
12313
- var$2 = $this.$regFile.data;
12314
- var$3 = var$2.length;
12315
- var$4 = 0;
12316
- while (true) {
12317
- if (var$4 >= var$3)
12318
- return null;
12319
- $r = var$2[var$4];
12320
- if ($r.$number == $num)
12321
- break;
12322
- var$4 = var$4 + 1 | 0;
12323
- }
12324
- return $r;
12325
- };
12326
- var asrrh_RegisterBlock_getRegister = ($this, $name) => {
12327
- let var$2, var$3, var$4, $num, $r;
12328
- if ($name.$nativeString.length < 2)
12329
- return null;
12330
- var$2 = $this.$regFile.data;
12331
- var$3 = var$2.length;
12332
- var$4 = 0;
12333
- while (true) {
12334
- if (var$4 >= var$3) {
12335
- if (jl_String_charAt($name, 0) != $this.$prefix)
12336
- return null;
12337
- if (!jl_String_charAt($name, 1)) {
12338
- if ($name.$nativeString.length > 2)
12339
- return null;
12340
- return asrrh_RegisterBlock_getRegister0($this, 0);
12341
- }
12342
- $num = asru_Binary_stringToIntFast(jl_String_substring0($name, 1));
12343
- if ($num === null)
12344
- return null;
12345
- return asrrh_RegisterBlock_getRegister0($this, $num.$value1);
12346
- }
12347
- $r = var$2[var$4];
12348
- if (jl_String_equals($r.$name1, $name))
12349
- break;
12350
- var$4 = var$4 + 1 | 0;
12351
- }
12352
- return $r;
12353
- };
12354
- var asrrh_RegisterBlock_resetRegisters = ($this) => {
12355
- let var$1, var$2, var$3;
12356
- var$1 = $this.$regFile.data;
12357
- var$2 = var$1.length;
12358
- var$3 = 0;
12359
- while (var$3 < var$2) {
12360
- var$1[var$3].$resetValue();
12361
- var$3 = var$3 + 1 | 0;
12362
- }
12363
- };
12364
12366
  function asrrh_StackFrame() {
12365
12367
  let a = this;
12366
12368
  jl_Object.call(a);
@@ -13963,194 +13965,21 @@ var jusi_StreamOverSpliterator_next = ($this, $consumer) => {
13963
13965
  var jusi_StreamOverSpliterator_estimateSize = ($this) => {
13964
13966
  return Long_lo(Long_fromInt($this.$spliterator0.$collection.$size()));
13965
13967
  };
13966
- var jm_Conversion = $rt_classWithoutFields();
13967
- var jm_Conversion_digitFitInInt = null;
13968
- var jm_Conversion_bigRadices = null;
13969
- var jm_Conversion_toDecimalScaledString = ($val, $scale) => {
13970
- let $sign, $numberLength, $digits, $result1, $resLengthInChars, $result, $v, $i1, $v_0, $v_1, $v_2, var$14, $temp, var$16, $negNumber, $result11, $j, $res, $resDigit, $delta, $i, $exponent, $insertPoint, $startPoint;
13971
- $sign = $val.$sign0;
13972
- $numberLength = $val.$numberLength;
13973
- $digits = $val.$digits;
13974
- if (!$sign) {
13975
- switch ($scale) {
13976
- case 0:
13977
- break;
13978
- case 1:
13979
- return $rt_s(1083);
13980
- case 2:
13981
- return $rt_s(1084);
13982
- case 3:
13983
- return $rt_s(1085);
13984
- case 4:
13985
- return $rt_s(1086);
13986
- case 5:
13987
- return $rt_s(1087);
13988
- case 6:
13989
- return $rt_s(1088);
13990
- default:
13991
- $result1 = new jl_StringBuilder();
13992
- jl_AbstractStringBuilder__init_($result1);
13993
- if ($scale >= 0)
13994
- jl_AbstractStringBuilder_append1($result1, $rt_s(1089));
13995
- else
13996
- jl_AbstractStringBuilder_append1($result1, $rt_s(1090));
13997
- jl_AbstractStringBuilder_append($result1, -$scale | 0);
13998
- return jl_AbstractStringBuilder_toString($result1);
13999
- }
14000
- return $rt_s(6);
14001
- }
14002
- $resLengthInChars = (($numberLength * 10 | 0) + 1 | 0) + 7 | 0;
14003
- $result = $rt_createCharArray($resLengthInChars + 1 | 0);
14004
- if ($numberLength == 1) {
14005
- $v = $digits.data[0];
14006
- if ($v >= 0) {
14007
- $i1 = $resLengthInChars;
14008
- while (true) {
14009
- $digits = $result.data;
14010
- $v_0 = $v / 10 | 0;
14011
- $i1 = $i1 + -1 | 0;
14012
- $digits[$i1] = (48 + ($v - ($v_0 * 10 | 0) | 0) | 0) & 65535;
14013
- if (!$v_0)
14014
- break;
14015
- $v = $v_0;
14016
- }
14017
- } else {
14018
- $v_1 = Long_and(Long_fromInt($v), Long_create(4294967295, 0));
14019
- $i1 = $resLengthInChars;
14020
- while (true) {
14021
- $digits = $result.data;
14022
- $v_2 = Long_div($v_1, Long_fromInt(10));
14023
- $i1 = $i1 + -1 | 0;
14024
- $digits[$i1] = (48 + Long_lo(Long_sub($v_1, Long_mul($v_2, Long_fromInt(10)))) | 0) & 65535;
14025
- if (Long_eq($v_2, Long_ZERO))
14026
- break;
14027
- $v_1 = $v_2;
14028
- }
14029
- }
14030
- } else {
14031
- var$14 = $result.data;
14032
- $temp = $rt_createIntArray($numberLength);
14033
- var$16 = $temp.data;
14034
- jl_System_fastArraycopy($digits, 0, $temp, 0, $numberLength);
14035
- $negNumber = $resLengthInChars;
14036
- a: while (true) {
14037
- $result11 = Long_ZERO;
14038
- $j = $numberLength - 1 | 0;
14039
- $i1 = $j;
14040
- while ($i1 >= 0) {
14041
- $res = jm_Conversion_divideLongByBillion(Long_add(Long_shl($result11, 32), Long_and(Long_fromInt(var$16[$i1]), Long_create(4294967295, 0))));
14042
- var$16[$i1] = Long_lo($res);
14043
- $result11 = Long_fromInt(Long_hi($res));
14044
- $i1 = $i1 + -1 | 0;
14045
- }
14046
- $resDigit = Long_lo($result11);
14047
- $i1 = $negNumber;
14048
- while (true) {
14049
- $i1 = $i1 + -1 | 0;
14050
- var$14[$i1] = (48 + ($resDigit % 10 | 0) | 0) & 65535;
14051
- $resDigit = $resDigit / 10 | 0;
14052
- if (!$resDigit)
14053
- break;
14054
- if (!$i1)
14055
- break;
14056
- }
14057
- $delta = (9 - $negNumber | 0) + $i1 | 0;
14058
- $i = 0;
14059
- while ($i < $delta && $i1 > 0) {
14060
- $i1 = $i1 + -1 | 0;
14061
- var$14[$i1] = 48;
14062
- $i = $i + 1 | 0;
14063
- }
14064
- while (!var$16[$j]) {
14065
- if (!$j)
14066
- break a;
14067
- $j = $j + -1 | 0;
14068
- }
14069
- $numberLength = $j + 1 | 0;
14070
- $negNumber = $i1;
14071
- }
14072
- while (var$14[$i1] == 48) {
14073
- $i1 = $i1 + 1 | 0;
14074
- }
14075
- }
14076
- $negNumber = $sign >= 0 ? 0 : 1;
14077
- $sign = $resLengthInChars - $i1 | 0;
14078
- $exponent = ($sign - $scale | 0) - 1 | 0;
14079
- if (!$scale) {
14080
- if ($negNumber) {
14081
- $digits = $result.data;
14082
- $i1 = $i1 + -1 | 0;
14083
- $digits[$i1] = 45;
14084
- }
14085
- return jl_String__init_0($result, $i1, $resLengthInChars - $i1 | 0);
14086
- }
14087
- if ($scale > 0 && $exponent >= -6) {
14088
- if ($exponent < 0) {
14089
- $digits = $result.data;
14090
- $j = 2;
14091
- $scale = (-$exponent | 0) + 1 | 0;
14092
- while ($j < $scale) {
14093
- $i1 = $i1 + -1 | 0;
14094
- $digits[$i1] = 48;
14095
- $j = $j + 1 | 0;
14096
- }
14097
- $scale = $i1 + -1 | 0;
14098
- $digits[$scale] = 46;
14099
- $scale = $scale + -1 | 0;
14100
- $digits[$scale] = 48;
14101
- if ($negNumber) {
14102
- $scale = $scale + -1 | 0;
14103
- $digits[$scale] = 45;
14104
- }
14105
- return jl_String__init_0($result, $scale, $resLengthInChars - $scale | 0);
14106
- }
14107
- $digits = $result.data;
14108
- $insertPoint = $i1 + $exponent | 0;
14109
- $j = $resLengthInChars - 1 | 0;
14110
- while ($j >= $insertPoint) {
14111
- $digits[$j + 1 | 0] = $digits[$j];
14112
- $j = $j + -1 | 0;
14113
- }
14114
- $digits[$insertPoint + 1 | 0] = 46;
14115
- if ($negNumber) {
14116
- $i1 = $i1 + -1 | 0;
14117
- $digits[$i1] = 45;
14118
- }
14119
- return jl_String__init_0($result, $i1, ($resLengthInChars - $i1 | 0) + 1 | 0);
14120
- }
14121
- $startPoint = $i1 + 1 | 0;
14122
- $result1 = new jl_StringBuilder();
14123
- jl_AbstractStringBuilder__init_0($result1, (16 + $resLengthInChars | 0) - $startPoint | 0);
14124
- if ($negNumber)
14125
- jl_AbstractStringBuilder_append0($result1, 45);
14126
- if (($resLengthInChars - $startPoint | 0) < 1)
14127
- jl_AbstractStringBuilder_append3($result1, $result, $i1, $sign);
14128
- else {
14129
- jl_AbstractStringBuilder_append0($result1, $result.data[$i1]);
14130
- jl_AbstractStringBuilder_append0($result1, 46);
14131
- jl_AbstractStringBuilder_append3($result1, $result, $startPoint, $sign - 1 | 0);
14132
- }
14133
- jl_AbstractStringBuilder_append0($result1, 69);
14134
- if ($exponent > 0)
14135
- jl_AbstractStringBuilder_append0($result1, 43);
14136
- jl_AbstractStringBuilder_append1($result1, jl_Integer_toString($exponent));
14137
- return jl_AbstractStringBuilder_toString($result1);
14138
- };
14139
- var jm_Conversion_divideLongByBillion = ($a) => {
14140
- let $quot, $rem, $aPos;
14141
- if (Long_ge($a, Long_ZERO)) {
14142
- $quot = Long_div($a, Long_fromInt(1e9));
14143
- $rem = Long_rem($a, Long_fromInt(1e9));
14144
- } else {
14145
- $aPos = Long_shru($a, 1);
14146
- $quot = Long_div($aPos, Long_fromInt(5e8));
14147
- $rem = Long_add(Long_shl(Long_rem($aPos, Long_fromInt(5e8)), 1), Long_and($a, Long_fromInt(1)));
14148
- }
14149
- return Long_or(Long_shl($rem, 32), Long_and($quot, Long_create(4294967295, 0)));
14150
- };
14151
- var jm_Conversion__clinit_ = () => {
14152
- jm_Conversion_digitFitInInt = $rt_createIntArrayFromData([-1, -1, 31, 19, 15, 13, 11, 11, 10, 9, 9, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5]);
14153
- jm_Conversion_bigRadices = $rt_createIntArrayFromData([-2147483648, 1162261467, 1073741824, 1220703125, 362797056, 1977326743, 1073741824, 387420489, 1e9, 214358881, 429981696, 815730721, 1475789056, 170859375, 268435456, 410338673, 612220032, 893871739, 128e7, 1801088541, 113379904, 148035889, 191102976, 244140625, 308915776, 387420489, 481890304, 594823321, 729e6, 887503681, 1073741824, 1291467969, 1544804416, 1838265625, 60466176]);
13968
+ var jus_IntStream = $rt_classWithoutFields(0);
13969
+ var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
13970
+ function jusi_MappingToIntStreamImpl() {
13971
+ let a = this;
13972
+ jusi_SimpleIntStreamImpl.call(a);
13973
+ a.$source1 = null;
13974
+ a.$mapper0 = null;
13975
+ }
13976
+ var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
13977
+ let var$2, var$3;
13978
+ var$2 = $this.$source1;
13979
+ var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
13980
+ var$3.$_09 = $this;
13981
+ var$3.$_13 = $consumer;
13982
+ return jusi_ArrayStreamImpl_next(var$2, var$3);
14154
13983
  };
14155
13984
  function jusi_WrappingStreamImpl() {
14156
13985
  jusi_SimpleStreamImpl.call(this);
@@ -14173,21 +14002,194 @@ var jusi_MappingStreamImpl_wrap = ($this, $consumer) => {
14173
14002
  var$2.$_10 = $consumer;
14174
14003
  return var$2;
14175
14004
  };
14176
- var jus_IntStream = $rt_classWithoutFields(0);
14177
- var jusi_SimpleIntStreamImpl = $rt_classWithoutFields();
14178
- function jusi_MappingToIntStreamImpl() {
14179
- let a = this;
14180
- jusi_SimpleIntStreamImpl.call(a);
14181
- a.$source1 = null;
14182
- a.$mapper0 = null;
14183
- }
14184
- var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
14185
- let var$2, var$3;
14186
- var$2 = $this.$source1;
14187
- var$3 = new jusi_MappingToIntStreamImpl$next$lambda$_1_0();
14188
- var$3.$_09 = $this;
14189
- var$3.$_13 = $consumer;
14190
- return jusi_ArrayStreamImpl_next(var$2, var$3);
14005
+ var jm_Conversion = $rt_classWithoutFields();
14006
+ var jm_Conversion_digitFitInInt = null;
14007
+ var jm_Conversion_bigRadices = null;
14008
+ var jm_Conversion_toDecimalScaledString = ($val, $scale) => {
14009
+ let $sign, $numberLength, $digits, $result1, $resLengthInChars, $result, $v, $i1, $v_0, $v_1, $v_2, var$14, $temp, var$16, $negNumber, $result11, $j, $res, $resDigit, $delta, $i, $exponent, $insertPoint, $startPoint;
14010
+ $sign = $val.$sign0;
14011
+ $numberLength = $val.$numberLength;
14012
+ $digits = $val.$digits;
14013
+ if (!$sign) {
14014
+ switch ($scale) {
14015
+ case 0:
14016
+ break;
14017
+ case 1:
14018
+ return $rt_s(1083);
14019
+ case 2:
14020
+ return $rt_s(1084);
14021
+ case 3:
14022
+ return $rt_s(1085);
14023
+ case 4:
14024
+ return $rt_s(1086);
14025
+ case 5:
14026
+ return $rt_s(1087);
14027
+ case 6:
14028
+ return $rt_s(1088);
14029
+ default:
14030
+ $result1 = new jl_StringBuilder();
14031
+ jl_AbstractStringBuilder__init_($result1);
14032
+ if ($scale >= 0)
14033
+ jl_AbstractStringBuilder_append1($result1, $rt_s(1089));
14034
+ else
14035
+ jl_AbstractStringBuilder_append1($result1, $rt_s(1090));
14036
+ jl_AbstractStringBuilder_append($result1, -$scale | 0);
14037
+ return jl_AbstractStringBuilder_toString($result1);
14038
+ }
14039
+ return $rt_s(6);
14040
+ }
14041
+ $resLengthInChars = (($numberLength * 10 | 0) + 1 | 0) + 7 | 0;
14042
+ $result = $rt_createCharArray($resLengthInChars + 1 | 0);
14043
+ if ($numberLength == 1) {
14044
+ $v = $digits.data[0];
14045
+ if ($v >= 0) {
14046
+ $i1 = $resLengthInChars;
14047
+ while (true) {
14048
+ $digits = $result.data;
14049
+ $v_0 = $v / 10 | 0;
14050
+ $i1 = $i1 + -1 | 0;
14051
+ $digits[$i1] = (48 + ($v - ($v_0 * 10 | 0) | 0) | 0) & 65535;
14052
+ if (!$v_0)
14053
+ break;
14054
+ $v = $v_0;
14055
+ }
14056
+ } else {
14057
+ $v_1 = Long_and(Long_fromInt($v), Long_create(4294967295, 0));
14058
+ $i1 = $resLengthInChars;
14059
+ while (true) {
14060
+ $digits = $result.data;
14061
+ $v_2 = Long_div($v_1, Long_fromInt(10));
14062
+ $i1 = $i1 + -1 | 0;
14063
+ $digits[$i1] = (48 + Long_lo(Long_sub($v_1, Long_mul($v_2, Long_fromInt(10)))) | 0) & 65535;
14064
+ if (Long_eq($v_2, Long_ZERO))
14065
+ break;
14066
+ $v_1 = $v_2;
14067
+ }
14068
+ }
14069
+ } else {
14070
+ var$14 = $result.data;
14071
+ $temp = $rt_createIntArray($numberLength);
14072
+ var$16 = $temp.data;
14073
+ jl_System_fastArraycopy($digits, 0, $temp, 0, $numberLength);
14074
+ $negNumber = $resLengthInChars;
14075
+ a: while (true) {
14076
+ $result11 = Long_ZERO;
14077
+ $j = $numberLength - 1 | 0;
14078
+ $i1 = $j;
14079
+ while ($i1 >= 0) {
14080
+ $res = jm_Conversion_divideLongByBillion(Long_add(Long_shl($result11, 32), Long_and(Long_fromInt(var$16[$i1]), Long_create(4294967295, 0))));
14081
+ var$16[$i1] = Long_lo($res);
14082
+ $result11 = Long_fromInt(Long_hi($res));
14083
+ $i1 = $i1 + -1 | 0;
14084
+ }
14085
+ $resDigit = Long_lo($result11);
14086
+ $i1 = $negNumber;
14087
+ while (true) {
14088
+ $i1 = $i1 + -1 | 0;
14089
+ var$14[$i1] = (48 + ($resDigit % 10 | 0) | 0) & 65535;
14090
+ $resDigit = $resDigit / 10 | 0;
14091
+ if (!$resDigit)
14092
+ break;
14093
+ if (!$i1)
14094
+ break;
14095
+ }
14096
+ $delta = (9 - $negNumber | 0) + $i1 | 0;
14097
+ $i = 0;
14098
+ while ($i < $delta && $i1 > 0) {
14099
+ $i1 = $i1 + -1 | 0;
14100
+ var$14[$i1] = 48;
14101
+ $i = $i + 1 | 0;
14102
+ }
14103
+ while (!var$16[$j]) {
14104
+ if (!$j)
14105
+ break a;
14106
+ $j = $j + -1 | 0;
14107
+ }
14108
+ $numberLength = $j + 1 | 0;
14109
+ $negNumber = $i1;
14110
+ }
14111
+ while (var$14[$i1] == 48) {
14112
+ $i1 = $i1 + 1 | 0;
14113
+ }
14114
+ }
14115
+ $negNumber = $sign >= 0 ? 0 : 1;
14116
+ $sign = $resLengthInChars - $i1 | 0;
14117
+ $exponent = ($sign - $scale | 0) - 1 | 0;
14118
+ if (!$scale) {
14119
+ if ($negNumber) {
14120
+ $digits = $result.data;
14121
+ $i1 = $i1 + -1 | 0;
14122
+ $digits[$i1] = 45;
14123
+ }
14124
+ return jl_String__init_0($result, $i1, $resLengthInChars - $i1 | 0);
14125
+ }
14126
+ if ($scale > 0 && $exponent >= -6) {
14127
+ if ($exponent < 0) {
14128
+ $digits = $result.data;
14129
+ $j = 2;
14130
+ $scale = (-$exponent | 0) + 1 | 0;
14131
+ while ($j < $scale) {
14132
+ $i1 = $i1 + -1 | 0;
14133
+ $digits[$i1] = 48;
14134
+ $j = $j + 1 | 0;
14135
+ }
14136
+ $scale = $i1 + -1 | 0;
14137
+ $digits[$scale] = 46;
14138
+ $scale = $scale + -1 | 0;
14139
+ $digits[$scale] = 48;
14140
+ if ($negNumber) {
14141
+ $scale = $scale + -1 | 0;
14142
+ $digits[$scale] = 45;
14143
+ }
14144
+ return jl_String__init_0($result, $scale, $resLengthInChars - $scale | 0);
14145
+ }
14146
+ $digits = $result.data;
14147
+ $insertPoint = $i1 + $exponent | 0;
14148
+ $j = $resLengthInChars - 1 | 0;
14149
+ while ($j >= $insertPoint) {
14150
+ $digits[$j + 1 | 0] = $digits[$j];
14151
+ $j = $j + -1 | 0;
14152
+ }
14153
+ $digits[$insertPoint + 1 | 0] = 46;
14154
+ if ($negNumber) {
14155
+ $i1 = $i1 + -1 | 0;
14156
+ $digits[$i1] = 45;
14157
+ }
14158
+ return jl_String__init_0($result, $i1, ($resLengthInChars - $i1 | 0) + 1 | 0);
14159
+ }
14160
+ $startPoint = $i1 + 1 | 0;
14161
+ $result1 = new jl_StringBuilder();
14162
+ jl_AbstractStringBuilder__init_0($result1, (16 + $resLengthInChars | 0) - $startPoint | 0);
14163
+ if ($negNumber)
14164
+ jl_AbstractStringBuilder_append0($result1, 45);
14165
+ if (($resLengthInChars - $startPoint | 0) < 1)
14166
+ jl_AbstractStringBuilder_append3($result1, $result, $i1, $sign);
14167
+ else {
14168
+ jl_AbstractStringBuilder_append0($result1, $result.data[$i1]);
14169
+ jl_AbstractStringBuilder_append0($result1, 46);
14170
+ jl_AbstractStringBuilder_append3($result1, $result, $startPoint, $sign - 1 | 0);
14171
+ }
14172
+ jl_AbstractStringBuilder_append0($result1, 69);
14173
+ if ($exponent > 0)
14174
+ jl_AbstractStringBuilder_append0($result1, 43);
14175
+ jl_AbstractStringBuilder_append1($result1, jl_Integer_toString($exponent));
14176
+ return jl_AbstractStringBuilder_toString($result1);
14177
+ };
14178
+ var jm_Conversion_divideLongByBillion = ($a) => {
14179
+ let $quot, $rem, $aPos;
14180
+ if (Long_ge($a, Long_ZERO)) {
14181
+ $quot = Long_div($a, Long_fromInt(1e9));
14182
+ $rem = Long_rem($a, Long_fromInt(1e9));
14183
+ } else {
14184
+ $aPos = Long_shru($a, 1);
14185
+ $quot = Long_div($aPos, Long_fromInt(5e8));
14186
+ $rem = Long_add(Long_shl(Long_rem($aPos, Long_fromInt(5e8)), 1), Long_and($a, Long_fromInt(1)));
14187
+ }
14188
+ return Long_or(Long_shl($rem, 32), Long_and($quot, Long_create(4294967295, 0)));
14189
+ };
14190
+ var jm_Conversion__clinit_ = () => {
14191
+ jm_Conversion_digitFitInInt = $rt_createIntArrayFromData([-1, -1, 31, 19, 15, 13, 11, 11, 10, 9, 9, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5]);
14192
+ jm_Conversion_bigRadices = $rt_createIntArrayFromData([-2147483648, 1162261467, 1073741824, 1220703125, 362797056, 1977326743, 1073741824, 387420489, 1e9, 214358881, 429981696, 815730721, 1475789056, 170859375, 268435456, 410338673, 612220032, 893871739, 128e7, 1801088541, 113379904, 148035889, 191102976, 244140625, 308915776, 387420489, 481890304, 594823321, 729e6, 887503681, 1073741824, 1291467969, 1544804416, 1838265625, 60466176]);
14191
14193
  };
14192
14194
  var asru_Binary = $rt_classWithoutFields();
14193
14195
  var asru_Binary_chars = null;
@@ -16595,6 +16597,7 @@ var jl_Thread__clinit_ = () => {
16595
16597
  };
16596
16598
  var jl_IllegalStateException = $rt_classWithoutFields(jl_RuntimeException);
16597
16599
  var jl_IllegalMonitorStateException = $rt_classWithoutFields(jl_RuntimeException);
16600
+ var jl_NegativeArraySizeException = $rt_classWithoutFields(jl_RuntimeException);
16598
16601
  var otjc_JSObjects = $rt_classWithoutFields();
16599
16602
  var otji_JSWrapper$Helper = $rt_classWithoutFields();
16600
16603
  var otji_JSWrapper$Helper_hashCodes = null;
@@ -16630,7 +16633,6 @@ var otji_JSWrapper$Helper__clinit_ = () => {
16630
16633
  otji_JSWrapper$Helper_numberFinalizationRegistry = var$1;
16631
16634
  };
16632
16635
  var otjc_JSUndefined = $rt_classWithoutFields();
16633
- var jl_NegativeArraySizeException = $rt_classWithoutFields(jl_RuntimeException);
16634
16636
  function ju_Arrays$ArrayAsList() {
16635
16637
  ju_AbstractList.call(this);
16636
16638
  this.$array3 = null;
@@ -31893,222 +31895,6 @@ var asrjt_Floating = $rt_classWithoutFields();
31893
31895
  var asrjt_Floating_isFinite = ($this) => {
31894
31896
  return !$this.$isZero() && !$this.$isNormal() && !$this.$isSubnormal() ? 0 : 1;
31895
31897
  };
31896
- function asrjt_Float32() {
31897
- asrjt_Floating.call(this);
31898
- this.$bits0 = 0;
31899
- }
31900
- var asrjt_Float32_Zero = null;
31901
- var asrjt_Float32_NegativeZero = null;
31902
- var asrjt_Float32_NaN = null;
31903
- var asrjt_Float32_Infinity = null;
31904
- var asrjt_Float32_NegativeInfinity = null;
31905
- var asrjt_Float32_$assertionsDisabled = 0;
31906
- var asrjt_Float32__init_2 = ($this, $bits) => {
31907
- $this.$bits0 = $bits;
31908
- };
31909
- var asrjt_Float32__init_ = (var_0) => {
31910
- let var_1 = new asrjt_Float32();
31911
- asrjt_Float32__init_2(var_1, var_0);
31912
- return var_1;
31913
- };
31914
- var asrjt_Float32__init_1 = ($this, $sign, $exponent, $significand) => {
31915
- asrjt_Float32__init_2($this, (!$sign ? 0 : -2147483648) | (($exponent + 127 | 0) & 255) << 23 | $significand & 8388607);
31916
- };
31917
- var asrjt_Float32__init_0 = (var_0, var_1, var_2) => {
31918
- let var_3 = new asrjt_Float32();
31919
- asrjt_Float32__init_1(var_3, var_0, var_1, var_2);
31920
- return var_3;
31921
- };
31922
- var asrjt_Float32_exponent = ($this) => {
31923
- return (($this.$bits0 >>> 23 | 0) & 255) - 127 | 0;
31924
- };
31925
- var asrjt_Float32_negate = ($this) => {
31926
- return asrjt_Float32__init_($this.$bits0 ^ -2147483648);
31927
- };
31928
- var asrjt_Float32_isSignMinus = ($this) => {
31929
- return ($this.$bits0 >>> 31 | 0) != 1 ? 0 : 1;
31930
- };
31931
- var asrjt_Float32_isInfinite = ($this) => {
31932
- return asrjt_Float32_exponent($this) == 128 && !($this.$bits0 & 8388607) ? 1 : 0;
31933
- };
31934
- var asrjt_Float32_isNormal = ($this) => {
31935
- return asrjt_Float32_exponent($this) != -127 && asrjt_Float32_exponent($this) != 128 ? 1 : 0;
31936
- };
31937
- var asrjt_Float32_isSubnormal = ($this) => {
31938
- return asrjt_Float32_exponent($this) == -127 && !asrjt_Float32_isZero($this) ? 1 : 0;
31939
- };
31940
- var asrjt_Float32_isNaN = ($this) => {
31941
- return asrjt_Float32_exponent($this) == 128 && !asrjt_Float32_isInfinite($this) ? 1 : 0;
31942
- };
31943
- var asrjt_Float32_isSignalling = ($this) => {
31944
- if (!asrjt_Float32_isNaN($this))
31945
- return 0;
31946
- return $this.$bits0 & 4194304 ? 0 : 1;
31947
- };
31948
- var asrjt_Float32_isZero = ($this) => {
31949
- let var$1;
31950
- var$1 = $this.$bits0;
31951
- return var$1 && var$1 != -2147483648 ? 0 : 1;
31952
- };
31953
- var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
31954
- let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
31955
- if (asrji_ExactFloat_isZero($ef))
31956
- return !$ef.$sign ? asrjt_Float32_Zero : asrjt_Float32_NegativeZero;
31957
- $ef = asrji_ExactFloat_normalize($ef);
31958
- $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
31959
- if ($normalizedExponent > -126) {
31960
- if ($normalizedExponent > 128) {
31961
- $mainBits = $env.$flags;
31962
- $roundedBits = asrj_Flags_overflow;
31963
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31964
- $mainBits = $env.$flags;
31965
- $roundedBits = asrj_Flags_inexact;
31966
- ju_GenericEnumSet_add($mainBits, $roundedBits);
31967
- asrjt_Float32$1_$callClinit();
31968
- switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
31969
- case 1:
31970
- break;
31971
- case 2:
31972
- case 3:
31973
- $normalizedExponent = $ef.$sign;
31974
- if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
31975
- return asrjt_Float32__init_0($normalizedExponent, 127, -1);
31976
- return !$normalizedExponent ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31977
- case 4:
31978
- case 5:
31979
- return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31980
- default:
31981
- if (!asrjt_Float32_$assertionsDisabled)
31982
- $rt_throw(jl_AssertionError__init_($rt_s(1629)));
31983
- return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
31984
- }
31985
- return asrjt_Float32__init_0($ef.$sign, 127, -1);
31986
- }
31987
- if (jm_BigInteger_bitLength($ef.$significand) <= 24) {
31988
- if (!asrjt_Float32_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -127)
31989
- $rt_throw(jl_AssertionError__init_($rt_s(1630)));
31990
- $a = new asrjt_Float32();
31991
- $normalizedExponent = $ef.$sign;
31992
- $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
31993
- $ef = $ef.$significand;
31994
- asrjt_Float32__init_1($a, $normalizedExponent, $bitsToRound, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef, 24 - jm_BigInteger_bitLength($ef) | 0)) & 8388607);
31995
- return $a;
31996
- }
31997
- $mainBits = $env.$flags;
31998
- $roundedBits = asrj_Flags_inexact;
31999
- ju_GenericEnumSet_add($mainBits, $roundedBits);
32000
- $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 24 | 0;
32001
- $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
32002
- $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
32003
- $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
32004
- $towardsZero = asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)) & 8388607);
32005
- $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);
32006
- } else {
32007
- if ($ef.$exponent0 > -150) {
32008
- if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 23)
32009
- $rt_throw(jl_AssertionError__init_($rt_s(1631)));
32010
- return asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef.$significand, 149 + $ef.$exponent0 | 0)));
32011
- }
32012
- $mainBits = $env.$flags;
32013
- $roundedBits = asrj_Flags_inexact;
32014
- ju_GenericEnumSet_add($mainBits, $roundedBits);
32015
- $mainBits = $env.$flags;
32016
- $roundedBits = asrj_Flags_underflow;
32017
- ju_GenericEnumSet_add($mainBits, $roundedBits);
32018
- $bitsToRound = -149 - $ef.$exponent0 | 0;
32019
- $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
32020
- $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
32021
- $towardsZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
32022
- $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
32023
- if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 23)
32024
- $awayZero = asrjt_Float32__init_0($ef.$sign, -126, jm_BigInteger_intValueExact($upBits) & 8388607);
32025
- else {
32026
- if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 23)
32027
- $rt_throw(jl_AssertionError__init_1());
32028
- $awayZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact($upBits));
32029
- }
32030
- }
32031
- asrjt_Float32$1_$callClinit();
32032
- switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
32033
- case 1:
32034
- break;
32035
- case 2:
32036
- case 3:
32037
- if ($ef.$sign == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
32038
- return $towardsZero;
32039
- return $awayZero;
32040
- default:
32041
- $ef = jm_BigInteger_ONE;
32042
- $normalizedExponent = $bitsToRound - 1 | 0;
32043
- if (!jm_BigInteger_equals($roundedBits, jm_BigInteger_shiftLeft($ef, $normalizedExponent))) {
32044
- if (jm_BigInteger_compareTo($roundedBits, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, $normalizedExponent)) <= 0)
32045
- return $towardsZero;
32046
- return $awayZero;
32047
- }
32048
- if ($env.$mode !== asrj_RoundingMode_away && $awayZero.$bits0 & 1)
32049
- return $towardsZero;
32050
- return $awayZero;
32051
- }
32052
- return $towardsZero;
32053
- };
32054
- var asrjt_Float32_toExactFloat = ($this) => {
32055
- let $sign, $exponent, $significand;
32056
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isInfinite($this))
32057
- $rt_throw(jl_AssertionError__init_($rt_s(1632)));
32058
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isNaN($this))
32059
- $rt_throw(jl_AssertionError__init_($rt_s(1633)));
32060
- if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isZero($this))
32061
- $rt_throw(jl_AssertionError__init_($rt_s(1634)));
32062
- $sign = asrjt_Float32_isSignMinus($this);
32063
- if (asrjt_Float32_isZero($this)) {
32064
- $exponent = 0;
32065
- $significand = jm_BigInteger_ZERO;
32066
- } else if (asrjt_Float32_isNormal($this)) {
32067
- $exponent = asrjt_Float32_exponent($this) - 23 | 0;
32068
- $significand = jm_BigInteger_valueOf(Long_fromInt(($this.$bits0 & 8388607) + 8388608 | 0));
32069
- } else {
32070
- if (!asrjt_Float32_isSubnormal($this)) {
32071
- if (asrjt_Float32_$assertionsDisabled)
32072
- return null;
32073
- $rt_throw(jl_AssertionError__init_($rt_s(1635)));
32074
- }
32075
- $exponent = asrjt_Float32_exponent($this) - 22 | 0;
32076
- $significand = jm_BigInteger_valueOf(Long_fromInt($this.$bits0 & 8388607));
32077
- }
32078
- return asrji_ExactFloat__init_($sign, $exponent, $significand);
32079
- };
32080
- var asrjt_Float32_maxPrecision = ($this) => {
32081
- return 30;
32082
- };
32083
- var asrjt_Float32_negate0 = ($this) => {
32084
- return asrjt_Float32_negate($this);
32085
- };
32086
- var asrjt_Float32_fromExactFloat = ($this, var$1, var$2) => {
32087
- return asrjt_Float32_fromExactFloat0($this, var$1, var$2);
32088
- };
32089
- var asrjt_Float32_NegativeInfinity0 = ($this) => {
32090
- return asrjt_Float32_NegativeInfinity;
32091
- };
32092
- var asrjt_Float32_Infinity0 = ($this) => {
32093
- return asrjt_Float32_Infinity;
32094
- };
32095
- var asrjt_Float32_NegativeZero0 = ($this) => {
32096
- return asrjt_Float32_NegativeZero;
32097
- };
32098
- var asrjt_Float32_Zero0 = ($this) => {
32099
- return asrjt_Float32_Zero;
32100
- };
32101
- var asrjt_Float32_NaN0 = ($this) => {
32102
- return asrjt_Float32_NaN;
32103
- };
32104
- var asrjt_Float32__clinit_ = () => {
32105
- asrjt_Float32_$assertionsDisabled = 0;
32106
- asrjt_Float32_Zero = asrjt_Float32__init_(0);
32107
- asrjt_Float32_NegativeZero = asrjt_Float32__init_(-2147483648);
32108
- asrjt_Float32_NaN = asrjt_Float32__init_(2143289344);
32109
- asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
32110
- asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
32111
- };
32112
31898
  function asrjt_Float64() {
32113
31899
  asrjt_Floating.call(this);
32114
31900
  this.$bits1 = Long_ZERO;
@@ -32433,6 +32219,222 @@ var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32433
32219
  var$4.$significand = $i;
32434
32220
  return $helper.$fromExactFloat(var$4, $env);
32435
32221
  };
32222
+ function asrjt_Float32() {
32223
+ asrjt_Floating.call(this);
32224
+ this.$bits0 = 0;
32225
+ }
32226
+ var asrjt_Float32_Zero = null;
32227
+ var asrjt_Float32_NegativeZero = null;
32228
+ var asrjt_Float32_NaN = null;
32229
+ var asrjt_Float32_Infinity = null;
32230
+ var asrjt_Float32_NegativeInfinity = null;
32231
+ var asrjt_Float32_$assertionsDisabled = 0;
32232
+ var asrjt_Float32__init_2 = ($this, $bits) => {
32233
+ $this.$bits0 = $bits;
32234
+ };
32235
+ var asrjt_Float32__init_ = (var_0) => {
32236
+ let var_1 = new asrjt_Float32();
32237
+ asrjt_Float32__init_2(var_1, var_0);
32238
+ return var_1;
32239
+ };
32240
+ var asrjt_Float32__init_1 = ($this, $sign, $exponent, $significand) => {
32241
+ asrjt_Float32__init_2($this, (!$sign ? 0 : -2147483648) | (($exponent + 127 | 0) & 255) << 23 | $significand & 8388607);
32242
+ };
32243
+ var asrjt_Float32__init_0 = (var_0, var_1, var_2) => {
32244
+ let var_3 = new asrjt_Float32();
32245
+ asrjt_Float32__init_1(var_3, var_0, var_1, var_2);
32246
+ return var_3;
32247
+ };
32248
+ var asrjt_Float32_exponent = ($this) => {
32249
+ return (($this.$bits0 >>> 23 | 0) & 255) - 127 | 0;
32250
+ };
32251
+ var asrjt_Float32_negate = ($this) => {
32252
+ return asrjt_Float32__init_($this.$bits0 ^ -2147483648);
32253
+ };
32254
+ var asrjt_Float32_isSignMinus = ($this) => {
32255
+ return ($this.$bits0 >>> 31 | 0) != 1 ? 0 : 1;
32256
+ };
32257
+ var asrjt_Float32_isInfinite = ($this) => {
32258
+ return asrjt_Float32_exponent($this) == 128 && !($this.$bits0 & 8388607) ? 1 : 0;
32259
+ };
32260
+ var asrjt_Float32_isNormal = ($this) => {
32261
+ return asrjt_Float32_exponent($this) != -127 && asrjt_Float32_exponent($this) != 128 ? 1 : 0;
32262
+ };
32263
+ var asrjt_Float32_isSubnormal = ($this) => {
32264
+ return asrjt_Float32_exponent($this) == -127 && !asrjt_Float32_isZero($this) ? 1 : 0;
32265
+ };
32266
+ var asrjt_Float32_isNaN = ($this) => {
32267
+ return asrjt_Float32_exponent($this) == 128 && !asrjt_Float32_isInfinite($this) ? 1 : 0;
32268
+ };
32269
+ var asrjt_Float32_isSignalling = ($this) => {
32270
+ if (!asrjt_Float32_isNaN($this))
32271
+ return 0;
32272
+ return $this.$bits0 & 4194304 ? 0 : 1;
32273
+ };
32274
+ var asrjt_Float32_isZero = ($this) => {
32275
+ let var$1;
32276
+ var$1 = $this.$bits0;
32277
+ return var$1 && var$1 != -2147483648 ? 0 : 1;
32278
+ };
32279
+ var asrjt_Float32_fromExactFloat0 = ($this, $ef, $env) => {
32280
+ let $normalizedExponent, $mainBits, $roundedBits, $a, $bitsToRound, $upBits, $towardsZero, $awayZero;
32281
+ if (asrji_ExactFloat_isZero($ef))
32282
+ return !$ef.$sign ? asrjt_Float32_Zero : asrjt_Float32_NegativeZero;
32283
+ $ef = asrji_ExactFloat_normalize($ef);
32284
+ $normalizedExponent = $ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0;
32285
+ if ($normalizedExponent > -126) {
32286
+ if ($normalizedExponent > 128) {
32287
+ $mainBits = $env.$flags;
32288
+ $roundedBits = asrj_Flags_overflow;
32289
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
32290
+ $mainBits = $env.$flags;
32291
+ $roundedBits = asrj_Flags_inexact;
32292
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
32293
+ asrjt_Float32$1_$callClinit();
32294
+ switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
32295
+ case 1:
32296
+ break;
32297
+ case 2:
32298
+ case 3:
32299
+ $normalizedExponent = $ef.$sign;
32300
+ if ($normalizedExponent == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
32301
+ return asrjt_Float32__init_0($normalizedExponent, 127, -1);
32302
+ return !$normalizedExponent ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
32303
+ case 4:
32304
+ case 5:
32305
+ return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
32306
+ default:
32307
+ if (!asrjt_Float32_$assertionsDisabled)
32308
+ $rt_throw(jl_AssertionError__init_($rt_s(1629)));
32309
+ return !$ef.$sign ? asrjt_Float32_Infinity : asrjt_Float32_NegativeInfinity;
32310
+ }
32311
+ return asrjt_Float32__init_0($ef.$sign, 127, -1);
32312
+ }
32313
+ if (jm_BigInteger_bitLength($ef.$significand) <= 24) {
32314
+ if (!asrjt_Float32_$assertionsDisabled && (($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0) <= -127)
32315
+ $rt_throw(jl_AssertionError__init_($rt_s(1630)));
32316
+ $a = new asrjt_Float32();
32317
+ $normalizedExponent = $ef.$sign;
32318
+ $bitsToRound = ($ef.$exponent0 + jm_BigInteger_bitLength($ef.$significand) | 0) - 1 | 0;
32319
+ $ef = $ef.$significand;
32320
+ asrjt_Float32__init_1($a, $normalizedExponent, $bitsToRound, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef, 24 - jm_BigInteger_bitLength($ef) | 0)) & 8388607);
32321
+ return $a;
32322
+ }
32323
+ $mainBits = $env.$flags;
32324
+ $roundedBits = asrj_Flags_inexact;
32325
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
32326
+ $bitsToRound = jm_BigInteger_bitLength($ef.$significand) - 24 | 0;
32327
+ $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
32328
+ $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
32329
+ $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
32330
+ $towardsZero = asrjt_Float32__init_0($ef.$sign, ($ef.$exponent0 + 23 | 0) + $bitsToRound | 0, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)) & 8388607);
32331
+ $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);
32332
+ } else {
32333
+ if ($ef.$exponent0 > -150) {
32334
+ if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($ef.$significand) > 23)
32335
+ $rt_throw(jl_AssertionError__init_($rt_s(1631)));
32336
+ return asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftLeft($ef.$significand, 149 + $ef.$exponent0 | 0)));
32337
+ }
32338
+ $mainBits = $env.$flags;
32339
+ $roundedBits = asrj_Flags_inexact;
32340
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
32341
+ $mainBits = $env.$flags;
32342
+ $roundedBits = asrj_Flags_underflow;
32343
+ ju_GenericEnumSet_add($mainBits, $roundedBits);
32344
+ $bitsToRound = -149 - $ef.$exponent0 | 0;
32345
+ $mainBits = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), $bitsToRound);
32346
+ $roundedBits = jm_BigInteger_subtract($ef.$significand, $mainBits);
32347
+ $towardsZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound)));
32348
+ $upBits = jm_BigInteger_add(jm_BigInteger_shiftRight($ef.$significand, $bitsToRound), jm_BigInteger_valueOf(Long_fromInt(1)));
32349
+ if (!jm_BigInteger_testBit($upBits, 0) && jm_BigInteger_bitLength($upBits) > 23)
32350
+ $awayZero = asrjt_Float32__init_0($ef.$sign, -126, jm_BigInteger_intValueExact($upBits) & 8388607);
32351
+ else {
32352
+ if (!asrjt_Float32_$assertionsDisabled && jm_BigInteger_bitLength($upBits) > 23)
32353
+ $rt_throw(jl_AssertionError__init_1());
32354
+ $awayZero = asrjt_Float32__init_0($ef.$sign, -127, jm_BigInteger_intValueExact($upBits));
32355
+ }
32356
+ }
32357
+ asrjt_Float32$1_$callClinit();
32358
+ switch (asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode.data[jl_Enum_ordinal($env.$mode)]) {
32359
+ case 1:
32360
+ break;
32361
+ case 2:
32362
+ case 3:
32363
+ if ($ef.$sign == ($env.$mode !== asrj_RoundingMode_max ? 0 : 1))
32364
+ return $towardsZero;
32365
+ return $awayZero;
32366
+ default:
32367
+ $ef = jm_BigInteger_ONE;
32368
+ $normalizedExponent = $bitsToRound - 1 | 0;
32369
+ if (!jm_BigInteger_equals($roundedBits, jm_BigInteger_shiftLeft($ef, $normalizedExponent))) {
32370
+ if (jm_BigInteger_compareTo($roundedBits, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, $normalizedExponent)) <= 0)
32371
+ return $towardsZero;
32372
+ return $awayZero;
32373
+ }
32374
+ if ($env.$mode !== asrj_RoundingMode_away && $awayZero.$bits0 & 1)
32375
+ return $towardsZero;
32376
+ return $awayZero;
32377
+ }
32378
+ return $towardsZero;
32379
+ };
32380
+ var asrjt_Float32_toExactFloat = ($this) => {
32381
+ let $sign, $exponent, $significand;
32382
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isInfinite($this))
32383
+ $rt_throw(jl_AssertionError__init_($rt_s(1632)));
32384
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isNaN($this))
32385
+ $rt_throw(jl_AssertionError__init_($rt_s(1633)));
32386
+ if (!asrjt_Float32_$assertionsDisabled && asrjt_Float32_isZero($this))
32387
+ $rt_throw(jl_AssertionError__init_($rt_s(1634)));
32388
+ $sign = asrjt_Float32_isSignMinus($this);
32389
+ if (asrjt_Float32_isZero($this)) {
32390
+ $exponent = 0;
32391
+ $significand = jm_BigInteger_ZERO;
32392
+ } else if (asrjt_Float32_isNormal($this)) {
32393
+ $exponent = asrjt_Float32_exponent($this) - 23 | 0;
32394
+ $significand = jm_BigInteger_valueOf(Long_fromInt(($this.$bits0 & 8388607) + 8388608 | 0));
32395
+ } else {
32396
+ if (!asrjt_Float32_isSubnormal($this)) {
32397
+ if (asrjt_Float32_$assertionsDisabled)
32398
+ return null;
32399
+ $rt_throw(jl_AssertionError__init_($rt_s(1635)));
32400
+ }
32401
+ $exponent = asrjt_Float32_exponent($this) - 22 | 0;
32402
+ $significand = jm_BigInteger_valueOf(Long_fromInt($this.$bits0 & 8388607));
32403
+ }
32404
+ return asrji_ExactFloat__init_($sign, $exponent, $significand);
32405
+ };
32406
+ var asrjt_Float32_maxPrecision = ($this) => {
32407
+ return 30;
32408
+ };
32409
+ var asrjt_Float32_negate0 = ($this) => {
32410
+ return asrjt_Float32_negate($this);
32411
+ };
32412
+ var asrjt_Float32_fromExactFloat = ($this, var$1, var$2) => {
32413
+ return asrjt_Float32_fromExactFloat0($this, var$1, var$2);
32414
+ };
32415
+ var asrjt_Float32_NegativeInfinity0 = ($this) => {
32416
+ return asrjt_Float32_NegativeInfinity;
32417
+ };
32418
+ var asrjt_Float32_Infinity0 = ($this) => {
32419
+ return asrjt_Float32_Infinity;
32420
+ };
32421
+ var asrjt_Float32_NegativeZero0 = ($this) => {
32422
+ return asrjt_Float32_NegativeZero;
32423
+ };
32424
+ var asrjt_Float32_Zero0 = ($this) => {
32425
+ return asrjt_Float32_Zero;
32426
+ };
32427
+ var asrjt_Float32_NaN0 = ($this) => {
32428
+ return asrjt_Float32_NaN;
32429
+ };
32430
+ var asrjt_Float32__clinit_ = () => {
32431
+ asrjt_Float32_$assertionsDisabled = 0;
32432
+ asrjt_Float32_Zero = asrjt_Float32__init_(0);
32433
+ asrjt_Float32_NegativeZero = asrjt_Float32__init_(-2147483648);
32434
+ asrjt_Float32_NaN = asrjt_Float32__init_(2143289344);
32435
+ asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
32436
+ asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
32437
+ };
32436
32438
  var asrjo_Arithmetic = $rt_classWithoutFields();
32437
32439
  var asrjo_Arithmetic_$assertionsDisabled = 0;
32438
32440
  var asrjo_Arithmetic_add = ($a, $b, $env) => {
@@ -34129,6 +34131,23 @@ function ju_Hashtable$Entry() {
34129
34131
  var ju_Hashtable$Entry_equalsKey = ($this, $aKey, $hash) => {
34130
34132
  return $this.$hashcode == jl_String_hashCode($aKey) && $this.$key.$equals($aKey) ? 1 : 0;
34131
34133
  };
34134
+ var asrjt_Float32$1 = $rt_classWithoutFields();
34135
+ var asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = null;
34136
+ var asrjt_Float32$1_$callClinit = () => {
34137
+ asrjt_Float32$1_$callClinit = $rt_eraseClinit(asrjt_Float32$1);
34138
+ asrjt_Float32$1__clinit_();
34139
+ };
34140
+ var asrjt_Float32$1__clinit_ = () => {
34141
+ let var$1, var$2;
34142
+ var$1 = $rt_createIntArray(asrj_RoundingMode_values().data.length);
34143
+ var$2 = var$1.data;
34144
+ asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = var$1;
34145
+ var$2[asrj_RoundingMode_zero.$ordinal0] = 1;
34146
+ var$2[asrj_RoundingMode_min.$ordinal0] = 2;
34147
+ var$2[asrj_RoundingMode_max.$ordinal0] = 3;
34148
+ var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34149
+ var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34150
+ };
34132
34151
  var asrjt_Float64$1 = $rt_classWithoutFields();
34133
34152
  var asrjt_Float64$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = null;
34134
34153
  var asrjt_Float64$1_$callClinit = () => {
@@ -34307,23 +34326,6 @@ var jm_Multiplication__clinit_ = () => {
34307
34326
  $i = $i + 1 | 0;
34308
34327
  }
34309
34328
  };
34310
- var asrjt_Float32$1 = $rt_classWithoutFields();
34311
- var asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = null;
34312
- var asrjt_Float32$1_$callClinit = () => {
34313
- asrjt_Float32$1_$callClinit = $rt_eraseClinit(asrjt_Float32$1);
34314
- asrjt_Float32$1__clinit_();
34315
- };
34316
- var asrjt_Float32$1__clinit_ = () => {
34317
- let var$1, var$2;
34318
- var$1 = $rt_createIntArray(asrj_RoundingMode_values().data.length);
34319
- var$2 = var$1.data;
34320
- asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = var$1;
34321
- var$2[asrj_RoundingMode_zero.$ordinal0] = 1;
34322
- var$2[asrj_RoundingMode_min.$ordinal0] = 2;
34323
- var$2[asrj_RoundingMode_max.$ordinal0] = 3;
34324
- var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34325
- var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34326
- };
34327
34329
  var otjc_JSBoolean = $rt_classWithoutFields();
34328
34330
  var otjc_JSArrayReader = $rt_classWithoutFields(0);
34329
34331
  var otjc_JSArray = $rt_classWithoutFields();
@@ -35306,33 +35308,41 @@ $rt_metadata([
35306
35308
  0,
35307
35309
  0,
35308
35310
  0,
35309
- asr_JsCompilationResult,
35310
- "JsCompilationResult",
35311
- 10,
35311
+ asrrh_RegisterFile,
35312
+ 0,
35312
35313
  jl_Object,
35313
35314
  [],
35314
35315
  0,
35315
35316
  3,
35316
35317
  0,
35318
+ asrrh_RegisterFile_$callClinit,
35317
35319
  0,
35320
+ ju_Arrays,
35318
35321
  0,
35319
- asr_AssemblyException,
35320
- 0,
35321
- jl_Exception,
35322
+ jl_Object,
35322
35323
  [],
35323
35324
  0,
35324
35325
  3,
35325
35326
  0,
35326
35327
  0,
35327
35328
  0,
35328
- asrrh_RegisterFile,
35329
+ juf_ToIntFunction,
35329
35330
  0,
35330
35331
  jl_Object,
35331
35332
  [],
35333
+ 3,
35334
+ 3,
35335
+ 0,
35336
+ 0,
35337
+ 0,
35338
+ asr_JsRiscV$getRegistersValues$lambda$_25_0,
35339
+ 0,
35340
+ jl_Object,
35341
+ [juf_ToIntFunction],
35332
35342
  0,
35333
35343
  3,
35334
35344
  0,
35335
- asrrh_RegisterFile_$callClinit,
35345
+ 0,
35336
35346
  0,
35337
35347
  jm_BigInteger,
35338
35348
  "BigInteger",
@@ -35344,18 +35354,27 @@ $rt_metadata([
35344
35354
  0,
35345
35355
  0,
35346
35356
  ["$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString)],
35347
- asr_JsProgramStatement,
35348
- "JsProgramStatement",
35349
- 10,
35357
+ asr_JsRiscV$getTokenizedLines$lambda$_5_0,
35358
+ 0,
35350
35359
  jl_Object,
35351
- [],
35360
+ [juf_Function],
35352
35361
  0,
35353
35362
  3,
35354
35363
  0,
35355
35364
  0,
35365
+ ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
35366
+ asr_JsRiscV$getTokenizedLines$lambda$_5_1,
35356
35367
  0,
35357
- ju_Arrays,
35368
+ jl_Object,
35369
+ [juf_IntFunction],
35358
35370
  0,
35371
+ 3,
35372
+ 0,
35373
+ 0,
35374
+ ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
35375
+ asr_JsRiscVTokenizedLine,
35376
+ "JsRiscVTokenizedLine",
35377
+ 10,
35359
35378
  jl_Object,
35360
35379
  [],
35361
35380
  0,
@@ -35391,26 +35410,8 @@ $rt_metadata([
35391
35410
  0,
35392
35411
  0,
35393
35412
  0,
35394
- asr_JsRiscV$getTokenizedLines$lambda$_5_0,
35395
- 0,
35396
- jl_Object,
35397
- [juf_Function],
35398
- 0,
35399
- 3,
35400
- 0,
35401
- 0,
35402
- ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
35403
- asr_JsRiscV$getTokenizedLines$lambda$_5_1,
35404
- 0,
35405
- jl_Object,
35406
- [juf_IntFunction],
35407
- 0,
35408
- 3,
35409
- 0,
35410
- 0,
35411
- ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
35412
- asr_JsRiscVTokenizedLine,
35413
- "JsRiscVTokenizedLine",
35413
+ asr_JsProgramStatement,
35414
+ "JsProgramStatement",
35414
35415
  10,
35415
35416
  jl_Object,
35416
35417
  [],
@@ -35419,8 +35420,8 @@ $rt_metadata([
35419
35420
  0,
35420
35421
  0,
35421
35422
  0,
35422
- asr_JsStackFrame,
35423
- "JsStackFrame",
35423
+ asr_JsCompilationResult,
35424
+ "JsCompilationResult",
35424
35425
  10,
35425
35426
  jl_Object,
35426
35427
  [],
@@ -35429,19 +35430,20 @@ $rt_metadata([
35429
35430
  0,
35430
35431
  0,
35431
35432
  0,
35432
- juf_ToIntFunction,
35433
+ asr_AssemblyException,
35433
35434
  0,
35434
- jl_Object,
35435
+ jl_Exception,
35435
35436
  [],
35436
- 3,
35437
- 3,
35438
35437
  0,
35438
+ 3,
35439
35439
  0,
35440
35440
  0,
35441
- asr_JsRiscV$getRegistersValues$lambda$_25_0,
35442
35441
  0,
35442
+ asr_JsStackFrame,
35443
+ "JsStackFrame",
35444
+ 10,
35443
35445
  jl_Object,
35444
- [juf_ToIntFunction],
35446
+ [],
35445
35447
  0,
35446
35448
  3,
35447
35449
  0,
@@ -35540,62 +35542,6 @@ $rt_metadata([
35540
35542
  0,
35541
35543
  0,
35542
35544
  0,
35543
- asr_JsCompilationResult$_init_$lambda$_0_0,
35544
- 0,
35545
- jl_Object,
35546
- [juf_Function],
35547
- 0,
35548
- 3,
35549
- 0,
35550
- 0,
35551
- ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35552
- juf_Supplier,
35553
- 0,
35554
- jl_Object,
35555
- [],
35556
- 3,
35557
- 3,
35558
- 0,
35559
- 0,
35560
- 0,
35561
- asr_JsCompilationResult$_init_$lambda$_0_1,
35562
- 0,
35563
- jl_Object,
35564
- [juf_Supplier],
35565
- 0,
35566
- 3,
35567
- 0,
35568
- 0,
35569
- 0
35570
- ]);
35571
- $rt_metadata([
35572
- juf_BiConsumer,
35573
- 0,
35574
- jl_Object,
35575
- [],
35576
- 3,
35577
- 3,
35578
- 0,
35579
- 0,
35580
- 0,
35581
- asr_JsCompilationResult$_init_$lambda$_0_2,
35582
- 0,
35583
- jl_Object,
35584
- [juf_BiConsumer],
35585
- 0,
35586
- 3,
35587
- 0,
35588
- 0,
35589
- 0,
35590
- asr_JsCompilationResult$_init_$lambda$_0_3,
35591
- 0,
35592
- jl_Object,
35593
- [juf_BiConsumer],
35594
- 0,
35595
- 3,
35596
- 0,
35597
- 0,
35598
- 0,
35599
35545
  asrrh_Register,
35600
35546
  "Register",
35601
35547
  7,
@@ -35606,24 +35552,6 @@ $rt_metadata([
35606
35552
  0,
35607
35553
  0,
35608
35554
  ["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
35609
- asrs_BackStepper,
35610
- 0,
35611
- jl_Object,
35612
- [],
35613
- 0,
35614
- 3,
35615
- 0,
35616
- 0,
35617
- 0,
35618
- asrs_BackStepper$BackstepStack,
35619
- 0,
35620
- jl_Object,
35621
- [],
35622
- 0,
35623
- 3,
35624
- 0,
35625
- 0,
35626
- 0,
35627
35555
  jl_AutoCloseable,
35628
35556
  0,
35629
35557
  jl_Object,
@@ -35641,7 +35569,9 @@ $rt_metadata([
35641
35569
  3,
35642
35570
  0,
35643
35571
  0,
35644
- 0,
35572
+ 0
35573
+ ]);
35574
+ $rt_metadata([
35645
35575
  jus_Stream,
35646
35576
  0,
35647
35577
  jl_Object,
@@ -35669,6 +35599,78 @@ $rt_metadata([
35669
35599
  0,
35670
35600
  0,
35671
35601
  ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35602
+ asrs_BackStepper,
35603
+ 0,
35604
+ jl_Object,
35605
+ [],
35606
+ 0,
35607
+ 3,
35608
+ 0,
35609
+ 0,
35610
+ 0,
35611
+ asrs_BackStepper$BackstepStack,
35612
+ 0,
35613
+ jl_Object,
35614
+ [],
35615
+ 0,
35616
+ 3,
35617
+ 0,
35618
+ 0,
35619
+ 0,
35620
+ asr_JsCompilationResult$_init_$lambda$_0_0,
35621
+ 0,
35622
+ jl_Object,
35623
+ [juf_Function],
35624
+ 0,
35625
+ 3,
35626
+ 0,
35627
+ 0,
35628
+ ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35629
+ juf_Supplier,
35630
+ 0,
35631
+ jl_Object,
35632
+ [],
35633
+ 3,
35634
+ 3,
35635
+ 0,
35636
+ 0,
35637
+ 0,
35638
+ asr_JsCompilationResult$_init_$lambda$_0_1,
35639
+ 0,
35640
+ jl_Object,
35641
+ [juf_Supplier],
35642
+ 0,
35643
+ 3,
35644
+ 0,
35645
+ 0,
35646
+ 0,
35647
+ juf_BiConsumer,
35648
+ 0,
35649
+ jl_Object,
35650
+ [],
35651
+ 3,
35652
+ 3,
35653
+ 0,
35654
+ 0,
35655
+ 0,
35656
+ asr_JsCompilationResult$_init_$lambda$_0_2,
35657
+ 0,
35658
+ jl_Object,
35659
+ [juf_BiConsumer],
35660
+ 0,
35661
+ 3,
35662
+ 0,
35663
+ 0,
35664
+ 0,
35665
+ asr_JsCompilationResult$_init_$lambda$_0_3,
35666
+ 0,
35667
+ jl_Object,
35668
+ [juf_BiConsumer],
35669
+ 0,
35670
+ 3,
35671
+ 0,
35672
+ 0,
35673
+ 0,
35672
35674
  jl_Math,
35673
35675
  0,
35674
35676
  jl_Object,
@@ -37210,7 +37212,7 @@ $rt_metadata([
37210
37212
  0,
37211
37213
  0,
37212
37214
  0,
37213
- asr_ErrorList,
37215
+ asrrh_RegisterBlock,
37214
37216
  0,
37215
37217
  jl_Object,
37216
37218
  [],
@@ -37219,7 +37221,7 @@ $rt_metadata([
37219
37221
  0,
37220
37222
  0,
37221
37223
  0,
37222
- asrrh_RegisterBlock,
37224
+ asr_ErrorList,
37223
37225
  0,
37224
37226
  jl_Object,
37225
37227
  [],
@@ -37873,57 +37875,57 @@ $rt_metadata([
37873
37875
  0,
37874
37876
  0,
37875
37877
  ["$next1", $rt_wrapFunction1(jusi_StreamOverSpliterator_next), "$estimateSize", $rt_wrapFunction0(jusi_StreamOverSpliterator_estimateSize)],
37876
- jm_Conversion,
37878
+ jus_IntStream,
37877
37879
  0,
37878
37880
  jl_Object,
37879
- [],
37880
- 0,
37881
- 0,
37881
+ [jus_BaseStream],
37882
+ 3,
37883
+ 3,
37882
37884
  0,
37883
37885
  0,
37884
37886
  0,
37885
- jusi_WrappingStreamImpl,
37887
+ jusi_SimpleIntStreamImpl,
37886
37888
  0,
37887
- jusi_SimpleStreamImpl,
37888
- [],
37889
+ jl_Object,
37890
+ [jus_IntStream],
37889
37891
  1,
37890
37892
  3,
37891
37893
  0,
37892
37894
  0,
37893
37895
  0,
37894
- jusi_MappingStreamImpl,
37896
+ jusi_MappingToIntStreamImpl,
37895
37897
  0,
37896
- jusi_WrappingStreamImpl,
37898
+ jusi_SimpleIntStreamImpl,
37897
37899
  [],
37898
37900
  0,
37899
37901
  3,
37900
37902
  0,
37901
37903
  0,
37902
- ["$wrap3", $rt_wrapFunction1(jusi_MappingStreamImpl_wrap)],
37903
- jus_IntStream,
37904
37904
  0,
37905
- jl_Object,
37906
- [jus_BaseStream],
37907
- 3,
37905
+ jusi_WrappingStreamImpl,
37906
+ 0,
37907
+ jusi_SimpleStreamImpl,
37908
+ [],
37909
+ 1,
37908
37910
  3,
37909
37911
  0,
37910
37912
  0,
37911
37913
  0,
37912
- jusi_SimpleIntStreamImpl,
37914
+ jusi_MappingStreamImpl,
37913
37915
  0,
37914
- jl_Object,
37915
- [jus_IntStream],
37916
- 1,
37917
- 3,
37916
+ jusi_WrappingStreamImpl,
37917
+ [],
37918
37918
  0,
37919
+ 3,
37919
37920
  0,
37920
37921
  0,
37921
- jusi_MappingToIntStreamImpl,
37922
+ ["$wrap3", $rt_wrapFunction1(jusi_MappingStreamImpl_wrap)],
37923
+ jm_Conversion,
37922
37924
  0,
37923
- jusi_SimpleIntStreamImpl,
37925
+ jl_Object,
37924
37926
  [],
37925
37927
  0,
37926
- 3,
37928
+ 0,
37927
37929
  0,
37928
37930
  0,
37929
37931
  0,
@@ -38139,6 +38141,15 @@ $rt_metadata([
38139
38141
  0,
38140
38142
  0,
38141
38143
  0,
38144
+ jl_NegativeArraySizeException,
38145
+ 0,
38146
+ jl_RuntimeException,
38147
+ [],
38148
+ 0,
38149
+ 3,
38150
+ 0,
38151
+ 0,
38152
+ 0,
38142
38153
  otjc_JSObjects,
38143
38154
  0,
38144
38155
  jl_Object,
@@ -38166,15 +38177,6 @@ $rt_metadata([
38166
38177
  0,
38167
38178
  0,
38168
38179
  0,
38169
- jl_NegativeArraySizeException,
38170
- 0,
38171
- jl_RuntimeException,
38172
- [],
38173
- 0,
38174
- 3,
38175
- 0,
38176
- 0,
38177
- 0,
38178
38180
  ju_Arrays$ArrayAsList,
38179
38181
  0,
38180
38182
  ju_AbstractList,
@@ -41003,48 +41005,6 @@ $rt_metadata([
41003
41005
  0,
41004
41006
  0,
41005
41007
  0,
41006
- asrjt_Float32,
41007
- 0,
41008
- asrjt_Floating,
41009
- [],
41010
- 0,
41011
- 3,
41012
- 0,
41013
- 0,
41014
- [
41015
- "$isSignMinus",
41016
- $rt_wrapFunction0(asrjt_Float32_isSignMinus),
41017
- "$isInfinite",
41018
- $rt_wrapFunction0(asrjt_Float32_isInfinite),
41019
- "$isNormal",
41020
- $rt_wrapFunction0(asrjt_Float32_isNormal),
41021
- "$isSubnormal",
41022
- $rt_wrapFunction0(asrjt_Float32_isSubnormal),
41023
- "$isNaN",
41024
- $rt_wrapFunction0(asrjt_Float32_isNaN),
41025
- "$isSignalling",
41026
- $rt_wrapFunction0(asrjt_Float32_isSignalling),
41027
- "$isZero",
41028
- $rt_wrapFunction0(asrjt_Float32_isZero),
41029
- "$toExactFloat",
41030
- $rt_wrapFunction0(asrjt_Float32_toExactFloat),
41031
- "$maxPrecision",
41032
- $rt_wrapFunction0(asrjt_Float32_maxPrecision),
41033
- "$negate2",
41034
- $rt_wrapFunction0(asrjt_Float32_negate0),
41035
- "$fromExactFloat",
41036
- $rt_wrapFunction2(asrjt_Float32_fromExactFloat),
41037
- "$NegativeInfinity",
41038
- $rt_wrapFunction0(asrjt_Float32_NegativeInfinity0),
41039
- "$Infinity",
41040
- $rt_wrapFunction0(asrjt_Float32_Infinity0),
41041
- "$NegativeZero",
41042
- $rt_wrapFunction0(asrjt_Float32_NegativeZero0),
41043
- "$Zero",
41044
- $rt_wrapFunction0(asrjt_Float32_Zero0),
41045
- "$NaN",
41046
- $rt_wrapFunction0(asrjt_Float32_NaN0)
41047
- ],
41048
41008
  asrjt_Float64,
41049
41009
  0,
41050
41010
  asrjt_Floating,
@@ -41096,6 +41056,48 @@ $rt_metadata([
41096
41056
  0,
41097
41057
  0,
41098
41058
  0,
41059
+ asrjt_Float32,
41060
+ 0,
41061
+ asrjt_Floating,
41062
+ [],
41063
+ 0,
41064
+ 3,
41065
+ 0,
41066
+ 0,
41067
+ [
41068
+ "$isSignMinus",
41069
+ $rt_wrapFunction0(asrjt_Float32_isSignMinus),
41070
+ "$isInfinite",
41071
+ $rt_wrapFunction0(asrjt_Float32_isInfinite),
41072
+ "$isNormal",
41073
+ $rt_wrapFunction0(asrjt_Float32_isNormal),
41074
+ "$isSubnormal",
41075
+ $rt_wrapFunction0(asrjt_Float32_isSubnormal),
41076
+ "$isNaN",
41077
+ $rt_wrapFunction0(asrjt_Float32_isNaN),
41078
+ "$isSignalling",
41079
+ $rt_wrapFunction0(asrjt_Float32_isSignalling),
41080
+ "$isZero",
41081
+ $rt_wrapFunction0(asrjt_Float32_isZero),
41082
+ "$toExactFloat",
41083
+ $rt_wrapFunction0(asrjt_Float32_toExactFloat),
41084
+ "$maxPrecision",
41085
+ $rt_wrapFunction0(asrjt_Float32_maxPrecision),
41086
+ "$negate2",
41087
+ $rt_wrapFunction0(asrjt_Float32_negate0),
41088
+ "$fromExactFloat",
41089
+ $rt_wrapFunction2(asrjt_Float32_fromExactFloat),
41090
+ "$NegativeInfinity",
41091
+ $rt_wrapFunction0(asrjt_Float32_NegativeInfinity0),
41092
+ "$Infinity",
41093
+ $rt_wrapFunction0(asrjt_Float32_Infinity0),
41094
+ "$NegativeZero",
41095
+ $rt_wrapFunction0(asrjt_Float32_NegativeZero0),
41096
+ "$Zero",
41097
+ $rt_wrapFunction0(asrjt_Float32_Zero0),
41098
+ "$NaN",
41099
+ $rt_wrapFunction0(asrjt_Float32_NaN0)
41100
+ ],
41099
41101
  asrjo_Arithmetic,
41100
41102
  0,
41101
41103
  jl_Object,
@@ -41343,34 +41345,34 @@ $rt_metadata([
41343
41345
  0,
41344
41346
  0,
41345
41347
  0,
41346
- asrjt_Float64$1,
41348
+ asrjt_Float32$1,
41347
41349
  0,
41348
41350
  jl_Object,
41349
41351
  [],
41350
41352
  32,
41351
41353
  0,
41352
41354
  0,
41353
- asrjt_Float64$1_$callClinit,
41355
+ asrjt_Float32$1_$callClinit,
41354
41356
  0,
41355
- jm_Multiplication,
41357
+ asrjt_Float64$1,
41356
41358
  0,
41357
41359
  jl_Object,
41358
41360
  [],
41361
+ 32,
41359
41362
  0,
41360
41363
  0,
41361
- 0,
41362
- jm_Multiplication_$callClinit,
41364
+ asrjt_Float64$1_$callClinit,
41363
41365
  0
41364
41366
  ]);
41365
41367
  $rt_metadata([
41366
- asrjt_Float32$1,
41368
+ jm_Multiplication,
41367
41369
  0,
41368
41370
  jl_Object,
41369
41371
  [],
41370
- 32,
41371
41372
  0,
41372
41373
  0,
41373
- asrjt_Float32$1_$callClinit,
41374
+ 0,
41375
+ jm_Multiplication_$callClinit,
41374
41376
  0,
41375
41377
  otjc_JSBoolean,
41376
41378
  0,
@@ -43117,40 +43119,40 @@ var $rt_jso_marker = Symbol("jsoClass");
43117
43119
  (() => {
43118
43120
  let c;
43119
43121
  c = asr_JsRiscV.prototype;
43120
- c.getTokenizedLines = $rt_callWithReceiver(asr_JsRiscV_getTokenizedLines$exported$25);
43122
+ c.getTokenizedLines = $rt_callWithReceiver(asr_JsRiscV_getTokenizedLines$exported$26);
43121
43123
  c.getCurrentStatementIndex = $rt_callWithReceiver(asr_JsRiscV_getCurrentStatementIndex$exported$30);
43122
- c.getRegisterValueLong = $rt_callWithReceiver(asr_JsRiscV_getRegisterValueLong$exported$13);
43123
- c.setUndoEnabled = $rt_callWithReceiver(asr_JsRiscV_setUndoEnabled$exported$22);
43124
+ c.getRegisterValueLong = $rt_callWithReceiver(asr_JsRiscV_getRegisterValueLong$exported$14);
43125
+ c.setUndoEnabled = $rt_callWithReceiver(asr_JsRiscV_setUndoEnabled$exported$23);
43124
43126
  c.getRegistersValues = $rt_callWithReceiver(asr_JsRiscV_getRegistersValues$exported$6);
43125
43127
  c.readMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_readMemoryBytes$exported$33);
43126
- c.undo = $rt_callWithReceiver(asr_JsRiscV_undo$exported$8);
43127
- c.getParsedStatements = $rt_callWithReceiver(asr_JsRiscV_getParsedStatements$exported$20);
43128
- c.getStatementAtSourceLine = $rt_callWithReceiver(asr_JsRiscV_getStatementAtSourceLine$exported$21);
43129
- c.setUndoSize = $rt_callWithReceiver(asr_JsRiscV_setUndoSize$exported$19);
43130
- c.getUndoStack = $rt_callWithReceiver(asr_JsRiscV_getUndoStack$exported$14);
43131
- c.setRegisterValue = $rt_callWithReceiver(asr_JsRiscV_setRegisterValue$exported$27);
43132
- c.getStopReason = $rt_callWithReceiver(asr_JsRiscV_getStopReason$exported$23);
43128
+ c.undo = $rt_callWithReceiver(asr_JsRiscV_undo$exported$9);
43129
+ c.getParsedStatements = $rt_callWithReceiver(asr_JsRiscV_getParsedStatements$exported$21);
43130
+ c.getStatementAtSourceLine = $rt_callWithReceiver(asr_JsRiscV_getStatementAtSourceLine$exported$22);
43131
+ c.setUndoSize = $rt_callWithReceiver(asr_JsRiscV_setUndoSize$exported$20);
43132
+ c.getUndoStack = $rt_callWithReceiver(asr_JsRiscV_getUndoStack$exported$15);
43133
+ c.setRegisterValue = $rt_callWithReceiver(asr_JsRiscV_setRegisterValue$exported$8);
43134
+ c.getStopReason = $rt_callWithReceiver(asr_JsRiscV_getStopReason$exported$24);
43133
43135
  c.getLabelAtAddress = $rt_callWithReceiver(asr_JsRiscV_getLabelAtAddress$exported$2);
43134
- c.simulate = $rt_callWithReceiver(asr_JsRiscV_simulate$exported$24);
43135
- c.setMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_setMemoryBytes$exported$15);
43136
- c.getRegistersValuesLong = $rt_callWithReceiver(asr_JsRiscV_getRegistersValuesLong$exported$26);
43137
- c.getNextStatement = $rt_callWithReceiver(asr_JsRiscV_getNextStatement$exported$10);
43136
+ c.simulate = $rt_callWithReceiver(asr_JsRiscV_simulate$exported$25);
43137
+ c.setMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_setMemoryBytes$exported$16);
43138
+ c.getRegistersValuesLong = $rt_callWithReceiver(asr_JsRiscV_getRegistersValuesLong$exported$27);
43139
+ c.getNextStatement = $rt_callWithReceiver(asr_JsRiscV_getNextStatement$exported$11);
43138
43140
  c.simulateWithBreakpoints = $rt_callWithReceiver(asr_JsRiscV_simulateWithBreakpoints$exported$29);
43139
43141
  c.getRegisterValue = $rt_callWithReceiver(asr_JsRiscV_getRegisterValue$exported$1);
43140
43142
  c.assemble = $rt_callWithReceiver(asr_JsRiscV_assemble$exported$7);
43141
43143
  c.registerHandler = $rt_callWithReceiver(asr_JsRiscV_registerHandler$exported$0);
43142
43144
  c.simulateWithLimit = $rt_callWithReceiver(asr_JsRiscV_simulateWithLimit$exported$5);
43143
- c.getCompiledStatements = $rt_callWithReceiver(asr_JsRiscV_getCompiledStatements$exported$9);
43145
+ c.getCompiledStatements = $rt_callWithReceiver(asr_JsRiscV_getCompiledStatements$exported$10);
43144
43146
  c.step = $rt_callWithReceiver(asr_JsRiscV_step$exported$28);
43145
- c.initialize = $rt_callWithReceiver(asr_JsRiscV_initialize$exported$12);
43147
+ c.initialize = $rt_callWithReceiver(asr_JsRiscV_initialize$exported$13);
43146
43148
  c.simulateWithBreakpointsAndLimit = $rt_callWithReceiver(asr_JsRiscV_simulateWithBreakpointsAndLimit$exported$3);
43147
- c.getStatementAtAddress = $rt_callWithReceiver(asr_JsRiscV_getStatementAtAddress$exported$16);
43149
+ c.getStatementAtAddress = $rt_callWithReceiver(asr_JsRiscV_getStatementAtAddress$exported$17);
43148
43150
  c.getCallStack = $rt_callWithReceiver(asr_JsRiscV_getCallStack$exported$4);
43149
43151
  Object.defineProperty(c, "stackPointerLong", {
43150
- get: $rt_callWithReceiver(asr_JsRiscV_getStackPointerLong$exported$17)
43152
+ get: $rt_callWithReceiver(asr_JsRiscV_getStackPointerLong$exported$18)
43151
43153
  });
43152
43154
  Object.defineProperty(c, "canUndo", {
43153
- get: $rt_callWithReceiver(asr_JsRiscV_canUndo$exported$18)
43155
+ get: $rt_callWithReceiver(asr_JsRiscV_canUndo$exported$19)
43154
43156
  });
43155
43157
  Object.defineProperty(c, "programCounter", {
43156
43158
  get: $rt_callWithReceiver(asr_JsRiscV_getProgramCounter$exported$31)
@@ -43162,7 +43164,7 @@ var $rt_jso_marker = Symbol("jsoClass");
43162
43164
  get: $rt_callWithReceiver(asr_JsRiscV_getStackPointer$exported$34)
43163
43165
  });
43164
43166
  Object.defineProperty(c, "terminated", {
43165
- get: $rt_callWithReceiver(asr_JsRiscV_terminated$exported$11)
43167
+ get: $rt_callWithReceiver(asr_JsRiscV_terminated$exported$12)
43166
43168
  });
43167
43169
  c = asr_JsInstruction.prototype;
43168
43170
  c.getIsRv64Only = $rt_callWithReceiver(asr_JsInstruction_getIsRv64Only$exported$1);
@@ -43178,15 +43180,25 @@ var $rt_jso_marker = Symbol("jsoClass");
43178
43180
  Object.defineProperty(c, "example", {
43179
43181
  get: $rt_callWithReceiver(asr_JsInstruction_getExample$exported$4)
43180
43182
  });
43181
- c = asr_JsCompilationResult.prototype;
43182
- Object.defineProperty(c, "hasErrors", {
43183
- get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
43183
+ c = asr_JsRiscVTokenizedLine.prototype;
43184
+ Object.defineProperty(c, "line", {
43185
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
43184
43186
  });
43185
- Object.defineProperty(c, "report", {
43186
- get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
43187
+ Object.defineProperty(c, "tokens", {
43188
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
43187
43189
  });
43188
- Object.defineProperty(c, "errors", {
43189
- get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
43190
+ c = asr_JsBackStep.prototype;
43191
+ Object.defineProperty(c, "pc", {
43192
+ get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
43193
+ });
43194
+ Object.defineProperty(c, "action", {
43195
+ get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
43196
+ });
43197
+ Object.defineProperty(c, "param1", {
43198
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
43199
+ });
43200
+ Object.defineProperty(c, "param2", {
43201
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
43190
43202
  });
43191
43203
  c = asr_JsProgramStatement.prototype;
43192
43204
  Object.defineProperty(c, "assemblyStatement", {
@@ -43207,25 +43219,15 @@ var $rt_jso_marker = Symbol("jsoClass");
43207
43219
  Object.defineProperty(c, "source", {
43208
43220
  get: $rt_callWithReceiver(asr_JsProgramStatement_getSource$exported$2)
43209
43221
  });
43210
- c = asr_JsBackStep.prototype;
43211
- Object.defineProperty(c, "pc", {
43212
- get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
43213
- });
43214
- Object.defineProperty(c, "action", {
43215
- get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
43216
- });
43217
- Object.defineProperty(c, "param1", {
43218
- get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
43219
- });
43220
- Object.defineProperty(c, "param2", {
43221
- get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
43222
+ c = asr_JsCompilationResult.prototype;
43223
+ Object.defineProperty(c, "hasErrors", {
43224
+ get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
43222
43225
  });
43223
- c = asr_JsRiscVTokenizedLine.prototype;
43224
- Object.defineProperty(c, "line", {
43225
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
43226
+ Object.defineProperty(c, "report", {
43227
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
43226
43228
  });
43227
- Object.defineProperty(c, "tokens", {
43228
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
43229
+ Object.defineProperty(c, "errors", {
43230
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
43229
43231
  });
43230
43232
  c = asr_JsStackFrame.prototype;
43231
43233
  Object.defineProperty(c, "pc", {
@@ -43289,26 +43291,26 @@ function $rt_export_class_JsInstruction_33() {
43289
43291
  throw new Error("Can't instantiate this class directly");
43290
43292
  }
43291
43293
  $rt_export_class_JsInstruction_33.prototype = asr_JsInstruction.prototype;
43292
- function $rt_export_class_JsCompilationResult_71() {
43294
+ function $rt_export_class_JsRiscVTokenizedLine_78() {
43293
43295
  throw new Error("Can't instantiate this class directly");
43294
43296
  }
43295
- $rt_export_class_JsCompilationResult_71.prototype = asr_JsCompilationResult.prototype;
43296
- function $rt_export_class_JsProgramStatement_75() {
43297
+ $rt_export_class_JsRiscVTokenizedLine_78.prototype = asr_JsRiscVTokenizedLine.prototype;
43298
+ function $rt_export_class_JsBackStep_81() {
43297
43299
  throw new Error("Can't instantiate this class directly");
43298
43300
  }
43299
- $rt_export_class_JsProgramStatement_75.prototype = asr_JsProgramStatement.prototype;
43300
- function $rt_export_class_JsBackStep_79() {
43301
+ $rt_export_class_JsBackStep_81.prototype = asr_JsBackStep.prototype;
43302
+ function $rt_export_class_JsProgramStatement_82() {
43301
43303
  throw new Error("Can't instantiate this class directly");
43302
43304
  }
43303
- $rt_export_class_JsBackStep_79.prototype = asr_JsBackStep.prototype;
43304
- function $rt_export_class_JsRiscVTokenizedLine_82() {
43305
+ $rt_export_class_JsProgramStatement_82.prototype = asr_JsProgramStatement.prototype;
43306
+ function $rt_export_class_JsCompilationResult_83() {
43305
43307
  throw new Error("Can't instantiate this class directly");
43306
43308
  }
43307
- $rt_export_class_JsRiscVTokenizedLine_82.prototype = asr_JsRiscVTokenizedLine.prototype;
43308
- function $rt_export_class_JsStackFrame_83() {
43309
+ $rt_export_class_JsCompilationResult_83.prototype = asr_JsCompilationResult.prototype;
43310
+ function $rt_export_class_JsStackFrame_85() {
43309
43311
  throw new Error("Can't instantiate this class directly");
43310
43312
  }
43311
- $rt_export_class_JsStackFrame_83.prototype = asr_JsStackFrame.prototype;
43313
+ $rt_export_class_JsStackFrame_85.prototype = asr_JsStackFrame.prototype;
43312
43314
  function $rt_export_class_JsCompilationError_352() {
43313
43315
  throw new Error("Can't instantiate this class directly");
43314
43316
  }
@@ -43427,6 +43429,11 @@ function makeRiscVfromSource(source) {
43427
43429
  function initializeRISCV() {
43428
43430
  asr_JsRiscV_initializeRISCV$exported$0();
43429
43431
  }
43432
+ function bigintToHighLow(value) {
43433
+ const high = Number(value >> 32n & 0xFFFFFFFFn);
43434
+ const low = Number(value & 0xFFFFFFFFn);
43435
+ return [high, low];
43436
+ }
43430
43437
  // Annotate the CommonJS export names for ESM import in node:
43431
43438
  0 && (module.exports = {
43432
43439
  BackStepAction,
@@ -43436,6 +43443,7 @@ function initializeRISCV() {
43436
43443
  RISCVRegisters,
43437
43444
  RISCV_REGISTERS,
43438
43445
  StopReason,
43446
+ bigintToHighLow,
43439
43447
  registerHandlers,
43440
43448
  unimplementedHandler
43441
43449
  });