[Pcre-svn] [1755] code/trunk/sljit: JIT compiler update.

Inizio della pagina
Delete this message
Autore: Subversion repository
Data:  
To: pcre-svn
Oggetto: [Pcre-svn] [1755] code/trunk/sljit: JIT compiler update.
Revision: 1755
          http://vcs.pcre.org/viewvc?view=rev&revision=1755
Author:   zherczeg
Date:     2019-07-18 07:13:14 +0100 (Thu, 18 Jul 2019)
Log Message:
-----------
JIT compiler update.


Modified Paths:
--------------
    code/trunk/sljit/sljitLir.c
    code/trunk/sljit/sljitNativeX86_common.c


Modified: code/trunk/sljit/sljitLir.c
===================================================================
--- code/trunk/sljit/sljitLir.c    2019-07-17 07:17:16 UTC (rev 1754)
+++ code/trunk/sljit/sljitLir.c    2019-07-18 06:13:14 UTC (rev 1755)
@@ -721,6 +721,7 @@
 static SLJIT_INLINE void set_put_label(struct sljit_put_label *put_label, struct sljit_compiler *compiler, sljit_uw offset)
 {
     put_label->next = NULL;
+    put_label->label = NULL;
     put_label->addr = compiler->size - offset;
     put_label->flags = 0;
     if (compiler->last_put_label)


Modified: code/trunk/sljit/sljitNativeX86_common.c
===================================================================
--- code/trunk/sljit/sljitNativeX86_common.c    2019-07-17 07:17:16 UTC (rev 1754)
+++ code/trunk/sljit/sljitNativeX86_common.c    2019-07-18 06:13:14 UTC (rev 1755)
@@ -611,15 +611,15 @@
     put_label = compiler->put_labels;
     while (put_label) {
 #if (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32)
-        sljit_unaligned_store_sw((void*)put_label->addr - sizeof(sljit_sw), (sljit_sw)put_label->label->addr);
+        sljit_unaligned_store_sw((void*)(put_label->addr - sizeof(sljit_sw)), (sljit_sw)put_label->label->addr);
 #else
         if (put_label->flags & PATCH_MD) {
             SLJIT_ASSERT(put_label->label->addr > HALFWORD_MAX);
-            sljit_unaligned_store_sw((void*)put_label->addr - sizeof(sljit_sw), (sljit_sw)put_label->label->addr);
+            sljit_unaligned_store_sw((void*)(put_label->addr - sizeof(sljit_sw)), (sljit_sw)put_label->label->addr);
         }
         else {
             SLJIT_ASSERT(put_label->label->addr <= HALFWORD_MAX);
-            sljit_unaligned_store_s32((void*)put_label->addr - sizeof(sljit_s32), (sljit_s32)put_label->label->addr);
+            sljit_unaligned_store_s32((void*)(put_label->addr - sizeof(sljit_s32)), (sljit_s32)put_label->label->addr);
         }
 #endif