@specy/risc-v 1.0.8 → 1.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -2846,7 +2846,14 @@ var asr_JsRiscV_undo$exported$8 = (var$1) => {
2846
2846
  var$2.$engaged = 1;
2847
2847
  }
2848
2848
  };
2849
- var asr_JsRiscV_getCompiledStatements$exported$9 = (var$1) => {
2849
+ var asr_JsRiscV_setRegisterValue$exported$9 = (var$1, var$2, var$3) => {
2850
+ asr_JsRiscV_$callClinit();
2851
+ var$2 = $rt_str(var$2);
2852
+ var$3 = var$3;
2853
+ var$1;
2854
+ asrrh_RegisterFile_getRegister(var$2).$setValue(jm_BigInteger_longValue(var$3));
2855
+ };
2856
+ var asr_JsRiscV_getCompiledStatements$exported$10 = (var$1) => {
2850
2857
  let var$2, var$3, var$4, var$5;
2851
2858
  asr_JsRiscV_$callClinit();
2852
2859
  var$2 = var$1.$main.$main0.$machineList;
@@ -2859,17 +2866,17 @@ var asr_JsRiscV_getCompiledStatements$exported$9 = (var$1) => {
2859
2866
  }
2860
2867
  return otji_JS_wrap(var$3);
2861
2868
  };
2862
- var asr_JsRiscV_getNextStatement$exported$10 = (var$1) => {
2869
+ var asr_JsRiscV_getNextStatement$exported$11 = (var$1) => {
2863
2870
  asr_JsRiscV_$callClinit();
2864
2871
  var$1 = var$1;
2865
2872
  return asr_JsProgramStatement__init_(asr_RARS_getStatementAtAddress(var$1.$main, asrrh_RegisterFile_getProgramCounter()));
2866
2873
  };
2867
- var asr_JsRiscV_terminated$exported$11 = (var$1) => {
2874
+ var asr_JsRiscV_terminated$exported$12 = (var$1) => {
2868
2875
  asr_JsRiscV_$callClinit();
2869
2876
  var$1 = var$1;
2870
2877
  return !!(var$1.$main.$stopReason !== asrs_Simulator$Reason_CLIFF_TERMINATION ? 0 : 1);
2871
2878
  };
2872
- var asr_JsRiscV_initialize$exported$12 = (var$1, var$2) => {
2879
+ var asr_JsRiscV_initialize$exported$13 = (var$1, var$2) => {
2873
2880
  let $$je;
2874
2881
  asr_JsRiscV_$callClinit();
2875
2882
  var$2 ? 1 : 0;
@@ -2898,13 +2905,13 @@ var asr_JsRiscV_initialize$exported$12 = (var$1, var$2) => {
2898
2905
  asr_Globals_exitCode = 0;
2899
2906
  ju_ArrayList_clear(asrrh_Stack_callStack);
2900
2907
  };
2901
- var asr_JsRiscV_getRegisterValueLong$exported$13 = (var$1, var$2) => {
2908
+ var asr_JsRiscV_getRegisterValueLong$exported$14 = (var$1, var$2) => {
2902
2909
  asr_JsRiscV_$callClinit();
2903
2910
  var$2 = $rt_str(var$2);
2904
2911
  var$1;
2905
2912
  return jm_BigInteger_valueOf(asrrh_RegisterFile_getRegister(var$2).$getValue());
2906
2913
  };
2907
- var asr_JsRiscV_getUndoStack$exported$14 = (var$1) => {
2914
+ var asr_JsRiscV_getUndoStack$exported$15 = (var$1) => {
2908
2915
  let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
2909
2916
  asr_JsRiscV_$callClinit();
2910
2917
  var$2 = var$1.$main.$main0.$backStepper.$backSteps;
@@ -2925,7 +2932,7 @@ var asr_JsRiscV_getUndoStack$exported$14 = (var$1) => {
2925
2932
  var$2 = new asr_JsRiscV$getUndoStack$lambda$_26_1();
2926
2933
  return otji_JS_wrap(jusi_SimpleStreamImpl_toArray(var$1, var$2));
2927
2934
  };
2928
- var asr_JsRiscV_setMemoryBytes$exported$15 = (var$1, var$2, var$3) => {
2935
+ var asr_JsRiscV_setMemoryBytes$exported$16 = (var$1, var$2, var$3) => {
2929
2936
  let var$4, var$5, var$6, var$7;
2930
2937
  asr_JsRiscV_$callClinit();
2931
2938
  var$4 = var$2;
@@ -2941,24 +2948,24 @@ var asr_JsRiscV_setMemoryBytes$exported$15 = (var$1, var$2, var$3) => {
2941
2948
  var$6 = var$6 + 1 | 0;
2942
2949
  }
2943
2950
  };
2944
- var asr_JsRiscV_getStatementAtAddress$exported$16 = (var$1, var$2) => {
2951
+ var asr_JsRiscV_getStatementAtAddress$exported$17 = (var$1, var$2) => {
2945
2952
  let var$3;
2946
2953
  asr_JsRiscV_$callClinit();
2947
2954
  var$3 = var$2;
2948
2955
  var$1 = var$1;
2949
2956
  return asr_JsProgramStatement__init_(asr_RARS_getStatementAtAddress(var$1.$main, var$3));
2950
2957
  };
2951
- var asr_JsRiscV_getStackPointerLong$exported$17 = (var$1) => {
2958
+ var asr_JsRiscV_getStackPointerLong$exported$18 = (var$1) => {
2952
2959
  asr_JsRiscV_$callClinit();
2953
2960
  var$1;
2954
2961
  return $rt_ustr(jm_BigInteger_toString(jm_BigInteger_valueOf(asrrh_RegisterFile_getStackPointerRegister().$getValue())));
2955
2962
  };
2956
- var asr_JsRiscV_canUndo$exported$18 = (var$1) => {
2963
+ var asr_JsRiscV_canUndo$exported$19 = (var$1) => {
2957
2964
  asr_JsRiscV_$callClinit();
2958
2965
  var$1 = var$1;
2959
2966
  return !!(asrs_BackStepper$BackstepStack_empty(var$1.$main.$main0.$backStepper.$backSteps) ? 0 : 1);
2960
2967
  };
2961
- var asr_JsRiscV_setUndoSize$exported$19 = (var$1, var$2) => {
2968
+ var asr_JsRiscV_setUndoSize$exported$20 = (var$1, var$2) => {
2962
2969
  let var$3;
2963
2970
  asr_JsRiscV_$callClinit();
2964
2971
  var$3 = var$2;
@@ -2966,7 +2973,7 @@ var asr_JsRiscV_setUndoSize$exported$19 = (var$1, var$2) => {
2966
2973
  asr_Globals_$callClinit();
2967
2974
  asr_Globals_maximumBacksteps = var$3;
2968
2975
  };
2969
- var asr_JsRiscV_getParsedStatements$exported$20 = (var$1) => {
2976
+ var asr_JsRiscV_getParsedStatements$exported$21 = (var$1) => {
2970
2977
  let var$2, var$3, var$4, var$5;
2971
2978
  asr_JsRiscV_$callClinit();
2972
2979
  var$2 = var$1.$main.$main0.$parsedList;
@@ -2979,7 +2986,7 @@ var asr_JsRiscV_getParsedStatements$exported$20 = (var$1) => {
2979
2986
  }
2980
2987
  return otji_JS_wrap(var$3);
2981
2988
  };
2982
- var asr_JsRiscV_getStatementAtSourceLine$exported$21 = (var$1, var$2) => {
2989
+ var asr_JsRiscV_getStatementAtSourceLine$exported$22 = (var$1, var$2) => {
2983
2990
  let var$3;
2984
2991
  asr_JsRiscV_$callClinit();
2985
2992
  var$3 = var$2;
@@ -2997,17 +3004,17 @@ var asr_JsRiscV_getStatementAtSourceLine$exported$21 = (var$1, var$2) => {
2997
3004
  }
2998
3005
  return var$1 === null ? null : asr_JsProgramStatement__init_(var$1);
2999
3006
  };
3000
- var asr_JsRiscV_setUndoEnabled$exported$22 = (var$1, var$2) => {
3007
+ var asr_JsRiscV_setUndoEnabled$exported$23 = (var$1, var$2) => {
3001
3008
  let var$3;
3002
3009
  asr_JsRiscV_$callClinit();
3003
3010
  var$3 = var$2 ? 1 : 0;
3004
3011
  var$1.$main.$main0.$backStepper.$engaged = var$3;
3005
3012
  };
3006
- var asr_JsRiscV_getStopReason$exported$23 = (var$1) => {
3013
+ var asr_JsRiscV_getStopReason$exported$24 = (var$1) => {
3007
3014
  asr_JsRiscV_$callClinit();
3008
3015
  return var$1.$main.$stopReason;
3009
3016
  };
3010
- var asr_JsRiscV_simulate$exported$24 = (var$1) => {
3017
+ var asr_JsRiscV_simulate$exported$25 = (var$1) => {
3011
3018
  let var$2, $ptr, $tmp;
3012
3019
  $ptr = 0;
3013
3020
  if ($rt_resuming()) {
@@ -3036,7 +3043,7 @@ var asr_JsRiscV_simulate$exported$24 = (var$1) => {
3036
3043
  }
3037
3044
  $rt_nativeThread().push(var$1, var$2, $ptr);
3038
3045
  };
3039
- var asr_JsRiscV_getTokenizedLines$exported$25 = (var$1) => {
3046
+ var asr_JsRiscV_getTokenizedLines$exported$26 = (var$1) => {
3040
3047
  let var$2;
3041
3048
  asr_JsRiscV_$callClinit();
3042
3049
  var$1 = ju_Collection_stream(var$1.$main.$main0.$tokenList1);
@@ -3045,7 +3052,7 @@ var asr_JsRiscV_getTokenizedLines$exported$25 = (var$1) => {
3045
3052
  var$2 = new asr_JsRiscV$getTokenizedLines$lambda$_5_1();
3046
3053
  return otji_JS_wrap(jusi_SimpleStreamImpl_toArray(var$1, var$2));
3047
3054
  };
3048
- var asr_JsRiscV_getRegistersValuesLong$exported$26 = (var$1) => {
3055
+ var asr_JsRiscV_getRegistersValuesLong$exported$27 = (var$1) => {
3049
3056
  let var$2, var$3, var$4, var$5, var$6;
3050
3057
  asr_JsRiscV_$callClinit();
3051
3058
  var$1;
@@ -3067,14 +3074,6 @@ var asr_JsRiscV_getRegistersValuesLong$exported$26 = (var$1) => {
3067
3074
  }
3068
3075
  return var$1;
3069
3076
  };
3070
- var asr_JsRiscV_setRegisterValue$exported$27 = (var$1, var$2, var$3) => {
3071
- let var$4;
3072
- asr_JsRiscV_$callClinit();
3073
- var$2 = $rt_str(var$2);
3074
- var$4 = var$3;
3075
- var$1;
3076
- asrrh_RegisterFile_getRegister(var$2).$setValue(Long_fromInt(var$4));
3077
- };
3078
3077
  var asr_JsRiscV_step$exported$28 = (var$1) => {
3079
3078
  let var$2, var$3, $ptr, $tmp;
3080
3079
  $ptr = 0;
@@ -3320,11 +3319,11 @@ var asr_JsRiscV__clinit_ = () => {
3320
3319
  ju_Comparator$NaturalOrder__clinit_();
3321
3320
  asrr_BasicInstructionFormat__clinit_();
3322
3321
  jl_Long__clinit_();
3322
+ asrs_Simulator$Reason__clinit_();
3323
3323
  asrrh_FloatingPointRegisterFile__clinit_();
3324
3324
  asrrh_ControlAndStatusRegisterFile__clinit_();
3325
3325
  asrrh_InterruptController__clinit_();
3326
3326
  asrrh_Stack__clinit_();
3327
- asrs_Simulator$Reason__clinit_();
3328
3327
  asra_Tokenizer__clinit_();
3329
3328
  asrs_Simulator__clinit_();
3330
3329
  asra_Directives__clinit_();
@@ -3345,8 +3344,8 @@ var asr_JsRiscV__clinit_ = () => {
3345
3344
  asrjt_Float64__clinit_();
3346
3345
  asrjo_Arithmetic__clinit_();
3347
3346
  asrj_RoundingMode__clinit_();
3348
- asrj_Flags__clinit_();
3349
3347
  asrji_ExactFloat__clinit_();
3348
+ asrj_Flags__clinit_();
3350
3349
  asrrs_RandomStreams__clinit_();
3351
3350
  otcit_FloatSynthesizer__clinit_();
3352
3351
  jl_Byte__clinit_();
@@ -7073,63 +7072,345 @@ var jl_System_currentTimeMillis = () => {
7073
7072
  return Long_fromNumber((/* @__PURE__ */ new Date()).getTime());
7074
7073
  };
7075
7074
  var jl_CloneNotSupportedException = $rt_classWithoutFields(jl_Exception);
7076
- function asr_JsCompilationResult() {
7075
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7076
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7077
+ let var$2, var$3, var$4, var$5;
7078
+ var$1 = var$1;
7079
+ asr_JsRiscV_$callClinit();
7080
+ var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7081
+ var$3 = var$2.data;
7082
+ var$4 = 0;
7083
+ while (var$4 < asra_TokenList_size(var$1)) {
7084
+ var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7085
+ var$4 = var$4 + 1 | 0;
7086
+ }
7087
+ var$5 = new asr_JsRiscVTokenizedLine();
7088
+ var$5.$line0 = var$1.$processedLine;
7089
+ var$5.$tokens0 = var$2;
7090
+ return var$5;
7091
+ };
7092
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
7093
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
7094
+ asr_JsRiscV_$callClinit();
7095
+ return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
7096
+ };
7097
+ function asr_JsRiscVTokenizedLine() {
7077
7098
  let a = this;
7078
7099
  jl_Object.call(a);
7079
- a.$report = null;
7080
- a.$errors1 = null;
7100
+ a.$line0 = null;
7101
+ a.$tokens0 = null;
7081
7102
  }
7082
- var asr_JsCompilationResult__init_0 = ($this, var$1) => {
7083
- let var$2, var$3, var$4;
7084
- $this.$report = asr_ErrorList_generateErrorAndWarningReport(var$1);
7085
- var$1 = ju_Collection_stream(var$1.$messages);
7086
- var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7087
- var$2.$_06 = $this;
7088
- var$1 = jusi_SimpleStreamImpl_map(var$1, var$2);
7089
- var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7090
- var$1 = var$1;
7091
- var$3 = ju_ArrayList__init_();
7092
- var$4 = var$1;
7093
- while (true) {
7094
- var$1 = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7095
- var$1.$_08 = var$2;
7096
- var$1.$_12 = var$3;
7097
- if (!jusi_WrappingStreamImpl_next(var$4, var$1))
7098
- break;
7103
+ var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
7104
+ return $rt_ustr(var$1.$line0);
7105
+ };
7106
+ var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
7107
+ return otji_JS_wrap(var$1.$tokens0);
7108
+ };
7109
+ var ju_Arrays = $rt_classWithoutFields();
7110
+ var ju_Arrays_copyOf1 = ($array, $length) => {
7111
+ let $result, var$4, $sz, $i;
7112
+ $array = $array.data;
7113
+ $result = $rt_createCharArray($length);
7114
+ var$4 = $result.data;
7115
+ $sz = jl_Math_min($length, $array.length);
7116
+ $i = 0;
7117
+ while ($i < $sz) {
7118
+ var$4[$i] = $array[$i];
7119
+ $i = $i + 1 | 0;
7099
7120
  }
7100
- $this.$errors1 = var$3;
7121
+ return $result;
7101
7122
  };
7102
- var asr_JsCompilationResult__init_ = (var_0) => {
7103
- let var_1 = new asr_JsCompilationResult();
7104
- asr_JsCompilationResult__init_0(var_1, var_0);
7105
- return var_1;
7123
+ var ju_Arrays_copyOf0 = ($array, $length) => {
7124
+ let $result, var$4, $sz, $i;
7125
+ $array = $array.data;
7126
+ $result = $rt_createByteArray($length);
7127
+ var$4 = $result.data;
7128
+ $sz = jl_Math_min($length, $array.length);
7129
+ $i = 0;
7130
+ while ($i < $sz) {
7131
+ var$4[$i] = $array[$i];
7132
+ $i = $i + 1 | 0;
7133
+ }
7134
+ return $result;
7106
7135
  };
7107
- var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7108
- let var$2;
7109
- var$1 = var$1.$errors1;
7110
- var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7111
- return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7136
+ var ju_Arrays_copyOf2 = ($array, $length) => {
7137
+ let $result, var$4, $sz, $i;
7138
+ $array = $array.data;
7139
+ $result = $rt_createIntArray($length);
7140
+ var$4 = $result.data;
7141
+ $sz = jl_Math_min($length, $array.length);
7142
+ $i = 0;
7143
+ while ($i < $sz) {
7144
+ var$4[$i] = $array[$i];
7145
+ $i = $i + 1 | 0;
7146
+ }
7147
+ return $result;
7112
7148
  };
7113
- var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7149
+ var ju_Arrays_copyOf = ($original, $newLength) => {
7150
+ let var$3, $result, $sz, $i;
7151
+ var$3 = $original.data;
7152
+ $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7153
+ $sz = jl_Math_min($newLength, var$3.length);
7154
+ $i = 0;
7155
+ while ($i < $sz) {
7156
+ $result.data[$i] = var$3[$i];
7157
+ $i = $i + 1 | 0;
7158
+ }
7159
+ return $result;
7160
+ };
7161
+ var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7162
+ let var$5, var$6, var$7;
7163
+ if ($fromIndex > $toIndex) {
7164
+ var$5 = new jl_IllegalArgumentException();
7165
+ jl_Throwable__init_(var$5);
7166
+ $rt_throw(var$5);
7167
+ }
7168
+ while ($fromIndex < $toIndex) {
7169
+ var$6 = $a.data;
7170
+ var$7 = $fromIndex + 1 | 0;
7171
+ var$6[$fromIndex] = $val;
7172
+ $fromIndex = var$7;
7173
+ }
7174
+ };
7175
+ var ju_Arrays_fill = ($a, $val) => {
7176
+ ju_Arrays_fill0($a, 0, $a.data.length, $val);
7177
+ };
7178
+ var ju_Arrays_sort = ($a) => {
7179
+ 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;
7180
+ var$2 = $a.data.length;
7181
+ if (!var$2)
7182
+ return;
7183
+ $second = $rt_createIntArray(var$2);
7184
+ $chunkSize = 1;
7185
+ var$5 = $a;
7186
+ while ($chunkSize < var$2) {
7187
+ $i = 0;
7188
+ while (true) {
7189
+ var$7 = var$5.data;
7190
+ var$8 = var$7.length;
7191
+ if ($i >= var$8)
7192
+ break;
7193
+ var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7194
+ $i_0 = $i + (2 * $chunkSize | 0) | 0;
7195
+ var$8 = jl_Math_min(var$8, $i_0);
7196
+ var$11 = $i;
7197
+ var$12 = var$9;
7198
+ a: {
7199
+ b: {
7200
+ while ($i != var$9) {
7201
+ if (var$12 == var$8)
7202
+ break b;
7203
+ var$13 = var$7[$i];
7204
+ var$14 = var$7[var$12];
7205
+ if (var$13 > var$14) {
7206
+ var$15 = $second.data;
7207
+ var$16 = var$11 + 1 | 0;
7208
+ var$15[var$11] = var$14;
7209
+ var$12 = var$12 + 1 | 0;
7210
+ } else {
7211
+ var$15 = $second.data;
7212
+ var$16 = var$11 + 1 | 0;
7213
+ var$15[var$11] = var$13;
7214
+ $i = $i + 1 | 0;
7215
+ }
7216
+ var$11 = var$16;
7217
+ }
7218
+ while (true) {
7219
+ if (var$12 >= var$8)
7220
+ break a;
7221
+ var$15 = $second.data;
7222
+ var$17 = var$11 + 1 | 0;
7223
+ $i = var$12 + 1 | 0;
7224
+ var$15[var$11] = var$7[var$12];
7225
+ var$11 = var$17;
7226
+ var$12 = $i;
7227
+ }
7228
+ }
7229
+ while (true) {
7230
+ if ($i >= var$9)
7231
+ break a;
7232
+ var$15 = $second.data;
7233
+ var$17 = var$11 + 1 | 0;
7234
+ var$8 = $i + 1 | 0;
7235
+ var$15[var$11] = var$7[$i];
7236
+ var$11 = var$17;
7237
+ $i = var$8;
7238
+ }
7239
+ }
7240
+ $i = $i_0;
7241
+ }
7242
+ $chunkSize = $chunkSize * 2 | 0;
7243
+ var$15 = var$5;
7244
+ var$5 = $second;
7245
+ $second = var$15;
7246
+ }
7247
+ c: {
7248
+ if (var$5 !== $a) {
7249
+ $i_0 = 0;
7250
+ while (true) {
7251
+ $a = var$5.data;
7252
+ if ($i_0 >= $a.length)
7253
+ break c;
7254
+ $second.data[$i_0] = $a[$i_0];
7255
+ $i_0 = $i_0 + 1 | 0;
7256
+ }
7257
+ }
7258
+ }
7259
+ };
7260
+ var ju_Arrays_binarySearch = ($a, $key) => {
7261
+ let var$3, var$4, var$5, var$6, var$7;
7262
+ $a = $a.data;
7263
+ var$3 = 0;
7264
+ var$4 = $a.length;
7265
+ if (var$3 > var$4) {
7266
+ var$5 = new jl_IllegalArgumentException();
7267
+ jl_Throwable__init_(var$5);
7268
+ $rt_throw(var$5);
7269
+ }
7270
+ var$6 = var$4 - 1 | 0;
7271
+ a: {
7272
+ while (true) {
7273
+ if (var$3 > var$6) {
7274
+ var$4 = (-var$3 | 0) - 1 | 0;
7275
+ break a;
7276
+ }
7277
+ var$4 = (var$3 + var$6 | 0) / 2 | 0;
7278
+ var$7 = $a[var$4];
7279
+ if (var$7 == $key)
7280
+ break;
7281
+ if ($key >= var$7)
7282
+ var$3 = var$4 + 1 | 0;
7283
+ else
7284
+ var$6 = var$4 - 1 | 0;
7285
+ }
7286
+ }
7287
+ return var$4;
7288
+ };
7289
+ var ju_Arrays_stream = ($array) => {
7290
+ let var$2, var$3, var$4;
7291
+ var$2 = $array.data;
7292
+ var$3 = new jusi_ArrayStreamImpl();
7293
+ var$4 = var$2.length;
7294
+ var$3.$array6 = $array;
7295
+ var$3.$index1 = 0;
7296
+ var$3.$end1 = var$4;
7297
+ var$3.$size2 = var$4 - 0 | 0;
7298
+ return var$3;
7299
+ };
7300
+ var asr_JsRiscV$getUndoStack$lambda$_26_0 = $rt_classWithoutFields();
7301
+ var asr_JsRiscV$getUndoStack$lambda$_26_0_apply = (var$0, var$1) => {
7302
+ let var$2, var$3;
7114
7303
  var$1 = var$1;
7115
- return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7304
+ var$2 = new asr_JsBackStep();
7305
+ var$3 = var$1.$action;
7306
+ var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7307
+ var$2.$pc2 = var$1.$pc1;
7308
+ var$2.$param10 = var$1.$param1;
7309
+ var$2.$param20 = Long_lo(var$1.$param2);
7310
+ return var$2;
7116
7311
  };
7117
- var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
7118
- return $rt_ustr(var$1.$report);
7312
+ var asr_JsRiscV$getUndoStack$lambda$_26_1 = $rt_classWithoutFields();
7313
+ var asr_JsRiscV$getUndoStack$lambda$_26_1_apply = (var$0, var$1) => {
7314
+ asr_JsRiscV_$callClinit();
7315
+ return $rt_createArray(asr_JsBackStep, var$1);
7119
7316
  };
7120
- function asr_AssemblyException() {
7121
- jl_Exception.call(this);
7122
- this.$errs = null;
7317
+ function asr_JsBackStep() {
7318
+ let a = this;
7319
+ jl_Object.call(a);
7320
+ a.$action0 = 0;
7321
+ a.$pc2 = 0;
7322
+ a.$param10 = 0;
7323
+ a.$param20 = 0;
7123
7324
  }
7124
- var asr_AssemblyException__init_0 = ($this, $errs) => {
7125
- jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
7126
- $this.$errs = $errs;
7325
+ var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7326
+ return var$1.$pc2;
7127
7327
  };
7128
- var asr_AssemblyException__init_ = (var_0) => {
7129
- let var_1 = new asr_AssemblyException();
7130
- asr_AssemblyException__init_0(var_1, var_0);
7328
+ var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7329
+ return var$1.$param20;
7330
+ };
7331
+ var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7332
+ return var$1.$action0;
7333
+ };
7334
+ var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7335
+ return var$1.$param10;
7336
+ };
7337
+ function asr_JsProgramStatement() {
7338
+ let a = this;
7339
+ jl_Object.call(a);
7340
+ a.$sourceLine1 = 0;
7341
+ a.$address2 = 0;
7342
+ a.$binaryStatement0 = 0;
7343
+ a.$source3 = null;
7344
+ a.$assemblyStatement = null;
7345
+ a.$machineStatement0 = null;
7346
+ }
7347
+ var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
7348
+ let var$2, var$3, var$4, var$5, var$6;
7349
+ $this.$sourceLine1 = $programStatement.$sourceLine0;
7350
+ $this.$address2 = $programStatement.$textAddress0;
7351
+ $this.$binaryStatement0 = $programStatement.$binaryStatement;
7352
+ $this.$source3 = $programStatement.$source;
7353
+ var$2 = $programStatement.$basicStatementList;
7354
+ var$3 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7355
+ var$4 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7356
+ var$5 = new jl_StringBuffer();
7357
+ jl_AbstractStringBuilder__init_(var$5);
7358
+ var$6 = ju_AbstractList_iterator(var$2.$list);
7359
+ while (ju_AbstractList$1_hasNext(var$6)) {
7360
+ a: {
7361
+ var$2 = ju_AbstractList$1_next(var$6);
7362
+ switch (var$2.$type3) {
7363
+ case 0:
7364
+ break;
7365
+ case 1:
7366
+ if (var$3 == 10) {
7367
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7368
+ break a;
7369
+ }
7370
+ jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7371
+ break a;
7372
+ case 2:
7373
+ if (var$4 == 10) {
7374
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7375
+ break a;
7376
+ }
7377
+ jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7378
+ break a;
7379
+ case 3:
7380
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7381
+ break a;
7382
+ default:
7383
+ break a;
7384
+ }
7385
+ jl_AbstractStringBuilder_append1(var$5, var$2.$sValue);
7386
+ }
7387
+ }
7388
+ $this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$5);
7389
+ $this.$machineStatement0 = $programStatement.$machineStatement;
7390
+ };
7391
+ var asr_JsProgramStatement__init_ = (var_0) => {
7392
+ let var_1 = new asr_JsProgramStatement();
7393
+ asr_JsProgramStatement__init_0(var_1, var_0);
7131
7394
  return var_1;
7132
7395
  };
7396
+ var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
7397
+ return var$1.$sourceLine1;
7398
+ };
7399
+ var asr_JsProgramStatement_getAssemblyStatement$exported$1 = (var$1) => {
7400
+ return $rt_ustr(var$1.$assemblyStatement);
7401
+ };
7402
+ var asr_JsProgramStatement_getSource$exported$2 = (var$1) => {
7403
+ return $rt_ustr(var$1.$source3);
7404
+ };
7405
+ var asr_JsProgramStatement_getAddress$exported$3 = (var$1) => {
7406
+ return var$1.$address2;
7407
+ };
7408
+ var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7409
+ return var$1.$binaryStatement0;
7410
+ };
7411
+ var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7412
+ return $rt_ustr(var$1.$machineStatement0);
7413
+ };
7133
7414
  var asrrh_RegisterFile = $rt_classWithoutFields();
7134
7415
  var asrrh_RegisterFile_instance = null;
7135
7416
  var asrrh_RegisterFile_programCounter = null;
@@ -7269,6 +7550,8 @@ var asrrh_RegisterFile__clinit_ = () => {
7269
7550
  asrrh_RegisterFile_instance = var$1;
7270
7551
  asrrh_RegisterFile_programCounter = asrrh_Register__init_($rt_s(243), -1, Long_fromInt(asrrh_Memory_textBaseAddress));
7271
7552
  };
7553
+ var juf_ToIntFunction = $rt_classWithoutFields(0);
7554
+ var asr_JsRiscV$getRegistersValues$lambda$_25_0 = $rt_classWithoutFields();
7272
7555
  function jm_BigInteger() {
7273
7556
  let a = this;
7274
7557
  jl_Number.call(a);
@@ -7641,344 +7924,62 @@ var jm_BigInteger__clinit_ = () => {
7641
7924
  $i = $i + 1 | 0;
7642
7925
  }
7643
7926
  };
7644
- function asr_JsProgramStatement() {
7927
+ function asr_JsCompilationResult() {
7645
7928
  let a = this;
7646
7929
  jl_Object.call(a);
7647
- a.$sourceLine1 = 0;
7648
- a.$address2 = 0;
7649
- a.$binaryStatement0 = 0;
7650
- a.$source3 = null;
7651
- a.$assemblyStatement = null;
7652
- a.$machineStatement0 = null;
7930
+ a.$report = null;
7931
+ a.$errors1 = null;
7653
7932
  }
7654
- var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
7655
- let var$2, var$3, var$4, var$5, var$6;
7656
- $this.$sourceLine1 = $programStatement.$sourceLine0;
7657
- $this.$address2 = $programStatement.$textAddress0;
7658
- $this.$binaryStatement0 = $programStatement.$binaryStatement;
7659
- $this.$source3 = $programStatement.$source;
7660
- var$2 = $programStatement.$basicStatementList;
7661
- var$3 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7662
- var$4 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7663
- var$5 = new jl_StringBuffer();
7664
- jl_AbstractStringBuilder__init_(var$5);
7665
- var$6 = ju_AbstractList_iterator(var$2.$list);
7666
- while (ju_AbstractList$1_hasNext(var$6)) {
7667
- a: {
7668
- var$2 = ju_AbstractList$1_next(var$6);
7669
- switch (var$2.$type3) {
7670
- case 0:
7671
- break;
7672
- case 1:
7673
- if (var$3 == 10) {
7674
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7675
- break a;
7676
- }
7677
- jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7678
- break a;
7679
- case 2:
7680
- if (var$4 == 10) {
7681
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7682
- break a;
7683
- }
7684
- jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7685
- break a;
7686
- case 3:
7687
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7688
- break a;
7689
- default:
7690
- break a;
7691
- }
7692
- jl_AbstractStringBuilder_append1(var$5, var$2.$sValue);
7693
- }
7933
+ var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
7934
+ let var$2, var$3, var$4;
7935
+ $this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
7936
+ $errorReport = ju_Collection_stream($errorReport.$messages);
7937
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7938
+ var$2.$_06 = $this;
7939
+ $errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
7940
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7941
+ $errorReport = $errorReport;
7942
+ var$3 = ju_ArrayList__init_();
7943
+ var$4 = $errorReport;
7944
+ while (true) {
7945
+ $errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7946
+ $errorReport.$_08 = var$2;
7947
+ $errorReport.$_12 = var$3;
7948
+ if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
7949
+ break;
7694
7950
  }
7695
- $this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$5);
7696
- $this.$machineStatement0 = $programStatement.$machineStatement;
7951
+ $this.$errors1 = var$3;
7697
7952
  };
7698
- var asr_JsProgramStatement__init_ = (var_0) => {
7699
- let var_1 = new asr_JsProgramStatement();
7700
- asr_JsProgramStatement__init_0(var_1, var_0);
7953
+ var asr_JsCompilationResult__init_ = (var_0) => {
7954
+ let var_1 = new asr_JsCompilationResult();
7955
+ asr_JsCompilationResult__init_0(var_1, var_0);
7701
7956
  return var_1;
7702
7957
  };
7703
- var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
7704
- return var$1.$sourceLine1;
7705
- };
7706
- var asr_JsProgramStatement_getAssemblyStatement$exported$1 = (var$1) => {
7707
- return $rt_ustr(var$1.$assemblyStatement);
7708
- };
7709
- var asr_JsProgramStatement_getSource$exported$2 = (var$1) => {
7710
- return $rt_ustr(var$1.$source3);
7711
- };
7712
- var asr_JsProgramStatement_getAddress$exported$3 = (var$1) => {
7713
- return var$1.$address2;
7714
- };
7715
- var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7716
- return var$1.$binaryStatement0;
7717
- };
7718
- var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7719
- return $rt_ustr(var$1.$machineStatement0);
7720
- };
7721
- var ju_Arrays = $rt_classWithoutFields();
7722
- var ju_Arrays_copyOf1 = ($array, $length) => {
7723
- let $result, var$4, $sz, $i;
7724
- $array = $array.data;
7725
- $result = $rt_createCharArray($length);
7726
- var$4 = $result.data;
7727
- $sz = jl_Math_min($length, $array.length);
7728
- $i = 0;
7729
- while ($i < $sz) {
7730
- var$4[$i] = $array[$i];
7731
- $i = $i + 1 | 0;
7732
- }
7733
- return $result;
7734
- };
7735
- var ju_Arrays_copyOf0 = ($array, $length) => {
7736
- let $result, var$4, $sz, $i;
7737
- $array = $array.data;
7738
- $result = $rt_createByteArray($length);
7739
- var$4 = $result.data;
7740
- $sz = jl_Math_min($length, $array.length);
7741
- $i = 0;
7742
- while ($i < $sz) {
7743
- var$4[$i] = $array[$i];
7744
- $i = $i + 1 | 0;
7745
- }
7746
- return $result;
7747
- };
7748
- var ju_Arrays_copyOf2 = ($array, $length) => {
7749
- let $result, var$4, $sz, $i;
7750
- $array = $array.data;
7751
- $result = $rt_createIntArray($length);
7752
- var$4 = $result.data;
7753
- $sz = jl_Math_min($length, $array.length);
7754
- $i = 0;
7755
- while ($i < $sz) {
7756
- var$4[$i] = $array[$i];
7757
- $i = $i + 1 | 0;
7758
- }
7759
- return $result;
7760
- };
7761
- var ju_Arrays_copyOf = ($original, $newLength) => {
7762
- let var$3, $result, $sz, $i;
7763
- var$3 = $original.data;
7764
- $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7765
- $sz = jl_Math_min($newLength, var$3.length);
7766
- $i = 0;
7767
- while ($i < $sz) {
7768
- $result.data[$i] = var$3[$i];
7769
- $i = $i + 1 | 0;
7770
- }
7771
- return $result;
7772
- };
7773
- var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7774
- let var$5, var$6, var$7;
7775
- if ($fromIndex > $toIndex) {
7776
- var$5 = new jl_IllegalArgumentException();
7777
- jl_Throwable__init_(var$5);
7778
- $rt_throw(var$5);
7779
- }
7780
- while ($fromIndex < $toIndex) {
7781
- var$6 = $a.data;
7782
- var$7 = $fromIndex + 1 | 0;
7783
- var$6[$fromIndex] = $val;
7784
- $fromIndex = var$7;
7785
- }
7786
- };
7787
- var ju_Arrays_fill = ($a, $val) => {
7788
- ju_Arrays_fill0($a, 0, $a.data.length, $val);
7789
- };
7790
- var ju_Arrays_sort = ($a) => {
7791
- 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;
7792
- var$2 = $a.data.length;
7793
- if (!var$2)
7794
- return;
7795
- $second = $rt_createIntArray(var$2);
7796
- $chunkSize = 1;
7797
- var$5 = $a;
7798
- while ($chunkSize < var$2) {
7799
- $i = 0;
7800
- while (true) {
7801
- var$7 = var$5.data;
7802
- var$8 = var$7.length;
7803
- if ($i >= var$8)
7804
- break;
7805
- var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7806
- $i_0 = $i + (2 * $chunkSize | 0) | 0;
7807
- var$8 = jl_Math_min(var$8, $i_0);
7808
- var$11 = $i;
7809
- var$12 = var$9;
7810
- a: {
7811
- b: {
7812
- while ($i != var$9) {
7813
- if (var$12 == var$8)
7814
- break b;
7815
- var$13 = var$7[$i];
7816
- var$14 = var$7[var$12];
7817
- if (var$13 > var$14) {
7818
- var$15 = $second.data;
7819
- var$16 = var$11 + 1 | 0;
7820
- var$15[var$11] = var$14;
7821
- var$12 = var$12 + 1 | 0;
7822
- } else {
7823
- var$15 = $second.data;
7824
- var$16 = var$11 + 1 | 0;
7825
- var$15[var$11] = var$13;
7826
- $i = $i + 1 | 0;
7827
- }
7828
- var$11 = var$16;
7829
- }
7830
- while (true) {
7831
- if (var$12 >= var$8)
7832
- break a;
7833
- var$15 = $second.data;
7834
- var$17 = var$11 + 1 | 0;
7835
- $i = var$12 + 1 | 0;
7836
- var$15[var$11] = var$7[var$12];
7837
- var$11 = var$17;
7838
- var$12 = $i;
7839
- }
7840
- }
7841
- while (true) {
7842
- if ($i >= var$9)
7843
- break a;
7844
- var$15 = $second.data;
7845
- var$17 = var$11 + 1 | 0;
7846
- var$8 = $i + 1 | 0;
7847
- var$15[var$11] = var$7[$i];
7848
- var$11 = var$17;
7849
- $i = var$8;
7850
- }
7851
- }
7852
- $i = $i_0;
7853
- }
7854
- $chunkSize = $chunkSize * 2 | 0;
7855
- var$15 = var$5;
7856
- var$5 = $second;
7857
- $second = var$15;
7858
- }
7859
- c: {
7860
- if (var$5 !== $a) {
7861
- $i_0 = 0;
7862
- while (true) {
7863
- $a = var$5.data;
7864
- if ($i_0 >= $a.length)
7865
- break c;
7866
- $second.data[$i_0] = $a[$i_0];
7867
- $i_0 = $i_0 + 1 | 0;
7868
- }
7869
- }
7870
- }
7871
- };
7872
- var ju_Arrays_binarySearch = ($a, $key) => {
7873
- let var$3, var$4, var$5, var$6, var$7;
7874
- $a = $a.data;
7875
- var$3 = 0;
7876
- var$4 = $a.length;
7877
- if (var$3 > var$4) {
7878
- var$5 = new jl_IllegalArgumentException();
7879
- jl_Throwable__init_(var$5);
7880
- $rt_throw(var$5);
7881
- }
7882
- var$6 = var$4 - 1 | 0;
7883
- a: {
7884
- while (true) {
7885
- if (var$3 > var$6) {
7886
- var$4 = (-var$3 | 0) - 1 | 0;
7887
- break a;
7888
- }
7889
- var$4 = (var$3 + var$6 | 0) / 2 | 0;
7890
- var$7 = $a[var$4];
7891
- if (var$7 == $key)
7892
- break;
7893
- if ($key >= var$7)
7894
- var$3 = var$4 + 1 | 0;
7895
- else
7896
- var$6 = var$4 - 1 | 0;
7897
- }
7898
- }
7899
- return var$4;
7900
- };
7901
- var ju_Arrays_stream = ($array) => {
7902
- let var$2, var$3, var$4;
7903
- var$2 = $array.data;
7904
- var$3 = new jusi_ArrayStreamImpl();
7905
- var$4 = var$2.length;
7906
- var$3.$array6 = $array;
7907
- var$3.$index1 = 0;
7908
- var$3.$end1 = var$4;
7909
- var$3.$size2 = var$4 - 0 | 0;
7910
- return var$3;
7911
- };
7912
- var asr_JsRiscV$getUndoStack$lambda$_26_0 = $rt_classWithoutFields();
7913
- var asr_JsRiscV$getUndoStack$lambda$_26_0_apply = (var$0, var$1) => {
7914
- let var$2, var$3;
7915
- var$1 = var$1;
7916
- var$2 = new asr_JsBackStep();
7917
- var$3 = var$1.$action;
7918
- var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7919
- var$2.$pc2 = var$1.$pc1;
7920
- var$2.$param10 = var$1.$param1;
7921
- var$2.$param20 = Long_lo(var$1.$param2);
7922
- return var$2;
7923
- };
7924
- var asr_JsRiscV$getUndoStack$lambda$_26_1 = $rt_classWithoutFields();
7925
- var asr_JsRiscV$getUndoStack$lambda$_26_1_apply = (var$0, var$1) => {
7926
- asr_JsRiscV_$callClinit();
7927
- return $rt_createArray(asr_JsBackStep, var$1);
7928
- };
7929
- function asr_JsBackStep() {
7930
- let a = this;
7931
- jl_Object.call(a);
7932
- a.$action0 = 0;
7933
- a.$pc2 = 0;
7934
- a.$param10 = 0;
7935
- a.$param20 = 0;
7936
- }
7937
- var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7938
- return var$1.$pc2;
7939
- };
7940
- var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7941
- return var$1.$param20;
7942
- };
7943
- var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7944
- return var$1.$action0;
7945
- };
7946
- var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7947
- return var$1.$param10;
7958
+ var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7959
+ let var$2;
7960
+ var$1 = var$1.$errors1;
7961
+ var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7962
+ return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7948
7963
  };
7949
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7950
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7951
- let var$2, var$3, var$4, var$5;
7964
+ var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7952
7965
  var$1 = var$1;
7953
- asr_JsRiscV_$callClinit();
7954
- var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7955
- var$3 = var$2.data;
7956
- var$4 = 0;
7957
- while (var$4 < asra_TokenList_size(var$1)) {
7958
- var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7959
- var$4 = var$4 + 1 | 0;
7960
- }
7961
- var$5 = new asr_JsRiscVTokenizedLine();
7962
- var$5.$line0 = var$1.$processedLine;
7963
- var$5.$tokens0 = var$2;
7964
- return var$5;
7966
+ return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7965
7967
  };
7966
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
7967
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
7968
- asr_JsRiscV_$callClinit();
7969
- return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
7968
+ var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
7969
+ return $rt_ustr(var$1.$report);
7970
7970
  };
7971
- function asr_JsRiscVTokenizedLine() {
7972
- let a = this;
7973
- jl_Object.call(a);
7974
- a.$line0 = null;
7975
- a.$tokens0 = null;
7971
+ function asr_AssemblyException() {
7972
+ jl_Exception.call(this);
7973
+ this.$errs = null;
7976
7974
  }
7977
- var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
7978
- return $rt_ustr(var$1.$line0);
7975
+ var asr_AssemblyException__init_0 = ($this, $errs) => {
7976
+ jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
7977
+ $this.$errs = $errs;
7979
7978
  };
7980
- var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
7981
- return otji_JS_wrap(var$1.$tokens0);
7979
+ var asr_AssemblyException__init_ = (var_0) => {
7980
+ let var_1 = new asr_AssemblyException();
7981
+ asr_AssemblyException__init_0(var_1, var_0);
7982
+ return var_1;
7982
7983
  };
7983
7984
  function asr_JsStackFrame() {
7984
7985
  let a = this;
@@ -8004,8 +8005,6 @@ var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
8004
8005
  var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
8005
8006
  return var$1.$fp;
8006
8007
  };
8007
- var juf_ToIntFunction = $rt_classWithoutFields(0);
8008
- var asr_JsRiscV$getRegistersValues$lambda$_25_0 = $rt_classWithoutFields();
8009
8008
  var ju_Map$Entry = $rt_classWithoutFields(0);
8010
8009
  function ju_MapEntry() {
8011
8010
  let a = this;
@@ -8555,123 +8554,6 @@ var asr_RISCVFile_getName = ($this) => {
8555
8554
  return $this.$name2;
8556
8555
  };
8557
8556
  var jl_StringIndexOutOfBoundsException = $rt_classWithoutFields(jl_IndexOutOfBoundsException);
8558
- function asr_JsCompilationResult$_init_$lambda$_0_0() {
8559
- jl_Object.call(this);
8560
- this.$_06 = null;
8561
- }
8562
- var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8563
- let var$2, var$3;
8564
- var$1 = var$1;
8565
- var$2 = var$0.$_06;
8566
- var$3 = new asr_JsCompilationResult$JsCompilationError();
8567
- var$3.$this$016 = var$2;
8568
- var$3.$isWarning0 = var$1.$isWarning;
8569
- var$3.$message2 = var$1.$message0;
8570
- var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8571
- var$3.$filename2 = var$1.$filename0;
8572
- var$3.$lineNumber0 = var$1.$line;
8573
- var$3.$columnNumber = var$1.$position2;
8574
- return var$3;
8575
- };
8576
- var juf_Supplier = $rt_classWithoutFields(0);
8577
- var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8578
- var juf_BiConsumer = $rt_classWithoutFields(0);
8579
- var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8580
- var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8581
- function asrrh_Register() {
8582
- let a = this;
8583
- ju_Observable.call(a);
8584
- a.$name1 = null;
8585
- a.$number = 0;
8586
- a.$resetValue0 = Long_ZERO;
8587
- a.$value2 = Long_ZERO;
8588
- }
8589
- var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
8590
- ju_Observable__init_($this);
8591
- $this.$name1 = $n;
8592
- $this.$number = $num;
8593
- $this.$value2 = $val;
8594
- $this.$resetValue0 = $val;
8595
- };
8596
- var asrrh_Register__init_ = (var_0, var_1, var_2) => {
8597
- let var_3 = new asrrh_Register();
8598
- asrrh_Register__init_0(var_3, var_0, var_1, var_2);
8599
- return var_3;
8600
- };
8601
- var asrrh_Register_getName = ($this) => {
8602
- return $this.$name1;
8603
- };
8604
- var asrrh_Register_getValue = ($this) => {
8605
- jl_Object_monitorEnterSync($this);
8606
- try {
8607
- asrrh_Register_notifyAnyObservers($this, 0);
8608
- return $this.$value2;
8609
- } finally {
8610
- jl_Object_monitorExitSync($this);
8611
- }
8612
- };
8613
- var asrrh_Register_getValueNoNotify = ($this) => {
8614
- jl_Object_monitorEnterSync($this);
8615
- try {
8616
- return $this.$value2;
8617
- } finally {
8618
- jl_Object_monitorExitSync($this);
8619
- }
8620
- };
8621
- var asrrh_Register_getNumber = ($this) => {
8622
- return $this.$number;
8623
- };
8624
- var asrrh_Register_setValue = ($this, $val) => {
8625
- let $old;
8626
- jl_Object_monitorEnterSync($this);
8627
- try {
8628
- $old = $this.$value2;
8629
- $this.$value2 = $val;
8630
- asrrh_Register_notifyAnyObservers($this, 1);
8631
- return $old;
8632
- } finally {
8633
- jl_Object_monitorExitSync($this);
8634
- }
8635
- };
8636
- var asrrh_Register_setValueBackdoor = ($this, $val) => {
8637
- let $old;
8638
- jl_Object_monitorEnterSync($this);
8639
- try {
8640
- $old = $this.$value2;
8641
- $this.$value2 = $val;
8642
- return $old;
8643
- } finally {
8644
- jl_Object_monitorExitSync($this);
8645
- }
8646
- };
8647
- var asrrh_Register_resetValue = ($this) => {
8648
- jl_Object_monitorEnterSync($this);
8649
- try {
8650
- $this.$value2 = $this.$resetValue0;
8651
- } finally {
8652
- jl_Object_monitorExitSync($this);
8653
- }
8654
- };
8655
- var asrrh_Register_changeResetValue = ($this, $reset) => {
8656
- jl_Object_monitorEnterSync($this);
8657
- try {
8658
- $this.$resetValue0 = $reset;
8659
- } finally {
8660
- jl_Object_monitorExitSync($this);
8661
- }
8662
- };
8663
- var asrrh_Register_notifyAnyObservers = ($this, $type) => {
8664
- let var$2, var$3, var$4;
8665
- var$2 = $this;
8666
- if (ju_Observable_countObservers(var$2) > 0) {
8667
- ju_Observable_setChanged(var$2);
8668
- var$3 = new asrrh_RegisterAccessNotice();
8669
- var$4 = $this.$name1;
8670
- asrrh_AccessNotice__init_(var$3, $type);
8671
- var$3.$registerName = var$4;
8672
- ju_Observable_notifyObservers(var$2, var$3);
8673
- }
8674
- };
8675
8557
  function asrs_BackStepper() {
8676
8558
  let a = this;
8677
8559
  jl_Object.call(a);
@@ -8889,6 +8771,123 @@ var jusi_ArrayStreamImpl_next = ($this, $consumer) => {
8889
8771
  var jusi_ArrayStreamImpl_estimateSize = ($this) => {
8890
8772
  return $this.$size2;
8891
8773
  };
8774
+ function asrrh_Register() {
8775
+ let a = this;
8776
+ ju_Observable.call(a);
8777
+ a.$name1 = null;
8778
+ a.$number = 0;
8779
+ a.$resetValue0 = Long_ZERO;
8780
+ a.$value2 = Long_ZERO;
8781
+ }
8782
+ var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
8783
+ ju_Observable__init_($this);
8784
+ $this.$name1 = $n;
8785
+ $this.$number = $num;
8786
+ $this.$value2 = $val;
8787
+ $this.$resetValue0 = $val;
8788
+ };
8789
+ var asrrh_Register__init_ = (var_0, var_1, var_2) => {
8790
+ let var_3 = new asrrh_Register();
8791
+ asrrh_Register__init_0(var_3, var_0, var_1, var_2);
8792
+ return var_3;
8793
+ };
8794
+ var asrrh_Register_getName = ($this) => {
8795
+ return $this.$name1;
8796
+ };
8797
+ var asrrh_Register_getValue = ($this) => {
8798
+ jl_Object_monitorEnterSync($this);
8799
+ try {
8800
+ asrrh_Register_notifyAnyObservers($this, 0);
8801
+ return $this.$value2;
8802
+ } finally {
8803
+ jl_Object_monitorExitSync($this);
8804
+ }
8805
+ };
8806
+ var asrrh_Register_getValueNoNotify = ($this) => {
8807
+ jl_Object_monitorEnterSync($this);
8808
+ try {
8809
+ return $this.$value2;
8810
+ } finally {
8811
+ jl_Object_monitorExitSync($this);
8812
+ }
8813
+ };
8814
+ var asrrh_Register_getNumber = ($this) => {
8815
+ return $this.$number;
8816
+ };
8817
+ var asrrh_Register_setValue = ($this, $val) => {
8818
+ let $old;
8819
+ jl_Object_monitorEnterSync($this);
8820
+ try {
8821
+ $old = $this.$value2;
8822
+ $this.$value2 = $val;
8823
+ asrrh_Register_notifyAnyObservers($this, 1);
8824
+ return $old;
8825
+ } finally {
8826
+ jl_Object_monitorExitSync($this);
8827
+ }
8828
+ };
8829
+ var asrrh_Register_setValueBackdoor = ($this, $val) => {
8830
+ let $old;
8831
+ jl_Object_monitorEnterSync($this);
8832
+ try {
8833
+ $old = $this.$value2;
8834
+ $this.$value2 = $val;
8835
+ return $old;
8836
+ } finally {
8837
+ jl_Object_monitorExitSync($this);
8838
+ }
8839
+ };
8840
+ var asrrh_Register_resetValue = ($this) => {
8841
+ jl_Object_monitorEnterSync($this);
8842
+ try {
8843
+ $this.$value2 = $this.$resetValue0;
8844
+ } finally {
8845
+ jl_Object_monitorExitSync($this);
8846
+ }
8847
+ };
8848
+ var asrrh_Register_changeResetValue = ($this, $reset) => {
8849
+ jl_Object_monitorEnterSync($this);
8850
+ try {
8851
+ $this.$resetValue0 = $reset;
8852
+ } finally {
8853
+ jl_Object_monitorExitSync($this);
8854
+ }
8855
+ };
8856
+ var asrrh_Register_notifyAnyObservers = ($this, $type) => {
8857
+ let var$2, var$3, var$4;
8858
+ var$2 = $this;
8859
+ if (ju_Observable_countObservers(var$2) > 0) {
8860
+ ju_Observable_setChanged(var$2);
8861
+ var$3 = new asrrh_RegisterAccessNotice();
8862
+ var$4 = $this.$name1;
8863
+ asrrh_AccessNotice__init_(var$3, $type);
8864
+ var$3.$registerName = var$4;
8865
+ ju_Observable_notifyObservers(var$2, var$3);
8866
+ }
8867
+ };
8868
+ function asr_JsCompilationResult$_init_$lambda$_0_0() {
8869
+ jl_Object.call(this);
8870
+ this.$_06 = null;
8871
+ }
8872
+ var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8873
+ let var$2, var$3;
8874
+ var$1 = var$1;
8875
+ var$2 = var$0.$_06;
8876
+ var$3 = new asr_JsCompilationResult$JsCompilationError();
8877
+ var$3.$this$016 = var$2;
8878
+ var$3.$isWarning0 = var$1.$isWarning;
8879
+ var$3.$message2 = var$1.$message0;
8880
+ var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8881
+ var$3.$filename2 = var$1.$filename0;
8882
+ var$3.$lineNumber0 = var$1.$line;
8883
+ var$3.$columnNumber = var$1.$position2;
8884
+ return var$3;
8885
+ };
8886
+ var juf_Supplier = $rt_classWithoutFields(0);
8887
+ var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8888
+ var juf_BiConsumer = $rt_classWithoutFields(0);
8889
+ var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8890
+ var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8892
8891
  var jl_Math = $rt_classWithoutFields();
8893
8892
  var jl_Math_pow = ($x, $y) => {
8894
8893
  return jl_Math_powImpl($x, $y);
@@ -12163,6 +12162,85 @@ var ju_Comparator$NaturalOrder_compare = ($this, $o1, $o2) => {
12163
12162
  var ju_Comparator$NaturalOrder__clinit_ = () => {
12164
12163
  ju_Comparator$NaturalOrder_INSTANCE = new ju_Comparator$NaturalOrder();
12165
12164
  };
12165
+ function asrrh_RegisterBlock() {
12166
+ let a = this;
12167
+ jl_Object.call(a);
12168
+ a.$regFile = null;
12169
+ a.$prefix = 0;
12170
+ }
12171
+ var asrrh_RegisterBlock__init_ = ($this, $prefix, $registers) => {
12172
+ $this.$prefix = $prefix;
12173
+ $this.$regFile = $registers;
12174
+ };
12175
+ var asrrh_RegisterBlock__init_0 = (var_0, var_1) => {
12176
+ let var_2 = new asrrh_RegisterBlock();
12177
+ asrrh_RegisterBlock__init_(var_2, var_0, var_1);
12178
+ return var_2;
12179
+ };
12180
+ var asrrh_RegisterBlock_updateRegister = ($this, $num, $val) => {
12181
+ let var$3;
12182
+ var$3 = asrrh_RegisterBlock_getRegister0($this, $num);
12183
+ return var$3 !== null ? var$3.$setValue($val) : Long_ZERO;
12184
+ };
12185
+ var asrrh_RegisterBlock_getValue = ($this, $num) => {
12186
+ return asrrh_RegisterBlock_getRegister0($this, $num).$getValue();
12187
+ };
12188
+ var asrrh_RegisterBlock_getValue0 = ($this, $name) => {
12189
+ return asrrh_RegisterBlock_getRegister($this, $name).$getValue();
12190
+ };
12191
+ var asrrh_RegisterBlock_getRegister0 = ($this, $num) => {
12192
+ let var$2, var$3, var$4, $r;
12193
+ var$2 = $this.$regFile.data;
12194
+ var$3 = var$2.length;
12195
+ var$4 = 0;
12196
+ while (true) {
12197
+ if (var$4 >= var$3)
12198
+ return null;
12199
+ $r = var$2[var$4];
12200
+ if ($r.$number == $num)
12201
+ break;
12202
+ var$4 = var$4 + 1 | 0;
12203
+ }
12204
+ return $r;
12205
+ };
12206
+ var asrrh_RegisterBlock_getRegister = ($this, $name) => {
12207
+ let var$2, var$3, var$4, $num, $r;
12208
+ if ($name.$nativeString.length < 2)
12209
+ return null;
12210
+ var$2 = $this.$regFile.data;
12211
+ var$3 = var$2.length;
12212
+ var$4 = 0;
12213
+ while (true) {
12214
+ if (var$4 >= var$3) {
12215
+ if (jl_String_charAt($name, 0) != $this.$prefix)
12216
+ return null;
12217
+ if (!jl_String_charAt($name, 1)) {
12218
+ if ($name.$nativeString.length > 2)
12219
+ return null;
12220
+ return asrrh_RegisterBlock_getRegister0($this, 0);
12221
+ }
12222
+ $num = asru_Binary_stringToIntFast(jl_String_substring0($name, 1));
12223
+ if ($num === null)
12224
+ return null;
12225
+ return asrrh_RegisterBlock_getRegister0($this, $num.$value1);
12226
+ }
12227
+ $r = var$2[var$4];
12228
+ if (jl_String_equals($r.$name1, $name))
12229
+ break;
12230
+ var$4 = var$4 + 1 | 0;
12231
+ }
12232
+ return $r;
12233
+ };
12234
+ var asrrh_RegisterBlock_resetRegisters = ($this) => {
12235
+ let var$1, var$2, var$3;
12236
+ var$1 = $this.$regFile.data;
12237
+ var$2 = var$1.length;
12238
+ var$3 = 0;
12239
+ while (var$3 < var$2) {
12240
+ var$1[var$3].$resetValue();
12241
+ var$3 = var$3 + 1 | 0;
12242
+ }
12243
+ };
12166
12244
  function asr_ErrorList() {
12167
12245
  let a = this;
12168
12246
  jl_Object.call(a);
@@ -12248,85 +12326,6 @@ var asr_ErrorList_generateReport = ($this, $isWarning) => {
12248
12326
  }
12249
12327
  return jl_AbstractStringBuilder_toString($report);
12250
12328
  };
12251
- function asrrh_RegisterBlock() {
12252
- let a = this;
12253
- jl_Object.call(a);
12254
- a.$regFile = null;
12255
- a.$prefix = 0;
12256
- }
12257
- var asrrh_RegisterBlock__init_ = ($this, $prefix, $registers) => {
12258
- $this.$prefix = $prefix;
12259
- $this.$regFile = $registers;
12260
- };
12261
- var asrrh_RegisterBlock__init_0 = (var_0, var_1) => {
12262
- let var_2 = new asrrh_RegisterBlock();
12263
- asrrh_RegisterBlock__init_(var_2, var_0, var_1);
12264
- return var_2;
12265
- };
12266
- var asrrh_RegisterBlock_updateRegister = ($this, $num, $val) => {
12267
- let var$3;
12268
- var$3 = asrrh_RegisterBlock_getRegister0($this, $num);
12269
- return var$3 !== null ? var$3.$setValue($val) : Long_ZERO;
12270
- };
12271
- var asrrh_RegisterBlock_getValue = ($this, $num) => {
12272
- return asrrh_RegisterBlock_getRegister0($this, $num).$getValue();
12273
- };
12274
- var asrrh_RegisterBlock_getValue0 = ($this, $name) => {
12275
- return asrrh_RegisterBlock_getRegister($this, $name).$getValue();
12276
- };
12277
- var asrrh_RegisterBlock_getRegister0 = ($this, $num) => {
12278
- let var$2, var$3, var$4, $r;
12279
- var$2 = $this.$regFile.data;
12280
- var$3 = var$2.length;
12281
- var$4 = 0;
12282
- while (true) {
12283
- if (var$4 >= var$3)
12284
- return null;
12285
- $r = var$2[var$4];
12286
- if ($r.$number == $num)
12287
- break;
12288
- var$4 = var$4 + 1 | 0;
12289
- }
12290
- return $r;
12291
- };
12292
- var asrrh_RegisterBlock_getRegister = ($this, $name) => {
12293
- let var$2, var$3, var$4, $num, $r;
12294
- if ($name.$nativeString.length < 2)
12295
- return null;
12296
- var$2 = $this.$regFile.data;
12297
- var$3 = var$2.length;
12298
- var$4 = 0;
12299
- while (true) {
12300
- if (var$4 >= var$3) {
12301
- if (jl_String_charAt($name, 0) != $this.$prefix)
12302
- return null;
12303
- if (!jl_String_charAt($name, 1)) {
12304
- if ($name.$nativeString.length > 2)
12305
- return null;
12306
- return asrrh_RegisterBlock_getRegister0($this, 0);
12307
- }
12308
- $num = asru_Binary_stringToIntFast(jl_String_substring0($name, 1));
12309
- if ($num === null)
12310
- return null;
12311
- return asrrh_RegisterBlock_getRegister0($this, $num.$value1);
12312
- }
12313
- $r = var$2[var$4];
12314
- if (jl_String_equals($r.$name1, $name))
12315
- break;
12316
- var$4 = var$4 + 1 | 0;
12317
- }
12318
- return $r;
12319
- };
12320
- var asrrh_RegisterBlock_resetRegisters = ($this) => {
12321
- let var$1, var$2, var$3;
12322
- var$1 = $this.$regFile.data;
12323
- var$2 = var$1.length;
12324
- var$3 = 0;
12325
- while (var$3 < var$2) {
12326
- var$1[var$3].$resetValue();
12327
- var$3 = var$3 + 1 | 0;
12328
- }
12329
- };
12330
12329
  function asrrh_StackFrame() {
12331
12330
  let a = this;
12332
12331
  jl_Object.call(a);
@@ -13929,195 +13928,6 @@ var jusi_StreamOverSpliterator_next = ($this, $consumer) => {
13929
13928
  var jusi_StreamOverSpliterator_estimateSize = ($this) => {
13930
13929
  return Long_lo(Long_fromInt($this.$spliterator0.$collection.$size()));
13931
13930
  };
13932
- var jm_Conversion = $rt_classWithoutFields();
13933
- var jm_Conversion_digitFitInInt = null;
13934
- var jm_Conversion_bigRadices = null;
13935
- var jm_Conversion_toDecimalScaledString = ($val, $scale) => {
13936
- 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;
13937
- $sign = $val.$sign0;
13938
- $numberLength = $val.$numberLength;
13939
- $digits = $val.$digits;
13940
- if (!$sign) {
13941
- switch ($scale) {
13942
- case 0:
13943
- break;
13944
- case 1:
13945
- return $rt_s(1083);
13946
- case 2:
13947
- return $rt_s(1084);
13948
- case 3:
13949
- return $rt_s(1085);
13950
- case 4:
13951
- return $rt_s(1086);
13952
- case 5:
13953
- return $rt_s(1087);
13954
- case 6:
13955
- return $rt_s(1088);
13956
- default:
13957
- $result1 = new jl_StringBuilder();
13958
- jl_AbstractStringBuilder__init_($result1);
13959
- if ($scale >= 0)
13960
- jl_AbstractStringBuilder_append1($result1, $rt_s(1089));
13961
- else
13962
- jl_AbstractStringBuilder_append1($result1, $rt_s(1090));
13963
- jl_AbstractStringBuilder_append($result1, -$scale | 0);
13964
- return jl_AbstractStringBuilder_toString($result1);
13965
- }
13966
- return $rt_s(6);
13967
- }
13968
- $resLengthInChars = (($numberLength * 10 | 0) + 1 | 0) + 7 | 0;
13969
- $result = $rt_createCharArray($resLengthInChars + 1 | 0);
13970
- if ($numberLength == 1) {
13971
- $v = $digits.data[0];
13972
- if ($v >= 0) {
13973
- $i1 = $resLengthInChars;
13974
- while (true) {
13975
- $digits = $result.data;
13976
- $v_0 = $v / 10 | 0;
13977
- $i1 = $i1 + -1 | 0;
13978
- $digits[$i1] = (48 + ($v - ($v_0 * 10 | 0) | 0) | 0) & 65535;
13979
- if (!$v_0)
13980
- break;
13981
- $v = $v_0;
13982
- }
13983
- } else {
13984
- $v_1 = Long_and(Long_fromInt($v), Long_create(4294967295, 0));
13985
- $i1 = $resLengthInChars;
13986
- while (true) {
13987
- $digits = $result.data;
13988
- $v_2 = Long_div($v_1, Long_fromInt(10));
13989
- $i1 = $i1 + -1 | 0;
13990
- $digits[$i1] = (48 + Long_lo(Long_sub($v_1, Long_mul($v_2, Long_fromInt(10)))) | 0) & 65535;
13991
- if (Long_eq($v_2, Long_ZERO))
13992
- break;
13993
- $v_1 = $v_2;
13994
- }
13995
- }
13996
- } else {
13997
- var$14 = $result.data;
13998
- $temp = $rt_createIntArray($numberLength);
13999
- var$16 = $temp.data;
14000
- jl_System_fastArraycopy($digits, 0, $temp, 0, $numberLength);
14001
- $negNumber = $resLengthInChars;
14002
- a: while (true) {
14003
- $result11 = Long_ZERO;
14004
- $j = $numberLength - 1 | 0;
14005
- $i1 = $j;
14006
- while ($i1 >= 0) {
14007
- $res = jm_Conversion_divideLongByBillion(Long_add(Long_shl($result11, 32), Long_and(Long_fromInt(var$16[$i1]), Long_create(4294967295, 0))));
14008
- var$16[$i1] = Long_lo($res);
14009
- $result11 = Long_fromInt(Long_hi($res));
14010
- $i1 = $i1 + -1 | 0;
14011
- }
14012
- $resDigit = Long_lo($result11);
14013
- $i1 = $negNumber;
14014
- while (true) {
14015
- $i1 = $i1 + -1 | 0;
14016
- var$14[$i1] = (48 + ($resDigit % 10 | 0) | 0) & 65535;
14017
- $resDigit = $resDigit / 10 | 0;
14018
- if (!$resDigit)
14019
- break;
14020
- if (!$i1)
14021
- break;
14022
- }
14023
- $delta = (9 - $negNumber | 0) + $i1 | 0;
14024
- $i = 0;
14025
- while ($i < $delta && $i1 > 0) {
14026
- $i1 = $i1 + -1 | 0;
14027
- var$14[$i1] = 48;
14028
- $i = $i + 1 | 0;
14029
- }
14030
- while (!var$16[$j]) {
14031
- if (!$j)
14032
- break a;
14033
- $j = $j + -1 | 0;
14034
- }
14035
- $numberLength = $j + 1 | 0;
14036
- $negNumber = $i1;
14037
- }
14038
- while (var$14[$i1] == 48) {
14039
- $i1 = $i1 + 1 | 0;
14040
- }
14041
- }
14042
- $negNumber = $sign >= 0 ? 0 : 1;
14043
- $sign = $resLengthInChars - $i1 | 0;
14044
- $exponent = ($sign - $scale | 0) - 1 | 0;
14045
- if (!$scale) {
14046
- if ($negNumber) {
14047
- $digits = $result.data;
14048
- $i1 = $i1 + -1 | 0;
14049
- $digits[$i1] = 45;
14050
- }
14051
- return jl_String__init_0($result, $i1, $resLengthInChars - $i1 | 0);
14052
- }
14053
- if ($scale > 0 && $exponent >= -6) {
14054
- if ($exponent < 0) {
14055
- $digits = $result.data;
14056
- $j = 2;
14057
- $scale = (-$exponent | 0) + 1 | 0;
14058
- while ($j < $scale) {
14059
- $i1 = $i1 + -1 | 0;
14060
- $digits[$i1] = 48;
14061
- $j = $j + 1 | 0;
14062
- }
14063
- $scale = $i1 + -1 | 0;
14064
- $digits[$scale] = 46;
14065
- $scale = $scale + -1 | 0;
14066
- $digits[$scale] = 48;
14067
- if ($negNumber) {
14068
- $scale = $scale + -1 | 0;
14069
- $digits[$scale] = 45;
14070
- }
14071
- return jl_String__init_0($result, $scale, $resLengthInChars - $scale | 0);
14072
- }
14073
- $digits = $result.data;
14074
- $insertPoint = $i1 + $exponent | 0;
14075
- $j = $resLengthInChars - 1 | 0;
14076
- while ($j >= $insertPoint) {
14077
- $digits[$j + 1 | 0] = $digits[$j];
14078
- $j = $j + -1 | 0;
14079
- }
14080
- $digits[$insertPoint + 1 | 0] = 46;
14081
- if ($negNumber) {
14082
- $i1 = $i1 + -1 | 0;
14083
- $digits[$i1] = 45;
14084
- }
14085
- return jl_String__init_0($result, $i1, ($resLengthInChars - $i1 | 0) + 1 | 0);
14086
- }
14087
- $startPoint = $i1 + 1 | 0;
14088
- $result1 = new jl_StringBuilder();
14089
- jl_AbstractStringBuilder__init_0($result1, (16 + $resLengthInChars | 0) - $startPoint | 0);
14090
- if ($negNumber)
14091
- jl_AbstractStringBuilder_append0($result1, 45);
14092
- if (($resLengthInChars - $startPoint | 0) < 1)
14093
- jl_AbstractStringBuilder_append3($result1, $result, $i1, $sign);
14094
- else {
14095
- jl_AbstractStringBuilder_append0($result1, $result.data[$i1]);
14096
- jl_AbstractStringBuilder_append0($result1, 46);
14097
- jl_AbstractStringBuilder_append3($result1, $result, $startPoint, $sign - 1 | 0);
14098
- }
14099
- jl_AbstractStringBuilder_append0($result1, 69);
14100
- if ($exponent > 0)
14101
- jl_AbstractStringBuilder_append0($result1, 43);
14102
- jl_AbstractStringBuilder_append1($result1, jl_Integer_toString($exponent));
14103
- return jl_AbstractStringBuilder_toString($result1);
14104
- };
14105
- var jm_Conversion_divideLongByBillion = ($a) => {
14106
- let $quot, $rem, $aPos;
14107
- if (Long_ge($a, Long_ZERO)) {
14108
- $quot = Long_div($a, Long_fromInt(1e9));
14109
- $rem = Long_rem($a, Long_fromInt(1e9));
14110
- } else {
14111
- $aPos = Long_shru($a, 1);
14112
- $quot = Long_div($aPos, Long_fromInt(5e8));
14113
- $rem = Long_add(Long_shl(Long_rem($aPos, Long_fromInt(5e8)), 1), Long_and($a, Long_fromInt(1)));
14114
- }
14115
- return Long_or(Long_shl($rem, 32), Long_and($quot, Long_create(4294967295, 0)));
14116
- };
14117
- var jm_Conversion__clinit_ = () => {
14118
- 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]);
14119
- 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]);
14120
- };
14121
13931
  function jusi_WrappingStreamImpl() {
14122
13932
  jusi_SimpleStreamImpl.call(this);
14123
13933
  this.$sourceStream = null;
@@ -14155,6 +13965,195 @@ var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
14155
13965
  var$3.$_13 = $consumer;
14156
13966
  return jusi_ArrayStreamImpl_next(var$2, var$3);
14157
13967
  };
13968
+ var jm_Conversion = $rt_classWithoutFields();
13969
+ var jm_Conversion_digitFitInInt = null;
13970
+ var jm_Conversion_bigRadices = null;
13971
+ var jm_Conversion_toDecimalScaledString = ($val, $scale) => {
13972
+ 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;
13973
+ $sign = $val.$sign0;
13974
+ $numberLength = $val.$numberLength;
13975
+ $digits = $val.$digits;
13976
+ if (!$sign) {
13977
+ switch ($scale) {
13978
+ case 0:
13979
+ break;
13980
+ case 1:
13981
+ return $rt_s(1083);
13982
+ case 2:
13983
+ return $rt_s(1084);
13984
+ case 3:
13985
+ return $rt_s(1085);
13986
+ case 4:
13987
+ return $rt_s(1086);
13988
+ case 5:
13989
+ return $rt_s(1087);
13990
+ case 6:
13991
+ return $rt_s(1088);
13992
+ default:
13993
+ $result1 = new jl_StringBuilder();
13994
+ jl_AbstractStringBuilder__init_($result1);
13995
+ if ($scale >= 0)
13996
+ jl_AbstractStringBuilder_append1($result1, $rt_s(1089));
13997
+ else
13998
+ jl_AbstractStringBuilder_append1($result1, $rt_s(1090));
13999
+ jl_AbstractStringBuilder_append($result1, -$scale | 0);
14000
+ return jl_AbstractStringBuilder_toString($result1);
14001
+ }
14002
+ return $rt_s(6);
14003
+ }
14004
+ $resLengthInChars = (($numberLength * 10 | 0) + 1 | 0) + 7 | 0;
14005
+ $result = $rt_createCharArray($resLengthInChars + 1 | 0);
14006
+ if ($numberLength == 1) {
14007
+ $v = $digits.data[0];
14008
+ if ($v >= 0) {
14009
+ $i1 = $resLengthInChars;
14010
+ while (true) {
14011
+ $digits = $result.data;
14012
+ $v_0 = $v / 10 | 0;
14013
+ $i1 = $i1 + -1 | 0;
14014
+ $digits[$i1] = (48 + ($v - ($v_0 * 10 | 0) | 0) | 0) & 65535;
14015
+ if (!$v_0)
14016
+ break;
14017
+ $v = $v_0;
14018
+ }
14019
+ } else {
14020
+ $v_1 = Long_and(Long_fromInt($v), Long_create(4294967295, 0));
14021
+ $i1 = $resLengthInChars;
14022
+ while (true) {
14023
+ $digits = $result.data;
14024
+ $v_2 = Long_div($v_1, Long_fromInt(10));
14025
+ $i1 = $i1 + -1 | 0;
14026
+ $digits[$i1] = (48 + Long_lo(Long_sub($v_1, Long_mul($v_2, Long_fromInt(10)))) | 0) & 65535;
14027
+ if (Long_eq($v_2, Long_ZERO))
14028
+ break;
14029
+ $v_1 = $v_2;
14030
+ }
14031
+ }
14032
+ } else {
14033
+ var$14 = $result.data;
14034
+ $temp = $rt_createIntArray($numberLength);
14035
+ var$16 = $temp.data;
14036
+ jl_System_fastArraycopy($digits, 0, $temp, 0, $numberLength);
14037
+ $negNumber = $resLengthInChars;
14038
+ a: while (true) {
14039
+ $result11 = Long_ZERO;
14040
+ $j = $numberLength - 1 | 0;
14041
+ $i1 = $j;
14042
+ while ($i1 >= 0) {
14043
+ $res = jm_Conversion_divideLongByBillion(Long_add(Long_shl($result11, 32), Long_and(Long_fromInt(var$16[$i1]), Long_create(4294967295, 0))));
14044
+ var$16[$i1] = Long_lo($res);
14045
+ $result11 = Long_fromInt(Long_hi($res));
14046
+ $i1 = $i1 + -1 | 0;
14047
+ }
14048
+ $resDigit = Long_lo($result11);
14049
+ $i1 = $negNumber;
14050
+ while (true) {
14051
+ $i1 = $i1 + -1 | 0;
14052
+ var$14[$i1] = (48 + ($resDigit % 10 | 0) | 0) & 65535;
14053
+ $resDigit = $resDigit / 10 | 0;
14054
+ if (!$resDigit)
14055
+ break;
14056
+ if (!$i1)
14057
+ break;
14058
+ }
14059
+ $delta = (9 - $negNumber | 0) + $i1 | 0;
14060
+ $i = 0;
14061
+ while ($i < $delta && $i1 > 0) {
14062
+ $i1 = $i1 + -1 | 0;
14063
+ var$14[$i1] = 48;
14064
+ $i = $i + 1 | 0;
14065
+ }
14066
+ while (!var$16[$j]) {
14067
+ if (!$j)
14068
+ break a;
14069
+ $j = $j + -1 | 0;
14070
+ }
14071
+ $numberLength = $j + 1 | 0;
14072
+ $negNumber = $i1;
14073
+ }
14074
+ while (var$14[$i1] == 48) {
14075
+ $i1 = $i1 + 1 | 0;
14076
+ }
14077
+ }
14078
+ $negNumber = $sign >= 0 ? 0 : 1;
14079
+ $sign = $resLengthInChars - $i1 | 0;
14080
+ $exponent = ($sign - $scale | 0) - 1 | 0;
14081
+ if (!$scale) {
14082
+ if ($negNumber) {
14083
+ $digits = $result.data;
14084
+ $i1 = $i1 + -1 | 0;
14085
+ $digits[$i1] = 45;
14086
+ }
14087
+ return jl_String__init_0($result, $i1, $resLengthInChars - $i1 | 0);
14088
+ }
14089
+ if ($scale > 0 && $exponent >= -6) {
14090
+ if ($exponent < 0) {
14091
+ $digits = $result.data;
14092
+ $j = 2;
14093
+ $scale = (-$exponent | 0) + 1 | 0;
14094
+ while ($j < $scale) {
14095
+ $i1 = $i1 + -1 | 0;
14096
+ $digits[$i1] = 48;
14097
+ $j = $j + 1 | 0;
14098
+ }
14099
+ $scale = $i1 + -1 | 0;
14100
+ $digits[$scale] = 46;
14101
+ $scale = $scale + -1 | 0;
14102
+ $digits[$scale] = 48;
14103
+ if ($negNumber) {
14104
+ $scale = $scale + -1 | 0;
14105
+ $digits[$scale] = 45;
14106
+ }
14107
+ return jl_String__init_0($result, $scale, $resLengthInChars - $scale | 0);
14108
+ }
14109
+ $digits = $result.data;
14110
+ $insertPoint = $i1 + $exponent | 0;
14111
+ $j = $resLengthInChars - 1 | 0;
14112
+ while ($j >= $insertPoint) {
14113
+ $digits[$j + 1 | 0] = $digits[$j];
14114
+ $j = $j + -1 | 0;
14115
+ }
14116
+ $digits[$insertPoint + 1 | 0] = 46;
14117
+ if ($negNumber) {
14118
+ $i1 = $i1 + -1 | 0;
14119
+ $digits[$i1] = 45;
14120
+ }
14121
+ return jl_String__init_0($result, $i1, ($resLengthInChars - $i1 | 0) + 1 | 0);
14122
+ }
14123
+ $startPoint = $i1 + 1 | 0;
14124
+ $result1 = new jl_StringBuilder();
14125
+ jl_AbstractStringBuilder__init_0($result1, (16 + $resLengthInChars | 0) - $startPoint | 0);
14126
+ if ($negNumber)
14127
+ jl_AbstractStringBuilder_append0($result1, 45);
14128
+ if (($resLengthInChars - $startPoint | 0) < 1)
14129
+ jl_AbstractStringBuilder_append3($result1, $result, $i1, $sign);
14130
+ else {
14131
+ jl_AbstractStringBuilder_append0($result1, $result.data[$i1]);
14132
+ jl_AbstractStringBuilder_append0($result1, 46);
14133
+ jl_AbstractStringBuilder_append3($result1, $result, $startPoint, $sign - 1 | 0);
14134
+ }
14135
+ jl_AbstractStringBuilder_append0($result1, 69);
14136
+ if ($exponent > 0)
14137
+ jl_AbstractStringBuilder_append0($result1, 43);
14138
+ jl_AbstractStringBuilder_append1($result1, jl_Integer_toString($exponent));
14139
+ return jl_AbstractStringBuilder_toString($result1);
14140
+ };
14141
+ var jm_Conversion_divideLongByBillion = ($a) => {
14142
+ let $quot, $rem, $aPos;
14143
+ if (Long_ge($a, Long_ZERO)) {
14144
+ $quot = Long_div($a, Long_fromInt(1e9));
14145
+ $rem = Long_rem($a, Long_fromInt(1e9));
14146
+ } else {
14147
+ $aPos = Long_shru($a, 1);
14148
+ $quot = Long_div($aPos, Long_fromInt(5e8));
14149
+ $rem = Long_add(Long_shl(Long_rem($aPos, Long_fromInt(5e8)), 1), Long_and($a, Long_fromInt(1)));
14150
+ }
14151
+ return Long_or(Long_shl($rem, 32), Long_and($quot, Long_create(4294967295, 0)));
14152
+ };
14153
+ var jm_Conversion__clinit_ = () => {
14154
+ 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]);
14155
+ 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]);
14156
+ };
14158
14157
  var asru_Binary = $rt_classWithoutFields();
14159
14158
  var asru_Binary_chars = null;
14160
14159
  var asru_Binary_intToBinaryString = ($value, $length) => {
@@ -14412,6 +14411,52 @@ var ju_AbstractList$1_next = ($this) => {
14412
14411
  $this.$index4 = var$3 + 1 | 0;
14413
14412
  return var$2.$get0(var$3);
14414
14413
  };
14414
+ var asrs_Simulator$Reason = $rt_classWithoutFields(jl_Enum);
14415
+ var asrs_Simulator$Reason_BREAKPOINT = null;
14416
+ var asrs_Simulator$Reason_EXCEPTION = null;
14417
+ var asrs_Simulator$Reason_MAX_STEPS = null;
14418
+ var asrs_Simulator$Reason_NORMAL_TERMINATION = null;
14419
+ var asrs_Simulator$Reason_CLIFF_TERMINATION = null;
14420
+ var asrs_Simulator$Reason_PAUSE = null;
14421
+ var asrs_Simulator$Reason_STOP = null;
14422
+ var asrs_Simulator$Reason_$VALUES = null;
14423
+ var asrs_Simulator$Reason_values = () => {
14424
+ return asrs_Simulator$Reason_$VALUES.$clone0();
14425
+ };
14426
+ var asrs_Simulator$Reason__clinit_ = () => {
14427
+ let var$1, var$2, var$3;
14428
+ var$1 = new asrs_Simulator$Reason();
14429
+ jl_Enum__init_(var$1, $rt_s(1091), 0);
14430
+ asrs_Simulator$Reason_BREAKPOINT = var$1;
14431
+ var$1 = new asrs_Simulator$Reason();
14432
+ jl_Enum__init_(var$1, $rt_s(1092), 1);
14433
+ asrs_Simulator$Reason_EXCEPTION = var$1;
14434
+ var$1 = new asrs_Simulator$Reason();
14435
+ jl_Enum__init_(var$1, $rt_s(1093), 2);
14436
+ asrs_Simulator$Reason_MAX_STEPS = var$1;
14437
+ var$1 = new asrs_Simulator$Reason();
14438
+ jl_Enum__init_(var$1, $rt_s(1094), 3);
14439
+ asrs_Simulator$Reason_NORMAL_TERMINATION = var$1;
14440
+ var$1 = new asrs_Simulator$Reason();
14441
+ jl_Enum__init_(var$1, $rt_s(1095), 4);
14442
+ asrs_Simulator$Reason_CLIFF_TERMINATION = var$1;
14443
+ var$1 = new asrs_Simulator$Reason();
14444
+ jl_Enum__init_(var$1, $rt_s(1096), 5);
14445
+ asrs_Simulator$Reason_PAUSE = var$1;
14446
+ var$1 = new asrs_Simulator$Reason();
14447
+ jl_Enum__init_(var$1, $rt_s(1097), 6);
14448
+ asrs_Simulator$Reason_STOP = var$1;
14449
+ var$2 = $rt_createArray(asrs_Simulator$Reason, 7);
14450
+ var$3 = var$2.data;
14451
+ var$3[0] = asrs_Simulator$Reason_BREAKPOINT;
14452
+ var$3[1] = asrs_Simulator$Reason_EXCEPTION;
14453
+ var$3[2] = asrs_Simulator$Reason_MAX_STEPS;
14454
+ var$3[3] = asrs_Simulator$Reason_NORMAL_TERMINATION;
14455
+ var$3[4] = asrs_Simulator$Reason_CLIFF_TERMINATION;
14456
+ var$3[5] = asrs_Simulator$Reason_PAUSE;
14457
+ var$3[6] = var$1;
14458
+ asrs_Simulator$Reason_$VALUES = var$2;
14459
+ };
14415
14460
  var asrrh_FloatingPointRegisterFile = $rt_classWithoutFields();
14416
14461
  var asrrh_FloatingPointRegisterFile_instance = null;
14417
14462
  var asrrh_FloatingPointRegisterFile_setRegisterToFloat = ($reg, $val) => {
@@ -14456,38 +14501,38 @@ var asrrh_FloatingPointRegisterFile__clinit_ = () => {
14456
14501
  var$1 = new asrrh_RegisterBlock();
14457
14502
  var$2 = $rt_createArray(asrrh_Register, 32);
14458
14503
  var$3 = var$2.data;
14459
- var$3[0] = asrrh_Register__init_($rt_s(1091), 0, Long_ZERO);
14460
- var$3[1] = asrrh_Register__init_($rt_s(1092), 1, Long_ZERO);
14461
- var$3[2] = asrrh_Register__init_($rt_s(1093), 2, Long_ZERO);
14462
- var$3[3] = asrrh_Register__init_($rt_s(1094), 3, Long_ZERO);
14463
- var$3[4] = asrrh_Register__init_($rt_s(1095), 4, Long_ZERO);
14464
- var$3[5] = asrrh_Register__init_($rt_s(1096), 5, Long_ZERO);
14465
- var$3[6] = asrrh_Register__init_($rt_s(1097), 6, Long_ZERO);
14466
- var$3[7] = asrrh_Register__init_($rt_s(1098), 7, Long_ZERO);
14467
- var$3[8] = asrrh_Register__init_($rt_s(1099), 8, Long_ZERO);
14468
- var$3[9] = asrrh_Register__init_($rt_s(1100), 9, Long_ZERO);
14504
+ var$3[0] = asrrh_Register__init_($rt_s(1098), 0, Long_ZERO);
14505
+ var$3[1] = asrrh_Register__init_($rt_s(1099), 1, Long_ZERO);
14506
+ var$3[2] = asrrh_Register__init_($rt_s(1100), 2, Long_ZERO);
14507
+ var$3[3] = asrrh_Register__init_($rt_s(1101), 3, Long_ZERO);
14508
+ var$3[4] = asrrh_Register__init_($rt_s(1102), 4, Long_ZERO);
14509
+ var$3[5] = asrrh_Register__init_($rt_s(1103), 5, Long_ZERO);
14510
+ var$3[6] = asrrh_Register__init_($rt_s(1104), 6, Long_ZERO);
14511
+ var$3[7] = asrrh_Register__init_($rt_s(1105), 7, Long_ZERO);
14512
+ var$3[8] = asrrh_Register__init_($rt_s(1106), 8, Long_ZERO);
14513
+ var$3[9] = asrrh_Register__init_($rt_s(1107), 9, Long_ZERO);
14469
14514
  var$3[10] = asrrh_Register__init_($rt_s(1042), 10, Long_ZERO);
14470
14515
  var$3[11] = asrrh_Register__init_($rt_s(1036), 11, Long_ZERO);
14471
- var$3[12] = asrrh_Register__init_($rt_s(1101), 12, Long_ZERO);
14472
- var$3[13] = asrrh_Register__init_($rt_s(1102), 13, Long_ZERO);
14473
- var$3[14] = asrrh_Register__init_($rt_s(1103), 14, Long_ZERO);
14474
- var$3[15] = asrrh_Register__init_($rt_s(1104), 15, Long_ZERO);
14475
- var$3[16] = asrrh_Register__init_($rt_s(1105), 16, Long_ZERO);
14476
- var$3[17] = asrrh_Register__init_($rt_s(1106), 17, Long_ZERO);
14477
- var$3[18] = asrrh_Register__init_($rt_s(1107), 18, Long_ZERO);
14478
- var$3[19] = asrrh_Register__init_($rt_s(1108), 19, Long_ZERO);
14479
- var$3[20] = asrrh_Register__init_($rt_s(1109), 20, Long_ZERO);
14480
- var$3[21] = asrrh_Register__init_($rt_s(1110), 21, Long_ZERO);
14481
- var$3[22] = asrrh_Register__init_($rt_s(1111), 22, Long_ZERO);
14482
- var$3[23] = asrrh_Register__init_($rt_s(1112), 23, Long_ZERO);
14483
- var$3[24] = asrrh_Register__init_($rt_s(1113), 24, Long_ZERO);
14484
- var$3[25] = asrrh_Register__init_($rt_s(1114), 25, Long_ZERO);
14485
- var$3[26] = asrrh_Register__init_($rt_s(1115), 26, Long_ZERO);
14486
- var$3[27] = asrrh_Register__init_($rt_s(1116), 27, Long_ZERO);
14487
- var$3[28] = asrrh_Register__init_($rt_s(1117), 28, Long_ZERO);
14488
- var$3[29] = asrrh_Register__init_($rt_s(1118), 29, Long_ZERO);
14489
- var$3[30] = asrrh_Register__init_($rt_s(1119), 30, Long_ZERO);
14490
- var$3[31] = asrrh_Register__init_($rt_s(1120), 31, Long_ZERO);
14516
+ var$3[12] = asrrh_Register__init_($rt_s(1108), 12, Long_ZERO);
14517
+ var$3[13] = asrrh_Register__init_($rt_s(1109), 13, Long_ZERO);
14518
+ var$3[14] = asrrh_Register__init_($rt_s(1110), 14, Long_ZERO);
14519
+ var$3[15] = asrrh_Register__init_($rt_s(1111), 15, Long_ZERO);
14520
+ var$3[16] = asrrh_Register__init_($rt_s(1112), 16, Long_ZERO);
14521
+ var$3[17] = asrrh_Register__init_($rt_s(1113), 17, Long_ZERO);
14522
+ var$3[18] = asrrh_Register__init_($rt_s(1114), 18, Long_ZERO);
14523
+ var$3[19] = asrrh_Register__init_($rt_s(1115), 19, Long_ZERO);
14524
+ var$3[20] = asrrh_Register__init_($rt_s(1116), 20, Long_ZERO);
14525
+ var$3[21] = asrrh_Register__init_($rt_s(1117), 21, Long_ZERO);
14526
+ var$3[22] = asrrh_Register__init_($rt_s(1118), 22, Long_ZERO);
14527
+ var$3[23] = asrrh_Register__init_($rt_s(1119), 23, Long_ZERO);
14528
+ var$3[24] = asrrh_Register__init_($rt_s(1120), 24, Long_ZERO);
14529
+ var$3[25] = asrrh_Register__init_($rt_s(1121), 25, Long_ZERO);
14530
+ var$3[26] = asrrh_Register__init_($rt_s(1122), 26, Long_ZERO);
14531
+ var$3[27] = asrrh_Register__init_($rt_s(1123), 27, Long_ZERO);
14532
+ var$3[28] = asrrh_Register__init_($rt_s(1124), 28, Long_ZERO);
14533
+ var$3[29] = asrrh_Register__init_($rt_s(1125), 29, Long_ZERO);
14534
+ var$3[30] = asrrh_Register__init_($rt_s(1126), 30, Long_ZERO);
14535
+ var$3[31] = asrrh_Register__init_($rt_s(1127), 31, Long_ZERO);
14491
14536
  asrrh_RegisterBlock__init_(var$1, 102, var$2);
14492
14537
  asrrh_FloatingPointRegisterFile_instance = var$1;
14493
14538
  };
@@ -14555,25 +14600,25 @@ var asrrh_ControlAndStatusRegisterFile__clinit_ = () => {
14555
14600
  var$2[0] = asrrh_MaskedRegister__init_($rt_s(679), 0, Long_ZERO, Long_fromInt(-18));
14556
14601
  var$2[1] = null;
14557
14602
  var$2[2] = null;
14558
- var$2[3] = asrrh_MaskedRegister__init_($rt_s(1121), 3, Long_ZERO, Long_fromInt(-256));
14559
- var$2[4] = asrrh_Register__init_($rt_s(1122), 4, Long_ZERO);
14560
- var$2[5] = asrrh_Register__init_($rt_s(1123), 5, Long_ZERO);
14561
- var$2[6] = asrrh_Register__init_($rt_s(1124), 64, Long_ZERO);
14603
+ var$2[3] = asrrh_MaskedRegister__init_($rt_s(1128), 3, Long_ZERO, Long_fromInt(-256));
14604
+ var$2[4] = asrrh_Register__init_($rt_s(1129), 4, Long_ZERO);
14605
+ var$2[5] = asrrh_Register__init_($rt_s(1130), 5, Long_ZERO);
14606
+ var$2[6] = asrrh_Register__init_($rt_s(1131), 64, Long_ZERO);
14562
14607
  var$2[7] = asrrh_Register__init_($rt_s(680), 65, Long_ZERO);
14563
- var$2[8] = asrrh_Register__init_($rt_s(1125), 66, Long_ZERO);
14564
- var$2[9] = asrrh_Register__init_($rt_s(1126), 67, Long_ZERO);
14565
- var$2[10] = asrrh_Register__init_($rt_s(1127), 68, Long_ZERO);
14566
- var$2[11] = asrrh_ReadOnlyRegister__init_($rt_s(1128), 3072, 0);
14567
- var$2[12] = asrrh_ReadOnlyRegister__init_($rt_s(1129), 3073, 0);
14568
- var$2[13] = asrrh_ReadOnlyRegister__init_($rt_s(1130), 3074, 0);
14608
+ var$2[8] = asrrh_Register__init_($rt_s(1132), 66, Long_ZERO);
14609
+ var$2[9] = asrrh_Register__init_($rt_s(1133), 67, Long_ZERO);
14610
+ var$2[10] = asrrh_Register__init_($rt_s(1134), 68, Long_ZERO);
14611
+ var$2[11] = asrrh_ReadOnlyRegister__init_($rt_s(1135), 3072, 0);
14612
+ var$2[12] = asrrh_ReadOnlyRegister__init_($rt_s(1136), 3073, 0);
14613
+ var$2[13] = asrrh_ReadOnlyRegister__init_($rt_s(1137), 3074, 0);
14569
14614
  var$2[14] = null;
14570
14615
  var$2[15] = null;
14571
14616
  var$2[16] = null;
14572
14617
  var$2[1] = asrrh_LinkedRegister__init_($rt_s(446), 1, var$2[3], Long_fromInt(31));
14573
14618
  var$2[2] = asrrh_LinkedRegister__init_($rt_s(447), 2, var$2[3], Long_fromInt(224));
14574
- var$2[14] = asrrh_LinkedRegister__init_($rt_s(1131), 3200, var$2[11], Long_create(0, 4294967295));
14575
- var$2[15] = asrrh_LinkedRegister__init_($rt_s(1132), 3201, var$2[12], Long_create(0, 4294967295));
14576
- var$2[16] = asrrh_LinkedRegister__init_($rt_s(1133), 3202, var$2[13], Long_create(0, 4294967295));
14619
+ var$2[14] = asrrh_LinkedRegister__init_($rt_s(1138), 3200, var$2[11], Long_create(0, 4294967295));
14620
+ var$2[15] = asrrh_LinkedRegister__init_($rt_s(1139), 3201, var$2[12], Long_create(0, 4294967295));
14621
+ var$2[16] = asrrh_LinkedRegister__init_($rt_s(1140), 3202, var$2[13], Long_create(0, 4294967295));
14577
14622
  asrrh_ControlAndStatusRegisterFile_instance = asrrh_RegisterBlock__init_0(95, $tmp_0);
14578
14623
  };
14579
14624
  var asrrh_InterruptController = $rt_classWithoutFields();
@@ -14679,7 +14724,7 @@ var asrrh_InterruptController_claimExternal = () => {
14679
14724
  a: {
14680
14725
  try {
14681
14726
  if (!asrrh_InterruptController_$assertionsDisabled && !asrrh_InterruptController_externalPending)
14682
- $rt_throw(jl_AssertionError__init_($rt_s(1134)));
14727
+ $rt_throw(jl_AssertionError__init_($rt_s(1141)));
14683
14728
  asrrh_InterruptController_externalPending = 0;
14684
14729
  var$2 = asrrh_InterruptController_externalValue;
14685
14730
  jl_Object_monitorExitSync(var$1);
@@ -14700,7 +14745,7 @@ var asrrh_InterruptController_claimTimer = () => {
14700
14745
  a: {
14701
14746
  try {
14702
14747
  if (!asrrh_InterruptController_$assertionsDisabled && !asrrh_InterruptController_timerPending)
14703
- $rt_throw(jl_AssertionError__init_($rt_s(1135)));
14748
+ $rt_throw(jl_AssertionError__init_($rt_s(1142)));
14704
14749
  asrrh_InterruptController_timerPending = 0;
14705
14750
  var$2 = asrrh_InterruptController_timerValue;
14706
14751
  jl_Object_monitorExitSync(var$1);
@@ -14722,9 +14767,9 @@ var asrrh_InterruptController_claimTrap = () => {
14722
14767
  try {
14723
14768
  var$2 = asrrh_InterruptController_$assertionsDisabled;
14724
14769
  if (!var$2 && !asrrh_InterruptController_trapPending)
14725
- $rt_throw(jl_AssertionError__init_($rt_s(1136)));
14770
+ $rt_throw(jl_AssertionError__init_($rt_s(1143)));
14726
14771
  if (!var$2 && asrrh_InterruptController_trapPC != (asrrh_RegisterFile_getProgramCounter() - 4 | 0))
14727
- $rt_throw(jl_AssertionError__init_($rt_s(1137)));
14772
+ $rt_throw(jl_AssertionError__init_($rt_s(1144)));
14728
14773
  asrrh_InterruptController_trapPending = 0;
14729
14774
  var$3 = asrrh_InterruptController_trapSE;
14730
14775
  jl_Object_monitorExitSync(var$1);
@@ -14782,52 +14827,6 @@ var jlr_Array_newInstanceImpl = (var$1, var$2) => {
14782
14827
  }
14783
14828
  return $rt_createArray(var$1, var$2);
14784
14829
  };
14785
- var asrs_Simulator$Reason = $rt_classWithoutFields(jl_Enum);
14786
- var asrs_Simulator$Reason_BREAKPOINT = null;
14787
- var asrs_Simulator$Reason_EXCEPTION = null;
14788
- var asrs_Simulator$Reason_MAX_STEPS = null;
14789
- var asrs_Simulator$Reason_NORMAL_TERMINATION = null;
14790
- var asrs_Simulator$Reason_CLIFF_TERMINATION = null;
14791
- var asrs_Simulator$Reason_PAUSE = null;
14792
- var asrs_Simulator$Reason_STOP = null;
14793
- var asrs_Simulator$Reason_$VALUES = null;
14794
- var asrs_Simulator$Reason_values = () => {
14795
- return asrs_Simulator$Reason_$VALUES.$clone0();
14796
- };
14797
- var asrs_Simulator$Reason__clinit_ = () => {
14798
- let var$1, var$2, var$3;
14799
- var$1 = new asrs_Simulator$Reason();
14800
- jl_Enum__init_(var$1, $rt_s(1138), 0);
14801
- asrs_Simulator$Reason_BREAKPOINT = var$1;
14802
- var$1 = new asrs_Simulator$Reason();
14803
- jl_Enum__init_(var$1, $rt_s(1139), 1);
14804
- asrs_Simulator$Reason_EXCEPTION = var$1;
14805
- var$1 = new asrs_Simulator$Reason();
14806
- jl_Enum__init_(var$1, $rt_s(1140), 2);
14807
- asrs_Simulator$Reason_MAX_STEPS = var$1;
14808
- var$1 = new asrs_Simulator$Reason();
14809
- jl_Enum__init_(var$1, $rt_s(1141), 3);
14810
- asrs_Simulator$Reason_NORMAL_TERMINATION = var$1;
14811
- var$1 = new asrs_Simulator$Reason();
14812
- jl_Enum__init_(var$1, $rt_s(1142), 4);
14813
- asrs_Simulator$Reason_CLIFF_TERMINATION = var$1;
14814
- var$1 = new asrs_Simulator$Reason();
14815
- jl_Enum__init_(var$1, $rt_s(1143), 5);
14816
- asrs_Simulator$Reason_PAUSE = var$1;
14817
- var$1 = new asrs_Simulator$Reason();
14818
- jl_Enum__init_(var$1, $rt_s(1144), 6);
14819
- asrs_Simulator$Reason_STOP = var$1;
14820
- var$2 = $rt_createArray(asrs_Simulator$Reason, 7);
14821
- var$3 = var$2.data;
14822
- var$3[0] = asrs_Simulator$Reason_BREAKPOINT;
14823
- var$3[1] = asrs_Simulator$Reason_EXCEPTION;
14824
- var$3[2] = asrs_Simulator$Reason_MAX_STEPS;
14825
- var$3[3] = asrs_Simulator$Reason_NORMAL_TERMINATION;
14826
- var$3[4] = asrs_Simulator$Reason_CLIFF_TERMINATION;
14827
- var$3[5] = asrs_Simulator$Reason_PAUSE;
14828
- var$3[6] = var$1;
14829
- asrs_Simulator$Reason_$VALUES = var$2;
14830
- };
14831
14830
  function jur_Pattern() {
14832
14831
  let a = this;
14833
14832
  jl_Object.call(a);
@@ -14840,16 +14839,16 @@ function jur_Pattern() {
14840
14839
  a.$consCount = 0;
14841
14840
  a.$start2 = null;
14842
14841
  }
14843
- var jur_Pattern_matcher = ($this, $input) => {
14842
+ var jur_Pattern_matcher = ($this, var$1) => {
14844
14843
  let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
14845
14844
  var$2 = new jur_Matcher();
14846
14845
  var$2.$leftBound0 = -1;
14847
14846
  var$2.$rightBound0 = -1;
14848
14847
  var$2.$pat = $this;
14849
14848
  var$2.$start6 = $this.$start2;
14850
- var$2.$string1 = $input;
14849
+ var$2.$string1 = var$1;
14851
14850
  var$2.$leftBound0 = 0;
14852
- var$3 = $input.$nativeString.length;
14851
+ var$3 = var$1.$nativeString.length;
14853
14852
  var$2.$rightBound0 = var$3;
14854
14853
  var$4 = new jur_MatchResultImpl();
14855
14854
  var$5 = var$2.$leftBound0;
@@ -14866,7 +14865,7 @@ var jur_Pattern_matcher = ($this, $input) => {
14866
14865
  if (var$7 > 0)
14867
14866
  var$4.$compQuantCounters = $rt_createIntArray(var$7);
14868
14867
  ju_Arrays_fill(var$4.$groupBounds, -1);
14869
- jur_MatchResultImpl_reset(var$4, $input, var$5, var$3);
14868
+ jur_MatchResultImpl_reset(var$4, var$1, var$5, var$3);
14870
14869
  var$2.$matchResult = var$4;
14871
14870
  var$4.$anchoringBounds = 1;
14872
14871
  return var$2;
@@ -24639,10 +24638,10 @@ var asrs_Simulator$SimThread_handleTrap = ($this, $se, $pc) => {
24639
24638
  if (!$utvec && $se.$cause < 0)
24640
24639
  $rt_throw(jl_AssertionError__init_($rt_s(1514)));
24641
24640
  a: {
24642
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1125), Long_fromInt($se.$cause));
24641
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1132), Long_fromInt($se.$cause));
24643
24642
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(680), Long_fromInt($pc));
24644
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1126), Long_fromInt($se.$value5));
24645
- $base = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1123)) & -4;
24643
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1133), Long_fromInt($se.$value5));
24644
+ $base = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1130)) & -4;
24646
24645
  $exceptionHandler = null;
24647
24646
  if (!(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(679)) & 1))
24648
24647
  var$6 = $exceptionHandler;
@@ -24678,12 +24677,12 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
24678
24677
  if (!$mode && !($cause & -2147483648))
24679
24678
  $rt_throw(jl_AssertionError__init_($rt_s(1515)));
24680
24679
  $code = $cause & 2147483647;
24681
- if (!$mode && !(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(679)) & 1 && asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1122)) & 1 << $code))
24680
+ if (!$mode && !(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(679)) & 1 && asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1129)) & 1 << $code))
24682
24681
  $rt_throw(jl_AssertionError__init_($rt_s(1516)));
24683
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1125), Long_fromInt($cause));
24682
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1132), Long_fromInt($cause));
24684
24683
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(680), Long_fromInt($pc));
24685
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1126), Long_fromInt($value));
24686
- $utvec = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1123));
24684
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1133), Long_fromInt($value));
24685
+ $utvec = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1130));
24687
24686
  $base = $utvec & -4;
