diff options
| author | Andrea Corallo | 2019-06-23 16:41:04 +0200 |
|---|---|---|
| committer | Andrea Corallo | 2020-01-01 11:33:44 +0100 |
| commit | 0406c74b6083e0ddf08e386d935c07f6493e41d4 (patch) | |
| tree | e96dd4f6b93458e537d5a6f69ca4a7f75ebcd4fc /src/comp.c | |
| parent | 3f96f72b59a627944040228984ec48cf0f74ecec (diff) | |
| download | emacs-0406c74b6083e0ddf08e386d935c07f6493e41d4.tar.gz emacs-0406c74b6083e0ddf08e386d935c07f6493e41d4.zip | |
fix awful pad hack in define_handler_struct
Diffstat (limited to 'src/comp.c')
| -rw-r--r-- | src/comp.c | 75 |
1 files changed, 28 insertions, 47 deletions
diff --git a/src/comp.c b/src/comp.c index aee7ca99463..fe3fac606d9 100644 --- a/src/comp.c +++ b/src/comp.c | |||
| @@ -818,56 +818,37 @@ define_handler_struct (void) | |||
| 818 | comp.handler_ptr_type, | 818 | comp.handler_ptr_type, |
| 819 | "next"); | 819 | "next"); |
| 820 | gcc_jit_field *fields[] = | 820 | gcc_jit_field *fields[] = |
| 821 | { gcc_jit_context_new_field (comp.ctxt, | 821 | { gcc_jit_context_new_field ( |
| 822 | NULL, | 822 | comp.ctxt, |
| 823 | comp.int_type, | 823 | NULL, |
| 824 | "type"), | 824 | gcc_jit_context_new_array_type (comp.ctxt, |
| 825 | gcc_jit_context_new_field (comp.ctxt, | 825 | NULL, |
| 826 | NULL, | 826 | comp.char_type, |
| 827 | comp.lisp_obj_type, | 827 | offsetof (struct handler, val)), |
| 828 | "tag_or_ch"), | 828 | "pad0"), |
| 829 | gcc_jit_context_new_field (comp.ctxt, | ||
| 830 | NULL, | ||
| 831 | comp.int_type, | ||
| 832 | "nonlocal_exit"), | ||
| 833 | comp.handler_val_field, | 829 | comp.handler_val_field, |
| 834 | comp.handler_next_field, | 830 | comp.handler_next_field, |
| 835 | gcc_jit_context_new_field (comp.ctxt, | 831 | gcc_jit_context_new_field ( |
| 836 | NULL, | 832 | comp.ctxt, |
| 837 | comp.handler_ptr_type, | 833 | NULL, |
| 838 | "nextfree"), | 834 | gcc_jit_context_new_array_type (comp.ctxt, |
| 839 | gcc_jit_context_new_field (comp.ctxt, | 835 | NULL, |
| 840 | NULL, | 836 | comp.char_type, |
| 841 | comp.lisp_obj_ptr_type, | 837 | offsetof (struct handler, jmp) |
| 842 | "bytecode_top"), | 838 | - offsetof (struct handler, next) |
| 843 | gcc_jit_context_new_field (comp.ctxt, | 839 | - sizeof (((struct handler *) 0)->next)), |
| 844 | NULL, | 840 | "pad1"), |
| 845 | comp.int_type, | ||
| 846 | "bytecode_dest"), | ||
| 847 | gcc_jit_context_new_field (comp.ctxt, | ||
| 848 | NULL, | ||
| 849 | gcc_jit_context_new_array_type (comp.ctxt, | ||
| 850 | NULL, | ||
| 851 | comp.char_type, | ||
| 852 | 4), | ||
| 853 | "pad"), | ||
| 854 | comp.handler_jmp_field, | 841 | comp.handler_jmp_field, |
| 855 | gcc_jit_context_new_field (comp.ctxt, | 842 | gcc_jit_context_new_field ( |
| 856 | NULL, | 843 | comp.ctxt, |
| 857 | comp.emacs_int_type, | 844 | NULL, |
| 858 | "f_lisp_eval_depth"), | 845 | gcc_jit_context_new_array_type (comp.ctxt, |
| 859 | gcc_jit_context_new_field (comp.ctxt, | 846 | NULL, |
| 860 | NULL, | 847 | comp.char_type, |
| 861 | comp.ptrdiff_type, | 848 | sizeof (struct handler) |
| 862 | "pdlcount"), | 849 | - offsetof (struct handler, jmp) |
| 863 | gcc_jit_context_new_field (comp.ctxt, | 850 | - sizeof (((struct handler *) 0)->jmp)), |
| 864 | NULL, | 851 | "pad2") }; |
| 865 | comp.int_type, | ||
| 866 | "poll_suppress_count"), | ||
| 867 | gcc_jit_context_new_field (comp.ctxt, | ||
| 868 | NULL, | ||
| 869 | comp.int_type, | ||
| 870 | "interrupt_input_blocked") }; | ||
| 871 | gcc_jit_struct_set_fields (comp.handler, | 852 | gcc_jit_struct_set_fields (comp.handler, |
| 872 | NULL, | 853 | NULL, |
| 873 | sizeof (fields) / sizeof (*fields), | 854 | sizeof (fields) / sizeof (*fields), |