@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.js CHANGED
@@ -2880,7 +2880,14 @@ var asr_JsRiscV_undo$exported$8 = (var$1) => {
2880
2880
  var$2.$engaged = 1;
2881
2881
  }
2882
2882
  };
2883
- var asr_JsRiscV_getCompiledStatements$exported$9 = (var$1) => {
2883
+ var asr_JsRiscV_setRegisterValue$exported$9 = (var$1, var$2, var$3) => {
2884
+ asr_JsRiscV_$callClinit();
2885
+ var$2 = $rt_str(var$2);
2886
+ var$3 = var$3;
2887
+ var$1;
2888
+ asrrh_RegisterFile_getRegister(var$2).$setValue(jm_BigInteger_longValue(var$3));
2889
+ };
2890
+ var asr_JsRiscV_getCompiledStatements$exported$10 = (var$1) => {
2884
2891
  let var$2, var$3, var$4, var$5;
2885
2892
  asr_JsRiscV_$callClinit();
2886
2893
  var$2 = var$1.$main.$main0.$machineList;
@@ -2893,17 +2900,17 @@ var asr_JsRiscV_getCompiledStatements$exported$9 = (var$1) => {
2893
2900
  }
2894
2901
  return otji_JS_wrap(var$3);
2895
2902
  };
2896
- var asr_JsRiscV_getNextStatement$exported$10 = (var$1) => {
2903
+ var asr_JsRiscV_getNextStatement$exported$11 = (var$1) => {
2897
2904
  asr_JsRiscV_$callClinit();
2898
2905
  var$1 = var$1;
2899
2906
  return asr_JsProgramStatement__init_(asr_RARS_getStatementAtAddress(var$1.$main, asrrh_RegisterFile_getProgramCounter()));
2900
2907
  };
2901
- var asr_JsRiscV_terminated$exported$11 = (var$1) => {
2908
+ var asr_JsRiscV_terminated$exported$12 = (var$1) => {
2902
2909
  asr_JsRiscV_$callClinit();
2903
2910
  var$1 = var$1;
2904
2911
  return !!(var$1.$main.$stopReason !== asrs_Simulator$Reason_CLIFF_TERMINATION ? 0 : 1);
2905
2912
  };
2906
- var asr_JsRiscV_initialize$exported$12 = (var$1, var$2) => {
2913
+ var asr_JsRiscV_initialize$exported$13 = (var$1, var$2) => {
2907
2914
  let $$je;
2908
2915
  asr_JsRiscV_$callClinit();
2909
2916
  var$2 ? 1 : 0;
@@ -2932,13 +2939,13 @@ var asr_JsRiscV_initialize$exported$12 = (var$1, var$2) => {
2932
2939
  asr_Globals_exitCode = 0;
2933
2940
  ju_ArrayList_clear(asrrh_Stack_callStack);
2934
2941
  };
2935
- var asr_JsRiscV_getRegisterValueLong$exported$13 = (var$1, var$2) => {
2942
+ var asr_JsRiscV_getRegisterValueLong$exported$14 = (var$1, var$2) => {
2936
2943
  asr_JsRiscV_$callClinit();
2937
2944
  var$2 = $rt_str(var$2);
2938
2945
  var$1;
2939
2946
  return jm_BigInteger_valueOf(asrrh_RegisterFile_getRegister(var$2).$getValue());
2940
2947
  };
2941
- var asr_JsRiscV_getUndoStack$exported$14 = (var$1) => {
2948
+ var asr_JsRiscV_getUndoStack$exported$15 = (var$1) => {
2942
2949
  let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
2943
2950
  asr_JsRiscV_$callClinit();
2944
2951
  var$2 = var$1.$main.$main0.$backStepper.$backSteps;
@@ -2959,7 +2966,7 @@ var asr_JsRiscV_getUndoStack$exported$14 = (var$1) => {
2959
2966
  var$2 = new asr_JsRiscV$getUndoStack$lambda$_26_1();
2960
2967
  return otji_JS_wrap(jusi_SimpleStreamImpl_toArray(var$1, var$2));
2961
2968
  };
2962
- var asr_JsRiscV_setMemoryBytes$exported$15 = (var$1, var$2, var$3) => {
2969
+ var asr_JsRiscV_setMemoryBytes$exported$16 = (var$1, var$2, var$3) => {
2963
2970
  let var$4, var$5, var$6, var$7;
2964
2971
  asr_JsRiscV_$callClinit();
2965
2972
  var$4 = var$2;
@@ -2975,24 +2982,24 @@ var asr_JsRiscV_setMemoryBytes$exported$15 = (var$1, var$2, var$3) => {
2975
2982
  var$6 = var$6 + 1 | 0;
2976
2983
  }
2977
2984
  };
2978
- var asr_JsRiscV_getStatementAtAddress$exported$16 = (var$1, var$2) => {
2985
+ var asr_JsRiscV_getStatementAtAddress$exported$17 = (var$1, var$2) => {
2979
2986
  let var$3;
2980
2987
  asr_JsRiscV_$callClinit();
2981
2988
  var$3 = var$2;
2982
2989
  var$1 = var$1;
2983
2990
  return asr_JsProgramStatement__init_(asr_RARS_getStatementAtAddress(var$1.$main, var$3));
2984
2991
  };
2985
- var asr_JsRiscV_getStackPointerLong$exported$17 = (var$1) => {
2992
+ var asr_JsRiscV_getStackPointerLong$exported$18 = (var$1) => {
2986
2993
  asr_JsRiscV_$callClinit();
2987
2994
  var$1;
2988
2995
  return $rt_ustr(jm_BigInteger_toString(jm_BigInteger_valueOf(asrrh_RegisterFile_getStackPointerRegister().$getValue())));
2989
2996
  };
2990
- var asr_JsRiscV_canUndo$exported$18 = (var$1) => {
2997
+ var asr_JsRiscV_canUndo$exported$19 = (var$1) => {
2991
2998
  asr_JsRiscV_$callClinit();
2992
2999
  var$1 = var$1;
2993
3000
  return !!(asrs_BackStepper$BackstepStack_empty(var$1.$main.$main0.$backStepper.$backSteps) ? 0 : 1);
2994
3001
  };
2995
- var asr_JsRiscV_setUndoSize$exported$19 = (var$1, var$2) => {
3002
+ var asr_JsRiscV_setUndoSize$exported$20 = (var$1, var$2) => {
2996
3003
  let var$3;
2997
3004
  asr_JsRiscV_$callClinit();
2998
3005
  var$3 = var$2;
@@ -3000,7 +3007,7 @@ var asr_JsRiscV_setUndoSize$exported$19 = (var$1, var$2) => {
3000
3007
  asr_Globals_$callClinit();
3001
3008
  asr_Globals_maximumBacksteps = var$3;
3002
3009
  };
3003
- var asr_JsRiscV_getParsedStatements$exported$20 = (var$1) => {
3010
+ var asr_JsRiscV_getParsedStatements$exported$21 = (var$1) => {
3004
3011
  let var$2, var$3, var$4, var$5;
3005
3012
  asr_JsRiscV_$callClinit();
3006
3013
  var$2 = var$1.$main.$main0.$parsedList;
@@ -3013,7 +3020,7 @@ var asr_JsRiscV_getParsedStatements$exported$20 = (var$1) => {
3013
3020
  }
3014
3021
  return otji_JS_wrap(var$3);
3015
3022
  };
3016
- var asr_JsRiscV_getStatementAtSourceLine$exported$21 = (var$1, var$2) => {
3023
+ var asr_JsRiscV_getStatementAtSourceLine$exported$22 = (var$1, var$2) => {
3017
3024
  let var$3;
3018
3025
  asr_JsRiscV_$callClinit();
3019
3026
  var$3 = var$2;
@@ -3031,17 +3038,17 @@ var asr_JsRiscV_getStatementAtSourceLine$exported$21 = (var$1, var$2) => {
3031
3038
  }
3032
3039
  return var$1 === null ? null : asr_JsProgramStatement__init_(var$1);
3033
3040
  };
3034
- var asr_JsRiscV_setUndoEnabled$exported$22 = (var$1, var$2) => {
3041
+ var asr_JsRiscV_setUndoEnabled$exported$23 = (var$1, var$2) => {
3035
3042
  let var$3;
3036
3043
  asr_JsRiscV_$callClinit();
3037
3044
  var$3 = var$2 ? 1 : 0;
3038
3045
  var$1.$main.$main0.$backStepper.$engaged = var$3;
3039
3046
  };
3040
- var asr_JsRiscV_getStopReason$exported$23 = (var$1) => {
3047
+ var asr_JsRiscV_getStopReason$exported$24 = (var$1) => {
3041
3048
  asr_JsRiscV_$callClinit();
3042
3049
  return var$1.$main.$stopReason;
3043
3050
  };
3044
- var asr_JsRiscV_simulate$exported$24 = (var$1) => {
3051
+ var asr_JsRiscV_simulate$exported$25 = (var$1) => {
3045
3052
  let var$2, $ptr, $tmp;
3046
3053
  $ptr = 0;
3047
3054
  if ($rt_resuming()) {
@@ -3070,7 +3077,7 @@ var asr_JsRiscV_simulate$exported$24 = (var$1) => {
3070
3077
  }
3071
3078
  $rt_nativeThread().push(var$1, var$2, $ptr);
3072
3079
  };
3073
- var asr_JsRiscV_getTokenizedLines$exported$25 = (var$1) => {
3080
+ var asr_JsRiscV_getTokenizedLines$exported$26 = (var$1) => {
3074
3081
  let var$2;
3075
3082
  asr_JsRiscV_$callClinit();
3076
3083
  var$1 = ju_Collection_stream(var$1.$main.$main0.$tokenList1);
@@ -3079,7 +3086,7 @@ var asr_JsRiscV_getTokenizedLines$exported$25 = (var$1) => {
3079
3086
  var$2 = new asr_JsRiscV$getTokenizedLines$lambda$_5_1();
3080
3087
  return otji_JS_wrap(jusi_SimpleStreamImpl_toArray(var$1, var$2));
3081
3088
  };
3082
- var asr_JsRiscV_getRegistersValuesLong$exported$26 = (var$1) => {
3089
+ var asr_JsRiscV_getRegistersValuesLong$exported$27 = (var$1) => {
3083
3090
  let var$2, var$3, var$4, var$5, var$6;
3084
3091
  asr_JsRiscV_$callClinit();
3085
3092
  var$1;
@@ -3101,14 +3108,6 @@ var asr_JsRiscV_getRegistersValuesLong$exported$26 = (var$1) => {
3101
3108
  }
3102
3109
  return var$1;
3103
3110
  };
3104
- var asr_JsRiscV_setRegisterValue$exported$27 = (var$1, var$2, var$3) => {
3105
- let var$4;
3106
- asr_JsRiscV_$callClinit();
3107
- var$2 = $rt_str(var$2);
3108
- var$4 = var$3;
3109
- var$1;
3110
- asrrh_RegisterFile_getRegister(var$2).$setValue(Long_fromInt(var$4));
3111
- };
3112
3111
  var asr_JsRiscV_step$exported$28 = (var$1) => {
3113
3112
  let var$2, var$3, $ptr, $tmp;
3114
3113
  $ptr = 0;
@@ -3354,11 +3353,11 @@ var asr_JsRiscV__clinit_ = () => {
3354
3353
  ju_Comparator$NaturalOrder__clinit_();
3355
3354
  asrr_BasicInstructionFormat__clinit_();
3356
3355
  jl_Long__clinit_();
3356
+ asrs_Simulator$Reason__clinit_();
3357
3357
  asrrh_FloatingPointRegisterFile__clinit_();
3358
3358
  asrrh_ControlAndStatusRegisterFile__clinit_();
3359
3359
  asrrh_InterruptController__clinit_();
3360
3360
  asrrh_Stack__clinit_();
3361
- asrs_Simulator$Reason__clinit_();
3362
3361
  asra_Tokenizer__clinit_();
3363
3362
  asrs_Simulator__clinit_();
3364
3363
  asra_Directives__clinit_();
@@ -3379,8 +3378,8 @@ var asr_JsRiscV__clinit_ = () => {
3379
3378
  asrjt_Float64__clinit_();
3380
3379
  asrjo_Arithmetic__clinit_();
3381
3380
  asrj_RoundingMode__clinit_();
3382
- asrj_Flags__clinit_();
3383
3381
  asrji_ExactFloat__clinit_();
3382
+ asrj_Flags__clinit_();
3384
3383
  asrrs_RandomStreams__clinit_();
3385
3384
  otcit_FloatSynthesizer__clinit_();
3386
3385
  jl_Byte__clinit_();
@@ -7107,63 +7106,345 @@ var jl_System_currentTimeMillis = () => {
7107
7106
  return Long_fromNumber((/* @__PURE__ */ new Date()).getTime());
7108
7107
  };
7109
7108
  var jl_CloneNotSupportedException = $rt_classWithoutFields(jl_Exception);
7110
- function asr_JsCompilationResult() {
7109
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7110
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7111
+ let var$2, var$3, var$4, var$5;
7112
+ var$1 = var$1;
7113
+ asr_JsRiscV_$callClinit();
7114
+ var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7115
+ var$3 = var$2.data;
7116
+ var$4 = 0;
7117
+ while (var$4 < asra_TokenList_size(var$1)) {
7118
+ var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7119
+ var$4 = var$4 + 1 | 0;
7120
+ }
7121
+ var$5 = new asr_JsRiscVTokenizedLine();
7122
+ var$5.$line0 = var$1.$processedLine;
7123
+ var$5.$tokens0 = var$2;
7124
+ return var$5;
7125
+ };
7126
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
7127
+ var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
7128
+ asr_JsRiscV_$callClinit();
7129
+ return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
7130
+ };
7131
+ function asr_JsRiscVTokenizedLine() {
7111
7132
  let a = this;
7112
7133
  jl_Object.call(a);
7113
- a.$report = null;
7114
- a.$errors1 = null;
7134
+ a.$line0 = null;
7135
+ a.$tokens0 = null;
7115
7136
  }
7116
- var asr_JsCompilationResult__init_0 = ($this, var$1) => {
7117
- let var$2, var$3, var$4;
7118
- $this.$report = asr_ErrorList_generateErrorAndWarningReport(var$1);
7119
- var$1 = ju_Collection_stream(var$1.$messages);
7120
- var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7121
- var$2.$_06 = $this;
7122
- var$1 = jusi_SimpleStreamImpl_map(var$1, var$2);
7123
- var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7124
- var$1 = var$1;
7125
- var$3 = ju_ArrayList__init_();
7126
- var$4 = var$1;
7127
- while (true) {
7128
- var$1 = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7129
- var$1.$_08 = var$2;
7130
- var$1.$_12 = var$3;
7131
- if (!jusi_WrappingStreamImpl_next(var$4, var$1))
7132
- break;
7137
+ var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
7138
+ return $rt_ustr(var$1.$line0);
7139
+ };
7140
+ var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
7141
+ return otji_JS_wrap(var$1.$tokens0);
7142
+ };
7143
+ var ju_Arrays = $rt_classWithoutFields();
7144
+ var ju_Arrays_copyOf1 = ($array, $length) => {
7145
+ let $result, var$4, $sz, $i;
7146
+ $array = $array.data;
7147
+ $result = $rt_createCharArray($length);
7148
+ var$4 = $result.data;
7149
+ $sz = jl_Math_min($length, $array.length);
7150
+ $i = 0;
7151
+ while ($i < $sz) {
7152
+ var$4[$i] = $array[$i];
7153
+ $i = $i + 1 | 0;
7133
7154
  }
7134
- $this.$errors1 = var$3;
7155
+ return $result;
7135
7156
  };
7136
- var asr_JsCompilationResult__init_ = (var_0) => {
7137
- let var_1 = new asr_JsCompilationResult();
7138
- asr_JsCompilationResult__init_0(var_1, var_0);
7139
- return var_1;
7157
+ var ju_Arrays_copyOf0 = ($array, $length) => {
7158
+ let $result, var$4, $sz, $i;
7159
+ $array = $array.data;
7160
+ $result = $rt_createByteArray($length);
7161
+ var$4 = $result.data;
7162
+ $sz = jl_Math_min($length, $array.length);
7163
+ $i = 0;
7164
+ while ($i < $sz) {
7165
+ var$4[$i] = $array[$i];
7166
+ $i = $i + 1 | 0;
7167
+ }
7168
+ return $result;
7140
7169
  };
7141
- var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7142
- let var$2;
7143
- var$1 = var$1.$errors1;
7144
- var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7145
- return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7170
+ var ju_Arrays_copyOf2 = ($array, $length) => {
7171
+ let $result, var$4, $sz, $i;
7172
+ $array = $array.data;
7173
+ $result = $rt_createIntArray($length);
7174
+ var$4 = $result.data;
7175
+ $sz = jl_Math_min($length, $array.length);
7176
+ $i = 0;
7177
+ while ($i < $sz) {
7178
+ var$4[$i] = $array[$i];
7179
+ $i = $i + 1 | 0;
7180
+ }
7181
+ return $result;
7146
7182
  };
7147
- var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7183
+ var ju_Arrays_copyOf = ($original, $newLength) => {
7184
+ let var$3, $result, $sz, $i;
7185
+ var$3 = $original.data;
7186
+ $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7187
+ $sz = jl_Math_min($newLength, var$3.length);
7188
+ $i = 0;
7189
+ while ($i < $sz) {
7190
+ $result.data[$i] = var$3[$i];
7191
+ $i = $i + 1 | 0;
7192
+ }
7193
+ return $result;
7194
+ };
7195
+ var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7196
+ let var$5, var$6, var$7;
7197
+ if ($fromIndex > $toIndex) {
7198
+ var$5 = new jl_IllegalArgumentException();
7199
+ jl_Throwable__init_(var$5);
7200
+ $rt_throw(var$5);
7201
+ }
7202
+ while ($fromIndex < $toIndex) {
7203
+ var$6 = $a.data;
7204
+ var$7 = $fromIndex + 1 | 0;
7205
+ var$6[$fromIndex] = $val;
7206
+ $fromIndex = var$7;
7207
+ }
7208
+ };
7209
+ var ju_Arrays_fill = ($a, $val) => {
7210
+ ju_Arrays_fill0($a, 0, $a.data.length, $val);
7211
+ };
7212
+ var ju_Arrays_sort = ($a) => {
7213
+ 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;
7214
+ var$2 = $a.data.length;
7215
+ if (!var$2)
7216
+ return;
7217
+ $second = $rt_createIntArray(var$2);
7218
+ $chunkSize = 1;
7219
+ var$5 = $a;
7220
+ while ($chunkSize < var$2) {
7221
+ $i = 0;
7222
+ while (true) {
7223
+ var$7 = var$5.data;
7224
+ var$8 = var$7.length;
7225
+ if ($i >= var$8)
7226
+ break;
7227
+ var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7228
+ $i_0 = $i + (2 * $chunkSize | 0) | 0;
7229
+ var$8 = jl_Math_min(var$8, $i_0);
7230
+ var$11 = $i;
7231
+ var$12 = var$9;
7232
+ a: {
7233
+ b: {
7234
+ while ($i != var$9) {
7235
+ if (var$12 == var$8)
7236
+ break b;
7237
+ var$13 = var$7[$i];
7238
+ var$14 = var$7[var$12];
7239
+ if (var$13 > var$14) {
7240
+ var$15 = $second.data;
7241
+ var$16 = var$11 + 1 | 0;
7242
+ var$15[var$11] = var$14;
7243
+ var$12 = var$12 + 1 | 0;
7244
+ } else {
7245
+ var$15 = $second.data;
7246
+ var$16 = var$11 + 1 | 0;
7247
+ var$15[var$11] = var$13;
7248
+ $i = $i + 1 | 0;
7249
+ }
7250
+ var$11 = var$16;
7251
+ }
7252
+ while (true) {
7253
+ if (var$12 >= var$8)
7254
+ break a;
7255
+ var$15 = $second.data;
7256
+ var$17 = var$11 + 1 | 0;
7257
+ $i = var$12 + 1 | 0;
7258
+ var$15[var$11] = var$7[var$12];
7259
+ var$11 = var$17;
7260
+ var$12 = $i;
7261
+ }
7262
+ }
7263
+ while (true) {
7264
+ if ($i >= var$9)
7265
+ break a;
7266
+ var$15 = $second.data;
7267
+ var$17 = var$11 + 1 | 0;
7268
+ var$8 = $i + 1 | 0;
7269
+ var$15[var$11] = var$7[$i];
7270
+ var$11 = var$17;
7271
+ $i = var$8;
7272
+ }
7273
+ }
7274
+ $i = $i_0;
7275
+ }
7276
+ $chunkSize = $chunkSize * 2 | 0;
7277
+ var$15 = var$5;
7278
+ var$5 = $second;
7279
+ $second = var$15;
7280
+ }
7281
+ c: {
7282
+ if (var$5 !== $a) {
7283
+ $i_0 = 0;
7284
+ while (true) {
7285
+ $a = var$5.data;
7286
+ if ($i_0 >= $a.length)
7287
+ break c;
7288
+ $second.data[$i_0] = $a[$i_0];
7289
+ $i_0 = $i_0 + 1 | 0;
7290
+ }
7291
+ }
7292
+ }
7293
+ };
7294
+ var ju_Arrays_binarySearch = ($a, $key) => {
7295
+ let var$3, var$4, var$5, var$6, var$7;
7296
+ $a = $a.data;
7297
+ var$3 = 0;
7298
+ var$4 = $a.length;
7299
+ if (var$3 > var$4) {
7300
+ var$5 = new jl_IllegalArgumentException();
7301
+ jl_Throwable__init_(var$5);
7302
+ $rt_throw(var$5);
7303
+ }
7304
+ var$6 = var$4 - 1 | 0;
7305
+ a: {
7306
+ while (true) {
7307
+ if (var$3 > var$6) {
7308
+ var$4 = (-var$3 | 0) - 1 | 0;
7309
+ break a;
7310
+ }
7311
+ var$4 = (var$3 + var$6 | 0) / 2 | 0;
7312
+ var$7 = $a[var$4];
7313
+ if (var$7 == $key)
7314
+ break;
7315
+ if ($key >= var$7)
7316
+ var$3 = var$4 + 1 | 0;
7317
+ else
7318
+ var$6 = var$4 - 1 | 0;
7319
+ }
7320
+ }
7321
+ return var$4;
7322
+ };
7323
+ var ju_Arrays_stream = ($array) => {
7324
+ let var$2, var$3, var$4;
7325
+ var$2 = $array.data;
7326
+ var$3 = new jusi_ArrayStreamImpl();
7327
+ var$4 = var$2.length;
7328
+ var$3.$array6 = $array;
7329
+ var$3.$index1 = 0;
7330
+ var$3.$end1 = var$4;
7331
+ var$3.$size2 = var$4 - 0 | 0;
7332
+ return var$3;
7333
+ };
7334
+ var asr_JsRiscV$getUndoStack$lambda$_26_0 = $rt_classWithoutFields();
7335
+ var asr_JsRiscV$getUndoStack$lambda$_26_0_apply = (var$0, var$1) => {
7336
+ let var$2, var$3;
7148
7337
  var$1 = var$1;
7149
- return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7338
+ var$2 = new asr_JsBackStep();
7339
+ var$3 = var$1.$action;
7340
+ var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7341
+ var$2.$pc2 = var$1.$pc1;
7342
+ var$2.$param10 = var$1.$param1;
7343
+ var$2.$param20 = Long_lo(var$1.$param2);
7344
+ return var$2;
7150
7345
  };
7151
- var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
7152
- return $rt_ustr(var$1.$report);
7346
+ var asr_JsRiscV$getUndoStack$lambda$_26_1 = $rt_classWithoutFields();
7347
+ var asr_JsRiscV$getUndoStack$lambda$_26_1_apply = (var$0, var$1) => {
7348
+ asr_JsRiscV_$callClinit();
7349
+ return $rt_createArray(asr_JsBackStep, var$1);
7153
7350
  };
7154
- function asr_AssemblyException() {
7155
- jl_Exception.call(this);
7156
- this.$errs = null;
7351
+ function asr_JsBackStep() {
7352
+ let a = this;
7353
+ jl_Object.call(a);
7354
+ a.$action0 = 0;
7355
+ a.$pc2 = 0;
7356
+ a.$param10 = 0;
7357
+ a.$param20 = 0;
7157
7358
  }
7158
- var asr_AssemblyException__init_0 = ($this, $errs) => {
7159
- jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
7160
- $this.$errs = $errs;
7359
+ var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7360
+ return var$1.$pc2;
7161
7361
  };
7162
- var asr_AssemblyException__init_ = (var_0) => {
7163
- let var_1 = new asr_AssemblyException();
7164
- asr_AssemblyException__init_0(var_1, var_0);
7362
+ var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7363
+ return var$1.$param20;
7364
+ };
7365
+ var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7366
+ return var$1.$action0;
7367
+ };
7368
+ var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7369
+ return var$1.$param10;
7370
+ };
7371
+ function asr_JsProgramStatement() {
7372
+ let a = this;
7373
+ jl_Object.call(a);
7374
+ a.$sourceLine1 = 0;
7375
+ a.$address2 = 0;
7376
+ a.$binaryStatement0 = 0;
7377
+ a.$source3 = null;
7378
+ a.$assemblyStatement = null;
7379
+ a.$machineStatement0 = null;
7380
+ }
7381
+ var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
7382
+ let var$2, var$3, var$4, var$5, var$6;
7383
+ $this.$sourceLine1 = $programStatement.$sourceLine0;
7384
+ $this.$address2 = $programStatement.$textAddress0;
7385
+ $this.$binaryStatement0 = $programStatement.$binaryStatement;
7386
+ $this.$source3 = $programStatement.$source;
7387
+ var$2 = $programStatement.$basicStatementList;
7388
+ var$3 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7389
+ var$4 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7390
+ var$5 = new jl_StringBuffer();
7391
+ jl_AbstractStringBuilder__init_(var$5);
7392
+ var$6 = ju_AbstractList_iterator(var$2.$list);
7393
+ while (ju_AbstractList$1_hasNext(var$6)) {
7394
+ a: {
7395
+ var$2 = ju_AbstractList$1_next(var$6);
7396
+ switch (var$2.$type3) {
7397
+ case 0:
7398
+ break;
7399
+ case 1:
7400
+ if (var$3 == 10) {
7401
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7402
+ break a;
7403
+ }
7404
+ jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7405
+ break a;
7406
+ case 2:
7407
+ if (var$4 == 10) {
7408
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7409
+ break a;
7410
+ }
7411
+ jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7412
+ break a;
7413
+ case 3:
7414
+ jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7415
+ break a;
7416
+ default:
7417
+ break a;
7418
+ }
7419
+ jl_AbstractStringBuilder_append1(var$5, var$2.$sValue);
7420
+ }
7421
+ }
7422
+ $this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$5);
7423
+ $this.$machineStatement0 = $programStatement.$machineStatement;
7424
+ };
7425
+ var asr_JsProgramStatement__init_ = (var_0) => {
7426
+ let var_1 = new asr_JsProgramStatement();
7427
+ asr_JsProgramStatement__init_0(var_1, var_0);
7165
7428
  return var_1;
7166
7429
  };
7430
+ var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
7431
+ return var$1.$sourceLine1;
7432
+ };
7433
+ var asr_JsProgramStatement_getAssemblyStatement$exported$1 = (var$1) => {
7434
+ return $rt_ustr(var$1.$assemblyStatement);
7435
+ };
7436
+ var asr_JsProgramStatement_getSource$exported$2 = (var$1) => {
7437
+ return $rt_ustr(var$1.$source3);
7438
+ };
7439
+ var asr_JsProgramStatement_getAddress$exported$3 = (var$1) => {
7440
+ return var$1.$address2;
7441
+ };
7442
+ var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7443
+ return var$1.$binaryStatement0;
7444
+ };
7445
+ var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7446
+ return $rt_ustr(var$1.$machineStatement0);
7447
+ };
7167
7448
  var asrrh_RegisterFile = $rt_classWithoutFields();
7168
7449
  var asrrh_RegisterFile_instance = null;
7169
7450
  var asrrh_RegisterFile_programCounter = null;
@@ -7303,6 +7584,8 @@ var asrrh_RegisterFile__clinit_ = () => {
7303
7584
  asrrh_RegisterFile_instance = var$1;
7304
7585
  asrrh_RegisterFile_programCounter = asrrh_Register__init_($rt_s(243), -1, Long_fromInt(asrrh_Memory_textBaseAddress));
7305
7586
  };
7587
+ var juf_ToIntFunction = $rt_classWithoutFields(0);
7588
+ var asr_JsRiscV$getRegistersValues$lambda$_25_0 = $rt_classWithoutFields();
7306
7589
  function jm_BigInteger() {
7307
7590
  let a = this;
7308
7591
  jl_Number.call(a);
@@ -7675,344 +7958,62 @@ var jm_BigInteger__clinit_ = () => {
7675
7958
  $i = $i + 1 | 0;
7676
7959
  }
7677
7960
  };
7678
- function asr_JsProgramStatement() {
7961
+ function asr_JsCompilationResult() {
7679
7962
  let a = this;
7680
7963
  jl_Object.call(a);
7681
- a.$sourceLine1 = 0;
7682
- a.$address2 = 0;
7683
- a.$binaryStatement0 = 0;
7684
- a.$source3 = null;
7685
- a.$assemblyStatement = null;
7686
- a.$machineStatement0 = null;
7964
+ a.$report = null;
7965
+ a.$errors1 = null;
7687
7966
  }
7688
- var asr_JsProgramStatement__init_0 = ($this, $programStatement) => {
7689
- let var$2, var$3, var$4, var$5, var$6;
7690
- $this.$sourceLine1 = $programStatement.$sourceLine0;
7691
- $this.$address2 = $programStatement.$textAddress0;
7692
- $this.$binaryStatement0 = $programStatement.$binaryStatement;
7693
- $this.$source3 = $programStatement.$source;
7694
- var$2 = $programStatement.$basicStatementList;
7695
- var$3 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7696
- var$4 = !asr_Settings_getBooleanSetting(asr_Globals_getSettings(), asr_Settings$Bool_DISPLAY_ADDRESSES_IN_HEX) ? 10 : 16;
7697
- var$5 = new jl_StringBuffer();
7698
- jl_AbstractStringBuilder__init_(var$5);
7699
- var$6 = ju_AbstractList_iterator(var$2.$list);
7700
- while (ju_AbstractList$1_hasNext(var$6)) {
7701
- a: {
7702
- var$2 = ju_AbstractList$1_next(var$6);
7703
- switch (var$2.$type3) {
7704
- case 0:
7705
- break;
7706
- case 1:
7707
- if (var$3 == 10) {
7708
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7709
- break a;
7710
- }
7711
- jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7712
- break a;
7713
- case 2:
7714
- if (var$4 == 10) {
7715
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7716
- break a;
7717
- }
7718
- jl_AbstractStringBuilder_append1(var$5, asru_Binary_intToHexString(var$2.$iValue));
7719
- break a;
7720
- case 3:
7721
- jl_AbstractStringBuilder_append(var$5, var$2.$iValue);
7722
- break a;
7723
- default:
7724
- break a;
7725
- }
7726
- jl_AbstractStringBuilder_append1(var$5, var$2.$sValue);
7727
- }
7967
+ var asr_JsCompilationResult__init_0 = ($this, $errorReport) => {
7968
+ let var$2, var$3, var$4;
7969
+ $this.$report = asr_ErrorList_generateErrorAndWarningReport($errorReport);
7970
+ $errorReport = ju_Collection_stream($errorReport.$messages);
7971
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_0();
7972
+ var$2.$_06 = $this;
7973
+ $errorReport = jusi_SimpleStreamImpl_map($errorReport, var$2);
7974
+ var$2 = new asr_JsCompilationResult$_init_$lambda$_0_2();
7975
+ $errorReport = $errorReport;
7976
+ var$3 = ju_ArrayList__init_();
7977
+ var$4 = $errorReport;
7978
+ while (true) {
7979
+ $errorReport = new jusi_SimpleStreamImpl$collect$lambda$_25_0();
7980
+ $errorReport.$_08 = var$2;
7981
+ $errorReport.$_12 = var$3;
7982
+ if (!jusi_WrappingStreamImpl_next(var$4, $errorReport))
7983
+ break;
7728
7984
  }
7729
- $this.$assemblyStatement = jl_AbstractStringBuilder_toString(var$5);
7730
- $this.$machineStatement0 = $programStatement.$machineStatement;
7985
+ $this.$errors1 = var$3;
7731
7986
  };
7732
- var asr_JsProgramStatement__init_ = (var_0) => {
7733
- let var_1 = new asr_JsProgramStatement();
7734
- asr_JsProgramStatement__init_0(var_1, var_0);
7987
+ var asr_JsCompilationResult__init_ = (var_0) => {
7988
+ let var_1 = new asr_JsCompilationResult();
7989
+ asr_JsCompilationResult__init_0(var_1, var_0);
7735
7990
  return var_1;
7736
7991
  };
7737
- var asr_JsProgramStatement_getSourceLine$exported$0 = (var$1) => {
7738
- return var$1.$sourceLine1;
7739
- };
7740
- var asr_JsProgramStatement_getAssemblyStatement$exported$1 = (var$1) => {
7741
- return $rt_ustr(var$1.$assemblyStatement);
7742
- };
7743
- var asr_JsProgramStatement_getSource$exported$2 = (var$1) => {
7744
- return $rt_ustr(var$1.$source3);
7745
- };
7746
- var asr_JsProgramStatement_getAddress$exported$3 = (var$1) => {
7747
- return var$1.$address2;
7748
- };
7749
- var asr_JsProgramStatement_getBinaryStatement$exported$4 = (var$1) => {
7750
- return var$1.$binaryStatement0;
7751
- };
7752
- var asr_JsProgramStatement_getMachineStatement$exported$5 = (var$1) => {
7753
- return $rt_ustr(var$1.$machineStatement0);
7754
- };
7755
- var ju_Arrays = $rt_classWithoutFields();
7756
- var ju_Arrays_copyOf1 = ($array, $length) => {
7757
- let $result, var$4, $sz, $i;
7758
- $array = $array.data;
7759
- $result = $rt_createCharArray($length);
7760
- var$4 = $result.data;
7761
- $sz = jl_Math_min($length, $array.length);
7762
- $i = 0;
7763
- while ($i < $sz) {
7764
- var$4[$i] = $array[$i];
7765
- $i = $i + 1 | 0;
7766
- }
7767
- return $result;
7768
- };
7769
- var ju_Arrays_copyOf0 = ($array, $length) => {
7770
- let $result, var$4, $sz, $i;
7771
- $array = $array.data;
7772
- $result = $rt_createByteArray($length);
7773
- var$4 = $result.data;
7774
- $sz = jl_Math_min($length, $array.length);
7775
- $i = 0;
7776
- while ($i < $sz) {
7777
- var$4[$i] = $array[$i];
7778
- $i = $i + 1 | 0;
7779
- }
7780
- return $result;
7781
- };
7782
- var ju_Arrays_copyOf2 = ($array, $length) => {
7783
- let $result, var$4, $sz, $i;
7784
- $array = $array.data;
7785
- $result = $rt_createIntArray($length);
7786
- var$4 = $result.data;
7787
- $sz = jl_Math_min($length, $array.length);
7788
- $i = 0;
7789
- while ($i < $sz) {
7790
- var$4[$i] = $array[$i];
7791
- $i = $i + 1 | 0;
7792
- }
7793
- return $result;
7794
- };
7795
- var ju_Arrays_copyOf = ($original, $newLength) => {
7796
- let var$3, $result, $sz, $i;
7797
- var$3 = $original.data;
7798
- $result = jlr_Array_newInstance(jl_Class_getComponentType(jl_Object_getClass($original)), $newLength);
7799
- $sz = jl_Math_min($newLength, var$3.length);
7800
- $i = 0;
7801
- while ($i < $sz) {
7802
- $result.data[$i] = var$3[$i];
7803
- $i = $i + 1 | 0;
7804
- }
7805
- return $result;
7806
- };
7807
- var ju_Arrays_fill0 = ($a, $fromIndex, $toIndex, $val) => {
7808
- let var$5, var$6, var$7;
7809
- if ($fromIndex > $toIndex) {
7810
- var$5 = new jl_IllegalArgumentException();
7811
- jl_Throwable__init_(var$5);
7812
- $rt_throw(var$5);
7813
- }
7814
- while ($fromIndex < $toIndex) {
7815
- var$6 = $a.data;
7816
- var$7 = $fromIndex + 1 | 0;
7817
- var$6[$fromIndex] = $val;
7818
- $fromIndex = var$7;
7819
- }
7820
- };
7821
- var ju_Arrays_fill = ($a, $val) => {
7822
- ju_Arrays_fill0($a, 0, $a.data.length, $val);
7823
- };
7824
- var ju_Arrays_sort = ($a) => {
7825
- let var$2, $second, $chunkSize, var$5, $i, var$7, var$8, var$9, $i_0, var$11, var$12, var$13, var$14, var$15, var$16, var$17;
7826
- var$2 = $a.data.length;
7827
- if (!var$2)
7828
- return;
7829
- $second = $rt_createIntArray(var$2);
7830
- $chunkSize = 1;
7831
- var$5 = $a;
7832
- while ($chunkSize < var$2) {
7833
- $i = 0;
7834
- while (true) {
7835
- var$7 = var$5.data;
7836
- var$8 = var$7.length;
7837
- if ($i >= var$8)
7838
- break;
7839
- var$9 = jl_Math_min(var$8, $i + $chunkSize | 0);
7840
- $i_0 = $i + (2 * $chunkSize | 0) | 0;
7841
- var$8 = jl_Math_min(var$8, $i_0);
7842
- var$11 = $i;
7843
- var$12 = var$9;
7844
- a: {
7845
- b: {
7846
- while ($i != var$9) {
7847
- if (var$12 == var$8)
7848
- break b;
7849
- var$13 = var$7[$i];
7850
- var$14 = var$7[var$12];
7851
- if (var$13 > var$14) {
7852
- var$15 = $second.data;
7853
- var$16 = var$11 + 1 | 0;
7854
- var$15[var$11] = var$14;
7855
- var$12 = var$12 + 1 | 0;
7856
- } else {
7857
- var$15 = $second.data;
7858
- var$16 = var$11 + 1 | 0;
7859
- var$15[var$11] = var$13;
7860
- $i = $i + 1 | 0;
7861
- }
7862
- var$11 = var$16;
7863
- }
7864
- while (true) {
7865
- if (var$12 >= var$8)
7866
- break a;
7867
- var$15 = $second.data;
7868
- var$17 = var$11 + 1 | 0;
7869
- $i = var$12 + 1 | 0;
7870
- var$15[var$11] = var$7[var$12];
7871
- var$11 = var$17;
7872
- var$12 = $i;
7873
- }
7874
- }
7875
- while (true) {
7876
- if ($i >= var$9)
7877
- break a;
7878
- var$15 = $second.data;
7879
- var$17 = var$11 + 1 | 0;
7880
- var$8 = $i + 1 | 0;
7881
- var$15[var$11] = var$7[$i];
7882
- var$11 = var$17;
7883
- $i = var$8;
7884
- }
7885
- }
7886
- $i = $i_0;
7887
- }
7888
- $chunkSize = $chunkSize * 2 | 0;
7889
- var$15 = var$5;
7890
- var$5 = $second;
7891
- $second = var$15;
7892
- }
7893
- c: {
7894
- if (var$5 !== $a) {
7895
- $i_0 = 0;
7896
- while (true) {
7897
- $a = var$5.data;
7898
- if ($i_0 >= $a.length)
7899
- break c;
7900
- $second.data[$i_0] = $a[$i_0];
7901
- $i_0 = $i_0 + 1 | 0;
7902
- }
7903
- }
7904
- }
7905
- };
7906
- var ju_Arrays_binarySearch = ($a, $key) => {
7907
- let var$3, var$4, var$5, var$6, var$7;
7908
- $a = $a.data;
7909
- var$3 = 0;
7910
- var$4 = $a.length;
7911
- if (var$3 > var$4) {
7912
- var$5 = new jl_IllegalArgumentException();
7913
- jl_Throwable__init_(var$5);
7914
- $rt_throw(var$5);
7915
- }
7916
- var$6 = var$4 - 1 | 0;
7917
- a: {
7918
- while (true) {
7919
- if (var$3 > var$6) {
7920
- var$4 = (-var$3 | 0) - 1 | 0;
7921
- break a;
7922
- }
7923
- var$4 = (var$3 + var$6 | 0) / 2 | 0;
7924
- var$7 = $a[var$4];
7925
- if (var$7 == $key)
7926
- break;
7927
- if ($key >= var$7)
7928
- var$3 = var$4 + 1 | 0;
7929
- else
7930
- var$6 = var$4 - 1 | 0;
7931
- }
7932
- }
7933
- return var$4;
7934
- };
7935
- var ju_Arrays_stream = ($array) => {
7936
- let var$2, var$3, var$4;
7937
- var$2 = $array.data;
7938
- var$3 = new jusi_ArrayStreamImpl();
7939
- var$4 = var$2.length;
7940
- var$3.$array6 = $array;
7941
- var$3.$index1 = 0;
7942
- var$3.$end1 = var$4;
7943
- var$3.$size2 = var$4 - 0 | 0;
7944
- return var$3;
7945
- };
7946
- var asr_JsRiscV$getUndoStack$lambda$_26_0 = $rt_classWithoutFields();
7947
- var asr_JsRiscV$getUndoStack$lambda$_26_0_apply = (var$0, var$1) => {
7948
- let var$2, var$3;
7949
- var$1 = var$1;
7950
- var$2 = new asr_JsBackStep();
7951
- var$3 = var$1.$action;
7952
- var$2.$action0 = var$3 === null ? -1 : var$3.$ordinal0;
7953
- var$2.$pc2 = var$1.$pc1;
7954
- var$2.$param10 = var$1.$param1;
7955
- var$2.$param20 = Long_lo(var$1.$param2);
7956
- return var$2;
7957
- };
7958
- var asr_JsRiscV$getUndoStack$lambda$_26_1 = $rt_classWithoutFields();
7959
- var asr_JsRiscV$getUndoStack$lambda$_26_1_apply = (var$0, var$1) => {
7960
- asr_JsRiscV_$callClinit();
7961
- return $rt_createArray(asr_JsBackStep, var$1);
7962
- };
7963
- function asr_JsBackStep() {
7964
- let a = this;
7965
- jl_Object.call(a);
7966
- a.$action0 = 0;
7967
- a.$pc2 = 0;
7968
- a.$param10 = 0;
7969
- a.$param20 = 0;
7970
- }
7971
- var asr_JsBackStep_getPc$exported$0 = (var$1) => {
7972
- return var$1.$pc2;
7973
- };
7974
- var asr_JsBackStep_getParam2$exported$1 = (var$1) => {
7975
- return var$1.$param20;
7976
- };
7977
- var asr_JsBackStep_getAction$exported$2 = (var$1) => {
7978
- return var$1.$action0;
7979
- };
7980
- var asr_JsBackStep_getParam1$exported$3 = (var$1) => {
7981
- return var$1.$param10;
7992
+ var asr_JsCompilationResult_getErrors$exported$0 = (var$1) => {
7993
+ let var$2;
7994
+ var$1 = var$1.$errors1;
7995
+ var$2 = $rt_createArray(asr_JsCompilationResult$JsCompilationError, 0);
7996
+ return otji_JS_wrap(ju_AbstractCollection_toArray(var$1, var$2));
7982
7997
  };
7983
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0 = $rt_classWithoutFields();
7984
- var asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply = (var$0, var$1) => {
7985
- let var$2, var$3, var$4, var$5;
7998
+ var asr_JsCompilationResult_hasErrors$exported$1 = (var$1) => {
7986
7999
  var$1 = var$1;
7987
- asr_JsRiscV_$callClinit();
7988
- var$2 = $rt_createArray(asr_JsRiscVToken, asra_TokenList_size(var$1));
7989
- var$3 = var$2.data;
7990
- var$4 = 0;
7991
- while (var$4 < asra_TokenList_size(var$1)) {
7992
- var$3[var$4] = asr_JsRiscVToken__init_(asra_TokenList_get(var$1, var$4));
7993
- var$4 = var$4 + 1 | 0;
7994
- }
7995
- var$5 = new asr_JsRiscVTokenizedLine();
7996
- var$5.$line0 = var$1.$processedLine;
7997
- var$5.$tokens0 = var$2;
7998
- return var$5;
8000
+ return !!(ju_AbstractCollection_isEmpty(var$1.$errors1) ? 0 : 1);
7999
8001
  };
8000
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1 = $rt_classWithoutFields();
8001
- var asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply = (var$0, var$1) => {
8002
- asr_JsRiscV_$callClinit();
8003
- return $rt_createArray(asr_JsRiscVTokenizedLine, var$1);
8002
+ var asr_JsCompilationResult_getReport$exported$2 = (var$1) => {
8003
+ return $rt_ustr(var$1.$report);
8004
8004
  };
8005
- function asr_JsRiscVTokenizedLine() {
8006
- let a = this;
8007
- jl_Object.call(a);
8008
- a.$line0 = null;
8009
- a.$tokens0 = null;
8005
+ function asr_AssemblyException() {
8006
+ jl_Exception.call(this);
8007
+ this.$errs = null;
8010
8008
  }
8011
- var asr_JsRiscVTokenizedLine_getLine$exported$0 = (var$1) => {
8012
- return $rt_ustr(var$1.$line0);
8009
+ var asr_AssemblyException__init_0 = ($this, $errs) => {
8010
+ jl_Throwable__init_0($this, asr_ErrorList_generateErrorAndWarningReport($errs));
8011
+ $this.$errs = $errs;
8013
8012
  };
8014
- var asr_JsRiscVTokenizedLine_getTokens$exported$1 = (var$1) => {
8015
- return otji_JS_wrap(var$1.$tokens0);
8013
+ var asr_AssemblyException__init_ = (var_0) => {
8014
+ let var_1 = new asr_AssemblyException();
8015
+ asr_AssemblyException__init_0(var_1, var_0);
8016
+ return var_1;
8016
8017
  };
8017
8018
  function asr_JsStackFrame() {
8018
8019
  let a = this;
@@ -8038,8 +8039,6 @@ var asr_JsStackFrame_getSp$exported$3 = (var$1) => {
8038
8039
  var asr_JsStackFrame_getFp$exported$4 = (var$1) => {
8039
8040
  return var$1.$fp;
8040
8041
  };
8041
- var juf_ToIntFunction = $rt_classWithoutFields(0);
8042
- var asr_JsRiscV$getRegistersValues$lambda$_25_0 = $rt_classWithoutFields();
8043
8042
  var ju_Map$Entry = $rt_classWithoutFields(0);
8044
8043
  function ju_MapEntry() {
8045
8044
  let a = this;
@@ -8589,123 +8588,6 @@ var asr_RISCVFile_getName = ($this) => {
8589
8588
  return $this.$name2;
8590
8589
  };
8591
8590
  var jl_StringIndexOutOfBoundsException = $rt_classWithoutFields(jl_IndexOutOfBoundsException);
8592
- function asr_JsCompilationResult$_init_$lambda$_0_0() {
8593
- jl_Object.call(this);
8594
- this.$_06 = null;
8595
- }
8596
- var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8597
- let var$2, var$3;
8598
- var$1 = var$1;
8599
- var$2 = var$0.$_06;
8600
- var$3 = new asr_JsCompilationResult$JsCompilationError();
8601
- var$3.$this$016 = var$2;
8602
- var$3.$isWarning0 = var$1.$isWarning;
8603
- var$3.$message2 = var$1.$message0;
8604
- var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8605
- var$3.$filename2 = var$1.$filename0;
8606
- var$3.$lineNumber0 = var$1.$line;
8607
- var$3.$columnNumber = var$1.$position2;
8608
- return var$3;
8609
- };
8610
- var juf_Supplier = $rt_classWithoutFields(0);
8611
- var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8612
- var juf_BiConsumer = $rt_classWithoutFields(0);
8613
- var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8614
- var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8615
- function asrrh_Register() {
8616
- let a = this;
8617
- ju_Observable.call(a);
8618
- a.$name1 = null;
8619
- a.$number = 0;
8620
- a.$resetValue0 = Long_ZERO;
8621
- a.$value2 = Long_ZERO;
8622
- }
8623
- var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
8624
- ju_Observable__init_($this);
8625
- $this.$name1 = $n;
8626
- $this.$number = $num;
8627
- $this.$value2 = $val;
8628
- $this.$resetValue0 = $val;
8629
- };
8630
- var asrrh_Register__init_ = (var_0, var_1, var_2) => {
8631
- let var_3 = new asrrh_Register();
8632
- asrrh_Register__init_0(var_3, var_0, var_1, var_2);
8633
- return var_3;
8634
- };
8635
- var asrrh_Register_getName = ($this) => {
8636
- return $this.$name1;
8637
- };
8638
- var asrrh_Register_getValue = ($this) => {
8639
- jl_Object_monitorEnterSync($this);
8640
- try {
8641
- asrrh_Register_notifyAnyObservers($this, 0);
8642
- return $this.$value2;
8643
- } finally {
8644
- jl_Object_monitorExitSync($this);
8645
- }
8646
- };
8647
- var asrrh_Register_getValueNoNotify = ($this) => {
8648
- jl_Object_monitorEnterSync($this);
8649
- try {
8650
- return $this.$value2;
8651
- } finally {
8652
- jl_Object_monitorExitSync($this);
8653
- }
8654
- };
8655
- var asrrh_Register_getNumber = ($this) => {
8656
- return $this.$number;
8657
- };
8658
- var asrrh_Register_setValue = ($this, $val) => {
8659
- let $old;
8660
- jl_Object_monitorEnterSync($this);
8661
- try {
8662
- $old = $this.$value2;
8663
- $this.$value2 = $val;
8664
- asrrh_Register_notifyAnyObservers($this, 1);
8665
- return $old;
8666
- } finally {
8667
- jl_Object_monitorExitSync($this);
8668
- }
8669
- };
8670
- var asrrh_Register_setValueBackdoor = ($this, $val) => {
8671
- let $old;
8672
- jl_Object_monitorEnterSync($this);
8673
- try {
8674
- $old = $this.$value2;
8675
- $this.$value2 = $val;
8676
- return $old;
8677
- } finally {
8678
- jl_Object_monitorExitSync($this);
8679
- }
8680
- };
8681
- var asrrh_Register_resetValue = ($this) => {
8682
- jl_Object_monitorEnterSync($this);
8683
- try {
8684
- $this.$value2 = $this.$resetValue0;
8685
- } finally {
8686
- jl_Object_monitorExitSync($this);
8687
- }
8688
- };
8689
- var asrrh_Register_changeResetValue = ($this, $reset) => {
8690
- jl_Object_monitorEnterSync($this);
8691
- try {
8692
- $this.$resetValue0 = $reset;
8693
- } finally {
8694
- jl_Object_monitorExitSync($this);
8695
- }
8696
- };
8697
- var asrrh_Register_notifyAnyObservers = ($this, $type) => {
8698
- let var$2, var$3, var$4;
8699
- var$2 = $this;
8700
- if (ju_Observable_countObservers(var$2) > 0) {
8701
- ju_Observable_setChanged(var$2);
8702
- var$3 = new asrrh_RegisterAccessNotice();
8703
- var$4 = $this.$name1;
8704
- asrrh_AccessNotice__init_(var$3, $type);
8705
- var$3.$registerName = var$4;
8706
- ju_Observable_notifyObservers(var$2, var$3);
8707
- }
8708
- };
8709
8591
  function asrs_BackStepper() {
8710
8592
  let a = this;
8711
8593
  jl_Object.call(a);
@@ -8923,6 +8805,123 @@ var jusi_ArrayStreamImpl_next = ($this, $consumer) => {
8923
8805
  var jusi_ArrayStreamImpl_estimateSize = ($this) => {
8924
8806
  return $this.$size2;
8925
8807
  };
8808
+ function asrrh_Register() {
8809
+ let a = this;
8810
+ ju_Observable.call(a);
8811
+ a.$name1 = null;
8812
+ a.$number = 0;
8813
+ a.$resetValue0 = Long_ZERO;
8814
+ a.$value2 = Long_ZERO;
8815
+ }
8816
+ var asrrh_Register__init_0 = ($this, $n, $num, $val) => {
8817
+ ju_Observable__init_($this);
8818
+ $this.$name1 = $n;
8819
+ $this.$number = $num;
8820
+ $this.$value2 = $val;
8821
+ $this.$resetValue0 = $val;
8822
+ };
8823
+ var asrrh_Register__init_ = (var_0, var_1, var_2) => {
8824
+ let var_3 = new asrrh_Register();
8825
+ asrrh_Register__init_0(var_3, var_0, var_1, var_2);
8826
+ return var_3;
8827
+ };
8828
+ var asrrh_Register_getName = ($this) => {
8829
+ return $this.$name1;
8830
+ };
8831
+ var asrrh_Register_getValue = ($this) => {
8832
+ jl_Object_monitorEnterSync($this);
8833
+ try {
8834
+ asrrh_Register_notifyAnyObservers($this, 0);
8835
+ return $this.$value2;
8836
+ } finally {
8837
+ jl_Object_monitorExitSync($this);
8838
+ }
8839
+ };
8840
+ var asrrh_Register_getValueNoNotify = ($this) => {
8841
+ jl_Object_monitorEnterSync($this);
8842
+ try {
8843
+ return $this.$value2;
8844
+ } finally {
8845
+ jl_Object_monitorExitSync($this);
8846
+ }
8847
+ };
8848
+ var asrrh_Register_getNumber = ($this) => {
8849
+ return $this.$number;
8850
+ };
8851
+ var asrrh_Register_setValue = ($this, $val) => {
8852
+ let $old;
8853
+ jl_Object_monitorEnterSync($this);
8854
+ try {
8855
+ $old = $this.$value2;
8856
+ $this.$value2 = $val;
8857
+ asrrh_Register_notifyAnyObservers($this, 1);
8858
+ return $old;
8859
+ } finally {
8860
+ jl_Object_monitorExitSync($this);
8861
+ }
8862
+ };
8863
+ var asrrh_Register_setValueBackdoor = ($this, $val) => {
8864
+ let $old;
8865
+ jl_Object_monitorEnterSync($this);
8866
+ try {
8867
+ $old = $this.$value2;
8868
+ $this.$value2 = $val;
8869
+ return $old;
8870
+ } finally {
8871
+ jl_Object_monitorExitSync($this);
8872
+ }
8873
+ };
8874
+ var asrrh_Register_resetValue = ($this) => {
8875
+ jl_Object_monitorEnterSync($this);
8876
+ try {
8877
+ $this.$value2 = $this.$resetValue0;
8878
+ } finally {
8879
+ jl_Object_monitorExitSync($this);
8880
+ }
8881
+ };
8882
+ var asrrh_Register_changeResetValue = ($this, $reset) => {
8883
+ jl_Object_monitorEnterSync($this);
8884
+ try {
8885
+ $this.$resetValue0 = $reset;
8886
+ } finally {
8887
+ jl_Object_monitorExitSync($this);
8888
+ }
8889
+ };
8890
+ var asrrh_Register_notifyAnyObservers = ($this, $type) => {
8891
+ let var$2, var$3, var$4;
8892
+ var$2 = $this;
8893
+ if (ju_Observable_countObservers(var$2) > 0) {
8894
+ ju_Observable_setChanged(var$2);
8895
+ var$3 = new asrrh_RegisterAccessNotice();
8896
+ var$4 = $this.$name1;
8897
+ asrrh_AccessNotice__init_(var$3, $type);
8898
+ var$3.$registerName = var$4;
8899
+ ju_Observable_notifyObservers(var$2, var$3);
8900
+ }
8901
+ };
8902
+ function asr_JsCompilationResult$_init_$lambda$_0_0() {
8903
+ jl_Object.call(this);
8904
+ this.$_06 = null;
8905
+ }
8906
+ var asr_JsCompilationResult$_init_$lambda$_0_0_apply = (var$0, var$1) => {
8907
+ let var$2, var$3;
8908
+ var$1 = var$1;
8909
+ var$2 = var$0.$_06;
8910
+ var$3 = new asr_JsCompilationResult$JsCompilationError();
8911
+ var$3.$this$016 = var$2;
8912
+ var$3.$isWarning0 = var$1.$isWarning;
8913
+ var$3.$message2 = var$1.$message0;
8914
+ var$3.$macroExpansionHistory0 = asr_ErrorMessage_getMacroExpansionHistory(var$1);
8915
+ var$3.$filename2 = var$1.$filename0;
8916
+ var$3.$lineNumber0 = var$1.$line;
8917
+ var$3.$columnNumber = var$1.$position2;
8918
+ return var$3;
8919
+ };
8920
+ var juf_Supplier = $rt_classWithoutFields(0);
8921
+ var asr_JsCompilationResult$_init_$lambda$_0_1 = $rt_classWithoutFields();
8922
+ var juf_BiConsumer = $rt_classWithoutFields(0);
8923
+ var asr_JsCompilationResult$_init_$lambda$_0_2 = $rt_classWithoutFields();
8924
+ var asr_JsCompilationResult$_init_$lambda$_0_3 = $rt_classWithoutFields();
8926
8925
  var jl_Math = $rt_classWithoutFields();
8927
8926
  var jl_Math_pow = ($x, $y) => {
8928
8927
  return jl_Math_powImpl($x, $y);
@@ -12197,6 +12196,85 @@ var ju_Comparator$NaturalOrder_compare = ($this, $o1, $o2) => {
12197
12196
  var ju_Comparator$NaturalOrder__clinit_ = () => {
12198
12197
  ju_Comparator$NaturalOrder_INSTANCE = new ju_Comparator$NaturalOrder();
12199
12198
  };
12199
+ function asrrh_RegisterBlock() {
12200
+ let a = this;
12201
+ jl_Object.call(a);
12202
+ a.$regFile = null;
12203
+ a.$prefix = 0;
12204
+ }
12205
+ var asrrh_RegisterBlock__init_ = ($this, $prefix, $registers) => {
12206
+ $this.$prefix = $prefix;
12207
+ $this.$regFile = $registers;
12208
+ };
12209
+ var asrrh_RegisterBlock__init_0 = (var_0, var_1) => {
12210
+ let var_2 = new asrrh_RegisterBlock();
12211
+ asrrh_RegisterBlock__init_(var_2, var_0, var_1);
12212
+ return var_2;
12213
+ };
12214
+ var asrrh_RegisterBlock_updateRegister = ($this, $num, $val) => {
12215
+ let var$3;
12216
+ var$3 = asrrh_RegisterBlock_getRegister0($this, $num);
12217
+ return var$3 !== null ? var$3.$setValue($val) : Long_ZERO;
12218
+ };
12219
+ var asrrh_RegisterBlock_getValue = ($this, $num) => {
12220
+ return asrrh_RegisterBlock_getRegister0($this, $num).$getValue();
12221
+ };
12222
+ var asrrh_RegisterBlock_getValue0 = ($this, $name) => {
12223
+ return asrrh_RegisterBlock_getRegister($this, $name).$getValue();
12224
+ };
12225
+ var asrrh_RegisterBlock_getRegister0 = ($this, $num) => {
12226
+ let var$2, var$3, var$4, $r;
12227
+ var$2 = $this.$regFile.data;
12228
+ var$3 = var$2.length;
12229
+ var$4 = 0;
12230
+ while (true) {
12231
+ if (var$4 >= var$3)
12232
+ return null;
12233
+ $r = var$2[var$4];
12234
+ if ($r.$number == $num)
12235
+ break;
12236
+ var$4 = var$4 + 1 | 0;
12237
+ }
12238
+ return $r;
12239
+ };
12240
+ var asrrh_RegisterBlock_getRegister = ($this, $name) => {
12241
+ let var$2, var$3, var$4, $num, $r;
12242
+ if ($name.$nativeString.length < 2)
12243
+ return null;
12244
+ var$2 = $this.$regFile.data;
12245
+ var$3 = var$2.length;
12246
+ var$4 = 0;
12247
+ while (true) {
12248
+ if (var$4 >= var$3) {
12249
+ if (jl_String_charAt($name, 0) != $this.$prefix)
12250
+ return null;
12251
+ if (!jl_String_charAt($name, 1)) {
12252
+ if ($name.$nativeString.length > 2)
12253
+ return null;
12254
+ return asrrh_RegisterBlock_getRegister0($this, 0);
12255
+ }
12256
+ $num = asru_Binary_stringToIntFast(jl_String_substring0($name, 1));
12257
+ if ($num === null)
12258
+ return null;
12259
+ return asrrh_RegisterBlock_getRegister0($this, $num.$value1);
12260
+ }
12261
+ $r = var$2[var$4];
12262
+ if (jl_String_equals($r.$name1, $name))
12263
+ break;
12264
+ var$4 = var$4 + 1 | 0;
12265
+ }
12266
+ return $r;
12267
+ };
12268
+ var asrrh_RegisterBlock_resetRegisters = ($this) => {
12269
+ let var$1, var$2, var$3;
12270
+ var$1 = $this.$regFile.data;
12271
+ var$2 = var$1.length;
12272
+ var$3 = 0;
12273
+ while (var$3 < var$2) {
12274
+ var$1[var$3].$resetValue();
12275
+ var$3 = var$3 + 1 | 0;
12276
+ }
12277
+ };
12200
12278
  function asr_ErrorList() {
12201
12279
  let a = this;
12202
12280
  jl_Object.call(a);
@@ -12282,85 +12360,6 @@ var asr_ErrorList_generateReport = ($this, $isWarning) => {
12282
12360
  }
12283
12361
  return jl_AbstractStringBuilder_toString($report);
12284
12362
  };
12285
- function asrrh_RegisterBlock() {
12286
- let a = this;
12287
- jl_Object.call(a);
12288
- a.$regFile = null;
12289
- a.$prefix = 0;
12290
- }
12291
- var asrrh_RegisterBlock__init_ = ($this, $prefix, $registers) => {
12292
- $this.$prefix = $prefix;
12293
- $this.$regFile = $registers;
12294
- };
12295
- var asrrh_RegisterBlock__init_0 = (var_0, var_1) => {
12296
- let var_2 = new asrrh_RegisterBlock();
12297
- asrrh_RegisterBlock__init_(var_2, var_0, var_1);
12298
- return var_2;
12299
- };
12300
- var asrrh_RegisterBlock_updateRegister = ($this, $num, $val) => {
12301
- let var$3;
12302
- var$3 = asrrh_RegisterBlock_getRegister0($this, $num);
12303
- return var$3 !== null ? var$3.$setValue($val) : Long_ZERO;
12304
- };
12305
- var asrrh_RegisterBlock_getValue = ($this, $num) => {
12306
- return asrrh_RegisterBlock_getRegister0($this, $num).$getValue();
12307
- };
12308
- var asrrh_RegisterBlock_getValue0 = ($this, $name) => {
12309
- return asrrh_RegisterBlock_getRegister($this, $name).$getValue();
12310
- };
12311
- var asrrh_RegisterBlock_getRegister0 = ($this, $num) => {
12312
- let var$2, var$3, var$4, $r;
12313
- var$2 = $this.$regFile.data;
12314
- var$3 = var$2.length;
12315
- var$4 = 0;
12316
- while (true) {
12317
- if (var$4 >= var$3)
12318
- return null;
12319
- $r = var$2[var$4];
12320
- if ($r.$number == $num)
12321
- break;
12322
- var$4 = var$4 + 1 | 0;
12323
- }
12324
- return $r;
12325
- };
12326
- var asrrh_RegisterBlock_getRegister = ($this, $name) => {
12327
- let var$2, var$3, var$4, $num, $r;
12328
- if ($name.$nativeString.length < 2)
12329
- return null;
12330
- var$2 = $this.$regFile.data;
12331
- var$3 = var$2.length;
12332
- var$4 = 0;
12333
- while (true) {
12334
- if (var$4 >= var$3) {
12335
- if (jl_String_charAt($name, 0) != $this.$prefix)
12336
- return null;
12337
- if (!jl_String_charAt($name, 1)) {
12338
- if ($name.$nativeString.length > 2)
12339
- return null;
12340
- return asrrh_RegisterBlock_getRegister0($this, 0);
12341
- }
12342
- $num = asru_Binary_stringToIntFast(jl_String_substring0($name, 1));
12343
- if ($num === null)
12344
- return null;
12345
- return asrrh_RegisterBlock_getRegister0($this, $num.$value1);
12346
- }
12347
- $r = var$2[var$4];
12348
- if (jl_String_equals($r.$name1, $name))
12349
- break;
12350
- var$4 = var$4 + 1 | 0;
12351
- }
12352
- return $r;
12353
- };
12354
- var asrrh_RegisterBlock_resetRegisters = ($this) => {
12355
- let var$1, var$2, var$3;
12356
- var$1 = $this.$regFile.data;
12357
- var$2 = var$1.length;
12358
- var$3 = 0;
12359
- while (var$3 < var$2) {
12360
- var$1[var$3].$resetValue();
12361
- var$3 = var$3 + 1 | 0;
12362
- }
12363
- };
12364
12363
  function asrrh_StackFrame() {
12365
12364
  let a = this;
12366
12365
  jl_Object.call(a);
@@ -13963,195 +13962,6 @@ var jusi_StreamOverSpliterator_next = ($this, $consumer) => {
13963
13962
  var jusi_StreamOverSpliterator_estimateSize = ($this) => {
13964
13963
  return Long_lo(Long_fromInt($this.$spliterator0.$collection.$size()));
13965
13964
  };
13966
- var jm_Conversion = $rt_classWithoutFields();
13967
- var jm_Conversion_digitFitInInt = null;
13968
- var jm_Conversion_bigRadices = null;
13969
- var jm_Conversion_toDecimalScaledString = ($val, $scale) => {
13970
- let $sign, $numberLength, $digits, $result1, $resLengthInChars, $result, $v, $i1, $v_0, $v_1, $v_2, var$14, $temp, var$16, $negNumber, $result11, $j, $res, $resDigit, $delta, $i, $exponent, $insertPoint, $startPoint;
13971
- $sign = $val.$sign0;
13972
- $numberLength = $val.$numberLength;
13973
- $digits = $val.$digits;
13974
- if (!$sign) {
13975
- switch ($scale) {
13976
- case 0:
13977
- break;
13978
- case 1:
13979
- return $rt_s(1083);
13980
- case 2:
13981
- return $rt_s(1084);
13982
- case 3:
13983
- return $rt_s(1085);
13984
- case 4:
13985
- return $rt_s(1086);
13986
- case 5:
13987
- return $rt_s(1087);
13988
- case 6:
13989
- return $rt_s(1088);
13990
- default:
13991
- $result1 = new jl_StringBuilder();
13992
- jl_AbstractStringBuilder__init_($result1);
13993
- if ($scale >= 0)
13994
- jl_AbstractStringBuilder_append1($result1, $rt_s(1089));
13995
- else
13996
- jl_AbstractStringBuilder_append1($result1, $rt_s(1090));
13997
- jl_AbstractStringBuilder_append($result1, -$scale | 0);
13998
- return jl_AbstractStringBuilder_toString($result1);
13999
- }
14000
- return $rt_s(6);
14001
- }
14002
- $resLengthInChars = (($numberLength * 10 | 0) + 1 | 0) + 7 | 0;
14003
- $result = $rt_createCharArray($resLengthInChars + 1 | 0);
14004
- if ($numberLength == 1) {
14005
- $v = $digits.data[0];
14006
- if ($v >= 0) {
14007
- $i1 = $resLengthInChars;
14008
- while (true) {
14009
- $digits = $result.data;
14010
- $v_0 = $v / 10 | 0;
14011
- $i1 = $i1 + -1 | 0;
14012
- $digits[$i1] = (48 + ($v - ($v_0 * 10 | 0) | 0) | 0) & 65535;
14013
- if (!$v_0)
14014
- break;
14015
- $v = $v_0;
14016
- }
14017
- } else {
14018
- $v_1 = Long_and(Long_fromInt($v), Long_create(4294967295, 0));
14019
- $i1 = $resLengthInChars;
14020
- while (true) {
14021
- $digits = $result.data;
14022
- $v_2 = Long_div($v_1, Long_fromInt(10));
14023
- $i1 = $i1 + -1 | 0;
14024
- $digits[$i1] = (48 + Long_lo(Long_sub($v_1, Long_mul($v_2, Long_fromInt(10)))) | 0) & 65535;
14025
- if (Long_eq($v_2, Long_ZERO))
14026
- break;
14027
- $v_1 = $v_2;
14028
- }
14029
- }
14030
- } else {
14031
- var$14 = $result.data;
14032
- $temp = $rt_createIntArray($numberLength);
14033
- var$16 = $temp.data;
14034
- jl_System_fastArraycopy($digits, 0, $temp, 0, $numberLength);
14035
- $negNumber = $resLengthInChars;
14036
- a: while (true) {
14037
- $result11 = Long_ZERO;
14038
- $j = $numberLength - 1 | 0;
14039
- $i1 = $j;
14040
- while ($i1 >= 0) {
14041
- $res = jm_Conversion_divideLongByBillion(Long_add(Long_shl($result11, 32), Long_and(Long_fromInt(var$16[$i1]), Long_create(4294967295, 0))));
14042
- var$16[$i1] = Long_lo($res);
14043
- $result11 = Long_fromInt(Long_hi($res));
14044
- $i1 = $i1 + -1 | 0;
14045
- }
14046
- $resDigit = Long_lo($result11);
14047
- $i1 = $negNumber;
14048
- while (true) {
14049
- $i1 = $i1 + -1 | 0;
14050
- var$14[$i1] = (48 + ($resDigit % 10 | 0) | 0) & 65535;
14051
- $resDigit = $resDigit / 10 | 0;
14052
- if (!$resDigit)
14053
- break;
14054
- if (!$i1)
14055
- break;
14056
- }
14057
- $delta = (9 - $negNumber | 0) + $i1 | 0;
14058
- $i = 0;
14059
- while ($i < $delta && $i1 > 0) {
14060
- $i1 = $i1 + -1 | 0;
14061
- var$14[$i1] = 48;
14062
- $i = $i + 1 | 0;
14063
- }
14064
- while (!var$16[$j]) {
14065
- if (!$j)
14066
- break a;
14067
- $j = $j + -1 | 0;
14068
- }
14069
- $numberLength = $j + 1 | 0;
14070
- $negNumber = $i1;
14071
- }
14072
- while (var$14[$i1] == 48) {
14073
- $i1 = $i1 + 1 | 0;
14074
- }
14075
- }
14076
- $negNumber = $sign >= 0 ? 0 : 1;
14077
- $sign = $resLengthInChars - $i1 | 0;
14078
- $exponent = ($sign - $scale | 0) - 1 | 0;
14079
- if (!$scale) {
14080
- if ($negNumber) {
14081
- $digits = $result.data;
14082
- $i1 = $i1 + -1 | 0;
14083
- $digits[$i1] = 45;
14084
- }
14085
- return jl_String__init_0($result, $i1, $resLengthInChars - $i1 | 0);
14086
- }
14087
- if ($scale > 0 && $exponent >= -6) {
14088
- if ($exponent < 0) {
14089
- $digits = $result.data;
14090
- $j = 2;
14091
- $scale = (-$exponent | 0) + 1 | 0;
14092
- while ($j < $scale) {
14093
- $i1 = $i1 + -1 | 0;
14094
- $digits[$i1] = 48;
14095
- $j = $j + 1 | 0;
14096
- }
14097
- $scale = $i1 + -1 | 0;
14098
- $digits[$scale] = 46;
14099
- $scale = $scale + -1 | 0;
14100
- $digits[$scale] = 48;
14101
- if ($negNumber) {
14102
- $scale = $scale + -1 | 0;
14103
- $digits[$scale] = 45;
14104
- }
14105
- return jl_String__init_0($result, $scale, $resLengthInChars - $scale | 0);
14106
- }
14107
- $digits = $result.data;
14108
- $insertPoint = $i1 + $exponent | 0;
14109
- $j = $resLengthInChars - 1 | 0;
14110
- while ($j >= $insertPoint) {
14111
- $digits[$j + 1 | 0] = $digits[$j];
14112
- $j = $j + -1 | 0;
14113
- }
14114
- $digits[$insertPoint + 1 | 0] = 46;
14115
- if ($negNumber) {
14116
- $i1 = $i1 + -1 | 0;
14117
- $digits[$i1] = 45;
14118
- }
14119
- return jl_String__init_0($result, $i1, ($resLengthInChars - $i1 | 0) + 1 | 0);
14120
- }
14121
- $startPoint = $i1 + 1 | 0;
14122
- $result1 = new jl_StringBuilder();
14123
- jl_AbstractStringBuilder__init_0($result1, (16 + $resLengthInChars | 0) - $startPoint | 0);
14124
- if ($negNumber)
14125
- jl_AbstractStringBuilder_append0($result1, 45);
14126
- if (($resLengthInChars - $startPoint | 0) < 1)
14127
- jl_AbstractStringBuilder_append3($result1, $result, $i1, $sign);
14128
- else {
14129
- jl_AbstractStringBuilder_append0($result1, $result.data[$i1]);
14130
- jl_AbstractStringBuilder_append0($result1, 46);
14131
- jl_AbstractStringBuilder_append3($result1, $result, $startPoint, $sign - 1 | 0);
14132
- }
14133
- jl_AbstractStringBuilder_append0($result1, 69);
14134
- if ($exponent > 0)
14135
- jl_AbstractStringBuilder_append0($result1, 43);
14136
- jl_AbstractStringBuilder_append1($result1, jl_Integer_toString($exponent));
14137
- return jl_AbstractStringBuilder_toString($result1);
14138
- };
14139
- var jm_Conversion_divideLongByBillion = ($a) => {
14140
- let $quot, $rem, $aPos;
14141
- if (Long_ge($a, Long_ZERO)) {
14142
- $quot = Long_div($a, Long_fromInt(1e9));
14143
- $rem = Long_rem($a, Long_fromInt(1e9));
14144
- } else {
14145
- $aPos = Long_shru($a, 1);
14146
- $quot = Long_div($aPos, Long_fromInt(5e8));
14147
- $rem = Long_add(Long_shl(Long_rem($aPos, Long_fromInt(5e8)), 1), Long_and($a, Long_fromInt(1)));
14148
- }
14149
- return Long_or(Long_shl($rem, 32), Long_and($quot, Long_create(4294967295, 0)));
14150
- };
14151
- var jm_Conversion__clinit_ = () => {
14152
- jm_Conversion_digitFitInInt = $rt_createIntArrayFromData([-1, -1, 31, 19, 15, 13, 11, 11, 10, 9, 9, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5]);
14153
- jm_Conversion_bigRadices = $rt_createIntArrayFromData([-2147483648, 1162261467, 1073741824, 1220703125, 362797056, 1977326743, 1073741824, 387420489, 1e9, 214358881, 429981696, 815730721, 1475789056, 170859375, 268435456, 410338673, 612220032, 893871739, 128e7, 1801088541, 113379904, 148035889, 191102976, 244140625, 308915776, 387420489, 481890304, 594823321, 729e6, 887503681, 1073741824, 1291467969, 1544804416, 1838265625, 60466176]);
14154
- };
14155
13965
  function jusi_WrappingStreamImpl() {
14156
13966
  jusi_SimpleStreamImpl.call(this);
14157
13967
  this.$sourceStream = null;
@@ -14189,6 +13999,195 @@ var jusi_MappingToIntStreamImpl_next = ($this, $consumer) => {
14189
13999
  var$3.$_13 = $consumer;
14190
14000
  return jusi_ArrayStreamImpl_next(var$2, var$3);
14191
14001
  };
14002
+ var jm_Conversion = $rt_classWithoutFields();
14003
+ var jm_Conversion_digitFitInInt = null;
14004
+ var jm_Conversion_bigRadices = null;
14005
+ var jm_Conversion_toDecimalScaledString = ($val, $scale) => {
14006
+ 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;
14007
+ $sign = $val.$sign0;
14008
+ $numberLength = $val.$numberLength;
14009
+ $digits = $val.$digits;
14010
+ if (!$sign) {
14011
+ switch ($scale) {
14012
+ case 0:
14013
+ break;
14014
+ case 1:
14015
+ return $rt_s(1083);
14016
+ case 2:
14017
+ return $rt_s(1084);
14018
+ case 3:
14019
+ return $rt_s(1085);
14020
+ case 4:
14021
+ return $rt_s(1086);
14022
+ case 5:
14023
+ return $rt_s(1087);
14024
+ case 6:
14025
+ return $rt_s(1088);
14026
+ default:
14027
+ $result1 = new jl_StringBuilder();
14028
+ jl_AbstractStringBuilder__init_($result1);
14029
+ if ($scale >= 0)
14030
+ jl_AbstractStringBuilder_append1($result1, $rt_s(1089));
14031
+ else
14032
+ jl_AbstractStringBuilder_append1($result1, $rt_s(1090));
14033
+ jl_AbstractStringBuilder_append($result1, -$scale | 0);
14034
+ return jl_AbstractStringBuilder_toString($result1);
14035
+ }
14036
+ return $rt_s(6);
14037
+ }
14038
+ $resLengthInChars = (($numberLength * 10 | 0) + 1 | 0) + 7 | 0;
14039
+ $result = $rt_createCharArray($resLengthInChars + 1 | 0);
14040
+ if ($numberLength == 1) {
14041
+ $v = $digits.data[0];
14042
+ if ($v >= 0) {
14043
+ $i1 = $resLengthInChars;
14044
+ while (true) {
14045
+ $digits = $result.data;
14046
+ $v_0 = $v / 10 | 0;
14047
+ $i1 = $i1 + -1 | 0;
14048
+ $digits[$i1] = (48 + ($v - ($v_0 * 10 | 0) | 0) | 0) & 65535;
14049
+ if (!$v_0)
14050
+ break;
14051
+ $v = $v_0;
14052
+ }
14053
+ } else {
14054
+ $v_1 = Long_and(Long_fromInt($v), Long_create(4294967295, 0));
14055
+ $i1 = $resLengthInChars;
14056
+ while (true) {
14057
+ $digits = $result.data;
14058
+ $v_2 = Long_div($v_1, Long_fromInt(10));
14059
+ $i1 = $i1 + -1 | 0;
14060
+ $digits[$i1] = (48 + Long_lo(Long_sub($v_1, Long_mul($v_2, Long_fromInt(10)))) | 0) & 65535;
14061
+ if (Long_eq($v_2, Long_ZERO))
14062
+ break;
14063
+ $v_1 = $v_2;
14064
+ }
14065
+ }
14066
+ } else {
14067
+ var$14 = $result.data;
14068
+ $temp = $rt_createIntArray($numberLength);
14069
+ var$16 = $temp.data;
14070
+ jl_System_fastArraycopy($digits, 0, $temp, 0, $numberLength);
14071
+ $negNumber = $resLengthInChars;
14072
+ a: while (true) {
14073
+ $result11 = Long_ZERO;
14074
+ $j = $numberLength - 1 | 0;
14075
+ $i1 = $j;
14076
+ while ($i1 >= 0) {
14077
+ $res = jm_Conversion_divideLongByBillion(Long_add(Long_shl($result11, 32), Long_and(Long_fromInt(var$16[$i1]), Long_create(4294967295, 0))));
14078
+ var$16[$i1] = Long_lo($res);
14079
+ $result11 = Long_fromInt(Long_hi($res));
14080
+ $i1 = $i1 + -1 | 0;
14081
+ }
14082
+ $resDigit = Long_lo($result11);
14083
+ $i1 = $negNumber;
14084
+ while (true) {
14085
+ $i1 = $i1 + -1 | 0;
14086
+ var$14[$i1] = (48 + ($resDigit % 10 | 0) | 0) & 65535;
14087
+ $resDigit = $resDigit / 10 | 0;
14088
+ if (!$resDigit)
14089
+ break;
14090
+ if (!$i1)
14091
+ break;
14092
+ }
14093
+ $delta = (9 - $negNumber | 0) + $i1 | 0;
14094
+ $i = 0;
14095
+ while ($i < $delta && $i1 > 0) {
14096
+ $i1 = $i1 + -1 | 0;
14097
+ var$14[$i1] = 48;
14098
+ $i = $i + 1 | 0;
14099
+ }
14100
+ while (!var$16[$j]) {
14101
+ if (!$j)
14102
+ break a;
14103
+ $j = $j + -1 | 0;
14104
+ }
14105
+ $numberLength = $j + 1 | 0;
14106
+ $negNumber = $i1;
14107
+ }
14108
+ while (var$14[$i1] == 48) {
14109
+ $i1 = $i1 + 1 | 0;
14110
+ }
14111
+ }
14112
+ $negNumber = $sign >= 0 ? 0 : 1;
14113
+ $sign = $resLengthInChars - $i1 | 0;
14114
+ $exponent = ($sign - $scale | 0) - 1 | 0;
14115
+ if (!$scale) {
14116
+ if ($negNumber) {
14117
+ $digits = $result.data;
14118
+ $i1 = $i1 + -1 | 0;
14119
+ $digits[$i1] = 45;
14120
+ }
14121
+ return jl_String__init_0($result, $i1, $resLengthInChars - $i1 | 0);
14122
+ }
14123
+ if ($scale > 0 && $exponent >= -6) {
14124
+ if ($exponent < 0) {
14125
+ $digits = $result.data;
14126
+ $j = 2;
14127
+ $scale = (-$exponent | 0) + 1 | 0;
14128
+ while ($j < $scale) {
14129
+ $i1 = $i1 + -1 | 0;
14130
+ $digits[$i1] = 48;
14131
+ $j = $j + 1 | 0;
14132
+ }
14133
+ $scale = $i1 + -1 | 0;
14134
+ $digits[$scale] = 46;
14135
+ $scale = $scale + -1 | 0;
14136
+ $digits[$scale] = 48;
14137
+ if ($negNumber) {
14138
+ $scale = $scale + -1 | 0;
14139
+ $digits[$scale] = 45;
14140
+ }
14141
+ return jl_String__init_0($result, $scale, $resLengthInChars - $scale | 0);
14142
+ }
14143
+ $digits = $result.data;
14144
+ $insertPoint = $i1 + $exponent | 0;
14145
+ $j = $resLengthInChars - 1 | 0;
14146
+ while ($j >= $insertPoint) {
14147
+ $digits[$j + 1 | 0] = $digits[$j];
14148
+ $j = $j + -1 | 0;
14149
+ }
14150
+ $digits[$insertPoint + 1 | 0] = 46;
14151
+ if ($negNumber) {
14152
+ $i1 = $i1 + -1 | 0;
14153
+ $digits[$i1] = 45;
14154
+ }
14155
+ return jl_String__init_0($result, $i1, ($resLengthInChars - $i1 | 0) + 1 | 0);
14156
+ }
14157
+ $startPoint = $i1 + 1 | 0;
14158
+ $result1 = new jl_StringBuilder();
14159
+ jl_AbstractStringBuilder__init_0($result1, (16 + $resLengthInChars | 0) - $startPoint | 0);
14160
+ if ($negNumber)
14161
+ jl_AbstractStringBuilder_append0($result1, 45);
14162
+ if (($resLengthInChars - $startPoint | 0) < 1)
14163
+ jl_AbstractStringBuilder_append3($result1, $result, $i1, $sign);
14164
+ else {
14165
+ jl_AbstractStringBuilder_append0($result1, $result.data[$i1]);
14166
+ jl_AbstractStringBuilder_append0($result1, 46);
14167
+ jl_AbstractStringBuilder_append3($result1, $result, $startPoint, $sign - 1 | 0);
14168
+ }
14169
+ jl_AbstractStringBuilder_append0($result1, 69);
14170
+ if ($exponent > 0)
14171
+ jl_AbstractStringBuilder_append0($result1, 43);
14172
+ jl_AbstractStringBuilder_append1($result1, jl_Integer_toString($exponent));
14173
+ return jl_AbstractStringBuilder_toString($result1);
14174
+ };
14175
+ var jm_Conversion_divideLongByBillion = ($a) => {
14176
+ let $quot, $rem, $aPos;
14177
+ if (Long_ge($a, Long_ZERO)) {
14178
+ $quot = Long_div($a, Long_fromInt(1e9));
14179
+ $rem = Long_rem($a, Long_fromInt(1e9));
14180
+ } else {
14181
+ $aPos = Long_shru($a, 1);
14182
+ $quot = Long_div($aPos, Long_fromInt(5e8));
14183
+ $rem = Long_add(Long_shl(Long_rem($aPos, Long_fromInt(5e8)), 1), Long_and($a, Long_fromInt(1)));
14184
+ }
14185
+ return Long_or(Long_shl($rem, 32), Long_and($quot, Long_create(4294967295, 0)));
14186
+ };
14187
+ var jm_Conversion__clinit_ = () => {
14188
+ 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]);
14189
+ 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]);
14190
+ };
14192
14191
  var asru_Binary = $rt_classWithoutFields();
14193
14192
  var asru_Binary_chars = null;
14194
14193
  var asru_Binary_intToBinaryString = ($value, $length) => {
@@ -14446,6 +14445,52 @@ var ju_AbstractList$1_next = ($this) => {
14446
14445
  $this.$index4 = var$3 + 1 | 0;
14447
14446
  return var$2.$get0(var$3);
14448
14447
  };
14448
+ var asrs_Simulator$Reason = $rt_classWithoutFields(jl_Enum);
14449
+ var asrs_Simulator$Reason_BREAKPOINT = null;
14450
+ var asrs_Simulator$Reason_EXCEPTION = null;
14451
+ var asrs_Simulator$Reason_MAX_STEPS = null;
14452
+ var asrs_Simulator$Reason_NORMAL_TERMINATION = null;
14453
+ var asrs_Simulator$Reason_CLIFF_TERMINATION = null;
14454
+ var asrs_Simulator$Reason_PAUSE = null;
14455
+ var asrs_Simulator$Reason_STOP = null;
14456
+ var asrs_Simulator$Reason_$VALUES = null;
14457
+ var asrs_Simulator$Reason_values = () => {
14458
+ return asrs_Simulator$Reason_$VALUES.$clone0();
14459
+ };
14460
+ var asrs_Simulator$Reason__clinit_ = () => {
14461
+ let var$1, var$2, var$3;
14462
+ var$1 = new asrs_Simulator$Reason();
14463
+ jl_Enum__init_(var$1, $rt_s(1091), 0);
14464
+ asrs_Simulator$Reason_BREAKPOINT = var$1;
14465
+ var$1 = new asrs_Simulator$Reason();
14466
+ jl_Enum__init_(var$1, $rt_s(1092), 1);
14467
+ asrs_Simulator$Reason_EXCEPTION = var$1;
14468
+ var$1 = new asrs_Simulator$Reason();
14469
+ jl_Enum__init_(var$1, $rt_s(1093), 2);
14470
+ asrs_Simulator$Reason_MAX_STEPS = var$1;
14471
+ var$1 = new asrs_Simulator$Reason();
14472
+ jl_Enum__init_(var$1, $rt_s(1094), 3);
14473
+ asrs_Simulator$Reason_NORMAL_TERMINATION = var$1;
14474
+ var$1 = new asrs_Simulator$Reason();
14475
+ jl_Enum__init_(var$1, $rt_s(1095), 4);
14476
+ asrs_Simulator$Reason_CLIFF_TERMINATION = var$1;
14477
+ var$1 = new asrs_Simulator$Reason();
14478
+ jl_Enum__init_(var$1, $rt_s(1096), 5);
14479
+ asrs_Simulator$Reason_PAUSE = var$1;
14480
+ var$1 = new asrs_Simulator$Reason();
14481
+ jl_Enum__init_(var$1, $rt_s(1097), 6);
14482
+ asrs_Simulator$Reason_STOP = var$1;
14483
+ var$2 = $rt_createArray(asrs_Simulator$Reason, 7);
14484
+ var$3 = var$2.data;
14485
+ var$3[0] = asrs_Simulator$Reason_BREAKPOINT;
14486
+ var$3[1] = asrs_Simulator$Reason_EXCEPTION;
14487
+ var$3[2] = asrs_Simulator$Reason_MAX_STEPS;
14488
+ var$3[3] = asrs_Simulator$Reason_NORMAL_TERMINATION;
14489
+ var$3[4] = asrs_Simulator$Reason_CLIFF_TERMINATION;
14490
+ var$3[5] = asrs_Simulator$Reason_PAUSE;
14491
+ var$3[6] = var$1;
14492
+ asrs_Simulator$Reason_$VALUES = var$2;
14493
+ };
14449
14494
  var asrrh_FloatingPointRegisterFile = $rt_classWithoutFields();
14450
14495
  var asrrh_FloatingPointRegisterFile_instance = null;
14451
14496
  var asrrh_FloatingPointRegisterFile_setRegisterToFloat = ($reg, $val) => {
@@ -14490,38 +14535,38 @@ var asrrh_FloatingPointRegisterFile__clinit_ = () => {
14490
14535
  var$1 = new asrrh_RegisterBlock();
14491
14536
  var$2 = $rt_createArray(asrrh_Register, 32);
14492
14537
  var$3 = var$2.data;
14493
- var$3[0] = asrrh_Register__init_($rt_s(1091), 0, Long_ZERO);
14494
- var$3[1] = asrrh_Register__init_($rt_s(1092), 1, Long_ZERO);
14495
- var$3[2] = asrrh_Register__init_($rt_s(1093), 2, Long_ZERO);
14496
- var$3[3] = asrrh_Register__init_($rt_s(1094), 3, Long_ZERO);
14497
- var$3[4] = asrrh_Register__init_($rt_s(1095), 4, Long_ZERO);
14498
- var$3[5] = asrrh_Register__init_($rt_s(1096), 5, Long_ZERO);
14499
- var$3[6] = asrrh_Register__init_($rt_s(1097), 6, Long_ZERO);
14500
- var$3[7] = asrrh_Register__init_($rt_s(1098), 7, Long_ZERO);
14501
- var$3[8] = asrrh_Register__init_($rt_s(1099), 8, Long_ZERO);
14502
- var$3[9] = asrrh_Register__init_($rt_s(1100), 9, Long_ZERO);
14538
+ var$3[0] = asrrh_Register__init_($rt_s(1098), 0, Long_ZERO);
14539
+ var$3[1] = asrrh_Register__init_($rt_s(1099), 1, Long_ZERO);
14540
+ var$3[2] = asrrh_Register__init_($rt_s(1100), 2, Long_ZERO);
14541
+ var$3[3] = asrrh_Register__init_($rt_s(1101), 3, Long_ZERO);
14542
+ var$3[4] = asrrh_Register__init_($rt_s(1102), 4, Long_ZERO);
14543
+ var$3[5] = asrrh_Register__init_($rt_s(1103), 5, Long_ZERO);
14544
+ var$3[6] = asrrh_Register__init_($rt_s(1104), 6, Long_ZERO);
14545
+ var$3[7] = asrrh_Register__init_($rt_s(1105), 7, Long_ZERO);
14546
+ var$3[8] = asrrh_Register__init_($rt_s(1106), 8, Long_ZERO);
14547
+ var$3[9] = asrrh_Register__init_($rt_s(1107), 9, Long_ZERO);
14503
14548
  var$3[10] = asrrh_Register__init_($rt_s(1042), 10, Long_ZERO);
14504
14549
  var$3[11] = asrrh_Register__init_($rt_s(1036), 11, Long_ZERO);
14505
- var$3[12] = asrrh_Register__init_($rt_s(1101), 12, Long_ZERO);
14506
- var$3[13] = asrrh_Register__init_($rt_s(1102), 13, Long_ZERO);
14507
- var$3[14] = asrrh_Register__init_($rt_s(1103), 14, Long_ZERO);
14508
- var$3[15] = asrrh_Register__init_($rt_s(1104), 15, Long_ZERO);
14509
- var$3[16] = asrrh_Register__init_($rt_s(1105), 16, Long_ZERO);
14510
- var$3[17] = asrrh_Register__init_($rt_s(1106), 17, Long_ZERO);
14511
- var$3[18] = asrrh_Register__init_($rt_s(1107), 18, Long_ZERO);
14512
- var$3[19] = asrrh_Register__init_($rt_s(1108), 19, Long_ZERO);
14513
- var$3[20] = asrrh_Register__init_($rt_s(1109), 20, Long_ZERO);
14514
- var$3[21] = asrrh_Register__init_($rt_s(1110), 21, Long_ZERO);
14515
- var$3[22] = asrrh_Register__init_($rt_s(1111), 22, Long_ZERO);
14516
- var$3[23] = asrrh_Register__init_($rt_s(1112), 23, Long_ZERO);
14517
- var$3[24] = asrrh_Register__init_($rt_s(1113), 24, Long_ZERO);
14518
- var$3[25] = asrrh_Register__init_($rt_s(1114), 25, Long_ZERO);
14519
- var$3[26] = asrrh_Register__init_($rt_s(1115), 26, Long_ZERO);
14520
- var$3[27] = asrrh_Register__init_($rt_s(1116), 27, Long_ZERO);
14521
- var$3[28] = asrrh_Register__init_($rt_s(1117), 28, Long_ZERO);
14522
- var$3[29] = asrrh_Register__init_($rt_s(1118), 29, Long_ZERO);
14523
- var$3[30] = asrrh_Register__init_($rt_s(1119), 30, Long_ZERO);
14524
- var$3[31] = asrrh_Register__init_($rt_s(1120), 31, Long_ZERO);
14550
+ var$3[12] = asrrh_Register__init_($rt_s(1108), 12, Long_ZERO);
14551
+ var$3[13] = asrrh_Register__init_($rt_s(1109), 13, Long_ZERO);
14552
+ var$3[14] = asrrh_Register__init_($rt_s(1110), 14, Long_ZERO);
14553
+ var$3[15] = asrrh_Register__init_($rt_s(1111), 15, Long_ZERO);
14554
+ var$3[16] = asrrh_Register__init_($rt_s(1112), 16, Long_ZERO);
14555
+ var$3[17] = asrrh_Register__init_($rt_s(1113), 17, Long_ZERO);
14556
+ var$3[18] = asrrh_Register__init_($rt_s(1114), 18, Long_ZERO);
14557
+ var$3[19] = asrrh_Register__init_($rt_s(1115), 19, Long_ZERO);
14558
+ var$3[20] = asrrh_Register__init_($rt_s(1116), 20, Long_ZERO);
14559
+ var$3[21] = asrrh_Register__init_($rt_s(1117), 21, Long_ZERO);
14560
+ var$3[22] = asrrh_Register__init_($rt_s(1118), 22, Long_ZERO);
14561
+ var$3[23] = asrrh_Register__init_($rt_s(1119), 23, Long_ZERO);
14562
+ var$3[24] = asrrh_Register__init_($rt_s(1120), 24, Long_ZERO);
14563
+ var$3[25] = asrrh_Register__init_($rt_s(1121), 25, Long_ZERO);
14564
+ var$3[26] = asrrh_Register__init_($rt_s(1122), 26, Long_ZERO);
14565
+ var$3[27] = asrrh_Register__init_($rt_s(1123), 27, Long_ZERO);
14566
+ var$3[28] = asrrh_Register__init_($rt_s(1124), 28, Long_ZERO);
14567
+ var$3[29] = asrrh_Register__init_($rt_s(1125), 29, Long_ZERO);
14568
+ var$3[30] = asrrh_Register__init_($rt_s(1126), 30, Long_ZERO);
14569
+ var$3[31] = asrrh_Register__init_($rt_s(1127), 31, Long_ZERO);
14525
14570
  asrrh_RegisterBlock__init_(var$1, 102, var$2);
14526
14571
  asrrh_FloatingPointRegisterFile_instance = var$1;
14527
14572
  };
@@ -14589,25 +14634,25 @@ var asrrh_ControlAndStatusRegisterFile__clinit_ = () => {
14589
14634
  var$2[0] = asrrh_MaskedRegister__init_($rt_s(679), 0, Long_ZERO, Long_fromInt(-18));
14590
14635
  var$2[1] = null;
14591
14636
  var$2[2] = null;
14592
- var$2[3] = asrrh_MaskedRegister__init_($rt_s(1121), 3, Long_ZERO, Long_fromInt(-256));
14593
- var$2[4] = asrrh_Register__init_($rt_s(1122), 4, Long_ZERO);
14594
- var$2[5] = asrrh_Register__init_($rt_s(1123), 5, Long_ZERO);
14595
- var$2[6] = asrrh_Register__init_($rt_s(1124), 64, Long_ZERO);
14637
+ var$2[3] = asrrh_MaskedRegister__init_($rt_s(1128), 3, Long_ZERO, Long_fromInt(-256));
14638
+ var$2[4] = asrrh_Register__init_($rt_s(1129), 4, Long_ZERO);
14639
+ var$2[5] = asrrh_Register__init_($rt_s(1130), 5, Long_ZERO);
14640
+ var$2[6] = asrrh_Register__init_($rt_s(1131), 64, Long_ZERO);
14596
14641
  var$2[7] = asrrh_Register__init_($rt_s(680), 65, Long_ZERO);
14597
- var$2[8] = asrrh_Register__init_($rt_s(1125), 66, Long_ZERO);
14598
- var$2[9] = asrrh_Register__init_($rt_s(1126), 67, Long_ZERO);
14599
- var$2[10] = asrrh_Register__init_($rt_s(1127), 68, Long_ZERO);
14600
- var$2[11] = asrrh_ReadOnlyRegister__init_($rt_s(1128), 3072, 0);
14601
- var$2[12] = asrrh_ReadOnlyRegister__init_($rt_s(1129), 3073, 0);
14602
- var$2[13] = asrrh_ReadOnlyRegister__init_($rt_s(1130), 3074, 0);
14642
+ var$2[8] = asrrh_Register__init_($rt_s(1132), 66, Long_ZERO);
14643
+ var$2[9] = asrrh_Register__init_($rt_s(1133), 67, Long_ZERO);
14644
+ var$2[10] = asrrh_Register__init_($rt_s(1134), 68, Long_ZERO);
14645
+ var$2[11] = asrrh_ReadOnlyRegister__init_($rt_s(1135), 3072, 0);
14646
+ var$2[12] = asrrh_ReadOnlyRegister__init_($rt_s(1136), 3073, 0);
14647
+ var$2[13] = asrrh_ReadOnlyRegister__init_($rt_s(1137), 3074, 0);
14603
14648
  var$2[14] = null;
14604
14649
  var$2[15] = null;
14605
14650
  var$2[16] = null;
14606
14651
  var$2[1] = asrrh_LinkedRegister__init_($rt_s(446), 1, var$2[3], Long_fromInt(31));
14607
14652
  var$2[2] = asrrh_LinkedRegister__init_($rt_s(447), 2, var$2[3], Long_fromInt(224));
14608
- var$2[14] = asrrh_LinkedRegister__init_($rt_s(1131), 3200, var$2[11], Long_create(0, 4294967295));
14609
- var$2[15] = asrrh_LinkedRegister__init_($rt_s(1132), 3201, var$2[12], Long_create(0, 4294967295));
14610
- var$2[16] = asrrh_LinkedRegister__init_($rt_s(1133), 3202, var$2[13], Long_create(0, 4294967295));
14653
+ var$2[14] = asrrh_LinkedRegister__init_($rt_s(1138), 3200, var$2[11], Long_create(0, 4294967295));
14654
+ var$2[15] = asrrh_LinkedRegister__init_($rt_s(1139), 3201, var$2[12], Long_create(0, 4294967295));
14655
+ var$2[16] = asrrh_LinkedRegister__init_($rt_s(1140), 3202, var$2[13], Long_create(0, 4294967295));
14611
14656
  asrrh_ControlAndStatusRegisterFile_instance = asrrh_RegisterBlock__init_0(95, $tmp_0);
14612
14657
  };
14613
14658
  var asrrh_InterruptController = $rt_classWithoutFields();
@@ -14713,7 +14758,7 @@ var asrrh_InterruptController_claimExternal = () => {
14713
14758
  a: {
14714
14759
  try {
14715
14760
  if (!asrrh_InterruptController_$assertionsDisabled && !asrrh_InterruptController_externalPending)
14716
- $rt_throw(jl_AssertionError__init_($rt_s(1134)));
14761
+ $rt_throw(jl_AssertionError__init_($rt_s(1141)));
14717
14762
  asrrh_InterruptController_externalPending = 0;
14718
14763
  var$2 = asrrh_InterruptController_externalValue;
14719
14764
  jl_Object_monitorExitSync(var$1);
@@ -14734,7 +14779,7 @@ var asrrh_InterruptController_claimTimer = () => {
14734
14779
  a: {
14735
14780
  try {
14736
14781
  if (!asrrh_InterruptController_$assertionsDisabled && !asrrh_InterruptController_timerPending)
14737
- $rt_throw(jl_AssertionError__init_($rt_s(1135)));
14782
+ $rt_throw(jl_AssertionError__init_($rt_s(1142)));
14738
14783
  asrrh_InterruptController_timerPending = 0;
14739
14784
  var$2 = asrrh_InterruptController_timerValue;
14740
14785
  jl_Object_monitorExitSync(var$1);
@@ -14756,9 +14801,9 @@ var asrrh_InterruptController_claimTrap = () => {
14756
14801
  try {
14757
14802
  var$2 = asrrh_InterruptController_$assertionsDisabled;
14758
14803
  if (!var$2 && !asrrh_InterruptController_trapPending)
14759
- $rt_throw(jl_AssertionError__init_($rt_s(1136)));
14804
+ $rt_throw(jl_AssertionError__init_($rt_s(1143)));
14760
14805
  if (!var$2 && asrrh_InterruptController_trapPC != (asrrh_RegisterFile_getProgramCounter() - 4 | 0))
14761
- $rt_throw(jl_AssertionError__init_($rt_s(1137)));
14806
+ $rt_throw(jl_AssertionError__init_($rt_s(1144)));
14762
14807
  asrrh_InterruptController_trapPending = 0;
14763
14808
  var$3 = asrrh_InterruptController_trapSE;
14764
14809
  jl_Object_monitorExitSync(var$1);
@@ -14816,52 +14861,6 @@ var jlr_Array_newInstanceImpl = (var$1, var$2) => {
14816
14861
  }
14817
14862
  return $rt_createArray(var$1, var$2);
14818
14863
  };
14819
- var asrs_Simulator$Reason = $rt_classWithoutFields(jl_Enum);
14820
- var asrs_Simulator$Reason_BREAKPOINT = null;
14821
- var asrs_Simulator$Reason_EXCEPTION = null;
14822
- var asrs_Simulator$Reason_MAX_STEPS = null;
14823
- var asrs_Simulator$Reason_NORMAL_TERMINATION = null;
14824
- var asrs_Simulator$Reason_CLIFF_TERMINATION = null;
14825
- var asrs_Simulator$Reason_PAUSE = null;
14826
- var asrs_Simulator$Reason_STOP = null;
14827
- var asrs_Simulator$Reason_$VALUES = null;
14828
- var asrs_Simulator$Reason_values = () => {
14829
- return asrs_Simulator$Reason_$VALUES.$clone0();
14830
- };
14831
- var asrs_Simulator$Reason__clinit_ = () => {
14832
- let var$1, var$2, var$3;
14833
- var$1 = new asrs_Simulator$Reason();
14834
- jl_Enum__init_(var$1, $rt_s(1138), 0);
14835
- asrs_Simulator$Reason_BREAKPOINT = var$1;
14836
- var$1 = new asrs_Simulator$Reason();
14837
- jl_Enum__init_(var$1, $rt_s(1139), 1);
14838
- asrs_Simulator$Reason_EXCEPTION = var$1;
14839
- var$1 = new asrs_Simulator$Reason();
14840
- jl_Enum__init_(var$1, $rt_s(1140), 2);
14841
- asrs_Simulator$Reason_MAX_STEPS = var$1;
14842
- var$1 = new asrs_Simulator$Reason();
14843
- jl_Enum__init_(var$1, $rt_s(1141), 3);
14844
- asrs_Simulator$Reason_NORMAL_TERMINATION = var$1;
14845
- var$1 = new asrs_Simulator$Reason();
14846
- jl_Enum__init_(var$1, $rt_s(1142), 4);
14847
- asrs_Simulator$Reason_CLIFF_TERMINATION = var$1;
14848
- var$1 = new asrs_Simulator$Reason();
14849
- jl_Enum__init_(var$1, $rt_s(1143), 5);
14850
- asrs_Simulator$Reason_PAUSE = var$1;
14851
- var$1 = new asrs_Simulator$Reason();
14852
- jl_Enum__init_(var$1, $rt_s(1144), 6);
14853
- asrs_Simulator$Reason_STOP = var$1;
14854
- var$2 = $rt_createArray(asrs_Simulator$Reason, 7);
14855
- var$3 = var$2.data;
14856
- var$3[0] = asrs_Simulator$Reason_BREAKPOINT;
14857
- var$3[1] = asrs_Simulator$Reason_EXCEPTION;
14858
- var$3[2] = asrs_Simulator$Reason_MAX_STEPS;
14859
- var$3[3] = asrs_Simulator$Reason_NORMAL_TERMINATION;
14860
- var$3[4] = asrs_Simulator$Reason_CLIFF_TERMINATION;
14861
- var$3[5] = asrs_Simulator$Reason_PAUSE;
14862
- var$3[6] = var$1;
14863
- asrs_Simulator$Reason_$VALUES = var$2;
14864
- };
14865
14864
  function jur_Pattern() {
14866
14865
  let a = this;
14867
14866
  jl_Object.call(a);
@@ -14874,16 +14873,16 @@ function jur_Pattern() {
14874
14873
  a.$consCount = 0;
14875
14874
  a.$start2 = null;
14876
14875
  }
14877
- var jur_Pattern_matcher = ($this, $input) => {
14876
+ var jur_Pattern_matcher = ($this, var$1) => {
14878
14877
  let var$2, var$3, var$4, var$5, var$6, var$7, var$8, var$9;
14879
14878
  var$2 = new jur_Matcher();
14880
14879
  var$2.$leftBound0 = -1;
14881
14880
  var$2.$rightBound0 = -1;
14882
14881
  var$2.$pat = $this;
14883
14882
  var$2.$start6 = $this.$start2;
14884
- var$2.$string1 = $input;
14883
+ var$2.$string1 = var$1;
14885
14884
  var$2.$leftBound0 = 0;
14886
- var$3 = $input.$nativeString.length;
14885
+ var$3 = var$1.$nativeString.length;
14887
14886
  var$2.$rightBound0 = var$3;
14888
14887
  var$4 = new jur_MatchResultImpl();
14889
14888
  var$5 = var$2.$leftBound0;
@@ -14900,7 +14899,7 @@ var jur_Pattern_matcher = ($this, $input) => {
14900
14899
  if (var$7 > 0)
14901
14900
  var$4.$compQuantCounters = $rt_createIntArray(var$7);
14902
14901
  ju_Arrays_fill(var$4.$groupBounds, -1);
14903
- jur_MatchResultImpl_reset(var$4, $input, var$5, var$3);
14902
+ jur_MatchResultImpl_reset(var$4, var$1, var$5, var$3);
14904
14903
  var$2.$matchResult = var$4;
14905
14904
  var$4.$anchoringBounds = 1;
14906
14905
  return var$2;
@@ -24673,10 +24672,10 @@ var asrs_Simulator$SimThread_handleTrap = ($this, $se, $pc) => {
24673
24672
  if (!$utvec && $se.$cause < 0)
24674
24673
  $rt_throw(jl_AssertionError__init_($rt_s(1514)));
24675
24674
  a: {
24676
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1125), Long_fromInt($se.$cause));
24675
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1132), Long_fromInt($se.$cause));
24677
24676
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(680), Long_fromInt($pc));
24678
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1126), Long_fromInt($se.$value5));
24679
- $base = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1123)) & -4;
24677
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1133), Long_fromInt($se.$value5));
24678
+ $base = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1130)) & -4;
24680
24679
  $exceptionHandler = null;
24681
24680
  if (!(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(679)) & 1))
24682
24681
  var$6 = $exceptionHandler;
@@ -24712,12 +24711,12 @@ var asrs_Simulator$SimThread_handleInterrupt = ($this, $value, $cause, $pc) => {
24712
24711
  if (!$mode && !($cause & -2147483648))
24713
24712
  $rt_throw(jl_AssertionError__init_($rt_s(1515)));
24714
24713
  $code = $cause & 2147483647;
24715
- if (!$mode && !(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(679)) & 1 && asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1122)) & 1 << $code))
24714
+ if (!$mode && !(asrrh_ControlAndStatusRegisterFile_getValue($rt_s(679)) & 1 && asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1129)) & 1 << $code))
24716
24715
  $rt_throw(jl_AssertionError__init_($rt_s(1516)));
24717
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1125), Long_fromInt($cause));
24716
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1132), Long_fromInt($cause));
24718
24717
  asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(680), Long_fromInt($pc));
24719
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1126), Long_fromInt($value));
24720
- $utvec = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1123));
24718
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1133), Long_fromInt($value));
24719
+ $utvec = asrrh_ControlAndStatusRegisterFile_getValue($rt_s(1130));
24721
24720
  $base = $utvec & -4;
24722
24721
  if (($utvec & 3) == 2)
24723
24722
  $base = $base + (4 * $code | 0) | 0;
@@ -24797,8 +24796,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
24797
24796
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
24798
24797
  return;
24799
24798
  }
24800
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
24801
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
24799
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
24800
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
24802
24801
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
24803
24802
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
24804
24803
  $se = asrrh_InterruptController_lock;
@@ -24989,8 +24988,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
24989
24988
  jl_Object_monitorExit($se);
24990
24989
  $rt_throw($instruction);
24991
24990
  }
24992
- if (Long_ne($cycle, asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127))))
24993
- asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1127), $cycle);
24991
+ if (Long_ne($cycle, asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134))))
24992
+ asrrh_ControlAndStatusRegisterFile_updateRegister($rt_s(1134), $cycle);
24994
24993
  var$14 = $this.$maxSteps;
24995
24994
  if (var$14 > 0) {
24996
24995
  $steps = $steps + 1 | 0;
@@ -25111,12 +25110,12 @@ var asrs_Simulator$SimThread_run = ($this) => {
25111
25110
  $waiting = 1;
25112
25111
  }
25113
25112
  v: {
25114
- $cycle = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1128));
25115
- $instret = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1130));
25113
+ $cycle = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1135));
25114
+ $instret = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1137));
25116
25115
  $time = jl_System_currentTimeMillis();
25117
- asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1128), Long_add($cycle, Long_fromInt(1)));
25118
- asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1130), Long_add($instret, Long_fromInt(1)));
25119
- asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1129), $time);
25116
+ asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1135), Long_add($cycle, Long_fromInt(1)));
25117
+ asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1137), Long_add($instret, Long_fromInt(1)));
25118
+ asrrh_ControlAndStatusRegisterFile_updateRegisterBackdoor($rt_s(1136), $time);
25120
25119
  if (!$ebreak) {
25121
25120
  var$1 = $this.$breakPoints;
25122
25121
  if (var$1 === null)
@@ -25139,8 +25138,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
25139
25138
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
25140
25139
  return;
25141
25140
  }
