asm/dasm: Improve cflags
[b43-tools.git] / assembler / scanner.l
index 5013d0e94e4e0a430fcab9f357624686cd2a7888..11f38907da743740a13996007436eb4fdfb5bafe 100644 (file)
@@ -56,7 +56,7 @@ NEWLINE               ((\r)|(\n)|(\r\n))
 ^{WS}*\.text{WS}*$                     { update_lineinfo(); return SECTION_TEXT; }
 ^{WS}*\.initvals/\({IDENTIFIER}\)      { update_lineinfo(); return SECTION_IVALS; }
 
-spr[0-9a-fA-F]{3,3}    { update_lineinfo(); return SPR; }
+spr[0-9a-fA-F]{1,4}    { update_lineinfo(); return SPR; }
 r/([0-9]|([1-5][0-9])|(6[0-3]))        { update_lineinfo(); return GPR; }
 off/[0-6]              { update_lineinfo(); return OFFR; }
 lr/[0-3]               { update_lineinfo(); return LR; }
@@ -127,7 +127,9 @@ jext                        { update_lineinfo(); return OP_JEXT; }
 jnext                  { update_lineinfo(); return OP_JNEXT; }
 
 call                   { update_lineinfo(); return OP_CALL; }
+calls                  { update_lineinfo(); return OP_CALLS; }
 ret                    { update_lineinfo(); return OP_RET; }
+rets                   { update_lineinfo(); return OP_RETS; }
 
 tkiph                  { update_lineinfo(); return OP_TKIPH; }
 tkiphs                 { update_lineinfo(); return OP_TKIPHS; }
@@ -142,8 +144,9 @@ phy                 { update_lineinfo(); return IVAL_PHY; }
 radio                  { update_lineinfo(); return IVAL_RADIO; }
 shm16                  { update_lineinfo(); return IVAL_SHM16; }
 shm32                  { update_lineinfo(); return IVAL_SHM32; }
+tram                   { update_lineinfo(); return IVAL_TRAM; }
 
-@[0-9a-fA-F]{3,3}      { update_lineinfo(); return RAW_CODE; }
+@[0-9a-fA-F]{1,4}      { update_lineinfo(); return RAW_CODE; }
 
 0x[0-9a-fA-F]+         { update_lineinfo(); return HEXNUM; }
 -?[0-9]+               { update_lineinfo(); return DECNUM; }
@@ -180,7 +183,7 @@ static void interpret_cppinfo(const char *str)
                goto error;
        memset(tmp, 0, sizeof(tmp));
        memcpy(tmp, str, min(sizeof(tmp) - 1,
-                            (int)(found - str)));
+                            (size_t)(found - str)));
        cur_lineinfo.lineno = strtoul(tmp, NULL, 10) - 1;
        str = found;
        str++;
@@ -197,7 +200,7 @@ static void interpret_cppinfo(const char *str)
        memset(cur_lineinfo.file, 0, sizeof(cur_lineinfo.file));
        memcpy(cur_lineinfo.file, str,
               min(sizeof(cur_lineinfo.file) - 1,
-                  (int)(found - str)));
+                  (size_t)(found - str)));
 
        return;
 error: