From c10ec330f2c1df5e120392446ce09e298405061c Mon Sep 17 00:00:00 2001 From: Nick Gasson Date: Thu, 21 Mar 2024 21:31:50 +0000 Subject: [PATCH] Fix load address for symbols pointing to PE sections This reverts commit a16b40026cb4c62704b75fbfd59cc8ffc3ef5ad5. --- .github/workflows/build-test.yml | 17 ++++++++--------- src/jit/jit-code.c | 2 +- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml index bf30397c..48fe5c9c 100644 --- a/.github/workflows/build-test.yml +++ b/.github/workflows/build-test.yml @@ -159,15 +159,14 @@ jobs: run: make -C build - name: Test run: make -C build check - # Broken with LLVM 18? - #- name: Test in JIT mode - # run: | - # export NVC_JIT_ASYNC=0 - # export NVC_JIT_THRESHOLD=1 - # export FORCE_JIT=1 - # cd build - # rm -rf logs - # ./bin/run_regr + - name: Test in JIT mode + run: | + export NVC_JIT_ASYNC=0 + export NVC_JIT_THRESHOLD=1 + export FORCE_JIT=1 + cd build + rm -rf logs + ./bin/run_regr - name: Build MSYS2 package run: | cd contrib/msys2 diff --git a/src/jit/jit-code.c b/src/jit/jit-code.c index 779854ef..9b3e8520 100644 --- a/src/jit/jit-code.c +++ b/src/jit/jit-code.c @@ -792,7 +792,7 @@ static void code_load_pe(code_blob_t *blob, const void *data, size_t size) void *ptr = NULL; if (sym->SectionNumber > 0) { assert(sym->SectionNumber - 1 < imghdr->NumberOfSections); - ptr = load_addr[sym->SectionNumber - 1]; + ptr = load_addr[sym->SectionNumber - 1] + sym->Value; } #ifdef ARCH_X86_64 else if (strcmp(name, "___chkstk_ms") == 0) { -- 2.39.2