24688
24687
  if (($utvec & 3) == 2)
24689
24688
  $base = $base + (4 * $code | 0) | 0;
@@ -24763,8 +24762,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
24763
24762
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
24764
24763
  return;
24765
24764
  }
24766
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
24767
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
24765
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
24766
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
24768
24767
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
24769
24768
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
24770
24769
  $se = asrrh_InterruptController_lock;
@@ -24955,8 +24954,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
24955
24954
  jl_Object_monitorExit($se);
24956
24955
  $rt_throw($instruction);
24957
24956
  }
24958
- if (Long_ne($cycle, asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127))))
24959
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1127), $cycle);
24957
+ if (Long_ne($cycle, asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134))))
24958
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1134), $cycle);
24960
24959
  var$14 = $this.$maxSteps;
24961
24960
  if (var$14 > 0) {
24962
24961
  $steps = $steps + 1 | 0;
@@ -25077,12 +25076,12 @@ var asrs_Simulator$SimThread_run = ($this) => {
25077
25076
  $waiting = 1;
25078
25077
  }
25079
25078
  v: {
25080
- $cycle = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1128));
25081
- $instret = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1130));
25079
+ $cycle = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1135));
25080
+ $instret = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1137));
25082
25081
  $time = jl_System_currentTimeMillis();