25142
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
25143
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
25141
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
25142
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
25144
25143
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
25145
25144
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
25146
25145
  $se = asrrh_InterruptController_lock;
@@ -25176,8 +25175,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
25176
25175
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
25177
25176
  return;
25178
25177
  }
25179
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
25180
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
25178
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
25179
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
25181
25180
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
25182
25181
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
25183
25182
  $se = asrrh_InterruptController_lock;
@@ -25215,8 +25214,8 @@ var asrs_Simulator$SimThread_run = ($this) => {
25215
25214
  asrs_Simulator$SimThread_stopExecution($this, 0, $this.$constructReturnReason);
25216
25215
  return;
25217
25216
  }
25218
- $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1127));
25219
- $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1122));
25217
+ $uip = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1134));
25218
+ $uie = asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(1129));
25220
25219
  $IE = Long_eq(Long_and(asrrh_ControlAndStatusRegisterFile_getValueNoNotify($rt_s(679)), Long_fromInt(1)), Long_ZERO) ? 0 : 1;
25221
25220
  $this.$pc0 = asrrh_RegisterFile_getProgramCounter();
25222
25221
  $se = asrrh_InterruptController_lock;
@@ -32109,6 +32108,114 @@ var asrjt_Float32__clinit_ = () => {
32109
32108
  asrjt_Float32_Infinity = asrjt_Float32__init_(2139095040);
32110
32109
  asrjt_Float32_NegativeInfinity = asrjt_Float32__init_(-8388608);
32111
32110
  };
