File: mem_offset_be.ll

package info (click to toggle)
llvm-toolchain-19 1%3A19.1.7-15
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 1,999,400 kB
  • sloc: cpp: 6,951,711; ansic: 1,486,157; asm: 913,598; python: 232,059; f90: 80,126; objc: 75,281; lisp: 37,276; pascal: 16,990; sh: 10,079; ml: 5,058; perl: 4,724; awk: 3,523; makefile: 3,403; javascript: 2,504; xml: 892; fortran: 664; cs: 573
file content (17 lines) | stat: -rw-r--r-- 713 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
; RUN: llc -march=bpfeb -show-mc-encoding < %s | FileCheck %s

; Function Attrs: nounwind
define i32 @bpf_prog1(ptr nocapture readnone) local_unnamed_addr #0 {
; CHECK: r1 = 590618314553 ll   # encoding: [0x18,0x10,0x00,0x00,0x83,0x98,0x47,0x39,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x89]
; CHECK: r1 += -1879113726     # encoding: [0x07,0x10,0x00,0x00,0x8f,0xff,0x00,0x02]
; CHECK: r0 = *(u64 *)(r1 + 0) # encoding: [0x79,0x01,0x00,0x00,0x00,0x00,0x00,0x00]
  %2 = alloca i64, align 8
  store volatile i64 590618314553, ptr %2, align 8
  %3 = load volatile i64, ptr %2, align 8
  %4 = add i64 %3, -1879113726
  %5 = inttoptr i64 %4 to ptr
  %6 = load i64, ptr %5, align 8
  %7 = trunc i64 %6 to i32
  ret i32 %7
}