25083
- asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1128), Long_add($cycle, Long_fromInt(1)));
25084
- asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1130), Long_add($instret, Long_fromInt(1)));
25085
- asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1129), $time);
25082
+ asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1135), Long_add($cycle, Long_fromInt(1)));
25083
+ asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1137), Long_add($instret, Long_fromInt(1)));
25084
+ asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1136), $time);
25086
25085
  if (!$ebreak) {
25087
25086
  var$1 = $this.$breakPoints;
25088
25087
  if (var$1 === null)
@@ -25105,8 +25104,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
25105
25104
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
25106
25105
  return;
25107
25106
  }
25108
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
25109
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
25107
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
25108
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
25110
25109
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
25111
25110
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
25112
25111
  $se = asrrh_InterruptController_lock;
@@ -25142,8 +25141,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
25142
25141
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
25143
25142
  return;
25144
25143
  }
25145
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
25146
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
25144
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
25145
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
25147
25146
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
25148
25147
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
25149
25148
  $se = asrrh_InterruptController_lock;
@@ -25181,8 +25180,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
25181
25180
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
25182
25181
  return;
25183
25182
  }
25184
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
25185
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
25183
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
25184
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
25186
25185
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
25187
25186
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
25188
25187
  $se = asrrh_InterruptController_lock;
