diff --git a/jerry-core/parser/js/js-parser.c b/jerry-core/parser/js/js-parser.c index 420b9748c..6833fbe98 100644 --- a/jerry-core/parser/js/js-parser.c +++ b/jerry-core/parser/js/js-parser.c @@ -1617,14 +1617,14 @@ parser_post_processing (parser_context_t *context_p) /**< context */ { if (context_p->literal_count <= CBC_MAXIMUM_SMALL_VALUE) { - JERRY_ASSERT (literal_index <= CBC_MAXIMUM_SMALL_VALUE); + JERRY_ASSERT (literal_p->prop.index <= CBC_MAXIMUM_SMALL_VALUE); *first_byte = CBC_MAXIMUM_BYTE_VALUE; page_p->bytes[offset] = (uint8_t) (literal_p->prop.index - CBC_MAXIMUM_BYTE_VALUE); length++; } else { - JERRY_ASSERT (literal_index <= CBC_MAXIMUM_FULL_VALUE); + JERRY_ASSERT (literal_p->prop.index <= CBC_MAXIMUM_FULL_VALUE); *first_byte = (uint8_t) ((literal_p->prop.index >> 8) | CBC_HIGHEST_BIT_MASK); page_p->bytes[offset] = (uint8_t) (literal_p->prop.index & 0xff); length++; diff --git a/tests/jerry/regression-test-issue-3114.js b/tests/jerry/regression-test-issue-3114.js new file mode 100644 index 000000000..c1d4a2f21 --- /dev/null +++ b/tests/jerry/regression-test-issue-3114.js @@ -0,0 +1,432 @@ +// Copyright JS Foundation and other contributors, http://js.foundation +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +function $() { + var id_0 = $.SIMD.id_1; + var id_1 = id_2.check; + var id_3 = id_4; + var id_5 = id_6.id_7; + var id_7 = id_8.id_9; + var id_9 = id_10; + var id_11 = id_12; + var id_13 = id_14; + var id_15 = id_16; + var id_17 = id_18; + var id_19 = id_20; + var id_21 = id_22; + var id_23 = id_24; + var id_25 = id_26; + var id_27 = id_28; + var id_29 = id_30.and; + var id_31 = id_32.or; + var id_33 = id_34.xor; + var id_35 = id_36.not; + var id_37 = id_38; + var id_39 = id_40; + var id_41 = id_42.id_43; + var id_43 = id_44.id_45; + var id_45 = id_46.store + var id_47 = id_48.id_49; + var id_49 = id_50.id_51; + var id_56 = id_57.splat; + var id_58 = id_59; + var id_60 = id_61.id_62; + var id_62 = id_63.abs; + var id_64 = id_65.neg; + var id_66 = id_67.add; + var id_68 = id_69.sub; + var id_70 = id_71.mul; + var id_72 = id_73.div; + var id_74 = id_75.min; + var id_76 = id_77.max; + var id_78 = id_79.sqrt; + var id_80 = id_81.id_82; + var id_82 = id_83.shuffle; + var id_84 = id_85.lessThan; + var id_86 = id_87.lessThanOrEqual; + var id_88 = id_89.equal; + var id_90 = id_91.notEqual; + var id_92 = id_93.greaterThan; + var id_94 = id_95.greaterThanOrEqual; + var id_96 = id_97.select; + var id_98 = id_99.load; + var id_100 = id_101.id_102; + var id_102 = id_103.id_104; + var $ = id_105.id_106; + var id_106 = id_107; + var id_108 = id_109.id_110; + var id_110 = id_111; + var id_112 = id_113; + var fround = stdlib.Math.fround; + var id_114 = id_115(imports.asmModule); + var id_116 = id_117; + var id_118 = id_119(5033.2, 3401.0, 665.34, 32234.1); + var id_120 = id_121(1065353216, 1073741824, 1077936128, 1082130432); + var gval = 1234; + var id_126 = $.id_127; + var id_127 = $.$; + + function id_165() { + value = id_166; + id_167(id_168) + } + + function id_169() { + return id_170(id_171) + } + + function id_172() { + $ = id_173; + id_174(id_175) + } + + function id_176() { + return id_177(id_178) + } + + function id_179() { + $ = id_180; + id_181(id_182) + } + + function id_183() { + return id_184(id_185) + } + + function id_186() { + $ = id_187; + id_188(id_189) + } + + function id_190() {} + + function id_193() { + $ = id_194; + id_195(id_196) + } + + function $() {} + + function id_200() { + id_201(id_202, id_203); + return id_204(id_205) + } + + function id_206() { + var $ = id_208; + while ($) { + id_209 = id_210; + for (;;) { + switch ($) { + case $: + id_211(id_212, id_213); + case $: + id_214(id_215, id_216); + case $: + id_217(id_218, id_219); + case $: + id_220(id_221, id_222) + } + id_223 = id_224(id_225, id_226) + } + + } + + return id_227(id_228) + } + + function id_229() { + var $ = id_231; + for (;;) { + id_232 = id_233; + for (;;) { + switch ($) { + case $: + id_234(id_235, id_236); + case $: + id_237(id_238, id_239); + case $: + id_240(id_241, id_242); + case $: + id_243(id_244, id_245) + } + id_246 = id_247(id_248, id_249) + } + + } + + return id_250(id_251) + } + + function id_252() { + var $ = id_254; + do { + id_255 = id_256; + for (;;) { + switch ($) { + case $: + id_257(id_258, id_259); + case $: + id_260(id_261, id_262); + case $: + id_263(id_264, id_265); + case $: + id_266(id_267, id_268) + } + id_269 = id_270(id_271, id_272) + } + + } + while ($) return id_273(id_274) + } + + function id_275() { + var $ = id_277; + while ($) { + id_278 = id_279; + for (;;) { + id_280(id_281, id_282); + id_283 = id_284(id_285, id_286) + } + + } + + return id_287(id_288) + } + + function id_289() { + var $ = id_291; + while ($) { + id_292 = id_293; + for (;;) { + id_294(id_295, id_296); + id_297 = id_298(id_299, id_300) + } + + } + + return id_301(id_302) + } + + function id_303() { + var $ = id_305; + while ((loopIndex) < (loopCOUNT)) { + id_306 = id_307; + for (;;) { + id_308(id_309, id_310); + id_311 = id_312(id_313, id_314) + } + + } + + return id_315(id_316) + } + + function id_317() { + var $ = id_319; + while ($) { + id_320 = id_321; + for (;;) { + id_322(id_323, id_324); + id_325 = id_326(id_327, id_328) + } + + } + + return id_329(id_330) + } + + function id_331() { + var $ = id_333; + while ($) { + id_334 = id_335; + for (;;) { + id_336(id_337, id_338); + id_339 = id_340(id_341, id_342) + } + + } + + return id_343(id_344) + } + + function id_345() { + var $ = id_347; + while ($) { + id_348 = id_349; + for (;;) { + id_350(id_351, id_352); + id_353 = id_354(id_355, id_356) + } + + } + + return id_357(id_358) + } + + function id_359() { + var $ = id_360; + while ($) { + for (;;) { + switch (functionPicker) { + case $: + v = id_361(id_362); + case $: + $ = id_363(id_364); + case $: + $ = id_365(id_366); + case $: + $ = id_367(id_368, idx) + } + } + + } + + } + + function id_369() { + var $ = id_370; + for (;;) { + for (;;) { + switch ($) { + case $: + $ = id_371(id_372); + case $: + $ = id_373(id_374); + case $: + $ = id_375(id_376); + case $: + $ = id_377(id_378) + } + } + + } + + } + + function id_379() { + var $ = id_380; + do { + for (;;) { + switch ($) { + case $: + $ = id_381(id_382); + case $: + $ = id_383(id_384); + case $: + $ = id_385(id_386); + case $: + $ = id_387(id_388) + } + } + + } + while ($) + } + + function id_389() { + var $ = id_390; + while ($) { + for (;;) { + $ = id_391(id_392) + } + + } + + } + + function id_393() { + var $ = id_394; + end = (((length))) + } + + function id_397() { + var $ = id_398; + while ($) { + for (;;) { + $ = id_399(id_400) + } + + } + + } + + function id_401() { + var $ = id_402; + while ($) { + for (;;) { + $ = id_403(id_404) + } + + } + + } + + function id_405() { + while ($) { + for (;;) { + $ = id_407(id_408) + } + + } + + } + + function id_409() { + var $ = id_410; + while ($) { + for (;;) { + $ = id_411(id_412) + } + + } + + } + return { + changeHeap: ch, + id_413: id_414, + id_415: id_416, + id_417: id_418, + id_419: id_420, + id_421: id_422, + id_423: id_424, + id_425: id_426, + id_427: id_428, + id_429: id_430, + id_431: id_432, + id_433: id_434, + id_435: id_436, + id_437: id_438, + id_439: id_440, + id_441: id_442, + id_443: id_444, + id_445: id_446, + id_447: id_448, + id_449: id_450, + id_451: id_452, + id_453: id_454, + id_455: id_456, + id_457: id_458, + id_459: id_460, + id_461: id_462, + id_463: id_464, + id_465: id_466, + id_467: id_468, + id_469: id_470, + id_471: id_472, + id_473: id_474, + id_475: id_476, + id_477: $ + } +}