; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 4 ; RUN: llc -mtriple=m68k < %s | FileCheck %s @VBRTag = external dso_local global [2147483647 x i8] define i1 @folded_offset(i32 %conv29) { ; CHECK-LABEL: folded_offset: ; CHECK: .cfi_startproc ; CHECK-NEXT: ; %bb.0: ; %entry ; CHECK-NEXT: move.b (VBRTag+1,%pc), %d0 ; CHECK-NEXT: ext.w %d0 ; CHECK-NEXT: ext.l %d0 ; CHECK-NEXT: sub.l (4,%sp), %d0 ; CHECK-NEXT: seq %d0 ; CHECK-NEXT: rts entry: %0 = load i8, ptr getelementptr inbounds ([2147483647 x i8], ptr @VBRTag, i32 0, i32 1), align 1 %conv30 = sext i8 %0 to i32 %cmp31.not = icmp eq i32 %conv30, %conv29 ret i1 %cmp31.not } define i1 @non_folded_offset(i32 %conv29) { ; CHECK-LABEL: non_folded_offset: ; CHECK: .cfi_startproc ; CHECK-NEXT: ; %bb.0: ; %entry ; CHECK-NEXT: move.l #2147483645, %d0 ; CHECK-NEXT: lea (VBRTag,%pc), %a0 ; CHECK-NEXT: move.b (0,%a0,%d0), %d0 ; CHECK-NEXT: ext.w %d0 ; CHECK-NEXT: ext.l %d0 ; CHECK-NEXT: sub.l (4,%sp), %d0 ; CHECK-NEXT: seq %d0 ; CHECK-NEXT: rts entry: %0 = load i8, ptr getelementptr inbounds ([2147483647 x i8], ptr @VBRTag, i32 0, i32 2147483645), align 1 %conv30 = sext i8 %0 to i32 %cmp31.not = icmp eq i32 %conv30, %conv29 ret i1 %cmp31.not }