@@ -32075,6 +32074,114 @@ var asrjt_Float32__clinit_ = () => {
32075
32074
  asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
32076
32075
  asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
32077
32076
  };
32077
+ var asrjo_Conversions = $rt_classWithoutFields();
32078
+ var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
32079
+ let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
32080
+ if ($f.$isNaN()) {
32081
+ $f = $env.$flags;
32082
+ $min = asrj_Flags_invalid;
32083
+ ju_GenericEnumSet_add($f, $min);
32084
+ return $max;
32085
+ }
32086
+ if ($f.$isInfinite()) {
32087
+ $env = $env.$flags;
32088
+ $copy = asrj_Flags_invalid;
32089
+ ju_GenericEnumSet_add($env, $copy);
32090
+ if ($f.$isSignMinus())
32091
+ $max = $min;
32092
+ return $max;
32093
+ }
32094
+ $copy = asrj_Environment__init_();
32095
+ $copy.$mode = $env.$mode;
32096
+ if ($f.$isZero())
32097
+ $rounded = jm_BigInteger_ZERO;
32098
+ else {
32099
+ $f = $f.$toExactFloat();
32100
+ if (asrji_ExactFloat_isZero($f))
32101
+ $rounded = jm_BigInteger_ZERO;
32102
+ else {
32103
+ if (asrji_ExactFloat_isZero($f))
32104
+ $rounded = $f;
32105
+ else {
32106
+ $rounded = asrji_ExactFloat_normalize($f);
32107
+ var$8 = $rounded.$exponent0;
32108
+ if (var$8 < 0) {
32109
+ var$8 = -var$8 | 0;
32110
+ var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
32111
+ var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
32112
+ var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
32113
+ var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
32114
+ var$12 = $env.$mode;
32115
+ if (var$12 === asrj_RoundingMode_zero)
32116
+ $rounded = var$9;
32117
+ else {
32118
+ var$13 = asrj_RoundingMode_max;
32119
+ if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
32120
+ $rounded = jm_BigInteger_ONE;
32121
+ var$8 = var$8 - 1 | 0;
32122
+ $rounded = !jm_BigInteger_equals(var$10, jm_BigInteger_shiftLeft($rounded, var$8)) ? jm_BigInteger_compareTo(var$10, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, var$8)) <= 0 ? var$9 : var$11 : $env.$mode !== asrj_RoundingMode_away && !jm_BigInteger_testBit(var$9.$significand, 0) ? var$9 : var$11;
32123
+ } else
32124
+ $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
32125
+ }
32126
+ }
32127
+ }
32128
+ $rounded = asrji_ExactFloat_normalize($rounded);
32129
+ if (asrji_ExactFloat_compareTo($rounded, $f)) {
32130
+ var$9 = $env.$flags;
32131
+ var$10 = asrj_Flags_inexact;
32132
+ ju_GenericEnumSet_add(var$9, var$10);
32133
+ }
32134
+ if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
32135
+ $rt_throw(jl_AssertionError__init_($rt_s(1636)));
32136
+ $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
32137
+ }
32138
+ }
32139
+ if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
32140
+ $f = $env.$flags;
32141
+ $env = asrj_Flags_invalid;
32142
+ ju_GenericEnumSet_add($f, $env);
32143
+ } else if (!$quiet) {
32144
+ $f = $copy.$flags;
32145
+ $copy = asrj_Flags_inexact;
32146
+ if (ju_GenericEnumSet_contains($f, $copy)) {
32147
+ $f = $env.$flags;
32148
+ $env = asrj_Flags_inexact;
32149
+ ju_GenericEnumSet_add($f, $env);
32150
+ }
32151
+ }
32152
+ if (jm_BigInteger_compareTo($rounded, $max) == -1)
32153
+ $max = $rounded;
32154
+ if (jm_BigInteger_compareTo($max, $min) == 1)
32155
+ $min = $max;
32156
+ return $min;
32157
+ };
32158
+ var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
32159
+ return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
32160
+ };
32161
+ var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
32162
+ return Long_lo(Long_and(jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 0)), jm_BigInteger_ZERO, $env, $quiet)), Long_create(4294967295, 0)));
32163
+ };
32164
+ var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
32165
+ return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
32166
+ };
32167
+ var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
32168
+ return jm_BigInteger_longValue(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_add(jm_BigInteger_valueOf(Long_fromInt(-1)), jm_BigInteger_shiftLeft(jm_BigInteger_ONE, 64)), jm_BigInteger_ZERO, $env, $quiet));
32169
+ };
32170
+ var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32171
+ let var$4;
32172
+ if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
32173
+ return $helper.$Zero();
32174
+ var$4 = new asrji_ExactFloat();
32175
+ if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
32176
+ var$4.$sign = 0;
32177
+ else {
32178
+ var$4.$sign = 1;
32179
+ $i = jm_BigInteger_negate($i);
32180
+ }
32181
+ var$4.$exponent0 = 0;
32182
+ var$4.$significand = $i;
32183
+ return $helper.$fromExactFloat(var$4, $env);
32184
+ };
32078
32185
  function asrjt_Float64() {
32079
32186
  asrjt_Floating.call(this);
32080
32187
  this.$bits1 = Long_ZERO;
@@ -32291,113 +32398,107 @@ var asrjt_Float64__clinit_ = () => {
32291
32398
  asrjt_Float64_Infinity = asrjt_Float64__init_(Long_create(0, 2146435072));
32292
32399
  asrjt_Float64_NegativeInfinity = asrjt_Float64__init_(Long_create(0, 4293918720));
32293
32400
  };
32294
- var asrjo_Conversions = $rt_classWithoutFields();
32295
- var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
32296
- let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
32297
- if ($f.$isNaN()) {
32298
- $f = $env.$flags;
32299
- $min = asrj_Flags_invalid;
32300
- ju_GenericEnumSet_add($f, $min);
32301
- return $max;
32401
+ var asrjo_Comparisons = $rt_classWithoutFields();
32402
+ var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
32403
+ if ($a.$isZero()) {
32404
+ if ($b.$isZero())
32405
+ return 0;
32406
+ return !$b.$isSignMinus() ? -1 : 1;
32302
32407
  }
32303
- if ($f.$isInfinite()) {
32304
- $env = $env.$flags;
32305
- $copy = asrj_Flags_invalid;
32306
- ju_GenericEnumSet_add($env, $copy);
32307
- if ($f.$isSignMinus())
32308
- $max = $min;
32309
- return $max;
32408
+ if ($b.$isZero())
32409
+ return !$a.$isSignMinus() ? 1 : -1;
32410
+ if (!$a.$isInfinite()) {
32411
+ if (!$b.$isInfinite())
32412
+ return asrji_ExactFloat_compareTo($a.$toExactFloat(), $b.$toExactFloat());
32413
+ return !$b.$isSignMinus() ? -1 : 1;
32310
32414
  }
32311
- $copy = asrj_Environment__init_();
32312
- $copy.$mode = $env.$mode;
32313
- if ($f.$isZero())
32314
- $rounded = jm_BigInteger_ZERO;
32315
- else {
32316
- $f = $f.$toExactFloat();
32317
- if (asrji_ExactFloat_isZero($f))
32318
- $rounded = jm_BigInteger_ZERO;
32319
- else {
32320
- if (asrji_ExactFloat_isZero($f))
32321
- $rounded = $f;
32322
- else {
32323
- $rounded = asrji_ExactFloat_normalize($f);
32324
- var$8 = $rounded.$exponent0;
32325
- if (var$8 < 0) {
32326
- var$8 = -var$8 | 0;
32327
- var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
32328
- var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
32329
- var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
32330
- var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
32331
- var$12 = $env.$mode;
32332
- if (var$12 === asrj_RoundingMode_zero)
32333
- $rounded = var$9;
32334
- else {
32335
- var$13 = asrj_RoundingMode_max;
32336
- if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
32337
- $rounded = jm_BigInteger_ONE;
32338
- var$8 = var$8 - 1 | 0;
32339
- $rounded = !jm_BigInteger_equals(var$10, jm_BigInteger_shiftLeft($rounded, var$8)) ? jm_BigInteger_compareTo(var$10, jm_BigInteger_shiftLeft(jm_BigInteger_ONE, var$8)) <= 0 ? var$9 : var$11 : $env.$mode !== asrj_RoundingMode_away && !jm_BigInteger_testBit(var$9.$significand, 0) ? var$9 : var$11;
32340
- } else
32341
- $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
32342
- }
32343
- }
32344
- }
32345
- $rounded = asrji_ExactFloat_normalize($rounded);
32346
- if (asrji_ExactFloat_compareTo($rounded, $f)) {
32347
- var$9 = $env.$flags;
32348
- var$10 = asrj_Flags_inexact;
32349
- ju_GenericEnumSet_add(var$9, var$10);
32350
- }
32351
- if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
32352
- $rt_throw(jl_AssertionError__init_($rt_s(1636)));
32353
- $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
32354
- }
32415
+ if ($b.$isInfinite() && $a.$isSignMinus() == $b.$isSignMinus())
32416
+ return 0;
32417
+ return !$a.$isSignMinus() ? -1 : 1;
32418
+ };
32419
+ var asrjo_Comparisons_nonNaNmin = ($a, $b) => {
32420
+ if ($a.$isSignMinus() != $b.$isSignMinus()) {
32421
+ if ($a.$isSignMinus())
32422
+ $b = $a;
32423
+ return $b;
32355
32424
  }
32356
- if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
32357
- $f = $env.$flags;
32425
+ if (!$a.$isInfinite() && !$b.$isInfinite()) {
32426
+ if (asrjo_Comparisons_compareNoNAN($a, $b) > 0)
32427
+ return $b;
32428
+ return $a;
32429
+ }
32430
+ if ($a.$isInfinite() != $a.$isSignMinus())
32431
+ return $b;
32432
+ return $a;
32433
+ };
32434
+ var asrjo_Comparisons_handleNaNNumber = ($a, $b, $env) => {
32435
+ let var$4;
32436
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32437
+ var$4 = $env.$flags;
32358
32438
  $env = asrj_Flags_invalid;
32359
- ju_GenericEnumSet_add($f, $env);
32360
- } else if (!$quiet) {
32361
- $f = $copy.$flags;
32362
- $copy = asrj_Flags_inexact;
32363
- if (ju_GenericEnumSet_contains($f, $copy)) {
32364
- $f = $env.$flags;
32365
- $env = asrj_Flags_inexact;
32366
- ju_GenericEnumSet_add($f, $env);
32367
- }
32439
+ ju_GenericEnumSet_add(var$4, $env);
32368
32440
  }
32369
- if (jm_BigInteger_compareTo($rounded, $max) == -1)
32370
- $max = $rounded;
32371
- if (jm_BigInteger_compareTo($max, $min) == 1)
32372
- $min = $max;
32373
- return $min;
32441
+ if ($a.$isNaN()) {
32442
+ if ($b.$isNaN())
32443
+ $b = $b.$NaN();
32444
+ } else
32445
+ $b = !$b.$isNaN() ? null : $a;
32446
+ return $b;
32374
32447
  };
32375
- var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
32376
- return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
32448
+ var asrjo_Comparisons_minimumNumber = ($a, $b, $env) => {
32449
+ let $tmp_0;
32450
+ $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32451
+ if ($tmp_0 !== null)
32452
+ return $tmp_0;
32453
+ return asrjo_Comparisons_nonNaNmin($a, $b);
32377
32454
  };
32378
- var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
32379
- return Long_lo(Long_and(jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 0)), jm_BigInteger_ZERO, $env, $quiet)), Long_create(4294967295, 0)));
32455
+ var asrjo_Comparisons_maximumNumber = ($a, $b, $env) => {
32456
+ let $tmp_0;
32457
+ $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32458
+ if ($tmp_0 !== null)
32459
+ return $tmp_0;
32460
+ if ($a === asrjo_Comparisons_nonNaNmin($a, $b))
32461
+ $a = $b;
32462
+ return $a;
32380
32463
  };
