Project

General

Profile

Bug #5783

Problems with multiple concatenation

Added by Mikhail Chupilko almost 5 years ago. Updated about 13 hours ago.

Status:
Resolved
Priority:
High
Category:
-
Target version:
Start date:
03/30/2015
Due date:
% Done:

0%

Estimated time:
Detected in build:
2.1.5-beta-150305
Platform:
Published in build:

Description

I'd like to concatenate the signal src<63> 63 times to make a single 64-bit field "top". The response time of this code processing is too high... More than 2-3 minutes. The example follows.

top = src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::
      src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::
      src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::
      src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::
      src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::
      src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::
      src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::
      src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>::src<63>;

Associated revisions

Revision 411d0c61 (diff)
Added by Alexander Kamkin about 13 hours ago

Fixed Bug #5783.

Signed-off-by: Alexander Kamkin <>

History

#1

Updated by Alexander Kamkin almost 5 years ago

  • Priority changed from Normal to High
#2

Updated by Alexander Kamkin almost 5 years ago

  • Target version set to 2.2
#3

Updated by Andrei Tatarnikov almost 5 years ago

Can be reproduced even with 24-times concatenation. Parsing tree gets too big (number of possible states increasing) and this significantly slows down parsing. The issue is related to ANTLR and parsing grammar. Need to think how to optimize it.

#4

Updated by Alexander Kamkin about 13 hours ago

That's funny :).

locationExpr
    :  locationVal (DOUBLE_COLON^ locationExpr)*
    ;

replaced with

locationExpr
    :  locationVal (DOUBLE_COLON^ locationExpr)?
    ;
#5

Updated by Alexander Kamkin about 13 hours ago

  • Status changed from New to Resolved

That's funny :). Bug is fixed in a couple of minutes.

locationExpr
    :  locationVal (DOUBLE_COLON^ locationExpr)*
    ;

replaced with

locationExpr
    :  locationVal (DOUBLE_COLON^ locationExpr)?
    ;
#6

Updated by Alexander Kamkin about 13 hours ago

  • Target version changed from 2.2 to 2.5
  • Assignee changed from Andrei Tatarnikov to Alexander Kamkin

Also available in: Atom PDF