# RUN: llc -mtriple=aarch64-linux-gnu -start-after=branch-relaxation --filetype=obj -o %t.o %s

--- |
  target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
  target triple = "aarch64-unknown-linux-gnu"

  @reps = external dso_local global i32, align 4

  define void @foo() {
    ret void
  }

  !2 = !{!3, !3, i64 0}
  !3 = !{!"int", !4, i64 0}
  !4 = !{!"omnipotent char", !5, i64 0}
  !5 = !{!"Simple C++ TBAA"}
...
---
name:            foo
alignment:       64
jumpTable:
  kind:            block-address
  entries:
    - id:              0
      blocks:          [ '%bb.2', '%bb.3', '%bb.4', '%bb.5' ]
body:             |
  bb.0:
    successors: %bb.6(0x19999998), %bb.1(0x66666668)
    liveins: $w0, $x1, $x2, $x3, $x4
  
    dead $wzr = SUBSWri renamable $w0, 3, 0, implicit-def $nzcv
    Bcc 8, %bb.6, implicit $nzcv
  
  bb.1:
    successors: %bb.2(0x20000000), %bb.3(0x20000000), %bb.4(0x20000000), %bb.5(0x20000000)
    liveins: $w0, $x1, $x2, $x3, $x4
  
    $x8 = ADRP target-flags(aarch64-page) %jump-table.0
    renamable $w9 = ORRWrs $wzr, killed renamable $w0, 0, implicit-def $x9
    renamable $x8 = ADDXri killed $x8, target-flags(aarch64-pageoff, aarch64-nc) %jump-table.0, 0
    early-clobber renamable $x10, dead early-clobber renamable $x11 = JumpTableDest32 killed renamable $x8, killed renamable $x9, %jump-table.0
    BR killed renamable $x10
  
  bb.2 (align 65536):
    successors: %bb.3(0x50000000), %bb.6(0x30000000)
    liveins: $x1, $x2, $x3, $x4
  
    renamable $x8 = ADRP target-flags(aarch64-page) @reps
    renamable $w9 = LDRWui renamable $x8, target-flags(aarch64-pageoff, aarch64-nc) @reps :: (volatile dereferenceable load (s32) from @reps, !tbaa !2)
    dead $wzr = SUBSWri killed renamable $w9, 1, 0, implicit-def $nzcv
    Bcc 11, %bb.6, implicit $nzcv
  
  bb.3 (align 65536):
    successors: %bb.4(0x50000000), %bb.6(0x30000000)
    liveins: $x1, $x2, $x3, $x4
  
    renamable $x8 = ADRP target-flags(aarch64-page) @reps
    renamable $w9 = LDRWui renamable $x8, target-flags(aarch64-pageoff, aarch64-nc) @reps :: (volatile dereferenceable load (s32) from @reps, !tbaa !2)
    dead $wzr = SUBSWri killed renamable $w9, 1, 0, implicit-def $nzcv
    Bcc 11, %bb.6, implicit $nzcv
  
  bb.4 (align 65536):
    successors: %bb.5(0x50000000), %bb.6(0x30000000)
    liveins: $x1, $x2, $x3, $x4
  
    renamable $x8 = ADRP target-flags(aarch64-page) @reps
    renamable $w9 = LDRWui renamable $x8, target-flags(aarch64-pageoff, aarch64-nc) @reps :: (volatile dereferenceable load (s32) from @reps, !tbaa !2)
    dead $wzr = SUBSWri killed renamable $w9, 1, 0, implicit-def $nzcv
    Bcc 11, %bb.6, implicit $nzcv
  
  bb.5 (align 65536):
    successors: %bb.6(0x30000000)
    liveins: $x1, $x2, $x3, $x4
  
    renamable $x8 = ADRP target-flags(aarch64-page) @reps
    renamable $w9 = LDRWui renamable $x8, target-flags(aarch64-pageoff, aarch64-nc) @reps :: (volatile dereferenceable load (s32) from @reps, !tbaa !2)
    dead $wzr = SUBSWri killed renamable $w9, 1, 0, implicit-def $nzcv
    Bcc 11, %bb.6, implicit $nzcv
  
  bb.6:
    RET undef $lr

...