32381
- var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
32382
- return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
32464
+ var asrjo_Comparisons_compareQuietEqual = ($a, $b, $env) => {
32465
+ let var$4;
32466
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32467
+ var$4 = $env.$flags;
32468
+ $env = asrj_Flags_invalid;
32469
+ ju_GenericEnumSet_add(var$4, $env);
32470
+ }
32471
+ if (!$a.$isNaN() && !$b.$isNaN())
32472
+ return asrjo_Comparisons_compareNoNAN($a, $b) ? 0 : 1;
32473
+ return 0;
32383
32474
  };
32384
- var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
32385
- return jm_BigInteger_longValue(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_add(jm_BigInteger_valueOf(Long_fromInt(-1)), jm_BigInteger_shiftLeft(jm_BigInteger_ONE, 64)), jm_BigInteger_ZERO, $env, $quiet));
32475
+ var asrjo_Comparisons_compareSignalingLessThan = ($a, $b, $env) => {
32476
+ let var$4, var$5;
32477
+ if (!(!$a.$isNaN() && !$b.$isNaN())) {
32478
+ var$4 = $env.$flags;
32479
+ var$5 = asrj_Flags_invalid;
32480
+ ju_GenericEnumSet_add(var$4, var$5);
32481
+ }
32482
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32483
+ var$5 = $env.$flags;
32484
+ $env = asrj_Flags_invalid;
32485
+ ju_GenericEnumSet_add(var$5, $env);
32486
+ }
32487
+ return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) >= 0 ? 0 : 1 : 0;
32386
32488
  };
