diff options
Diffstat (limited to 'x86_64-gen.c')
| -rw-r--r-- | x86_64-gen.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/x86_64-gen.c b/x86_64-gen.c index c9829f0..c8fed85 100644 --- a/x86_64-gen.c +++ b/x86_64-gen.c @@ -985,7 +985,7 @@ static X86_64_Mode classify_x86_64_inner(CType *ty) return x86_64_mode_memory; mode = x86_64_mode_none; - for (f = f->next; f; f = f->next) + for (; f; f = f->next) mode = classify_x86_64_merge(mode, classify_x86_64_inner(&f->type)); return mode; @@ -1276,7 +1276,7 @@ void gfunc_call(int nb_args) g(0x00); args_size += size; } else { - //assert(mode == x86_64_mode_memory); + assert(mode == x86_64_mode_memory); /* allocate the necessary size on stack */ o(0x48); @@ -1408,7 +1408,7 @@ void gfunc_prolog(CType *func_type) break; case x86_64_mode_integer: - if (seen_reg_num + reg_count <= REGN) { + if (seen_reg_num + reg_count <= 8) { seen_reg_num += reg_count; } else { seen_reg_num = 8; |
