+ continue;
+
+offset_loop:
+ while (1) {
+ p2 = next_word(word, sizeof(word), p);
+ if (word[0] == 0 || word[0] == ';') {
+ break;
+ }
+ if (!IS(word, "offset")) {
+ // pass through
+ p2 = strstr(p, "offset");
+ if (p2 == NULL)
+ break;
+ fwrite(p, 1, p2 - p, fout);
+ p2 = next_word(word, sizeof(word), p2);
+ }
+ p = next_word(word, sizeof(word), p2);
+ p2 = strchr(word, ',');
+ if (p2)
+ *p2 = 0;
+
+ ssym.name = word;
+ sym = bsearch(&ssym, symlist, symlist_cnt,
+ sizeof(symlist[0]), cmp_sym);
+ fprintf(fout, " offset %s%s",
+ (sym != NULL) ? sym_use(sym, sym->callsites) : word,
+ p2 ? "," : "");
+ }
+ fprintf(fout, "%s", p);
+ continue;