Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Kucera2008-05-26 21:57:52 +0000
committerMike Kucera2008-05-26 21:57:52 +0000
commit244d06f38ab6b2df15fa29abc68516b3b3d6763d (patch)
treebd0092e3bf3c12c3cc727ca81209bb4b9167f8a8 /upc/org.eclipse.cdt.core.parser.upc
parent0676e6587ade38cd6f63a3e827ed732955d3f536 (diff)
downloadorg.eclipse.cdt-244d06f38ab6b2df15fa29abc68516b3b3d6763d.tar.gz
org.eclipse.cdt-244d06f38ab6b2df15fa29abc68516b3b3d6763d.tar.xz
org.eclipse.cdt-244d06f38ab6b2df15fa29abc68516b3b3d6763d.zip
Bug 231381, fix for LPG backtracking parser performance problem
Diffstat (limited to 'upc/org.eclipse.cdt.core.parser.upc')
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCExpressionParser.g2
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCGrammarExtensions.g1
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCNoCastExpressionParser.g2
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCParser.g2
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCSizeofExpressionParser.g2
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java8
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java8
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java8
-rw-r--r--upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java8
9 files changed, 25 insertions, 16 deletions
diff --git a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCExpressionParser.g b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCExpressionParser.g
index 7b345e28f3f..5aebaa7dbc6 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCExpressionParser.g
+++ b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.parser.upc
-%options template=btParserTemplateD.g
+%options template=FixedBtParserTemplateD.g
$Import
diff --git a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCGrammarExtensions.g b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCGrammarExtensions.g
index 588730c103c..48655f6df88 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCGrammarExtensions.g
+++ b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCGrammarExtensions.g
@@ -23,6 +23,7 @@ import org.eclipse.cdt.core.dom.parser.upc.UPCParserAction;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTKeywordExpression;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTSynchronizationStatement;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTUnarySizeofExpression;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
./
$End
diff --git a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCNoCastExpressionParser.g b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCNoCastExpressionParser.g
index 1fd0c35040c..c17364f890d 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCNoCastExpressionParser.g
+++ b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCNoCastExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.parser.upc
-%options template=btParserTemplateD.g
+%options template=FixedBtParserTemplateD.g
$Import
diff --git a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCParser.g b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCParser.g
index 1106a78d9e1..ea1e78c3a89 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCParser.g
+++ b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.parser.upc
-%options template=btParserTemplateD.g
+%options template=FixedBtParserTemplateD.g
$Import
diff --git a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCSizeofExpressionParser.g b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCSizeofExpressionParser.g
index 20f5216d458..369ab99e88d 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCSizeofExpressionParser.g
+++ b/upc/org.eclipse.cdt.core.parser.upc/grammar/upc/UPCSizeofExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.parser.upc
-%options template=btParserTemplateD.g
+%options template=FixedBtParserTemplateD.g
$Import
diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java
index 64b67b3dbe5..414f4b808ca 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java
+++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java
@@ -19,6 +19,7 @@ import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
@@ -31,13 +32,14 @@ import org.eclipse.cdt.core.dom.parser.upc.UPCParserAction;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTKeywordExpression;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTSynchronizationStatement;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTUnarySizeofExpression;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
public class UPCExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser
{
private static ParseTable prs = new UPCExpressionParserprs();
- private BacktrackingParser btParser;
+ private FixedBacktrackingParser btParser;
- public BacktrackingParser getParser() { return btParser; }
+ public FixedBacktrackingParser getParser() { return btParser; }
private void setResult(Object object) { btParser.setSym1(object); }
public Object getRhsSym(int i) { return btParser.getSym(i); }
@@ -142,7 +144,7 @@ public class UPCExpressionParser extends PrsStream implements RuleAction , IPars
{
try
{
- btParser = new BacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
+ btParser = new FixedBacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
}
catch (NotBacktrackParseTableException e)
{
diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java
index 4b3253ff618..db15600741c 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java
+++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java
@@ -19,6 +19,7 @@ import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
@@ -31,13 +32,14 @@ import org.eclipse.cdt.core.dom.parser.upc.UPCParserAction;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTKeywordExpression;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTSynchronizationStatement;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTUnarySizeofExpression;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
public class UPCNoCastExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser
{
private static ParseTable prs = new UPCNoCastExpressionParserprs();
- private BacktrackingParser btParser;
+ private FixedBacktrackingParser btParser;
- public BacktrackingParser getParser() { return btParser; }
+ public FixedBacktrackingParser getParser() { return btParser; }
private void setResult(Object object) { btParser.setSym1(object); }
public Object getRhsSym(int i) { return btParser.getSym(i); }
@@ -142,7 +144,7 @@ public class UPCNoCastExpressionParser extends PrsStream implements RuleAction ,
{
try
{
- btParser = new BacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
+ btParser = new FixedBacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
}
catch (NotBacktrackParseTableException e)
{
diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java
index dcd7117c9b3..c3ec37202a3 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java
+++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java
@@ -19,6 +19,7 @@ import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
@@ -31,13 +32,14 @@ import org.eclipse.cdt.core.dom.parser.upc.UPCParserAction;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTKeywordExpression;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTSynchronizationStatement;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTUnarySizeofExpression;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
public class UPCParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser
{
private static ParseTable prs = new UPCParserprs();
- private BacktrackingParser btParser;
+ private FixedBacktrackingParser btParser;
- public BacktrackingParser getParser() { return btParser; }
+ public FixedBacktrackingParser getParser() { return btParser; }
private void setResult(Object object) { btParser.setSym1(object); }
public Object getRhsSym(int i) { return btParser.getSym(i); }
@@ -142,7 +144,7 @@ public class UPCParser extends PrsStream implements RuleAction , IParserActionTo
{
try
{
- btParser = new BacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
+ btParser = new FixedBacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
}
catch (NotBacktrackParseTableException e)
{
diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java
index 2fa2a4061a2..9440f5a5b62 100644
--- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java
+++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java
@@ -19,6 +19,7 @@ import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
@@ -31,13 +32,14 @@ import org.eclipse.cdt.core.dom.parser.upc.UPCParserAction;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTKeywordExpression;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTSynchronizationStatement;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTUnarySizeofExpression;
+import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
public class UPCSizeofExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser
{
private static ParseTable prs = new UPCSizeofExpressionParserprs();
- private BacktrackingParser btParser;
+ private FixedBacktrackingParser btParser;
- public BacktrackingParser getParser() { return btParser; }
+ public FixedBacktrackingParser getParser() { return btParser; }
private void setResult(Object object) { btParser.setSym1(object); }
public Object getRhsSym(int i) { return btParser.getSym(i); }
@@ -142,7 +144,7 @@ public class UPCSizeofExpressionParser extends PrsStream implements RuleAction ,
{
try
{
- btParser = new BacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
+ btParser = new FixedBacktrackingParser(monitor, (TokenStream) this, prs, (RuleAction) this);
}
catch (NotBacktrackParseTableException e)
{

Back to the top