[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 02/14: Add flag bits to the jit_reloc_kind enum
From: |
Andy Wingo |
Subject: |
[Guile-commits] 02/14: Add flag bits to the jit_reloc_kind enum |
Date: |
Fri, 12 Jun 2020 10:18:41 -0400 (EDT) |
wingo pushed a commit to branch master
in repository guile.
commit 297ae99c3f1959f387f59da535eb68f34ae523fe
Author: Icecream95 <ixn@keemail.me>
AuthorDate: Mon Apr 6 16:04:57 2020 +1200
Add flag bits to the jit_reloc_kind enum
---
lightening.h | 2 ++
lightening/lightening.c | 4 ++--
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/lightening.h b/lightening.h
index bcf2032..4749723 100644
--- a/lightening.h
+++ b/lightening.h
@@ -91,6 +91,8 @@ enum jit_reloc_kind
JIT_RELOC_JCC_WITH_VENEER,
JIT_RELOC_LOAD_FROM_POOL,
#endif
+ JIT_RELOC_MASK = 15,
+ JIT_RELOC_FLAG_0 = 16,
};
typedef struct jit_reloc
diff --git a/lightening/lightening.c b/lightening/lightening.c
index ca5708f..8d4c3d7 100644
--- a/lightening/lightening.c
+++ b/lightening/lightening.c
@@ -379,7 +379,7 @@ jit_patch_there(jit_state_t* _jit, jit_reloc_t reloc,
jit_pointer_t addr)
ASSERT((diff & ((1 << reloc.rsh) - 1)) == 0);
diff >>= reloc.rsh;
- switch (reloc.kind)
+ switch (reloc.kind & JIT_RELOC_MASK)
{
case JIT_RELOC_ABSOLUTE:
if (sizeof(diff) == 4)
@@ -1365,7 +1365,7 @@ emit_literal_pool(jit_state_t *_jit, enum guard_pool
guard)
if (_jit->overflow)
return;
- switch (entry->reloc.kind) {
+ switch (entry->reloc.kind & JIT_RELOC_MASK) {
case JIT_RELOC_JMP_WITH_VENEER:
patch_jmp_offset((uint32_t*) loc, diff);
emit_veneer(_jit, (void*) (uintptr_t) entry->value);
- [Guile-commits] branch master updated (fc13923 -> 3c32704), Andy Wingo, 2020/06/12
- [Guile-commits] 01/14: Switch CI to use Debian stable, Andy Wingo, 2020/06/12
- [Guile-commits] 02/14: Add flag bits to the jit_reloc_kind enum,
Andy Wingo <=
- [Guile-commits] 05/14: Use an rsh of 0 for jumps on ARM, Andy Wingo, 2020/06/12
- [Guile-commits] 06/14: Return a function pointer from jit_address, Andy Wingo, 2020/06/12
- [Guile-commits] 08/14: Use bx instead of mov for jumps on ARM, Andy Wingo, 2020/06/12
- [Guile-commits] 09/14: Remove T2_BLXI, Andy Wingo, 2020/06/12
- [Guile-commits] 03/14: Add separate functions for veneer patching, Andy Wingo, 2020/06/12
- [Guile-commits] 04/14: Add a test for local forward and backward jumps, Andy Wingo, 2020/06/12
- [Guile-commits] 07/14: Stop setting the thumb bit except on jumps to veneers, Andy Wingo, 2020/06/12
- [Guile-commits] 12/14: Add CI jobs for ARM in both instruction sets, Andy Wingo, 2020/06/12
- [Guile-commits] 11/14: Convert BLI to BLXI for jumps to ARM code, Andy Wingo, 2020/06/12
- [Guile-commits] 14/14: Update lightening, Andy Wingo, 2020/06/12