================ @@ -0,0 +1,106 @@ +; RUN: llc < %s -march=bpfel -mcpu=v4 -verify-machineinstrs -show-mc-encoding \ +; RUN: | FileCheck -check-prefixes=CHECK-LE %s +; RUN: llc < %s -march=bpfeb -mcpu=v4 -verify-machineinstrs -show-mc-encoding \ +; RUN: | FileCheck -check-prefixes=CHECK-BE %s + +; Source: +; char load_acquire_i8(char *p) { +; return __atomic_load_n(p, __ATOMIC_ACQUIRE); +; } +; short load_acquire_i16(short *p) { +; return __atomic_load_n(p, __ATOMIC_ACQUIRE); +; } +; int load_acquire_i32(int *p) { +; return __atomic_load_n(p, __ATOMIC_ACQUIRE); +; } +; long load_acquire_i64(long *p) { +; return __atomic_load_n(p, __ATOMIC_ACQUIRE); +; } +; void store_release_i8(char *p, char v) { +; __atomic_store_n(p, v, __ATOMIC_RELEASE); +; } +; void store_release_i16(short *p, short v) { +; __atomic_store_n(p, v, __ATOMIC_RELEASE); +; } +; void store_release_i32(int *p, int v) { +; __atomic_store_n(p, v, __ATOMIC_RELEASE); +; } +; void store_release_i64(long *p, long v) { +; __atomic_store_n(p, v, __ATOMIC_RELEASE); +; } + +; CHECK-LABEL: load_acquire_i8 +; CHECK-LE: w0 = load_acquire((u8 *)(r1 + 0)) # encoding: [0xd3,0x10,0x00,0x00,0x10,0x00,0x00,0x00] +; CHECK-BE: w0 = load_acquire((u8 *)(r1 + 0)) # encoding: [0xd3,0x01,0x00,0x00,0x00,0x00,0x00,0x10] +define dso_local i8 @load_acquire_i8(ptr nocapture noundef readonly %p) local_unnamed_addr { +entry: ---------------- peilin-ye wrote:
Got it, thanks for reviewing this! I'll run `acquire-release.ll` through `update_llc_test_checks.py`. https://github.com/llvm/llvm-project/pull/108636 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits