diff options
| author | forsyth <forsyth@vitanuova.com> | 2009-07-19 17:10:21 +0100 |
|---|---|---|
| committer | forsyth <forsyth@vitanuova.com> | 2009-07-19 17:10:21 +0100 |
| commit | 132f29a5b45fcdf39d41b96d34dd2c6d5de892e5 (patch) | |
| tree | c1a4bcb3828123fffb57dc6aa82bc8c4c7a6e66f /libinterp/comp-386.c | |
| parent | 88388bd46774cb3b4dfaaa02473a85d36d9d76dc (diff) | |
dis/mathcalc.dis
Diffstat (limited to 'libinterp/comp-386.c')
| -rw-r--r-- | libinterp/comp-386.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libinterp/comp-386.c b/libinterp/comp-386.c index 4f5d89c4..8305ccce 100644 --- a/libinterp/comp-386.c +++ b/libinterp/comp-386.c @@ -1523,6 +1523,8 @@ preamble(void) modrm(Oldw, O(REG, FP), RTMP, RFP); modrm(Oldw, O(REG, MP), RTMP, RMP); modrm(Ojmprm, O(REG, PC), RTMP, 4); + + segflush(comvec, 32); } static void @@ -1854,6 +1856,8 @@ typecom(Type *t) if(cflag > 3) print("typ= %.8lux %4d i %.8lux d %.8lux asm=%d\n", (ulong)t, t->size, (ulong)t->initialize, (ulong)t->destroy, n); + + segflush(t->initialize, n); } static void @@ -1964,6 +1968,7 @@ compile(Module *m, int size, Modlink *ml) free(m->prog); m->prog = (Inst*)base; m->compiled = 1; + segflush(base, n*sizeof(base)); return 1; bad: free(patch); |