32111
+ var asrjo_Conversions = $rt_classWithoutFields();
32112
+ var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
32113
+ let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
32114
+ if ($f.$isNaN()) {
32115
+ $f = $env.$flags;
32116
+ $min = asrj_Flags_invalid;
32117
+ ju_GenericEnumSet_add($f, $min);
32118
+ return $max;
32119
+ }
32120
+ if ($f.$isInfinite()) {
32121
+ $env = $env.$flags;
32122
+ $copy = asrj_Flags_invalid;
32123
+ ju_GenericEnumSet_add($env, $copy);
32124
+ if ($f.$isSignMinus())
32125
+ $max = $min;
32126
+ return $max;
32127
+ }
32128
+ $copy = asrj_Environment__init_();
32129
+ $copy.$mode = $env.$mode;
32130
+ if ($f.$isZero())
32131
+ $rounded = jm_BigInteger_ZERO;
32132
+ else {
32133
+ $f = $f.$toExactFloat();
32134
+ if (asrji_ExactFloat_isZero($f))
32135
+ $rounded = jm_BigInteger_ZERO;
32136
+ else {
32137
+ if (asrji_ExactFloat_isZero($f))
32138
+ $rounded = $f;
32139
+ else {
32140
+ $rounded = asrji_ExactFloat_normalize($f);
32141
+ var$8 = $rounded.$exponent0;
32142
+ if (var$8 < 0) {
32143
+ var$8 = -var$8 | 0;
32144
+ var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
32145
+ var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
32146
+ var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
32147
+ var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
32148
+ var$12 = $env.$mode;
32149
+ if (var$12 === asrj_RoundingMode_zero)
32150
+ $rounded = var$9;
32151
+ else {
32152
+ var$13 = asrj_RoundingMode_max;
32153
+ if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
32154
+ $rounded = jm_BigInteger_ONE;
32155
+ var$8 = var$8 - 1 | 0;
32156
+ $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;
32157
+ } else
32158
+ $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
32159
+ }
32160
+ }
32161
+ }
32162
+ $rounded = asrji_ExactFloat_normalize($rounded);
32163
+ if (asrji_ExactFloat_compareTo($rounded, $f)) {
32164
+ var$9 = $env.$flags;
32165
+ var$10 = asrj_Flags_inexact;
32166
+ ju_GenericEnumSet_add(var$9, var$10);
32167
+ }
32168
+ if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
32169
+ $rt_throw(jl_AssertionError__init_($rt_s(1636)));
32170
+ $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
32171
+ }
32172
+ }
32173
+ if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
32174
+ $f = $env.$flags;
32175
+ $env = asrj_Flags_invalid;
32176
+ ju_GenericEnumSet_add($f, $env);
32177
+ } else if (!$quiet) {
32178
+ $f = $copy.$flags;
32179
+ $copy = asrj_Flags_inexact;
32180
+ if (ju_GenericEnumSet_contains($f, $copy)) {
32181
+ $f = $env.$flags;
32182
+ $env = asrj_Flags_inexact;
32183
+ ju_GenericEnumSet_add($f, $env);
32184
+ }
32185
+ }
32186
+ if (jm_BigInteger_compareTo($rounded, $max) == -1)
32187
+ $max = $rounded;
32188
+ if (jm_BigInteger_compareTo($max, $min) == 1)
32189
+ $min = $max;
32190
+ return $min;
32191
+ };
32192
+ var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
32193
+ return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
32194
+ };
32195
+ var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
32196
+ 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)));
32197
+ };
32198
+ var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
32199
+ return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
32200
+ };
32201
+ var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
32202
+ 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));
32203
+ };
32204
+ var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32205
+ let var$4;
32206
+ if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
32207
+ return $helper.$Zero();
32208
+ var$4 = new asrji_ExactFloat();
32209
+ if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
32210
+ var$4.$sign = 0;
32211
+ else {
32212
+ var$4.$sign = 1;
32213
+ $i = jm_BigInteger_negate($i);
32214
+ }
32215
+ var$4.$exponent0 = 0;
32216
+ var$4.$significand = $i;
32217
+ return $helper.$fromExactFloat(var$4, $env);
32218
+ };
32112
32219
  function asrjt_Float64() {
32113
32220
  asrjt_Floating.call(this);
32114
32221
  this.$bits1 = Long_ZERO;
@@ -32325,113 +32432,107 @@ var asrjt_Float64__clinit_ = () => {
32325
32432
  asrjt_Float64_Infinity = asrjt_Float64__init_(Long_create(0, 2146435072));
32326
32433
  asrjt_Float64_NegativeInfinity = asrjt_Float64__init_(Long_create(0, 4293918720));
32327
32434
  };
32328
- var asrjo_Conversions = $rt_classWithoutFields();
32329
- var asrjo_Conversions_convertToIntegral = ($f, $max, $min, $env, $quiet) => {
32330
- let $copy, $rounded, var$8, var$9, var$10, var$11, var$12, var$13;
32331
- if ($f.$isNaN()) {
32332
- $f = $env.$flags;
32333
- $min = asrj_Flags_invalid;
32334
- ju_GenericEnumSet_add($f, $min);
32335
- return $max;
32435
+ var asrjo_Comparisons = $rt_classWithoutFields();
32436
+ var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
32437
+ if ($a.$isZero()) {
32438
+ if ($b.$isZero())
32439
+ return 0;
32440
+ return !$b.$isSignMinus() ? -1 : 1;
32336
32441
  }
32337
- if ($f.$isInfinite()) {
32338
- $env = $env.$flags;
32339
- $copy = asrj_Flags_invalid;
32340
- ju_GenericEnumSet_add($env, $copy);
32341
- if ($f.$isSignMinus())
32342
- $max = $min;
32343
- return $max;
32442
+ if ($b.$isZero())
32443
+ return !$a.$isSignMinus() ? 1 : -1;
32444
+ if (!$a.$isInfinite()) {
32445
+ if (!$b.$isInfinite())
32446
+ return asrji_ExactFloat_compareTo($a.$toExactFloat(), $b.$toExactFloat());
32447
+ return !$b.$isSignMinus() ? -1 : 1;
32344
32448
  }
32345
- $copy = asrj_Environment__init_();
32346
- $copy.$mode = $env.$mode;
32347
- if ($f.$isZero())
32348
- $rounded = jm_BigInteger_ZERO;
32349
- else {
32350
- $f = $f.$toExactFloat();
32351
- if (asrji_ExactFloat_isZero($f))
32352
- $rounded = jm_BigInteger_ZERO;
32353
- else {
32354
- if (asrji_ExactFloat_isZero($f))
32355
- $rounded = $f;
32356
- else {
32357
- $rounded = asrji_ExactFloat_normalize($f);
32358
- var$8 = $rounded.$exponent0;
32359
- if (var$8 < 0) {
32360
- var$8 = -var$8 | 0;
32361
- var$9 = jm_BigInteger_shiftLeft(jm_BigInteger_shiftRight($rounded.$significand, var$8), var$8);
32362
- var$10 = jm_BigInteger_subtract($rounded.$significand, var$9);
32363
- var$9 = asrji_ExactFloat_normalize(asrji_ExactFloat__init_($rounded.$sign, $rounded.$exponent0, var$9));
32364
- var$11 = asrji_ExactFloat_add(var$9, asrji_ExactFloat__init_($rounded.$sign, 0, jm_BigInteger_valueOf(Long_fromInt(1))));
32365
- var$12 = $env.$mode;
32366
- if (var$12 === asrj_RoundingMode_zero)
32367
- $rounded = var$9;
32368
- else {
32369
- var$13 = asrj_RoundingMode_max;
32370
- if (var$12 !== var$13 && var$12 !== asrj_RoundingMode_min) {
32371
- $rounded = jm_BigInteger_ONE;
32372
- var$8 = var$8 - 1 | 0;
32373
- $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;
32374
- } else
32375
- $rounded = (var$12 !== var$13 ? 0 : 1) != $rounded.$sign ? var$11 : var$9;
32376
- }
32377
- }
32378
- }
32379
- $rounded = asrji_ExactFloat_normalize($rounded);
32380
- if (asrji_ExactFloat_compareTo($rounded, $f)) {
32381
- var$9 = $env.$flags;
32382
- var$10 = asrj_Flags_inexact;
32383
- ju_GenericEnumSet_add(var$9, var$10);
32384
- }
32385
- if (!asrji_ExactFloat_$assertionsDisabled && $rounded.$exponent0 < 0)
32386
- $rt_throw(jl_AssertionError__init_($rt_s(1636)));
32387
- $rounded = jm_BigInteger_multiply(jm_BigInteger_shiftLeft($rounded.$significand, $rounded.$exponent0), jm_BigInteger_valueOf(!$f.$sign ? Long_fromInt(1) : Long_fromInt(-1)));
32388
- }
32449
+ if ($b.$isInfinite() && $a.$isSignMinus() == $b.$isSignMinus())
32450
+ return 0;
32451
+ return !$a.$isSignMinus() ? -1 : 1;
32452
+ };
32453
+ var asrjo_Comparisons_nonNaNmin = ($a, $b) => {
32454
+ if ($a.$isSignMinus() != $b.$isSignMinus()) {
32455
+ if ($a.$isSignMinus())
32456
+ $b = $a;
32457
+ return $b;
32389
32458
  }
32390
- if (!(jm_BigInteger_compareTo($rounded, $max) <= 0 && jm_BigInteger_compareTo($rounded, $min) >= 0)) {
32391
- $f = $env.$flags;
32459
+ if (!$a.$isInfinite() && !$b.$isInfinite()) {
32460
+ if (asrjo_Comparisons_compareNoNAN($a, $b) > 0)
32461
+ return $b;
32462
+ return $a;
32463
+ }
32464
+ if ($a.$isInfinite() != $a.$isSignMinus())
32465
+ return $b;
32466
+ return $a;
32467
+ };
32468
+ var asrjo_Comparisons_handleNaNNumber = ($a, $b, $env) => {
32469
+ let var$4;
32470
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32471
+ var$4 = $env.$flags;
32392
32472
  $env = asrj_Flags_invalid;
32393
- ju_GenericEnumSet_add($f, $env);
32394
- } else if (!$quiet) {
32395
- $f = $copy.$flags;
32396
- $copy = asrj_Flags_inexact;
32397
- if (ju_GenericEnumSet_contains($f, $copy)) {
32398
- $f = $env.$flags;
32399
- $env = asrj_Flags_inexact;
32400
- ju_GenericEnumSet_add($f, $env);
32401
- }
32473
+ ju_GenericEnumSet_add(var$4, $env);
32402
32474
  }
32403
- if (jm_BigInteger_compareTo($rounded, $max) == -1)
32404
- $max = $rounded;
32405
- if (jm_BigInteger_compareTo($max, $min) == 1)
32406
- $min = $max;
32407
- return $min;
32475
+ if ($a.$isNaN()) {
32476
+ if ($b.$isNaN())
32477
+ $b = $b.$NaN();
32478
+ } else
32479
+ $b = !$b.$isNaN() ? null : $a;
32480
+ return $b;
32408
32481
  };
32409
- var asrjo_Conversions_convertToInt = ($f, $env, $quiet) => {
32410
- return jm_BigInteger_intValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_fromInt(2147483647)), jm_BigInteger_valueOf(Long_fromInt(-2147483648)), $env, $quiet));
32482
+ var asrjo_Comparisons_minimumNumber = ($a, $b, $env) => {
32483
+ let $tmp_0;
32484
+ $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32485
+ if ($tmp_0 !== null)
32486
+ return $tmp_0;
32487
+ return asrjo_Comparisons_nonNaNmin($a, $b);
32411
32488
  };
32412
- var asrjo_Conversions_convertToUnsignedInt = ($f, $env, $quiet) => {
32413
- 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)));
32489
+ var asrjo_Comparisons_maximumNumber = ($a, $b, $env) => {
32490
+ let $tmp_0;
32491
+ $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32492
+ if ($tmp_0 !== null)
32493
+ return $tmp_0;
32494
+ if ($a === asrjo_Comparisons_nonNaNmin($a, $b))
32495
+ $a = $b;
32496
+ return $a;
32414
32497
  };
