diff options
author | John van Groningen | 2007-09-05 14:41:21 +0000 |
---|---|---|
committer | John van Groningen | 2007-09-05 14:41:21 +0000 |
commit | 840159e1d8bf5281949ee08ac73f38fa3526ca20 (patch) | |
tree | 816689e4817afd3778ced7a87a2b40864f6d246f | |
parent | allow ( , and ) in record type, add .desc0, get_desc0_number, (diff) |
use optimized jmp_ap_upd only on IA32
-rw-r--r-- | cgcode.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -4028,12 +4028,20 @@ void code_jmp_ap (int n_apply_args) void code_jmp_ap_upd (int n_apply_args) { +#if defined (I486) && !defined (G_AI64) char apupd_label_name[32]; code_d (1+n_apply_args,0,e_vector); sprintf (apupd_label_name,"apupd_%d",n_apply_args); code_jmp (apupd_label_name); +#else + code_jsr_ap (n_apply_args); + code_fill_a (0,1); + s_remove_a(); + code_d (1,0,e_vector); + code_rtn(); +#endif } void code_label (char *label_name); |