diff options
Diffstat (limited to 'src/lj_obj.h')
-rw-r--r-- | src/lj_obj.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lj_obj.h b/src/lj_obj.h index 2150e4e2..9b691e49 100644 --- a/src/lj_obj.h +++ b/src/lj_obj.h | |||
@@ -34,13 +34,17 @@ typedef struct MRef { | |||
34 | 34 | ||
35 | #if LJ_GC64 | 35 | #if LJ_GC64 |
36 | #define mref(r, t) ((t *)(void *)(r).ptr64) | 36 | #define mref(r, t) ((t *)(void *)(r).ptr64) |
37 | #define mrefu(r) ((r).ptr64) | ||
37 | 38 | ||
38 | #define setmref(r, p) ((r).ptr64 = (uint64_t)(void *)(p)) | 39 | #define setmref(r, p) ((r).ptr64 = (uint64_t)(void *)(p)) |
40 | #define setmrefu(r, u) ((r).ptr64 = (uint64_t)(u)) | ||
39 | #define setmrefr(r, v) ((r).ptr64 = (v).ptr64) | 41 | #define setmrefr(r, v) ((r).ptr64 = (v).ptr64) |
40 | #else | 42 | #else |
41 | #define mref(r, t) ((t *)(void *)(uintptr_t)(r).ptr32) | 43 | #define mref(r, t) ((t *)(void *)(uintptr_t)(r).ptr32) |
44 | #define mrefu(r) ((r).ptr32) | ||
42 | 45 | ||
43 | #define setmref(r, p) ((r).ptr32 = (uint32_t)(uintptr_t)(void *)(p)) | 46 | #define setmref(r, p) ((r).ptr32 = (uint32_t)(uintptr_t)(void *)(p)) |
47 | #define setmrefu(r, u) ((r).ptr32 = (uint32_t)(u)) | ||
44 | #define setmrefr(r, v) ((r).ptr32 = (v).ptr32) | 48 | #define setmrefr(r, v) ((r).ptr32 = (v).ptr32) |
45 | #endif | 49 | #endif |
46 | 50 | ||