32415
- var asrjo_Conversions_convertToLong = ($f, $env, $quiet) => {
32416
- return jm_BigInteger_longValueExact(asrjo_Conversions_convertToIntegral($f, jm_BigInteger_valueOf(Long_create(4294967295, 2147483647)), jm_BigInteger_valueOf(Long_create(0, 2147483648)), $env, $quiet));
32498
+ var asrjo_Comparisons_compareQuietEqual = ($a, $b, $env) => {
32499
+ let var$4;
32500
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32501
+ var$4 = $env.$flags;
32502
+ $env = asrj_Flags_invalid;
32503
+ ju_GenericEnumSet_add(var$4, $env);
32504
+ }
32505
+ if (!$a.$isNaN() && !$b.$isNaN())
32506
+ return asrjo_Comparisons_compareNoNAN($a, $b) ? 0 : 1;
32507
+ return 0;
32417
32508
  };
32418
- var asrjo_Conversions_convertToUnsignedLong = ($f, $env, $quiet) => {
32419
- 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));
32509
+ var asrjo_Comparisons_compareSignalingLessThan = ($a, $b, $env) => {
32510
+ let var$4, var$5;
32511
+ if (!(!$a.$isNaN() && !$b.$isNaN())) {
32512
+ var$4 = $env.$flags;
32513
+ var$5 = asrj_Flags_invalid;
32514
+ ju_GenericEnumSet_add(var$4, var$5);
32515
+ }
32516
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32517
+ var$5 = $env.$flags;
32518
+ $env = asrj_Flags_invalid;
32519
+ ju_GenericEnumSet_add(var$5, $env);
32520
+ }
32521
+ return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) >= 0 ? 0 : 1 : 0;
32420
32522
  };