32387
- var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32388
- let var$4;
32389
- if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
32390
- return $helper.$Zero();
32391
- var$4 = new asrji_ExactFloat();
32392
- if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
32393
- var$4.$sign = 0;
32394
- else {
32395
- var$4.$sign = 1;
32396
- $i = jm_BigInteger_negate($i);
32489
+ var asrjo_Comparisons_compareSignalingLessThanEqual = ($a, $b, $env) => {
32490
+ let var$4, var$5;
32491
+ if (!(!$a.$isNaN() && !$b.$isNaN())) {
32492
+ var$4 = $env.$flags;
32493
+ var$5 = asrj_Flags_invalid;
32494
+ ju_GenericEnumSet_add(var$4, var$5);
32397
32495
  }
32398
- var$4.$exponent0 = 0;
32399
- var$4.$significand = $i;
32400
- return $helper.$fromExactFloat(var$4, $env);
32496
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32497
+ var$5 = $env.$flags;
32498
+ $env = asrj_Flags_invalid;
32499
+ ju_GenericEnumSet_add(var$5, $env);
32500
+ }
32501
+ return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) > 0 ? 0 : 1 : 0;
32401
32502
  };
32402
32503
  var asrjo_Arithmetic = $rt_classWithoutFields();
32403
32504
  var asrjo_Arithmetic_$assertionsDisabled = 0;
