fixed bug [ 954173 ] code size miscalculation
authorjesusc <jesusc@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Fri, 14 May 2004 21:31:28 +0000 (21:31 +0000)
committerjesusc <jesusc@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Fri, 14 May 2004 21:31:28 +0000 (21:31 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3309 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
as/mcs51/lkaomf51.c
as/mcs51/lkmem.c

index 7856e37251918d3c89719052a12e658a2e82cd60..4206c032539d95090c7c97884e202af81673ca85 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-27 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+       * as/mcs51/lkmem.c, as/mcs51/lkaomf51: fixed bug 954173
+
 2004-05-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
 
        * src/SDCCsymt.h: added IS_AUTO(symbol) test macro
index 6172838f3e044e4548b9c07da2aa1c378d7254f2..82dccb3e8c0232aa5beb8fbd7b8c05afb5dc1ab9 100644 (file)
@@ -86,6 +86,12 @@ _UsageType UsageType[]=
 {
        {"CSEG",                0},
        {"GSINIT",              0},
+       {"GSINIT0",             0},
+       {"GSINIT1",             0},
+       {"GSINIT2",             0},
+       {"GSINIT3",             0},
+       {"GSINIT4",             0},
+       {"GSINIT5",             0},
        {"GSFINAL",             0},
        {"HOME",                0},
        {"XINIT",               0},
index bf4c4ef854c563669beb2170a2ef31bff39d84ea..62eed5e1b0847a31cd40377a0793c80871449e99 100644 (file)
@@ -152,6 +152,9 @@ int summary(struct area * areap)
                }
 
                else if( EQ(xp->a_id, "CSEG") || EQ(xp->a_id, "GSINIT") ||
+                                EQ(xp->a_id, "GSINIT0") || EQ(xp->a_id, "GSINIT1") ||
+                                EQ(xp->a_id, "GSINIT2") || EQ(xp->a_id, "GSINIT3") ||
+                                EQ(xp->a_id, "GSINIT4") || EQ(xp->a_id, "GSINIT5") ||
                                 EQ(xp->a_id, "GSFINAL") || EQ(xp->a_id, "HOME") )
                {
                        Rom.Size+=xp->a_size;
@@ -403,7 +406,10 @@ int summary2(struct area * areap)
        while (xp)
        {
                if( EQ(xp->a_id, "CSEG") || EQ(xp->a_id, "GSINIT") ||
-                                EQ(xp->a_id, "GSFINAL") || EQ(xp->a_id, "HOME") )
+                       EQ(xp->a_id, "GSINIT0") || EQ(xp->a_id, "GSINIT1") ||
+                       EQ(xp->a_id, "GSINIT2") || EQ(xp->a_id, "GSINIT3") ||
+                       EQ(xp->a_id, "GSINIT4") || EQ(xp->a_id, "GSINIT5") ||
+                       EQ(xp->a_id, "GSFINAL") || EQ(xp->a_id, "HOME") )
                {
                        Rom.Size+=xp->a_size;
                        if(xp->a_addr<Rom.Start) Rom.Start=xp->a_addr;