]> git.sur5r.net Git - cc65/blobdiff - src/cc65/codeinfo.c
Check also sreg in OptSize1. Added information about shortcut functions for
[cc65] / src / cc65 / codeinfo.c
index c2b29ca707b251501470242acfb5cfab9eae3e1d..b8041c574d43578beba452ea9af394f5c7707280 100644 (file)
@@ -164,6 +164,7 @@ static const FuncInfo FuncInfoTable[] = {
     { "mulax9",         REG_AX,               REG_AX | REG_PTR1              },
     { "negax",          REG_AX,               REG_AX                        },
     { "push0",                 REG_NONE,             REG_AXY                        },
+    { "push0ax",        REG_AX,               REG_Y | REG_SREG               },
     { "push1",                 REG_NONE,             REG_AXY                        },
     { "push2",                 REG_NONE,             REG_AXY                        },
     { "push3",                 REG_NONE,             REG_AXY                        },
@@ -210,6 +211,7 @@ static const FuncInfo FuncInfoTable[] = {
     { "steaxysp",       REG_EAXY,             REG_Y                          },
     { "subeq0sp",       REG_AX,               REG_AXY                        },
     { "subeqysp",       REG_AXY,              REG_AXY                        },
+    { "tosadd0ax",      REG_AX,               REG_EAXY | REG_TMP1            },
     { "tosadda0",       REG_A,                REG_AXY                        },
     { "tosaddax",       REG_AX,               REG_AXY                        },
     { "tosaddeax",      REG_EAX,              REG_EAXY | REG_TMP1            },
@@ -219,9 +221,10 @@ static const FuncInfo FuncInfoTable[] = {
     { "tosasleax",      REG_EAX,              REG_EAXY | REG_TMP1            },
     { "tosasrax",       REG_AX,               REG_AXY | REG_TMP1             },
     { "tosasreax",      REG_EAX,              REG_EAXY | REG_TMP1            },
+    { "tosdiv0ax",      REG_AX,               REG_ALL                       },
     { "tosdiva0",       REG_AY,              REG_ALL                        },
     { "tosdivax",       REG_AXY,              REG_ALL                       },
-    { "tosdiveax",      REG_EAXY,             REG_ALL                       },
+    { "tosdiveax",      REG_EAX             REG_ALL                       },
     { "toseq00",        REG_NONE,                    REG_AXY | REG_SREG             },
     { "toseqa0",        REG_A,               REG_AXY | REG_SREG             },
     { "toseqax",        REG_AX,                      REG_AXY | REG_SREG             },
@@ -245,6 +248,9 @@ static const FuncInfo FuncInfoTable[] = {
     { "toslta0",        REG_A,               REG_AXY | REG_SREG             },
     { "tosltax",        REG_AX,                      REG_AXY | REG_SREG             },
     { "toslteax",       REG_EAX,                     REG_AXY | REG_PTR1             },
+    { "tosmod0ax",      REG_AX,               REG_ALL                       },
+    { "tosmodeax",      REG_EAX,              REG_ALL                       },
+    { "tosmul0ax",      REG_AX,              REG_ALL                        },
     { "tosmula0",       REG_AX,                      REG_ALL                        },
     { "tosmulax",       REG_AX,                      REG_ALL                        },
     { "tosmuleax",      REG_EAX,                     REG_ALL                        },
@@ -258,9 +264,11 @@ static const FuncInfo FuncInfoTable[] = {
     { "tosshleax",      REG_A,                       REG_EAXY | REG_TMP1            },
     { "tosshrax",       REG_A,                REG_AXY | REG_TMP1             },
     { "tosshreax",      REG_A,                       REG_EAXY | REG_TMP1            },
+    { "tossub0ax",      REG_AX,               REG_EAXY                       },
     { "tossuba0",       REG_A,                REG_AXY                        },
     { "tossubax",       REG_AX,               REG_AXY                        },
     { "tossubeax",      REG_EAX,              REG_EAXY                       },
+    { "tosudiv0ax",     REG_AX,               REG_ALL & ~REG_SAVE            },
     { "tosudiva0",      REG_A,                REG_EAXY | REG_PTR1            }, /* also ptr4 */
     { "tosudivax",      REG_AX,               REG_EAXY | REG_PTR1            }, /* also ptr4 */
     { "tosudiveax",     REG_EAX,              REG_ALL & ~REG_SAVE            },
@@ -280,9 +288,11 @@ static const FuncInfo FuncInfoTable[] = {
     { "tosulta0",       REG_A,               REG_AXY | REG_SREG             },
     { "tosultax",       REG_AX,                      REG_AXY | REG_SREG             },
     { "tosulteax",      REG_EAX,                     REG_AXY | REG_PTR1             },
+    { "tosumod0ax",     REG_AX,               REG_ALL & ~REG_SAVE            },
     { "tosumoda0",      REG_A,                REG_EAXY | REG_PTR1            }, /* also ptr4 */
     { "tosumodax",      REG_AX,               REG_EAXY | REG_PTR1            }, /* also ptr4 */
     { "tosumodeax",     REG_EAX,              REG_ALL & ~REG_SAVE            },
+    { "tosumul0ax",     REG_AX,              REG_ALL                        },
     { "tosumula0",      REG_AX,                      REG_ALL                        },
     { "tosumulax",      REG_AX,                      REG_ALL                        },
     { "tosumuleax",     REG_EAX,                     REG_ALL                        },