[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
23-fyi-output.patch
From: |
Akim Demaille |
Subject: |
23-fyi-output.patch |
Date: |
Wed, 05 Dec 2001 08:25:57 +0100 |
Index: ChangeLog
from Akim Demaille <address@hidden>
* src/output.c (action_row): De-obfuscate
using the good o' techniques: arrays not pointers, variable
locality, BITISSET, RESETBIT etc.
Index: src/output.c
--- src/output.c Sat, 01 Dec 2001 20:18:59 +0100 akim
+++ src/output.c Sat, 01 Dec 2001 20:22:17 +0100 akim
@@ -529,15 +529,11 @@
int k;
int m = 0;
int n = 0;
- int count;
int default_rule;
int nreds;
- int max;
int rule;
int shift_state;
int symbol;
- unsigned mask;
- unsigned *wordp;
reductions *redp;
shifts *shiftp;
errs *errp;
@@ -562,28 +558,13 @@
n = state_table[state + 1].lookaheads;
for (i = n - 1; i >= m; i--)
- {
- rule = -LAruleno[i];
- wordp = LA (i);
- mask = 1;
-
- /* and find each token which the rule finds acceptable
- to come next */
- for (j = 0; j < ntokens; j++)
- {
- /* and record this rule as the rule to use if that
- token follows. */
- if (mask & *wordp)
- actrow[j] = rule;
-
- mask <<= 1;
- if (mask == 0)
- {
- mask = 1;
- wordp++;
- }
- }
- }
+ /* and find each token which the rule finds acceptable
+ to come next */
+ for (j = 0; j < ntokens; j++)
+ /* and record this rule as the rule to use if that
+ token follows. */
+ if (BITISSET (LA (i), j))
+ actrow[j] = -LAruleno[i];
}
}
@@ -591,7 +572,6 @@
them, record the shift as the thing to do. So shift is preferred
to reduce. */
shiftp = state_table[state].shift_table;
-
for (i = 0; i < shiftp->nshifts; i++)
{
shift_state = shiftp->shifts[i];
@@ -635,10 +615,10 @@
default_rule = redp->rules[0];
else
{
- max = 0;
+ int max = 0;
for (i = m; i < n; i++)
{
- count = 0;
+ int count = 0;
rule = -LAruleno[i];
for (j = 0; j < ntokens; j++)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- 23-fyi-output.patch,
Akim Demaille <=