added optimization for indexed 16-bit array load of form (array[i & 0x7f])
This commit is contained in:
@@ -815,6 +815,7 @@ static OptFunc DOptPtrLoad15 = { OptPtrLoad15, "OptPtrLoad15", 86, 0,
|
||||
static OptFunc DOptPtrLoad16 = { OptPtrLoad16, "OptPtrLoad16", 100, 0, 0, 0, 0, 0 };
|
||||
static OptFunc DOptPtrLoad17 = { OptPtrLoad17, "OptPtrLoad17", 190, 0, 0, 0, 0, 0 };
|
||||
static OptFunc DOptPtrLoad18 = { OptPtrLoad18, "OptPtrLoad18", 100, 0, 0, 0, 0, 0 };
|
||||
static OptFunc DOptPtrLoad19 = { OptPtrLoad19, "OptPtrLoad19", 65, 0, 0, 0, 0, 0 };
|
||||
static OptFunc DOptPtrStore1 = { OptPtrStore1, "OptPtrStore1", 65, 0, 0, 0, 0, 0 };
|
||||
static OptFunc DOptPtrStore2 = { OptPtrStore2, "OptPtrStore2", 65, 0, 0, 0, 0, 0 };
|
||||
static OptFunc DOptPtrStore3 = { OptPtrStore3, "OptPtrStore3", 100, 0, 0, 0, 0, 0 };
|
||||
@@ -907,6 +908,7 @@ static OptFunc* OptFuncs[] = {
|
||||
&DOptPtrLoad16,
|
||||
&DOptPtrLoad17,
|
||||
&DOptPtrLoad18,
|
||||
&DOptPtrLoad19,
|
||||
&DOptPtrLoad2,
|
||||
&DOptPtrLoad3,
|
||||
&DOptPtrLoad4,
|
||||
@@ -1256,6 +1258,7 @@ static unsigned RunOptGroup1 (CodeSeg* S)
|
||||
Changes += RunOptFunc (S, &DOptPtrLoad15, 1);
|
||||
Changes += RunOptFunc (S, &DOptPtrLoad16, 1);
|
||||
Changes += RunOptFunc (S, &DOptPtrLoad17, 1);
|
||||
Changes += RunOptFunc (S, &DOptPtrLoad19, 1);
|
||||
Changes += RunOptFunc (S, &DOptBNegAX1, 1);
|
||||
Changes += RunOptFunc (S, &DOptBNegAX2, 1);
|
||||
Changes += RunOptFunc (S, &DOptBNegAX3, 1);
|
||||
|
||||
Reference in New Issue
Block a user