; RUN: llvm-dis < %S/Inputs/aarch64-memory-attribute-upgrade.bc | FileCheck %s --check-prefix=AARCH64
; RUN: llvm-dis < %S/Inputs/x86-memory-attribute-upgrade.bc | FileCheck %s --check-prefix=NON-AARCH64

; The .bc inputs were generated by an older LLVM memory-attribute encoding,
; before AArch64 target memory was split out from inaccessible memory.
; The code was compiled using x86 and aarch64 hosts.


define void @test_inaccessible_read() #0 {
; AARCH64: ; Function Attrs: memory(inaccessiblemem: read, target_mem: read)
; AARCH64-NEXT: define void @test_inaccessible_read()
; NON-AARCH64: ; Function Attrs: memory(inaccessiblemem: read)
; NON-AARCH64-NEXT: define void @test_inaccessible_read()
  ret void
}

define void @test_inaccessible_readwrite() #1 {
; AARCH64: ; Function Attrs: memory(inaccessiblemem: readwrite, target_mem: readwrite)
; AARCH64-NEXT: define void @test_inaccessible_readwrite()
; NON-AARCH64: ; Function Attrs: memory(inaccessiblemem: readwrite)
; NON-AARCH64-NEXT: define void @test_inaccessible_readwrite()
  ret void
}

define void @test_inaccessible_none() #2 {
; AARCH64: ; Function Attrs: memory(none)
; AARCH64-NEXT: define void @test_inaccessible_none()
; NON-AARCH64: ; Function Attrs: memory(none)
; NON-AARCH64-NEXT: define void @test_inaccessible_none()
  ret void
}

attributes #0 = { memory(inaccessiblemem: read) }
attributes #1 = { memory(inaccessiblemem: readwrite) }
attributes #2 = { memory(inaccessiblemem: none) }
