@@ -566,25 +566,21 @@ parser_emit_cbc_forward_branch (parser_context_t *context_p, /**< context */
566
566
}
567
567
#endif /* ENABLED (JERRY_PARSER_DUMP_BYTE_CODE) */
568
568
569
- #if PARSER_MAXIMUM_CODE_SIZE <= 65535
570
- opcode ++ ;
571
- #else /* PARSER_MAXIMUM_CODE_SIZE > 65535 */
572
- PARSER_PLUS_EQUAL_U16 (opcode , 2 );
573
- #endif /* PARSER_MAXIMUM_CODE_SIZE <= 65535 */
569
+ PARSER_PLUS_EQUAL_U16 (opcode , PARSER_MAX_BRANCH_LENGTH - 1 );
574
570
575
571
parser_emit_two_bytes (context_p , (uint8_t ) opcode , 0 );
576
572
branch_p -> page_p = context_p -> byte_code .last_p ;
577
573
branch_p -> offset = (context_p -> byte_code .last_position - 1 ) | (context_p -> byte_code_size << 8 );
578
574
579
575
context_p -> byte_code_size += extra_byte_code_increase ;
580
576
581
- #if PARSER_MAXIMUM_CODE_SIZE <= 65535
577
+ #if PARSER_MAXIMUM_CODE_SIZE <= UINT16_MAX
582
578
PARSER_APPEND_TO_BYTE_CODE (context_p , 0 );
583
- context_p -> byte_code_size += 3 ;
584
- #else /* PARSER_MAXIMUM_CODE_SIZE > 65535 */
579
+ #else /* PARSER_MAXIMUM_CODE_SIZE > UINT16_MAX */
585
580
parser_emit_two_bytes (context_p , 0 , 0 );
586
- context_p -> byte_code_size += 4 ;
587
- #endif /* PARSER_MAXIMUM_CODE_SIZE <= 65535 */
581
+ #endif /* PARSER_MAXIMUM_CODE_SIZE <= UINT16_MAX */
582
+
583
+ context_p -> byte_code_size += PARSER_MAX_BRANCH_LENGTH + 1 ;
588
584
589
585
if (context_p -> stack_depth > context_p -> stack_limit )
590
586
{
@@ -681,35 +677,30 @@ parser_emit_cbc_backward_branch (parser_context_t *context_p, /**< context */
681
677
#endif /* ENABLED (JERRY_PARSER_DUMP_BYTE_CODE) */
682
678
683
679
context_p -> byte_code_size += 2 ;
684
- #if PARSER_MAXIMUM_CODE_SIZE <= 65535
685
- if (offset > 255 )
680
+ #if PARSER_MAXIMUM_CODE_SIZE > UINT16_MAX
681
+ if (offset > UINT16_MAX )
686
682
{
687
683
opcode ++ ;
688
684
context_p -> byte_code_size ++ ;
689
685
}
690
- #else /* PARSER_MAXIMUM_CODE_SIZE > 65535 */
691
- if (offset > 65535 )
692
- {
693
- PARSER_PLUS_EQUAL_U16 (opcode , 2 );
694
- context_p -> byte_code_size += 2 ;
695
- }
696
- else if (offset > 255 )
686
+ #endif /* PARSER_MAXIMUM_CODE_SIZE > UINT16_MAX */
687
+
688
+ if (offset > UINT8_MAX )
697
689
{
698
690
opcode ++ ;
699
691
context_p -> byte_code_size ++ ;
700
692
}
701
- #endif /* PARSER_MAXIMUM_CODE_SIZE <= 65535 */
702
693
703
694
PARSER_APPEND_TO_BYTE_CODE (context_p , (uint8_t ) opcode );
704
695
705
- #if PARSER_MAXIMUM_CODE_SIZE > 65535
706
- if (offset > 65535 )
696
+ #if PARSER_MAXIMUM_CODE_SIZE > UINT16_MAX
697
+ if (offset > UINT16_MAX )
707
698
{
708
699
PARSER_APPEND_TO_BYTE_CODE (context_p , offset >> 16 );
709
700
}
710
- #endif /* PARSER_MAXIMUM_CODE_SIZE > 65535 */
701
+ #endif /* PARSER_MAXIMUM_CODE_SIZE > UINT16_MAX */
711
702
712
- if (offset > 255 )
703
+ if (offset > UINT8_MAX )
713
704
{
714
705
PARSER_APPEND_TO_BYTE_CODE (context_p , (offset >> 8 ) & 0xff );
715
706
}
@@ -745,14 +736,14 @@ parser_set_branch_to_current_position (parser_context_t *context_p, /**< context
745
736
746
737
JERRY_ASSERT (delta <= PARSER_MAXIMUM_CODE_SIZE );
747
738
748
- #if PARSER_MAXIMUM_CODE_SIZE <= 65535
739
+ #if PARSER_MAXIMUM_CODE_SIZE <= UINT16_MAX
749
740
page_p -> bytes [offset ++ ] = (uint8_t ) (delta >> 8 );
750
741
if (offset >= PARSER_CBC_STREAM_PAGE_SIZE )
751
742
{
752
743
page_p = page_p -> next_p ;
753
744
offset = 0 ;
754
745
}
755
- #else /* PARSER_MAXIMUM_CODE_SIZE > 65535 */
746
+ #else /* PARSER_MAXIMUM_CODE_SIZE > UINT16_MAX */
756
747
page_p -> bytes [offset ++ ] = (uint8_t ) (delta >> 16 );
757
748
if (offset >= PARSER_CBC_STREAM_PAGE_SIZE )
758
749
{
@@ -765,8 +756,8 @@ parser_set_branch_to_current_position (parser_context_t *context_p, /**< context
765
756
page_p = page_p -> next_p ;
766
757
offset = 0 ;
767
758
}
768
- #endif /* PARSER_MAXIMUM_CODE_SIZE <= 65535 */
769
- page_p -> bytes [offset ++ ] = delta & 0xff ;
759
+ #endif /* PARSER_MAXIMUM_CODE_SIZE <= UINT16_MAX */
760
+ page_p -> bytes [offset ] = delta & 0xff ;
770
761
} /* parser_set_branch_to_current_position */
771
762
772
763
/**
0 commit comments