@@ -32634,108 +32735,6 @@ var asrjo_Arithmetic_division = ($a, $b, $env) => {
32634
32735
  var asrjo_Arithmetic__clinit_ = () => {
32635
32736
  asrjo_Arithmetic_$assertionsDisabled = 0;
32636
32737
  };
32637
- var asrjo_Comparisons = $rt_classWithoutFields();
32638
- var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
32639
- if ($a.$isZero()) {
32640
- if ($b.$isZero())
32641
- return 0;
32642
- return !$b.$isSignMinus() ? -1 : 1;
32643
- }
32644
- if ($b.$isZero())
32645
- return !$a.$isSignMinus() ? 1 : -1;
32646
- if (!$a.$isInfinite()) {
32647
- if (!$b.$isInfinite())
32648
- return asrji_ExactFloat_compareTo($a.$toExactFloat(), $b.$toExactFloat());
32649
- return !$b.$isSignMinus() ? -1 : 1;
32650
- }
32651
- if ($b.$isInfinite() && $a.$isSignMinus() == $b.$isSignMinus())
32652
- return 0;
32653
- return !$a.$isSignMinus() ? -1 : 1;
32654
- };
32655
- var asrjo_Comparisons_nonNaNmin = ($a, $b) => {
32656
- if ($a.$isSignMinus() != $b.$isSignMinus()) {
32657
- if ($a.$isSignMinus())
32658
- $b = $a;
32659
- return $b;
32660
- }
32661
- if (!$a.$isInfinite() && !$b.$isInfinite()) {
32662
- if (asrjo_Comparisons_compareNoNAN($a, $b) > 0)
32663
- return $b;
32664
- return $a;
32665
- }
32666
- if ($a.$isInfinite() != $a.$isSignMinus())
32667
- return $b;
32668
- return $a;
32669
- };
32670
- var asrjo_Comparisons_handleNaNNumber = ($a, $b, $env) => {
32671
- let var$4;
32672
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32673
- var$4 = $env.$flags;
32674
- $env = asrj_Flags_invalid;
32675
- ju_GenericEnumSet_add(var$4, $env);
32676
- }
32677
- if ($a.$isNaN()) {
32678
- if ($b.$isNaN())
32679
- $b = $b.$NaN();
32680
- } else
32681
- $b = !$b.$isNaN() ? null : $a;
32682
- return $b;
32683
- };
32684
- var asrjo_Comparisons_minimumNumber = ($a, $b, $env) => {
32685
- let $tmp_0;
32686
- $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32687
- if ($tmp_0 !== null)
32688
- return $tmp_0;
32689
- return asrjo_Comparisons_nonNaNmin($a, $b);
32690
- };
32691
- var asrjo_Comparisons_maximumNumber = ($a, $b, $env) => {
32692
- let $tmp_0;
32693
- $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32694
- if ($tmp_0 !== null)
32695
- return $tmp_0;
32696
- if ($a === asrjo_Comparisons_nonNaNmin($a, $b))
32697
- $a = $b;
32698
- return $a;
32699
- };
32700
- var asrjo_Comparisons_compareQuietEqual = ($a, $b, $env) => {
32701
- let var$4;
32702
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32703
- var$4 = $env.$flags;
32704
- $env = asrj_Flags_invalid;
32705
- ju_GenericEnumSet_add(var$4, $env);
32706
- }
32707
- if (!$a.$isNaN() && !$b.$isNaN())
32708
- return asrjo_Comparisons_compareNoNAN($a, $b) ? 0 : 1;
32709
- return 0;
32710
- };
32711
- var asrjo_Comparisons_compareSignalingLessThan = ($a, $b, $env) => {
32712
- let var$4, var$5;
32713
- if (!(!$a.$isNaN() && !$b.$isNaN())) {
32714
- var$4 = $env.$flags;
32715
- var$5 = asrj_Flags_invalid;
32716
- ju_GenericEnumSet_add(var$4, var$5);
32717
- }
32718
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32719
- var$5 = $env.$flags;
32720
- $env = asrj_Flags_invalid;
32721
- ju_GenericEnumSet_add(var$5, $env);
32722
- }
32723
- return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) >= 0 ? 0 : 1 : 0;
32724
- };
32725
- var asrjo_Comparisons_compareSignalingLessThanEqual = ($a, $b, $env) => {
32726
- let var$4, var$5;
32727
- if (!(!$a.$isNaN() && !$b.$isNaN())) {
32728
- var$4 = $env.$flags;
32729
- var$5 = asrj_Flags_invalid;
32730
- ju_GenericEnumSet_add(var$4, var$5);
32731
- }
32732
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32733
- var$5 = $env.$flags;
32734
- $env = asrj_Flags_invalid;
32735
- ju_GenericEnumSet_add(var$5, $env);
32736
- }
32737
- return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) > 0 ? 0 : 1 : 0;
32738
- };
32739
32738
  function jnci_BufferedEncoder$Controller() {
32740
32739
  let a = this;
32741
32740
  jl_Object.call(a);
@@ -32784,42 +32783,6 @@ var asrj_RoundingMode__clinit_ = () => {
32784
32783
  var$3[4] = var$1;
32785
32784
  asrj_RoundingMode_$VALUES = var$2;
32786
32785
  };
32787
- var asrj_Flags = $rt_classWithoutFields(jl_Enum);
32788
- var asrj_Flags_inexact = null;
32789
- var asrj_Flags_underflow = null;
32790
- var asrj_Flags_overflow = null;
32791
- var asrj_Flags_divByZero = null;
32792
- var asrj_Flags_invalid = null;
32793
- var asrj_Flags_$VALUES = null;
32794
- var asrj_Flags_values = () => {
32795
- return asrj_Flags_$VALUES.$clone0();
32796
- };
32797
- var asrj_Flags__clinit_ = () => {
32798
- let var$1, var$2, var$3;
32799
- var$1 = new asrj_Flags();
32800
- jl_Enum__init_(var$1, $rt_s(1646), 0);
32801
- asrj_Flags_inexact = var$1;
32802
- var$1 = new asrj_Flags();
32803
- jl_Enum__init_(var$1, $rt_s(1647), 1);
32804
- asrj_Flags_underflow = var$1;
32805
- var$1 = new asrj_Flags();
32806
- jl_Enum__init_(var$1, $rt_s(1648), 2);
32807
- asrj_Flags_overflow = var$1;
32808
- var$1 = new asrj_Flags();
32809
- jl_Enum__init_(var$1, $rt_s(1649), 3);
32810
- asrj_Flags_divByZero = var$1;
32811
- var$1 = new asrj_Flags();
32812
- jl_Enum__init_(var$1, $rt_s(210), 4);
32813
- asrj_Flags_invalid = var$1;
32814
- var$2 = $rt_createArray(asrj_Flags, 5);
32815
- var$3 = var$2.data;
32816
- var$3[0] = asrj_Flags_inexact;
32817
- var$3[1] = asrj_Flags_underflow;
32818
- var$3[2] = asrj_Flags_overflow;
32819
- var$3[3] = asrj_Flags_divByZero;
32820
- var$3[4] = var$1;
32821
- asrj_Flags_$VALUES = var$2;
32822
- };
32823
32786
  function asrji_ExactFloat() {
32824
32787
  let a = this;
32825
32788
  jl_Object.call(a);
@@ -32906,6 +32869,42 @@ var asrji_ExactFloat_isZero = ($this) => {
32906
32869
  var asrji_ExactFloat__clinit_ = () => {
32907
32870
  asrji_ExactFloat_$assertionsDisabled = 0;
32908
32871
  };
32872
+ var asrj_Flags = $rt_classWithoutFields(jl_Enum);
32873
+ var asrj_Flags_inexact = null;
32874
+ var asrj_Flags_underflow = null;
32875
+ var asrj_Flags_overflow = null;
32876
+ var asrj_Flags_divByZero = null;
32877
+ var asrj_Flags_invalid = null;
32878
+ var asrj_Flags_$VALUES = null;
32879
+ var asrj_Flags_values = () => {
32880
+ return asrj_Flags_$VALUES.$clone0();
32881
+ };
32882
+ var asrj_Flags__clinit_ = () => {
32883
+ let var$1, var$2, var$3;
32884
+ var$1 = new asrj_Flags();
32885
+ jl_Enum__init_(var$1, $rt_s(1646), 0);
32886
+ asrj_Flags_inexact = var$1;
32887
+ var$1 = new asrj_Flags();
32888
+ jl_Enum__init_(var$1, $rt_s(1647), 1);
32889
+ asrj_Flags_underflow = var$1;
32890
+ var$1 = new asrj_Flags();
32891
+ jl_Enum__init_(var$1, $rt_s(1648), 2);
32892
+ asrj_Flags_overflow = var$1;
32893
+ var$1 = new asrj_Flags();
32894
+ jl_Enum__init_(var$1, $rt_s(1649), 3);
32895
+ asrj_Flags_divByZero = var$1;
32896
+ var$1 = new asrj_Flags();
32897
+ jl_Enum__init_(var$1, $rt_s(210), 4);
32898
+ asrj_Flags_invalid = var$1;
32899
+ var$2 = $rt_createArray(asrj_Flags, 5);
32900
+ var$3 = var$2.data;
32901
+ var$3[0] = asrj_Flags_inexact;
32902
+ var$3[1] = asrj_Flags_underflow;
32903
+ var$3[2] = asrj_Flags_overflow;
32904
+ var$3[3] = asrj_Flags_divByZero;
32905
+ var$3[4] = var$1;
32906
+ asrj_Flags_$VALUES = var$2;
32907
+ };
32909
32908
  var ju_EnumSet = $rt_classWithoutFields(ju_AbstractSet);
32910
32909
  function ju_GenericEnumSet() {
32911
32910
  let a = this;
@@ -34112,6 +34111,23 @@ var asrjt_Float64$1__clinit_ = () => {
34112
34111
  var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34113
34112
  var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34114
34113
  };
34114
+ var asrjt_Float32$1 = $rt_classWithoutFields();
34115
+ var asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = null;
34116
+ var asrjt_Float32$1_$callClinit = () => {
34117
+ asrjt_Float32$1_$callClinit = $rt_eraseClinit(asrjt_Float32$1);
34118
+ asrjt_Float32$1__clinit_();
34119
+ };
34120
+ var asrjt_Float32$1__clinit_ = () => {
34121
+ let var$1, var$2;
34122
+ var$1 = $rt_createIntArray(asrj_RoundingMode_values().data.length);
34123
+ var$2 = var$1.data;
34124
+ asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = var$1;
34125
+ var$2[asrj_RoundingMode_zero.$ordinal0] = 1;
34126
+ var$2[asrj_RoundingMode_min.$ordinal0] = 2;
34127
+ var$2[asrj_RoundingMode_max.$ordinal0] = 3;
34128
+ var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34129
+ var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34130
+ };
34115
34131
  var jm_Multiplication = $rt_classWithoutFields();
34116
34132
  var jm_Multiplication_tenPows = null;
34117
34133
  var jm_Multiplication_fivePows = null;
@@ -34273,23 +34289,6 @@ var jm_Multiplication__clinit_ = () => {
34273
34289
  $i = $i + 1 | 0;
34274
34290
  }
34275
34291
  };
34276
- var asrjt_Float32$1 = $rt_classWithoutFields();
34277
- var asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = null;
34278
- var asrjt_Float32$1_$callClinit = () => {
34279
- asrjt_Float32$1_$callClinit = $rt_eraseClinit(asrjt_Float32$1);
34280
- asrjt_Float32$1__clinit_();
34281
- };
34282
- var asrjt_Float32$1__clinit_ = () => {
34283
- let var$1, var$2;
34284
- var$1 = $rt_createIntArray(asrj_RoundingMode_values().data.length);
34285
- var$2 = var$1.data;
34286
- asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = var$1;
34287
- var$2[asrj_RoundingMode_zero.$ordinal0] = 1;
34288
- var$2[asrj_RoundingMode_min.$ordinal0] = 2;
34289
- var$2[asrj_RoundingMode_max.$ordinal0] = 3;
34290
- var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34291
- var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34292
- };
34293
34292
  var otjc_JSBoolean = $rt_classWithoutFields();
34294
34293
  var otjc_JSArrayReader = $rt_classWithoutFields(0);
34295
34294
  var otjc_JSArray = $rt_classWithoutFields();
@@ -35272,46 +35271,26 @@ $rt_metadata([
35272
35271
  0,
35273
35272
  0,
35274
35273
  0,
35275
- asr_JsCompilationResult,
35276
- "JsCompilationResult",
35277
- 10,
35278
- jl_Object,
35279
- [],
35280
- 0,
35281
- 3,
35282
- 0,
35283
- 0,
35284
- 0,
35285
- asr_AssemblyException,
35274
+ asr_JsRiscV$getTokenizedLines$lambda$_5_0,
35286
35275
  0,
35287
- jl_Exception,
35288
- [],
35276
+ jl_Object,
35277
+ [juf_Function],
35289
35278
  0,
35290
35279
  3,
35291
35280
  0,
35292
35281
  0,
35293
- 0,
35294
- asrrh_RegisterFile,
35282
+ ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
35283
+ asr_JsRiscV$getTokenizedLines$lambda$_5_1,
35295
35284
  0,
35296
35285
  jl_Object,
35297
- [],
35298
- 0,
35299
- 3,
35300
- 0,
35301
- asrrh_RegisterFile_$callClinit,
35302
- 0,
35303
- jm_BigInteger,
35304
- "BigInteger",
35305
- 14,
35306
- jl_Number,
35307
- [jl_Comparable, ji_Serializable],
35286
+ [juf_IntFunction],
35308
35287
  0,
35309
35288
  3,
35310
35289
  0,
35311
35290
  0,
35312
- ["$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString)],
35313
- asr_JsProgramStatement,
35314
- "JsProgramStatement",
35291
+ ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
35292
+ asr_JsRiscVTokenizedLine,
35293
+ "JsRiscVTokenizedLine",
35315
35294
  10,
35316
35295
  jl_Object,
35317
35296
  [],
@@ -35357,36 +35336,55 @@ $rt_metadata([
35357
35336
  0,
35358
35337
  0,
35359
35338
  0,
35360
- asr_JsRiscV$getTokenizedLines$lambda$_5_0,
35361
- 0,
35339
+ asr_JsProgramStatement,
35340
+ "JsProgramStatement",
35341
+ 10,
35362
35342
  jl_Object,
35363
- [juf_Function],
35343
+ [],
35364
35344
  0,
35365
35345
  3,
35366
35346
  0,
35367
35347
  0,
35368
- ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
35369
- asr_JsRiscV$getTokenizedLines$lambda$_5_1,
35348
+ 0,
35349
+ asrrh_RegisterFile,
35370
35350
  0,
35371
35351
  jl_Object,
35372
- [juf_IntFunction],
35352
+ [],
35373
35353
  0,
35374
35354
  3,
35375
35355
  0,
35356
+ asrrh_RegisterFile_$callClinit,
35357
+ 0,
35358
+ juf_ToIntFunction,
35376
35359
  0,
35377
- ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
35378
- asr_JsRiscVTokenizedLine,
35379
- "JsRiscVTokenizedLine",
35380
- 10,
35381
35360
  jl_Object,
35382
35361
  [],
35362
+ 3,
35363
+ 3,
35364
+ 0,
35365
+ 0,
35366
+ 0,
35367
+ asr_JsRiscV$getRegistersValues$lambda$_25_0,
35368
+ 0,
35369
+ jl_Object,
35370
+ [juf_ToIntFunction],
35383
35371
  0,
35384
35372
  3,
35385
35373
  0,
35386
35374
  0,
35387
35375
  0,
35388
- asr_JsStackFrame,
35389
- "JsStackFrame",
35376
+ jm_BigInteger,
35377
+ "BigInteger",
35378
+ 14,
35379
+ jl_Number,
35380
+ [jl_Comparable, ji_Serializable],
35381
+ 0,
35382
+ 3,
35383
+ 0,
35384
+ 0,
35385
+ ["$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString)],
35386
+ asr_JsCompilationResult,
35387
+ "JsCompilationResult",
35390
35388
  10,
35391
35389
  jl_Object,
35392
35390
  [],
@@ -35395,19 +35393,20 @@ $rt_metadata([
35395
35393
  0,
35396
35394
  0,
35397
35395
  0,
35398
- juf_ToIntFunction,
35396
+ asr_AssemblyException,
35399
35397
  0,
35400
- jl_Object,
35398
+ jl_Exception,
35401
35399
  [],
35402
- 3,
35403
- 3,
35404
35400
  0,
35401
+ 3,
35405
35402
  0,
35406
35403
  0,
35407
- asr_JsRiscV$getRegistersValues$lambda$_25_0,
35408
35404
  0,
35405
+ asr_JsStackFrame,
35406
+ "JsStackFrame",
35407
+ 10,
35409
35408
  jl_Object,
35410
- [juf_ToIntFunction],
35409
+ [],
35411
35410
  0,
35412
35411
  3,
35413
35412
  0,
@@ -35506,91 +35505,91 @@ $rt_metadata([
35506
35505
  0,
35507
35506
  0,
35508
35507
  0,
35509
- asr_JsCompilationResult$_init_$lambda$_0_0,
35508
+ asrs_BackStepper,
35510
35509
  0,
35511
35510
  jl_Object,
35512
- [juf_Function],
35511
+ [],
35513
35512
  0,
35514
35513
  3,
35515
35514
  0,
35516
35515
  0,
35517
- ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35518
- juf_Supplier,
35516
+ 0,
35517
+ asrs_BackStepper$BackstepStack,
35519
35518
  0,
35520
35519
  jl_Object,
35521
35520
  [],
35522
- 3,
35521
+ 0,
35523
35522
  3,
35524
35523
  0,
35525
35524
  0,
35526
35525
  0,
35527
- asr_JsCompilationResult$_init_$lambda$_0_1,
35526
+ jl_AutoCloseable,
35528
35527
  0,
35529
35528
  jl_Object,
35530
- [juf_Supplier],
35531
- 0,
35529
+ [],
35530
+ 3,
35532
35531
  3,
35533
35532
  0,
35534
35533
  0,
35535
35534
  0
35536
35535
  ]);
35537
35536
  $rt_metadata([
35538
- juf_BiConsumer,
35537
+ jus_BaseStream,
35539
35538
  0,
35540
35539
  jl_Object,
35541
- [],
35540
+ [jl_AutoCloseable],
35542
35541
  3,
35543
35542
  3,
35544
35543
  0,
35545
35544
  0,
35546
35545
  0,
35547
- asr_JsCompilationResult$_init_$lambda$_0_2,
35546
+ jus_Stream,
35548
35547
  0,
35549
35548
  jl_Object,
35550
- [juf_BiConsumer],
35551
- 0,
35549
+ [jus_BaseStream],
35550
+ 3,
35552
35551
  3,
35553
35552
  0,
35554
35553
  0,
35555
35554
  0,
35556
- asr_JsCompilationResult$_init_$lambda$_0_3,
35555
+ jusi_SimpleStreamImpl,
35557
35556
  0,
35558
35557
  jl_Object,
35559
- [juf_BiConsumer],
35560
- 0,
35558
+ [jus_Stream],
35559
+ 1,
35561
35560
  3,
35562
35561
  0,
35563
35562
  0,
35564
35563
  0,
35565
- asrrh_Register,
35566
- "Register",
35567
- 7,
35568
- ju_Observable,
35564
+ jusi_ArrayStreamImpl,
35565
+ 0,
35566
+ jusi_SimpleStreamImpl,
35569
35567
  [],
35570
35568
  0,
35571
35569
  3,
35572
35570
  0,
35573
35571
  0,
35574
- ["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
35575
- asrs_BackStepper,
35576
- 0,
35577
- jl_Object,
35572
+ ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35573
+ asrrh_Register,
35574
+ "Register",
35575
+ 7,
35576
+ ju_Observable,
35578
35577
  [],
35579
35578
  0,
35580
35579
  3,
35581
35580
  0,
35582
35581
  0,
35583
- 0,
35584
- asrs_BackStepper$BackstepStack,
35582
+ ["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
35583
+ asr_JsCompilationResult$_init_$lambda$_0_0,
35585
35584
  0,
35586
35585
  jl_Object,
35587
- [],
35586
+ [juf_Function],
35588
35587
  0,
35589
35588
  3,
35590
35589
  0,
35591
35590
  0,
35592
- 0,
35593
- jl_AutoCloseable,
35591
+ ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35592
+ juf_Supplier,
35594
35593
  0,
35595
35594
  jl_Object,
35596
35595
  [],
@@ -35599,42 +35598,42 @@ $rt_metadata([
35599
35598
  0,
35600
35599
  0,
35601
35600
  0,
35602
- jus_BaseStream,
35601
+ asr_JsCompilationResult$_init_$lambda$_0_1,
35603
35602
  0,
35604
35603
  jl_Object,
35605
- [jl_AutoCloseable],
35606
- 3,
35604
+ [juf_Supplier],
35605
+ 0,
35607
35606
  3,
35608
35607
  0,
35609
35608
  0,
35610
35609
  0,
35611
- jus_Stream,
35610
+ juf_BiConsumer,
35612
35611
  0,
35613
35612
  jl_Object,
35614
- [jus_BaseStream],
35613
+ [],
35615
35614
  3,
35616
35615
  3,
35617
35616
  0,
35618
35617
  0,
35619
35618
  0,
35620
- jusi_SimpleStreamImpl,
35619
+ asr_JsCompilationResult$_init_$lambda$_0_2,
35621
35620
  0,
35622
35621
  jl_Object,
35623
- [jus_Stream],
35624
- 1,
35622
+ [juf_BiConsumer],
35623
+ 0,
35625
35624
  3,
35626
35625
  0,
35627
35626
  0,
35628
35627
  0,
35629
- jusi_ArrayStreamImpl,
35628
+ asr_JsCompilationResult$_init_$lambda$_0_3,
35630
35629
  0,
35631
- jusi_SimpleStreamImpl,
35632
- [],
35630
+ jl_Object,
35631
+ [juf_BiConsumer],
35633
35632
  0,
35634
35633
  3,
35635
35634
  0,
35636
35635
  0,
35637
- ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35636
+ 0,
35638
35637
  jl_Math,
35639
35638
  0,
35640
35639
  jl_Object,
@@ -37176,7 +37175,7 @@ $rt_metadata([
37176
37175
  0,
37177
37176
  0,
37178
37177
  0,
37179
- asr_ErrorList,
37178
+ asrrh_RegisterBlock,
37180
37179
  0,
37181
37180
  jl_Object,
37182
37181
  [],
@@ -37185,7 +37184,7 @@ $rt_metadata([
37185
37184
  0,
37186
37185
  0,
37187
37186
  0,
37188
- asrrh_RegisterBlock,
37187
+ asr_ErrorList,
37189
37188
  0,
37190
37189
  jl_Object,
37191
37190
  [],
@@ -37839,15 +37838,6 @@ $rt_metadata([
37839
37838
  0,
37840
37839
  0,
37841
37840
  ["$next1", $rt_wrapFunction1(jusi_StreamOverSpliterator_next), "$estimateSize", $rt_wrapFunction0(jusi_StreamOverSpliterator_estimateSize)],
37842
- jm_Conversion,
37843
- 0,
37844
- jl_Object,
37845
- [],
37846
- 0,
37847
- 0,
37848
- 0,
37849
- 0,
37850
- 0,
37851
37841
  jusi_WrappingStreamImpl,
37852
37842
  0,
37853
37843
  jusi_SimpleStreamImpl,
@@ -37893,6 +37883,15 @@ $rt_metadata([
37893
37883
  0,
37894
37884
  0,
37895
37885
  0,
37886
+ jm_Conversion,
37887
+ 0,
37888
+ jl_Object,
37889
+ [],
37890
+ 0,
37891
+ 0,
37892
+ 0,
37893
+ 0,
37894
+ 0,
37896
37895
  asru_Binary,
37897
37896
  0,
37898
37897
  jl_Object,
@@ -37911,6 +37910,16 @@ $rt_metadata([
37911
37910
  0,
37912
37911
  0,
37913
37912
  ["$hasNext", $rt_wrapFunction0(ju_AbstractList$1_hasNext), "$next", $rt_wrapFunction0(ju_AbstractList$1_next)],
37913
+ asrs_Simulator$Reason,
37914
+ "Simulator$Reason",
37915
+ 3,
37916
+ jl_Enum,
37917
+ [],
37918
+ 12,
37919
+ 3,
37920
+ 0,
37921
+ 0,
37922
+ 0,
37914
37923
  asrrh_FloatingPointRegisterFile,
37915
37924
  0,
37916
37925
  jl_Object,
@@ -37956,16 +37965,6 @@ $rt_metadata([
37956
37965
  0,
37957
37966
  0,
37958
37967
  0,
37959
- asrs_Simulator$Reason,
37960
- "Simulator$Reason",
37961
- 3,
37962
- jl_Enum,
37963
- [],
37964
- 12,
37965
- 3,
37966
- 0,
37967
- 0,
37968
- 0,
37969
37968
  jur_Pattern,
37970
37969
  0,
37971
37970
  jl_Object,
@@ -41011,6 +41010,15 @@ $rt_metadata([
41011
41010
  "$NaN",
41012
41011
  $rt_wrapFunction0(asrjt_Float32_NaN0)
41013
41012
  ],
41013
+ asrjo_Conversions,
41014
+ 0,
41015
+ jl_Object,
41016
+ [],
41017
+ 0,
41018
+ 3,
41019
+ 0,
41020
+ 0,
41021
+ 0,
41014
41022
  asrjt_Float64,
41015
41023
  0,
41016
41024
  asrjt_Floating,
@@ -41053,7 +41061,7 @@ $rt_metadata([
41053
41061
  "$NaN",
41054
41062
  $rt_wrapFunction0(asrjt_Float64_NaN0)
41055
41063
  ],
41056
- asrjo_Conversions,
41064
+ asrjo_Comparisons,
41057
41065
  0,
41058
41066
  jl_Object,
41059
41067
  [],
@@ -41071,15 +41079,6 @@ $rt_metadata([
41071
41079
  0,
41072
41080
  0,
41073
41081
  0,
41074
- asrjo_Comparisons,
41075
- 0,
41076
- jl_Object,
41077
- [],
41078
- 0,
41079
- 3,
41080
- 0,
41081
- 0,
41082
- 0,
41083
41082
  jnci_BufferedEncoder$Controller,
41084
41083
  0,
41085
41084
  jl_Object,
@@ -41108,6 +41107,15 @@ $rt_metadata([
41108
41107
  0,
41109
41108
  0,
41110
41109
  0,
41110
+ asrji_ExactFloat,
41111
+ 0,
41112
+ jl_Object,
41113
+ [jl_Comparable],
41114
+ 0,
41115
+ 3,
41116
+ 0,
41117
+ 0,
41118
+ 0,
41111
41119
  asrj_Flags,
41112
41120
  "Flags",
41113
41121
  9,
@@ -41118,15 +41126,6 @@ $rt_metadata([
41118
41126
  0,
41119
41127
  0,
41120
41128
  0,
41121
- asrji_ExactFloat,
41122
- 0,
41123
- jl_Object,
41124
- [jl_Comparable],
41125
- 0,
41126
- 3,
41127
- 0,
41128
- 0,
41129
- 0,
41130
41129
  ju_EnumSet,
41131
41130
  0,
41132
41131
  ju_AbstractSet,
@@ -41318,25 +41317,25 @@ $rt_metadata([
41318
41317
  0,
41319
41318
  asrjt_Float64$1_$callClinit,
41320
41319
  0,
41321
- jm_Multiplication,
41320
+ asrjt_Float32$1,
41322
41321
  0,
41323
41322
  jl_Object,
41324
41323
  [],
41324
+ 32,
41325
41325
  0,
41326
41326
  0,
41327
- 0,
41328
- jm_Multiplication_$callClinit,
41327
+ asrjt_Float32$1_$callClinit,
41329
41328
  0
41330
41329
  ]);
41331
41330
  $rt_metadata([
41332
- asrjt_Float32$1,
41331
+ jm_Multiplication,
41333
41332
  0,
41334
41333
  jl_Object,
41335
41334
  [],
41336
- 32,
41337
41335
  0,
41338
41336
  0,
41339
- asrjt_Float32$1_$callClinit,
41337
+ 0,
41338
+ jm_Multiplication_$callClinit,
41340
41339
  0,
41341
41340
  otjc_JSBoolean,
41342
41341
  0,
@@ -42508,6 +42507,13 @@ $rt_stringPool([
42508
42507
  "0.000000",
42509
42508
  "0E",
42510
42509
  "0E+",
42510
+ "BREAKPOINT",
42511
+ "EXCEPTION",
42512
+ "MAX_STEPS",
42513
+ "NORMAL_TERMINATION",
42514
+ "CLIFF_TERMINATION",
42515
+ "PAUSE",
42516
+ "STOP",
42511
42517
  "ft0",
42512
42518
  "ft1",
42513
42519
  "ft2",
@@ -42555,13 +42561,6 @@ $rt_stringPool([
42555
42561
  "Cannot claim, no timer interrupt pending",
42556
42562
  "Cannot claim, no trap pending",
42557
42563
  "trapPC doesn't match current pc",
42558
- "BREAKPOINT",
42559
- "EXCEPTION",
42560
- "MAX_STEPS",
42561
- "NORMAL_TERMINATION",
42562
- "CLIFF_TERMINATION",
42563
- "PAUSE",
42564
- "STOP",
42565
42564
  "Patter is null",
42566
42565
  "Recursive include of file ",
42567
42566
  "Error reading include file ",
@@ -43083,40 +43082,40 @@ var $rt_jso_marker = Symbol("jsoClass");
43083
43082
  (() => {
43084
43083
  let c;
43085
43084
  c = asr_JsRiscV.prototype;
43086
- c.getTokenizedLines = $rt_callWithReceiver(asr_JsRiscV_getTokenizedLines$exported$25);
43085
+ c.getTokenizedLines = $rt_callWithReceiver(asr_JsRiscV_getTokenizedLines$exported$26);
43087
43086
  c.getCurrentStatementIndex = $rt_callWithReceiver(asr_JsRiscV_getCurrentStatementIndex$exported$30);
43088
- c.getRegisterValueLong = $rt_callWithReceiver(asr_JsRiscV_getRegisterValueLong$exported$13);
43089
- c.setUndoEnabled = $rt_callWithReceiver(asr_JsRiscV_setUndoEnabled$exported$22);
43087
+ c.getRegisterValueLong = $rt_callWithReceiver(asr_JsRiscV_getRegisterValueLong$exported$14);
43088
+ c.setUndoEnabled = $rt_callWithReceiver(asr_JsRiscV_setUndoEnabled$exported$23);
43090
43089
  c.getRegistersValues = $rt_callWithReceiver(asr_JsRiscV_getRegistersValues$exported$6);
43091
43090
  c.readMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_readMemoryBytes$exported$33);
43092
43091
  c.undo = $rt_callWithReceiver(asr_JsRiscV_undo$exported$8);
43093
- c.getParsedStatements = $rt_callWithReceiver(asr_JsRiscV_getParsedStatements$exported$20);
43094
- c.getStatementAtSourceLine = $rt_callWithReceiver(asr_JsRiscV_getStatementAtSourceLine$exported$21);
43095
- c.setUndoSize = $rt_callWithReceiver(asr_JsRiscV_setUndoSize$exported$19);
43096
- c.getUndoStack = $rt_callWithReceiver(asr_JsRiscV_getUndoStack$exported$14);
43097
- c.setRegisterValue = $rt_callWithReceiver(asr_JsRiscV_setRegisterValue$exported$27);
43098
- c.getStopReason = $rt_callWithReceiver(asr_JsRiscV_getStopReason$exported$23);
43092
+ c.getParsedStatements = $rt_callWithReceiver(asr_JsRiscV_getParsedStatements$exported$21);
43093
+ c.getStatementAtSourceLine = $rt_callWithReceiver(asr_JsRiscV_getStatementAtSourceLine$exported$22);
43094
+ c.setUndoSize = $rt_callWithReceiver(asr_JsRiscV_setUndoSize$exported$20);
43095
+ c.getUndoStack = $rt_callWithReceiver(asr_JsRiscV_getUndoStack$exported$15);
43096
+ c.setRegisterValue = $rt_callWithReceiver(asr_JsRiscV_setRegisterValue$exported$9);
43097
+ c.getStopReason = $rt_callWithReceiver(asr_JsRiscV_getStopReason$exported$24);
43099
43098
  c.getLabelAtAddress = $rt_callWithReceiver(asr_JsRiscV_getLabelAtAddress$exported$2);
43100
- c.simulate = $rt_callWithReceiver(asr_JsRiscV_simulate$exported$24);
43101
- c.setMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_setMemoryBytes$exported$15);
43102
- c.getRegistersValuesLong = $rt_callWithReceiver(asr_JsRiscV_getRegistersValuesLong$exported$26);
43103
- c.getNextStatement = $rt_callWithReceiver(asr_JsRiscV_getNextStatement$exported$10);
43099
+ c.simulate = $rt_callWithReceiver(asr_JsRiscV_simulate$exported$25);
43100
+ c.setMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_setMemoryBytes$exported$16);
43101
+ c.getRegistersValuesLong = $rt_callWithReceiver(asr_JsRiscV_getRegistersValuesLong$exported$27);
43102
+ c.getNextStatement = $rt_callWithReceiver(asr_JsRiscV_getNextStatement$exported$11);
43104
43103
  c.simulateWithBreakpoints = $rt_callWithReceiver(asr_JsRiscV_simulateWithBreakpoints$exported$29);
43105
43104
  c.getRegisterValue = $rt_callWithReceiver(asr_JsRiscV_getRegisterValue$exported$1);
43106
43105
  c.assemble = $rt_callWithReceiver(asr_JsRiscV_assemble$exported$7);
43107
43106
  c.registerHandler = $rt_callWithReceiver(asr_JsRiscV_registerHandler$exported$0);
43108
43107
  c.simulateWithLimit = $rt_callWithReceiver(asr_JsRiscV_simulateWithLimit$exported$5);
43109
- c.getCompiledStatements = $rt_callWithReceiver(asr_JsRiscV_getCompiledStatements$exported$9);
43108
+ c.getCompiledStatements = $rt_callWithReceiver(asr_JsRiscV_getCompiledStatements$exported$10);
43110
43109
  c.step = $rt_callWithReceiver(asr_JsRiscV_step$exported$28);
43111
- c.initialize = $rt_callWithReceiver(asr_JsRiscV_initialize$exported$12);
43110
+ c.initialize = $rt_callWithReceiver(asr_JsRiscV_initialize$exported$13);
43112
43111
  c.simulateWithBreakpointsAndLimit = $rt_callWithReceiver(asr_JsRiscV_simulateWithBreakpointsAndLimit$exported$3);
43113
- c.getStatementAtAddress = $rt_callWithReceiver(asr_JsRiscV_getStatementAtAddress$exported$16);
43112
+ c.getStatementAtAddress = $rt_callWithReceiver(asr_JsRiscV_getStatementAtAddress$exported$17);
43114
43113
  c.getCallStack = $rt_callWithReceiver(asr_JsRiscV_getCallStack$exported$4);
43115
43114
  Object.defineProperty(c, "stackPointerLong", {
43116
- get: $rt_callWithReceiver(asr_JsRiscV_getStackPointerLong$exported$17)
43115
+ get: $rt_callWithReceiver(asr_JsRiscV_getStackPointerLong$exported$18)
43117
43116
  });
43118
43117
  Object.defineProperty(c, "canUndo", {
43119
- get: $rt_callWithReceiver(asr_JsRiscV_canUndo$exported$18)
43118
+ get: $rt_callWithReceiver(asr_JsRiscV_canUndo$exported$19)
43120
43119
  });
43121
43120
  Object.defineProperty(c, "programCounter", {
43122
43121
  get: $rt_callWithReceiver(asr_JsRiscV_getProgramCounter$exported$31)
@@ -43128,7 +43127,7 @@ var $rt_jso_marker = Symbol("jsoClass");
43128
43127
  get: $rt_callWithReceiver(asr_JsRiscV_getStackPointer$exported$34)
43129
43128
  });
43130
43129
  Object.defineProperty(c, "terminated", {
43131
- get: $rt_callWithReceiver(asr_JsRiscV_terminated$exported$11)
43130
+ get: $rt_callWithReceiver(asr_JsRiscV_terminated$exported$12)
43132
43131
  });
43133
43132
  c = asr_JsInstruction.prototype;
43134
43133
  c.getIsRv64Only = $rt_callWithReceiver(asr_JsInstruction_getIsRv64Only$exported$1);
@@ -43144,15 +43143,25 @@ var $rt_jso_marker = Symbol("jsoClass");
43144
43143
  Object.defineProperty(c, "example", {
43145
43144
  get: $rt_callWithReceiver(asr_JsInstruction_getExample$exported$4)
43146
43145
  });
43147
- c = asr_JsCompilationResult.prototype;
43148
- Object.defineProperty(c, "hasErrors", {
43149
- get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
43146
+ c = asr_JsRiscVTokenizedLine.prototype;
43147
+ Object.defineProperty(c, "line", {
43148
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
43150
43149
  });
43151
- Object.defineProperty(c, "report", {
43152
- get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
43150
+ Object.defineProperty(c, "tokens", {
43151
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
43153
43152
  });
43154
- Object.defineProperty(c, "errors", {
43155
- get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
43153
+ c = asr_JsBackStep.prototype;
43154
+ Object.defineProperty(c, "pc", {
43155
+ get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
43156
+ });
43157
+ Object.defineProperty(c, "action", {
43158
+ get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
43159
+ });
43160
+ Object.defineProperty(c, "param1", {
43161
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
43162
+ });
43163
+ Object.defineProperty(c, "param2", {
43164
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
43156
43165
  });
43157
43166
  c = asr_JsProgramStatement.prototype;
43158
43167
  Object.defineProperty(c, "assemblyStatement", {
@@ -43173,25 +43182,15 @@ var $rt_jso_marker = Symbol("jsoClass");
43173
43182
  Object.defineProperty(c, "source", {
43174
43183
  get: $rt_callWithReceiver(asr_JsProgramStatement_getSource$exported$2)
43175
43184
  });
43176
- c = asr_JsBackStep.prototype;
43177
- Object.defineProperty(c, "pc", {
43178
- get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
43179
- });
43180
- Object.defineProperty(c, "action", {
43181
- get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
43182
- });
43183
- Object.defineProperty(c, "param1", {
43184
- get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
43185
- });
43186
- Object.defineProperty(c, "param2", {
43187
- get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
43185
+ c = asr_JsCompilationResult.prototype;
43186
+ Object.defineProperty(c, "hasErrors", {
43187
+ get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
43188
43188
  });
43189
- c = asr_JsRiscVTokenizedLine.prototype;
43190
- Object.defineProperty(c, "line", {
43191
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
43189
+ Object.defineProperty(c, "report", {
43190
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
43192
43191
  });
43193
- Object.defineProperty(c, "tokens", {
43194
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
43192
+ Object.defineProperty(c, "errors", {
43193
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
43195
43194
  });
43196
43195
  c = asr_JsStackFrame.prototype;
43197
43196
  Object.defineProperty(c, "pc", {
@@ -43255,26 +43254,26 @@ function $rt_export_class_JsInstruction_33() {
43255
43254
  throw new Error("Can't instantiate this class directly");
43256
43255
  }
43257
43256
  $rt_export_class_JsInstruction_33.prototype = asr_JsInstruction.prototype;
43258
- function $rt_export_class_JsCompilationResult_71() {
43257
+ function $rt_export_class_JsRiscVTokenizedLine_73() {
43259
43258
  throw new Error("Can't instantiate this class directly");
43260
43259
  }
43261
- $rt_export_class_JsCompilationResult_71.prototype = asr_JsCompilationResult.prototype;
43262
- function $rt_export_class_JsProgramStatement_75() {
43260
+ $rt_export_class_JsRiscVTokenizedLine_73.prototype = asr_JsRiscVTokenizedLine.prototype;
43261
+ function $rt_export_class_JsBackStep_77() {
43263
43262
  throw new Error("Can't instantiate this class directly");
43264
43263
  }
43265
- $rt_export_class_JsProgramStatement_75.prototype = asr_JsProgramStatement.prototype;
43266
- function $rt_export_class_JsBackStep_79() {
43264
+ $rt_export_class_JsBackStep_77.prototype = asr_JsBackStep.prototype;
43265
+ function $rt_export_class_JsProgramStatement_78() {
43267
43266
  throw new Error("Can't instantiate this class directly");
43268
43267
  }
43269
- $rt_export_class_JsBackStep_79.prototype = asr_JsBackStep.prototype;
43270
- function $rt_export_class_JsRiscVTokenizedLine_82() {
43268
+ $rt_export_class_JsProgramStatement_78.prototype = asr_JsProgramStatement.prototype;
43269
+ function $rt_export_class_JsCompilationResult_83() {
43271
43270
  throw new Error("Can't instantiate this class directly");
43272
43271
  }
43273
- $rt_export_class_JsRiscVTokenizedLine_82.prototype = asr_JsRiscVTokenizedLine.prototype;
43274
- function $rt_export_class_JsStackFrame_83() {
43272
+ $rt_export_class_JsCompilationResult_83.prototype = asr_JsCompilationResult.prototype;
43273
+ function $rt_export_class_JsStackFrame_85() {
43275
43274
  throw new Error("Can't instantiate this class directly");
43276
43275
  }
43277
- $rt_export_class_JsStackFrame_83.prototype = asr_JsStackFrame.prototype;
43276
+ $rt_export_class_JsStackFrame_85.prototype = asr_JsStackFrame.prototype;
43278
43277
  function $rt_export_class_JsCompilationError_352() {
43279
43278
  throw new Error("Can't instantiate this class directly");
43280
43279
  }