32421
- var asrjo_Conversions_convertFromInt = ($i, $env, $helper) => {
32422
- let var$4;
32423
- if (jm_BigInteger_equals($i, jm_BigInteger_ZERO))
32424
- return $helper.$Zero();
32425
- var$4 = new asrji_ExactFloat();
32426
- if (jm_BigInteger_compareTo($i, jm_BigInteger_ZERO) >= 0)
32427
- var$4.$sign = 0;
32428
- else {
32429
- var$4.$sign = 1;
32430
- $i = jm_BigInteger_negate($i);
32523
+ var asrjo_Comparisons_compareSignalingLessThanEqual = ($a, $b, $env) => {
32524
+ let var$4, var$5;
32525
+ if (!(!$a.$isNaN() && !$b.$isNaN())) {
32526
+ var$4 = $env.$flags;
32527
+ var$5 = asrj_Flags_invalid;
32528
+ ju_GenericEnumSet_add(var$4, var$5);
32431
32529
  }
32432
- var$4.$exponent0 = 0;
32433
- var$4.$significand = $i;
32434
- return $helper.$fromExactFloat(var$4, $env);
32530
+ if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32531
+ var$5 = $env.$flags;
32532
+ $env = asrj_Flags_invalid;
32533
+ ju_GenericEnumSet_add(var$5, $env);
32534
+ }
32535
+ return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) > 0 ? 0 : 1 : 0;
32435
32536
  };
32436
32537
  var asrjo_Arithmetic = $rt_classWithoutFields();
32437
32538
  var asrjo_Arithmetic_$assertionsDisabled = 0;
@@ -32668,108 +32769,6 @@ var asrjo_Arithmetic_division = ($a, $b, $env) => {
32668
32769
  var asrjo_Arithmetic__clinit_ = () => {
32669
32770
  asrjo_Arithmetic_$assertionsDisabled = 0;
32670
32771
  };
32671
- var asrjo_Comparisons = $rt_classWithoutFields();
32672
- var asrjo_Comparisons_compareNoNAN = ($a, $b) => {
32673
- if ($a.$isZero()) {
32674
- if ($b.$isZero())
32675
- return 0;
32676
- return !$b.$isSignMinus() ? -1 : 1;
32677
- }
32678
- if ($b.$isZero())
32679
- return !$a.$isSignMinus() ? 1 : -1;
32680
- if (!$a.$isInfinite()) {
32681
- if (!$b.$isInfinite())
32682
- return asrji_ExactFloat_compareTo($a.$toExactFloat(), $b.$toExactFloat());
32683
- return !$b.$isSignMinus() ? -1 : 1;
32684
- }
32685
- if ($b.$isInfinite() && $a.$isSignMinus() == $b.$isSignMinus())
32686
- return 0;
32687
- return !$a.$isSignMinus() ? -1 : 1;
32688
- };
32689
- var asrjo_Comparisons_nonNaNmin = ($a, $b) => {
32690
- if ($a.$isSignMinus() != $b.$isSignMinus()) {
32691
- if ($a.$isSignMinus())
32692
- $b = $a;
32693
- return $b;
32694
- }
32695
- if (!$a.$isInfinite() && !$b.$isInfinite()) {
32696
- if (asrjo_Comparisons_compareNoNAN($a, $b) > 0)
32697
- return $b;
32698
- return $a;
32699
- }
32700
- if ($a.$isInfinite() != $a.$isSignMinus())
32701
- return $b;
32702
- return $a;
32703
- };
32704
- var asrjo_Comparisons_handleNaNNumber = ($a, $b, $env) => {
32705
- let var$4;
32706
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32707
- var$4 = $env.$flags;
32708
- $env = asrj_Flags_invalid;
32709
- ju_GenericEnumSet_add(var$4, $env);
32710
- }
32711
- if ($a.$isNaN()) {
32712
- if ($b.$isNaN())
32713
- $b = $b.$NaN();
32714
- } else
32715
- $b = !$b.$isNaN() ? null : $a;
32716
- return $b;
32717
- };
32718
- var asrjo_Comparisons_minimumNumber = ($a, $b, $env) => {
32719
- let $tmp_0;
32720
- $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32721
- if ($tmp_0 !== null)
32722
- return $tmp_0;
32723
- return asrjo_Comparisons_nonNaNmin($a, $b);
32724
- };
32725
- var asrjo_Comparisons_maximumNumber = ($a, $b, $env) => {
32726
- let $tmp_0;
32727
- $tmp_0 = asrjo_Comparisons_handleNaNNumber($a, $b, $env);
32728
- if ($tmp_0 !== null)
32729
- return $tmp_0;
32730
- if ($a === asrjo_Comparisons_nonNaNmin($a, $b))
32731
- $a = $b;
32732
- return $a;
32733
- };
32734
- var asrjo_Comparisons_compareQuietEqual = ($a, $b, $env) => {
32735
- let var$4;
32736
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32737
- var$4 = $env.$flags;
32738
- $env = asrj_Flags_invalid;
32739
- ju_GenericEnumSet_add(var$4, $env);
32740
- }
32741
- if (!$a.$isNaN() && !$b.$isNaN())
32742
- return asrjo_Comparisons_compareNoNAN($a, $b) ? 0 : 1;
32743
- return 0;
32744
- };
32745
- var asrjo_Comparisons_compareSignalingLessThan = ($a, $b, $env) => {
32746
- let var$4, var$5;
32747
- if (!(!$a.$isNaN() && !$b.$isNaN())) {
32748
- var$4 = $env.$flags;
32749
- var$5 = asrj_Flags_invalid;
32750
- ju_GenericEnumSet_add(var$4, var$5);
32751
- }
32752
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32753
- var$5 = $env.$flags;
32754
- $env = asrj_Flags_invalid;
32755
- ju_GenericEnumSet_add(var$5, $env);
32756
- }
32757
- return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) >= 0 ? 0 : 1 : 0;
32758
- };
32759
- var asrjo_Comparisons_compareSignalingLessThanEqual = ($a, $b, $env) => {
32760
- let var$4, var$5;
32761
- if (!(!$a.$isNaN() && !$b.$isNaN())) {
32762
- var$4 = $env.$flags;
32763
- var$5 = asrj_Flags_invalid;
32764
- ju_GenericEnumSet_add(var$4, var$5);
32765
- }
32766
- if (!(!$a.$isSignalling() && !$b.$isSignalling())) {
32767
- var$5 = $env.$flags;
32768
- $env = asrj_Flags_invalid;
32769
- ju_GenericEnumSet_add(var$5, $env);
32770
- }
32771
- return !$a.$isNaN() && !$b.$isNaN() ? asrjo_Comparisons_compareNoNAN($a, $b) > 0 ? 0 : 1 : 0;
32772
- };
32773
32772
  function jnci_BufferedEncoder$Controller() {
32774
32773
  let a = this;
32775
32774
  jl_Object.call(a);
@@ -32818,42 +32817,6 @@ var asrj_RoundingMode__clinit_ = () => {
32818
32817
  var$3[4] = var$1;
32819
32818
  asrj_RoundingMode_$VALUES = var$2;
32820
32819
  };
32821
- var asrj_Flags = $rt_classWithoutFields(jl_Enum);
32822
- var asrj_Flags_inexact = null;
32823
- var asrj_Flags_underflow = null;
32824
- var asrj_Flags_overflow = null;
32825
- var asrj_Flags_divByZero = null;
32826
- var asrj_Flags_invalid = null;
32827
- var asrj_Flags_$VALUES = null;
32828
- var asrj_Flags_values = () => {
32829
- return asrj_Flags_$VALUES.$clone0();
32830
- };
32831
- var asrj_Flags__clinit_ = () => {
32832
- let var$1, var$2, var$3;
32833
- var$1 = new asrj_Flags();
32834
- jl_Enum__init_(var$1, $rt_s(1646), 0);
32835
- asrj_Flags_inexact = var$1;
32836
- var$1 = new asrj_Flags();
32837
- jl_Enum__init_(var$1, $rt_s(1647), 1);
32838
- asrj_Flags_underflow = var$1;
32839
- var$1 = new asrj_Flags();
32840
- jl_Enum__init_(var$1, $rt_s(1648), 2);
32841
- asrj_Flags_overflow = var$1;
32842
- var$1 = new asrj_Flags();
32843
- jl_Enum__init_(var$1, $rt_s(1649), 3);
32844
- asrj_Flags_divByZero = var$1;
32845
- var$1 = new asrj_Flags();
32846
- jl_Enum__init_(var$1, $rt_s(210), 4);
32847
- asrj_Flags_invalid = var$1;
32848
- var$2 = $rt_createArray(asrj_Flags, 5);
32849
- var$3 = var$2.data;
32850
- var$3[0] = asrj_Flags_inexact;
32851
- var$3[1] = asrj_Flags_underflow;
32852
- var$3[2] = asrj_Flags_overflow;
32853
- var$3[3] = asrj_Flags_divByZero;
32854
- var$3[4] = var$1;
32855
- asrj_Flags_$VALUES = var$2;
32856
- };
32857
32820
  function asrji_ExactFloat() {
32858
32821
  let a = this;
32859
32822
  jl_Object.call(a);
@@ -32940,6 +32903,42 @@ var asrji_ExactFloat_isZero = ($this) => {
32940
32903
  var asrji_ExactFloat__clinit_ = () => {
32941
32904
  asrji_ExactFloat_$assertionsDisabled = 0;
32942
32905
  };
32906
+ var asrj_Flags = $rt_classWithoutFields(jl_Enum);
32907
+ var asrj_Flags_inexact = null;
32908
+ var asrj_Flags_underflow = null;
32909
+ var asrj_Flags_overflow = null;
32910
+ var asrj_Flags_divByZero = null;
32911
+ var asrj_Flags_invalid = null;
32912
+ var asrj_Flags_$VALUES = null;
32913
+ var asrj_Flags_values = () => {
32914
+ return asrj_Flags_$VALUES.$clone0();
32915
+ };
32916
+ var asrj_Flags__clinit_ = () => {
32917
+ let var$1, var$2, var$3;
32918
+ var$1 = new asrj_Flags();
32919
+ jl_Enum__init_(var$1, $rt_s(1646), 0);
32920
+ asrj_Flags_inexact = var$1;
32921
+ var$1 = new asrj_Flags();
32922
+ jl_Enum__init_(var$1, $rt_s(1647), 1);
32923
+ asrj_Flags_underflow = var$1;
32924
+ var$1 = new asrj_Flags();
32925
+ jl_Enum__init_(var$1, $rt_s(1648), 2);
32926
+ asrj_Flags_overflow = var$1;
32927
+ var$1 = new asrj_Flags();
32928
+ jl_Enum__init_(var$1, $rt_s(1649), 3);
32929
+ asrj_Flags_divByZero = var$1;
32930
+ var$1 = new asrj_Flags();
32931
+ jl_Enum__init_(var$1, $rt_s(210), 4);
32932
+ asrj_Flags_invalid = var$1;
32933
+ var$2 = $rt_createArray(asrj_Flags, 5);
32934
+ var$3 = var$2.data;
32935
+ var$3[0] = asrj_Flags_inexact;
32936
+ var$3[1] = asrj_Flags_underflow;
32937
+ var$3[2] = asrj_Flags_overflow;
32938
+ var$3[3] = asrj_Flags_divByZero;
32939
+ var$3[4] = var$1;
32940
+ asrj_Flags_$VALUES = var$2;
32941
+ };
32943
32942
  var ju_EnumSet = $rt_classWithoutFields(ju_AbstractSet);
32944
32943
  function ju_GenericEnumSet() {
32945
32944
  let a = this;
@@ -34146,6 +34145,23 @@ var asrjt_Float64$1__clinit_ = () => {
34146
34145
  var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34147
34146
  var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34148
34147
  };
34148
+ var asrjt_Float32$1 = $rt_classWithoutFields();
34149
+ var asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = null;
34150
+ var asrjt_Float32$1_$callClinit = () => {
34151
+ asrjt_Float32$1_$callClinit = $rt_eraseClinit(asrjt_Float32$1);
34152
+ asrjt_Float32$1__clinit_();
34153
+ };
34154
+ var asrjt_Float32$1__clinit_ = () => {
34155
+ let var$1, var$2;
34156
+ var$1 = $rt_createIntArray(asrj_RoundingMode_values().data.length);
34157
+ var$2 = var$1.data;
34158
+ asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = var$1;
34159
+ var$2[asrj_RoundingMode_zero.$ordinal0] = 1;
34160
+ var$2[asrj_RoundingMode_min.$ordinal0] = 2;
34161
+ var$2[asrj_RoundingMode_max.$ordinal0] = 3;
34162
+ var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34163
+ var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34164
+ };
34149
34165
  var jm_Multiplication = $rt_classWithoutFields();
34150
34166
  var jm_Multiplication_tenPows = null;
34151
34167
  var jm_Multiplication_fivePows = null;
@@ -34307,23 +34323,6 @@ var jm_Multiplication__clinit_ = () => {
34307
34323
  $i = $i + 1 | 0;
34308
34324
  }
34309
34325
  };
34310
- var asrjt_Float32$1 = $rt_classWithoutFields();
34311
- var asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = null;
34312
- var asrjt_Float32$1_$callClinit = () => {
34313
- asrjt_Float32$1_$callClinit = $rt_eraseClinit(asrjt_Float32$1);
34314
- asrjt_Float32$1__clinit_();
34315
- };
34316
- var asrjt_Float32$1__clinit_ = () => {
34317
- let var$1, var$2;
34318
- var$1 = $rt_createIntArray(asrj_RoundingMode_values().data.length);
34319
- var$2 = var$1.data;
34320
- asrjt_Float32$1_$SwitchMap$app$specy$rars$jsoftfloat$RoundingMode = var$1;
34321
- var$2[asrj_RoundingMode_zero.$ordinal0] = 1;
34322
- var$2[asrj_RoundingMode_min.$ordinal0] = 2;
34323
- var$2[asrj_RoundingMode_max.$ordinal0] = 3;
34324
- var$2[asrj_RoundingMode_away.$ordinal0] = 4;
34325
- var$2[asrj_RoundingMode_even.$ordinal0] = 5;
34326
- };
34327
34326
  var otjc_JSBoolean = $rt_classWithoutFields();
34328
34327
  var otjc_JSArrayReader = $rt_classWithoutFields(0);
34329
34328
  var otjc_JSArray = $rt_classWithoutFields();
@@ -35306,46 +35305,26 @@ $rt_metadata([
35306
35305
  0,
35307
35306
  0,
35308
35307
  0,
35309
- asr_JsCompilationResult,
35310
- "JsCompilationResult",
35311
- 10,
35312
- jl_Object,
35313
- [],
35314
- 0,
35315
- 3,
35316
- 0,
35317
- 0,
35318
- 0,
35319
- asr_AssemblyException,
35308
+ asr_JsRiscV$getTokenizedLines$lambda$_5_0,
35320
35309
  0,
35321
- jl_Exception,
35322
- [],
35310
+ jl_Object,
35311
+ [juf_Function],
35323
35312
  0,
35324
35313
  3,
35325
35314
  0,
35326
35315
  0,
35327
- 0,
35328
- asrrh_RegisterFile,
35316
+ ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
35317
+ asr_JsRiscV$getTokenizedLines$lambda$_5_1,
35329
35318
  0,
35330
35319
  jl_Object,
35331
- [],
35332
- 0,
35333
- 3,
35334
- 0,
35335
- asrrh_RegisterFile_$callClinit,
35336
- 0,
35337
- jm_BigInteger,
35338
- "BigInteger",
35339
- 14,
35340
- jl_Number,
35341
- [jl_Comparable, ji_Serializable],
35320
+ [juf_IntFunction],
35342
35321
  0,
35343
35322
  3,
35344
35323
  0,
35345
35324
  0,
35346
- ["$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString)],
35347
- asr_JsProgramStatement,
35348
- "JsProgramStatement",
35325
+ ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
35326
+ asr_JsRiscVTokenizedLine,
35327
+ "JsRiscVTokenizedLine",
35349
35328
  10,
35350
35329
  jl_Object,
35351
35330
  [],
@@ -35391,36 +35370,55 @@ $rt_metadata([
35391
35370
  0,
35392
35371
  0,
35393
35372
  0,
35394
- asr_JsRiscV$getTokenizedLines$lambda$_5_0,
35395
- 0,
35373
+ asr_JsProgramStatement,
35374
+ "JsProgramStatement",
35375
+ 10,
35396
35376
  jl_Object,
35397
- [juf_Function],
35377
+ [],
35398
35378
  0,
35399
35379
  3,
35400
35380
  0,
35401
35381
  0,
35402
- ["$apply0", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_0_apply)],
35403
- asr_JsRiscV$getTokenizedLines$lambda$_5_1,
35382
+ 0,
35383
+ asrrh_RegisterFile,
35404
35384
  0,
35405
35385
  jl_Object,
35406
- [juf_IntFunction],
35386
+ [],
35407
35387
  0,
35408
35388
  3,
35409
35389
  0,
35390
+ asrrh_RegisterFile_$callClinit,
35391
+ 0,
35392
+ juf_ToIntFunction,
35410
35393
  0,
35411
- ["$apply", $rt_wrapFunction1(asr_JsRiscV$getTokenizedLines$lambda$_5_1_apply)],
35412
- asr_JsRiscVTokenizedLine,
35413
- "JsRiscVTokenizedLine",
35414
- 10,
35415
35394
  jl_Object,
35416
35395
  [],
35396
+ 3,
35397
+ 3,
35398
+ 0,
35399
+ 0,
35400
+ 0,
35401
+ asr_JsRiscV$getRegistersValues$lambda$_25_0,
35402
+ 0,
35403
+ jl_Object,
35404
+ [juf_ToIntFunction],
35417
35405
  0,
35418
35406
  3,
35419
35407
  0,
35420
35408
  0,
35421
35409
  0,
35422
- asr_JsStackFrame,
35423
- "JsStackFrame",
35410
+ jm_BigInteger,
35411
+ "BigInteger",
35412
+ 14,
35413
+ jl_Number,
35414
+ [jl_Comparable, ji_Serializable],
35415
+ 0,
35416
+ 3,
35417
+ 0,
35418
+ 0,
35419
+ ["$equals", $rt_wrapFunction1(jm_BigInteger_equals), "$toString", $rt_wrapFunction0(jm_BigInteger_toString)],
35420
+ asr_JsCompilationResult,
35421
+ "JsCompilationResult",
35424
35422
  10,
35425
35423
  jl_Object,
35426
35424
  [],
@@ -35429,19 +35427,20 @@ $rt_metadata([
35429
35427
  0,
35430
35428
  0,
35431
35429
  0,
35432
- juf_ToIntFunction,
35430
+ asr_AssemblyException,
35433
35431
  0,
35434
- jl_Object,
35432
+ jl_Exception,
35435
35433
  [],
35436
- 3,
35437
- 3,
35438
35434
  0,
35435
+ 3,
35439
35436
  0,
35440
35437
  0,
35441
- asr_JsRiscV$getRegistersValues$lambda$_25_0,
35442
35438
  0,
35439
+ asr_JsStackFrame,
35440
+ "JsStackFrame",
35441
+ 10,
35443
35442
  jl_Object,
35444
- [juf_ToIntFunction],
35443
+ [],
35445
35444
  0,
35446
35445
  3,
35447
35446
  0,
@@ -35540,91 +35539,91 @@ $rt_metadata([
35540
35539
  0,
35541
35540
  0,
35542
35541
  0,
35543
- asr_JsCompilationResult$_init_$lambda$_0_0,
35542
+ asrs_BackStepper,
35544
35543
  0,
35545
35544
  jl_Object,
35546
- [juf_Function],
35545
+ [],
35547
35546
  0,
35548
35547
  3,
35549
35548
  0,
35550
35549
  0,
35551
- ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35552
- juf_Supplier,
35550
+ 0,
35551
+ asrs_BackStepper$BackstepStack,
35553
35552
  0,
35554
35553
  jl_Object,
35555
35554
  [],
35556
- 3,
35555
+ 0,
35557
35556
  3,
35558
35557
  0,
35559
35558
  0,
35560
35559
  0,
35561
- asr_JsCompilationResult$_init_$lambda$_0_1,
35560
+ jl_AutoCloseable,
35562
35561
  0,
35563
35562
  jl_Object,
35564
- [juf_Supplier],
35565
- 0,
35563
+ [],
35564
+ 3,
35566
35565
  3,
35567
35566
  0,
35568
35567
  0,
35569
35568
  0
35570
35569
  ]);
35571
35570
  $rt_metadata([
35572
- juf_BiConsumer,
35571
+ jus_BaseStream,
35573
35572
  0,
35574
35573
  jl_Object,
35575
- [],
35574
+ [jl_AutoCloseable],
35576
35575
  3,
35577
35576
  3,
35578
35577
  0,
35579
35578
  0,
35580
35579
  0,
35581
- asr_JsCompilationResult$_init_$lambda$_0_2,
35580
+ jus_Stream,
35582
35581
  0,
35583
35582
  jl_Object,
35584
- [juf_BiConsumer],
35585
- 0,
35583
+ [jus_BaseStream],
35584
+ 3,
35586
35585
  3,
35587
35586
  0,
35588
35587
  0,
35589
35588
  0,
35590
- asr_JsCompilationResult$_init_$lambda$_0_3,
35589
+ jusi_SimpleStreamImpl,
35591
35590
  0,
35592
35591
  jl_Object,
35593
- [juf_BiConsumer],
35594
- 0,
35592
+ [jus_Stream],
35593
+ 1,
35595
35594
  3,
35596
35595
  0,
35597
35596
  0,
35598
35597
  0,
35599
- asrrh_Register,
35600
- "Register",
35601
- 7,
35602
- ju_Observable,
35598
+ jusi_ArrayStreamImpl,
35599
+ 0,
35600
+ jusi_SimpleStreamImpl,
35603
35601
  [],
35604
35602
  0,
35605
35603
  3,
35606
35604
  0,
35607
35605
  0,
35608
- ["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
35609
- asrs_BackStepper,
35610
- 0,
35611
- jl_Object,
35606
+ ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35607
+ asrrh_Register,
35608
+ "Register",
35609
+ 7,
35610
+ ju_Observable,
35612
35611
  [],
35613
35612
  0,
35614
35613
  3,
35615
35614
  0,
35616
35615
  0,
35617
- 0,
35618
- asrs_BackStepper$BackstepStack,
35616
+ ["$getValue", $rt_wrapFunction0(asrrh_Register_getValue), "$getValueNoNotify", $rt_wrapFunction0(asrrh_Register_getValueNoNotify), "$setValue", $rt_wrapFunction1(asrrh_Register_setValue), "$resetValue", $rt_wrapFunction0(asrrh_Register_resetValue)],
35617
+ asr_JsCompilationResult$_init_$lambda$_0_0,
35619
35618
  0,
35620
35619
  jl_Object,
35621
- [],
35620
+ [juf_Function],
35622
35621
  0,
35623
35622
  3,
35624
35623
  0,
35625
35624
  0,
35626
- 0,
35627
- jl_AutoCloseable,
35625
+ ["$apply0", $rt_wrapFunction1(asr_JsCompilationResult$_init_$lambda$_0_0_apply)],
35626
+ juf_Supplier,
35628
35627
  0,
35629
35628
  jl_Object,
35630
35629
  [],
@@ -35633,42 +35632,42 @@ $rt_metadata([
35633
35632
  0,
35634
35633
  0,
35635
35634
  0,
35636
- jus_BaseStream,
35635
+ asr_JsCompilationResult$_init_$lambda$_0_1,
35637
35636
  0,
35638
35637
  jl_Object,
35639
- [jl_AutoCloseable],
35640
- 3,
35638
+ [juf_Supplier],
35639
+ 0,
35641
35640
  3,
35642
35641
  0,
35643
35642
  0,
35644
35643
  0,
35645
- jus_Stream,
35644
+ juf_BiConsumer,
35646
35645
  0,
35647
35646
  jl_Object,
35648
- [jus_BaseStream],
35647
+ [],
35649
35648
  3,
35650
35649
  3,
35651
35650
  0,
35652
35651
  0,
35653
35652
  0,
35654
- jusi_SimpleStreamImpl,
35653
+ asr_JsCompilationResult$_init_$lambda$_0_2,
35655
35654
  0,
35656
35655
  jl_Object,
35657
- [jus_Stream],
35658
- 1,
35656
+ [juf_BiConsumer],
35657
+ 0,
35659
35658
  3,
35660
35659
  0,
35661
35660
  0,
35662
35661
  0,
35663
- jusi_ArrayStreamImpl,
35662
+ asr_JsCompilationResult$_init_$lambda$_0_3,
35664
35663
  0,
35665
- jusi_SimpleStreamImpl,
35666
- [],
35664
+ jl_Object,
35665
+ [juf_BiConsumer],
35667
35666
  0,
35668
35667
  3,
35669
35668
  0,
35670
35669
  0,
35671
- ["$next1", $rt_wrapFunction1(jusi_ArrayStreamImpl_next), "$estimateSize", $rt_wrapFunction0(jusi_ArrayStreamImpl_estimateSize)],
35670
+ 0,
35672
35671
  jl_Math,
35673
35672
  0,
35674
35673
  jl_Object,
@@ -37210,7 +37209,7 @@ $rt_metadata([
37210
37209
  0,
37211
37210
  0,
37212
37211
  0,
37213
- asr_ErrorList,
37212
+ asrrh_RegisterBlock,
37214
37213
  0,
37215
37214
  jl_Object,
37216
37215
  [],
@@ -37219,7 +37218,7 @@ $rt_metadata([
37219
37218
  0,
37220
37219
  0,
37221
37220
  0,
37222
- asrrh_RegisterBlock,
37221
+ asr_ErrorList,
37223
37222
  0,
37224
37223
  jl_Object,
37225
37224
  [],
@@ -37873,15 +37872,6 @@ $rt_metadata([
37873
37872
  0,
37874
37873
  0,
37875
37874
  ["$next1", $rt_wrapFunction1(jusi_StreamOverSpliterator_next), "$estimateSize", $rt_wrapFunction0(jusi_StreamOverSpliterator_estimateSize)],
37876
- jm_Conversion,
37877
- 0,
37878
- jl_Object,
37879
- [],
37880
- 0,
37881
- 0,
37882
- 0,
37883
- 0,
37884
- 0,
37885
37875
  jusi_WrappingStreamImpl,
37886
37876
  0,
37887
37877
  jusi_SimpleStreamImpl,
@@ -37927,6 +37917,15 @@ $rt_metadata([
37927
37917
  0,
37928
37918
  0,
37929
37919
  0,
37920
+ jm_Conversion,
37921
+ 0,
37922
+ jl_Object,
37923
+ [],
37924
+ 0,
37925
+ 0,
37926
+ 0,
37927
+ 0,
37928
+ 0,
37930
37929
  asru_Binary,
37931
37930
  0,
37932
37931
  jl_Object,
@@ -37945,6 +37944,16 @@ $rt_metadata([
37945
37944
  0,
37946
37945
  0,
37947
37946
  ["$hasNext", $rt_wrapFunction0(ju_AbstractList$1_hasNext), "$next", $rt_wrapFunction0(ju_AbstractList$1_next)],
37947
+ asrs_Simulator$Reason,
37948
+ "Simulator$Reason",
37949
+ 3,
37950
+ jl_Enum,
37951
+ [],
37952
+ 12,
37953
+ 3,
37954
+ 0,
37955
+ 0,
37956
+ 0,
37948
37957
  asrrh_FloatingPointRegisterFile,
37949
37958
  0,
37950
37959
  jl_Object,
@@ -37990,16 +37999,6 @@ $rt_metadata([
37990
37999
  0,
37991
38000
  0,
37992
38001
  0,
37993
- asrs_Simulator$Reason,
37994
- "Simulator$Reason",
37995
- 3,
37996
- jl_Enum,
37997
- [],
37998
- 12,
37999
- 3,
38000
- 0,
38001
- 0,
38002
- 0,
38003
38002
  jur_Pattern,
38004
38003
  0,
38005
38004
  jl_Object,
@@ -41045,6 +41044,15 @@ $rt_metadata([
41045
41044
  "$NaN",
41046
41045
  $rt_wrapFunction0(asrjt_Float32_NaN0)
41047
41046
  ],
41047
+ asrjo_Conversions,
41048
+ 0,
41049
+ jl_Object,
41050
+ [],
41051
+ 0,
41052
+ 3,
41053
+ 0,
41054
+ 0,
41055
+ 0,
41048
41056
  asrjt_Float64,
41049
41057
  0,
41050
41058
  asrjt_Floating,
@@ -41087,7 +41095,7 @@ $rt_metadata([
41087
41095
  "$NaN",
41088
41096
  $rt_wrapFunction0(asrjt_Float64_NaN0)
41089
41097
  ],
41090
- asrjo_Conversions,
41098
+ asrjo_Comparisons,
41091
41099
  0,
41092
41100
  jl_Object,
41093
41101
  [],
@@ -41105,15 +41113,6 @@ $rt_metadata([
41105
41113
  0,
41106
41114
  0,
41107
41115
  0,
41108
- asrjo_Comparisons,
41109
- 0,
41110
- jl_Object,
41111
- [],
41112
- 0,
41113
- 3,
41114
- 0,
41115
- 0,
41116
- 0,
41117
41116
  jnci_BufferedEncoder$Controller,
41118
41117
  0,
41119
41118
  jl_Object,
@@ -41142,6 +41141,15 @@ $rt_metadata([
41142
41141
  0,
41143
41142
  0,
41144
41143
  0,
41144
+ asrji_ExactFloat,
41145
+ 0,
41146
+ jl_Object,
41147
+ [jl_Comparable],
41148
+ 0,
41149
+ 3,
41150
+ 0,
41151
+ 0,
41152
+ 0,
41145
41153
  asrj_Flags,
41146
41154
  "Flags",
41147
41155
  9,
@@ -41152,15 +41160,6 @@ $rt_metadata([
41152
41160
  0,
41153
41161
  0,
41154
41162
  0,
41155
- asrji_ExactFloat,
41156
- 0,
41157
- jl_Object,
41158
- [jl_Comparable],
41159
- 0,
41160
- 3,
41161
- 0,
41162
- 0,
41163
- 0,
41164
41163
  ju_EnumSet,
41165
41164
  0,
41166
41165
  ju_AbstractSet,
@@ -41352,25 +41351,25 @@ $rt_metadata([
41352
41351
  0,
41353
41352
  asrjt_Float64$1_$callClinit,
41354
41353
  0,
41355
- jm_Multiplication,
41354
+ asrjt_Float32$1,
41356
41355
  0,
41357
41356
  jl_Object,
41358
41357
  [],
41358
+ 32,
41359
41359
  0,
41360
41360
  0,
41361
- 0,
41362
- jm_Multiplication_$callClinit,
41361
+ asrjt_Float32$1_$callClinit,
41363
41362
  0
41364
41363
  ]);
41365
41364
  $rt_metadata([
41366
- asrjt_Float32$1,
41365
+ jm_Multiplication,
41367
41366
  0,
41368
41367
  jl_Object,
41369
41368
  [],
41370
- 32,
41371
41369
  0,
41372
41370
  0,
41373
- asrjt_Float32$1_$callClinit,
41371
+ 0,
41372
+ jm_Multiplication_$callClinit,
41374
41373
  0,
41375
41374
  otjc_JSBoolean,
41376
41375
  0,
@@ -42542,6 +42541,13 @@ $rt_stringPool([
42542
42541
  "0.000000",
42543
42542
  "0E",
42544
42543
  "0E+",
42544
+ "BREAKPOINT",
42545
+ "EXCEPTION",
42546
+ "MAX_STEPS",
42547
+ "NORMAL_TERMINATION",
42548
+ "CLIFF_TERMINATION",
42549
+ "PAUSE",
42550
+ "STOP",
42545
42551
  "ft0",
42546
42552
  "ft1",
42547
42553
  "ft2",
@@ -42589,13 +42595,6 @@ $rt_stringPool([
42589
42595
  "Cannot claim, no timer interrupt pending",
42590
42596
  "Cannot claim, no trap pending",
42591
42597
  "trapPC doesn't match current pc",
42592
- "BREAKPOINT",
42593
- "EXCEPTION",
42594
- "MAX_STEPS",
42595
- "NORMAL_TERMINATION",
42596
- "CLIFF_TERMINATION",
42597
- "PAUSE",
42598
- "STOP",
42599
42598
  "Patter is null",
42600
42599
  "Recursive include of file ",
42601
42600
  "Error reading include file ",
@@ -43117,40 +43116,40 @@ var $rt_jso_marker = Symbol("jsoClass");
43117
43116
  (() => {
43118
43117
  let c;
43119
43118
  c = asr_JsRiscV.prototype;
43120
- c.getTokenizedLines = $rt_callWithReceiver(asr_JsRiscV_getTokenizedLines$exported$25);
43119
+ c.getTokenizedLines = $rt_callWithReceiver(asr_JsRiscV_getTokenizedLines$exported$26);
43121
43120
  c.getCurrentStatementIndex = $rt_callWithReceiver(asr_JsRiscV_getCurrentStatementIndex$exported$30);
43122
- c.getRegisterValueLong = $rt_callWithReceiver(asr_JsRiscV_getRegisterValueLong$exported$13);
43123
- c.setUndoEnabled = $rt_callWithReceiver(asr_JsRiscV_setUndoEnabled$exported$22);
43121
+ c.getRegisterValueLong = $rt_callWithReceiver(asr_JsRiscV_getRegisterValueLong$exported$14);
43122
+ c.setUndoEnabled = $rt_callWithReceiver(asr_JsRiscV_setUndoEnabled$exported$23);
43124
43123
  c.getRegistersValues = $rt_callWithReceiver(asr_JsRiscV_getRegistersValues$exported$6);
43125
43124
  c.readMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_readMemoryBytes$exported$33);
43126
43125
  c.undo = $rt_callWithReceiver(asr_JsRiscV_undo$exported$8);
43127
- c.getParsedStatements = $rt_callWithReceiver(asr_JsRiscV_getParsedStatements$exported$20);
43128
- c.getStatementAtSourceLine = $rt_callWithReceiver(asr_JsRiscV_getStatementAtSourceLine$exported$21);
43129
- c.setUndoSize = $rt_callWithReceiver(asr_JsRiscV_setUndoSize$exported$19);
43130
- c.getUndoStack = $rt_callWithReceiver(asr_JsRiscV_getUndoStack$exported$14);
43131
- c.setRegisterValue = $rt_callWithReceiver(asr_JsRiscV_setRegisterValue$exported$27);
43132
- c.getStopReason = $rt_callWithReceiver(asr_JsRiscV_getStopReason$exported$23);
43126
+ c.getParsedStatements = $rt_callWithReceiver(asr_JsRiscV_getParsedStatements$exported$21);
43127
+ c.getStatementAtSourceLine = $rt_callWithReceiver(asr_JsRiscV_getStatementAtSourceLine$exported$22);
43128
+ c.setUndoSize = $rt_callWithReceiver(asr_JsRiscV_setUndoSize$exported$20);
43129
+ c.getUndoStack = $rt_callWithReceiver(asr_JsRiscV_getUndoStack$exported$15);
43130
+ c.setRegisterValue = $rt_callWithReceiver(asr_JsRiscV_setRegisterValue$exported$9);
43131
+ c.getStopReason = $rt_callWithReceiver(asr_JsRiscV_getStopReason$exported$24);
43133
43132
  c.getLabelAtAddress = $rt_callWithReceiver(asr_JsRiscV_getLabelAtAddress$exported$2);
43134
- c.simulate = $rt_callWithReceiver(asr_JsRiscV_simulate$exported$24);
43135
- c.setMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_setMemoryBytes$exported$15);
43136
- c.getRegistersValuesLong = $rt_callWithReceiver(asr_JsRiscV_getRegistersValuesLong$exported$26);
43137
- c.getNextStatement = $rt_callWithReceiver(asr_JsRiscV_getNextStatement$exported$10);
43133
+ c.simulate = $rt_callWithReceiver(asr_JsRiscV_simulate$exported$25);
43134
+ c.setMemoryBytes = $rt_callWithReceiver(asr_JsRiscV_setMemoryBytes$exported$16);
43135
+ c.getRegistersValuesLong = $rt_callWithReceiver(asr_JsRiscV_getRegistersValuesLong$exported$27);
43136
+ c.getNextStatement = $rt_callWithReceiver(asr_JsRiscV_getNextStatement$exported$11);
43138
43137
  c.simulateWithBreakpoints = $rt_callWithReceiver(asr_JsRiscV_simulateWithBreakpoints$exported$29);
43139
43138
  c.getRegisterValue = $rt_callWithReceiver(asr_JsRiscV_getRegisterValue$exported$1);
43140
43139
  c.assemble = $rt_callWithReceiver(asr_JsRiscV_assemble$exported$7);
43141
43140
  c.registerHandler = $rt_callWithReceiver(asr_JsRiscV_registerHandler$exported$0);
43142
43141
  c.simulateWithLimit = $rt_callWithReceiver(asr_JsRiscV_simulateWithLimit$exported$5);
43143
- c.getCompiledStatements = $rt_callWithReceiver(asr_JsRiscV_getCompiledStatements$exported$9);
43142
+ c.getCompiledStatements = $rt_callWithReceiver(asr_JsRiscV_getCompiledStatements$exported$10);
43144
43143
  c.step = $rt_callWithReceiver(asr_JsRiscV_step$exported$28);
43145
- c.initialize = $rt_callWithReceiver(asr_JsRiscV_initialize$exported$12);
43144
+ c.initialize = $rt_callWithReceiver(asr_JsRiscV_initialize$exported$13);
43146
43145
  c.simulateWithBreakpointsAndLimit = $rt_callWithReceiver(asr_JsRiscV_simulateWithBreakpointsAndLimit$exported$3);
43147
- c.getStatementAtAddress = $rt_callWithReceiver(asr_JsRiscV_getStatementAtAddress$exported$16);
43146
+ c.getStatementAtAddress = $rt_callWithReceiver(asr_JsRiscV_getStatementAtAddress$exported$17);
43148
43147
  c.getCallStack = $rt_callWithReceiver(asr_JsRiscV_getCallStack$exported$4);
43149
43148
  Object.defineProperty(c, "stackPointerLong", {
43150
- get: $rt_callWithReceiver(asr_JsRiscV_getStackPointerLong$exported$17)
43149
+ get: $rt_callWithReceiver(asr_JsRiscV_getStackPointerLong$exported$18)
43151
43150
  });
43152
43151
  Object.defineProperty(c, "canUndo", {
43153
- get: $rt_callWithReceiver(asr_JsRiscV_canUndo$exported$18)
43152
+ get: $rt_callWithReceiver(asr_JsRiscV_canUndo$exported$19)
43154
43153
  });
43155
43154
  Object.defineProperty(c, "programCounter", {
43156
43155
  get: $rt_callWithReceiver(asr_JsRiscV_getProgramCounter$exported$31)
@@ -43162,7 +43161,7 @@ var $rt_jso_marker = Symbol("jsoClass");
43162
43161
  get: $rt_callWithReceiver(asr_JsRiscV_getStackPointer$exported$34)
43163
43162
  });
43164
43163
  Object.defineProperty(c, "terminated", {
43165
- get: $rt_callWithReceiver(asr_JsRiscV_terminated$exported$11)
43164
+ get: $rt_callWithReceiver(asr_JsRiscV_terminated$exported$12)
43166
43165
  });
43167
43166
  c = asr_JsInstruction.prototype;
43168
43167
  c.getIsRv64Only = $rt_callWithReceiver(asr_JsInstruction_getIsRv64Only$exported$1);
@@ -43178,15 +43177,25 @@ var $rt_jso_marker = Symbol("jsoClass");
43178
43177
  Object.defineProperty(c, "example", {
43179
43178
  get: $rt_callWithReceiver(asr_JsInstruction_getExample$exported$4)
43180
43179
  });
43181
- c = asr_JsCompilationResult.prototype;
43182
- Object.defineProperty(c, "hasErrors", {
43183
- get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
43180
+ c = asr_JsRiscVTokenizedLine.prototype;
43181
+ Object.defineProperty(c, "line", {
43182
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
43184
43183
  });
43185
- Object.defineProperty(c, "report", {
43186
- get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
43184
+ Object.defineProperty(c, "tokens", {
43185
+ get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
43187
43186
  });
43188
- Object.defineProperty(c, "errors", {
43189
- get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
43187
+ c = asr_JsBackStep.prototype;
43188
+ Object.defineProperty(c, "pc", {
43189
+ get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
43190
+ });
43191
+ Object.defineProperty(c, "action", {
43192
+ get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
43193
+ });
43194
+ Object.defineProperty(c, "param1", {
43195
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
43196
+ });
43197
+ Object.defineProperty(c, "param2", {
43198
+ get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
43190
43199
  });
43191
43200
  c = asr_JsProgramStatement.prototype;
43192
43201
  Object.defineProperty(c, "assemblyStatement", {
@@ -43207,25 +43216,15 @@ var $rt_jso_marker = Symbol("jsoClass");
43207
43216
  Object.defineProperty(c, "source", {
43208
43217
  get: $rt_callWithReceiver(asr_JsProgramStatement_getSource$exported$2)
43209
43218
  });
43210
- c = asr_JsBackStep.prototype;
43211
- Object.defineProperty(c, "pc", {
43212
- get: $rt_callWithReceiver(asr_JsBackStep_getPc$exported$0)
43213
- });
43214
- Object.defineProperty(c, "action", {
43215
- get: $rt_callWithReceiver(asr_JsBackStep_getAction$exported$2)
43216
- });
43217
- Object.defineProperty(c, "param1", {
43218
- get: $rt_callWithReceiver(asr_JsBackStep_getParam1$exported$3)
43219
- });
43220
- Object.defineProperty(c, "param2", {
43221
- get: $rt_callWithReceiver(asr_JsBackStep_getParam2$exported$1)
43219
+ c = asr_JsCompilationResult.prototype;
43220
+ Object.defineProperty(c, "hasErrors", {
43221
+ get: $rt_callWithReceiver(asr_JsCompilationResult_hasErrors$exported$1)
43222
43222
  });
43223
- c = asr_JsRiscVTokenizedLine.prototype;
43224
- Object.defineProperty(c, "line", {
43225
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getLine$exported$0)
43223
+ Object.defineProperty(c, "report", {
43224
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getReport$exported$2)
43226
43225
  });
43227
- Object.defineProperty(c, "tokens", {
43228
- get: $rt_callWithReceiver(asr_JsRiscVTokenizedLine_getTokens$exported$1)
43226
+ Object.defineProperty(c, "errors", {
43227
+ get: $rt_callWithReceiver(asr_JsCompilationResult_getErrors$exported$0)
43229
43228
  });
43230
43229
  c = asr_JsStackFrame.prototype;
43231
43230
  Object.defineProperty(c, "pc", {
@@ -43289,26 +43288,26 @@ function $rt_export_class_JsInstruction_33() {
43289
43288
  throw new Error("Can't instantiate this class directly");
43290
43289
  }
43291
43290
  $rt_export_class_JsInstruction_33.prototype = asr_JsInstruction.prototype;
43292
- function $rt_export_class_JsCompilationResult_71() {
43291
+ function $rt_export_class_JsRiscVTokenizedLine_73() {
43293
43292
  throw new Error("Can't instantiate this class directly");
43294
43293
  }
43295
- $rt_export_class_JsCompilationResult_71.prototype = asr_JsCompilationResult.prototype;
43296
- function $rt_export_class_JsProgramStatement_75() {
43294
+ $rt_export_class_JsRiscVTokenizedLine_73.prototype = asr_JsRiscVTokenizedLine.prototype;
43295
+ function $rt_export_class_JsBackStep_77() {
43297
43296
  throw new Error("Can't instantiate this class directly");
43298
43297
  }
43299
- $rt_export_class_JsProgramStatement_75.prototype = asr_JsProgramStatement.prototype;
43300
- function $rt_export_class_JsBackStep_79() {
43298
+ $rt_export_class_JsBackStep_77.prototype = asr_JsBackStep.prototype;
43299
+ function $rt_export_class_JsProgramStatement_78() {
43301
43300
  throw new Error("Can't instantiate this class directly");
43302
43301
  }
43303
- $rt_export_class_JsBackStep_79.prototype = asr_JsBackStep.prototype;
43304
- function $rt_export_class_JsRiscVTokenizedLine_82() {
43302
+ $rt_export_class_JsProgramStatement_78.prototype = asr_JsProgramStatement.prototype;
43303
+ function $rt_export_class_JsCompilationResult_83() {
43305
43304
  throw new Error("Can't instantiate this class directly");
43306
43305
  }
43307
- $rt_export_class_JsRiscVTokenizedLine_82.prototype = asr_JsRiscVTokenizedLine.prototype;
43308
- function $rt_export_class_JsStackFrame_83() {
43306
+ $rt_export_class_JsCompilationResult_83.prototype = asr_JsCompilationResult.prototype;
43307
+ function $rt_export_class_JsStackFrame_85() {
43309
43308
  throw new Error("Can't instantiate this class directly");
43310
43309
  }
43311
- $rt_export_class_JsStackFrame_83.prototype = asr_JsStackFrame.prototype;
43310
+ $rt_export_class_JsStackFrame_85.prototype = asr_JsStackFrame.prototype;
43312
43311
  function $rt_export_class_JsCompilationError_352() {
43313
43312
  throw new Error("Can't instantiate this class directly");
43314
43313
  }