brintos

brintos / llvm-project-archived public Read only

0
0
Text · 982 B · 81a96bf Raw
34 lines · plain
1// RUN: mlir-opt --convert-to-llvm %s | FileCheck %s2 3// Checking that malloc and free are declared in the proper module.4 5// CHECK: module attributes {gpu.container_module} {6// CHECK:   llvm.func @free(!llvm.ptr)7// CHECK:   llvm.func @malloc(i64) -> !llvm.ptr8// CHECK:   gpu.module @kernels {9// CHECK:     llvm.func @free(!llvm.ptr)10// CHECK:     llvm.func @malloc(i64) -> !llvm.ptr11// CHECK:     gpu.func @kernel_112// CHECK:       llvm.call @malloc({{.*}}) : (i64) -> !llvm.ptr13// CHECK:       llvm.call @free({{.*}}) : (!llvm.ptr) -> ()14// CHECK:       gpu.return15// CHECK:     }16// CHECK:   }17// CHECK: }18module attributes {gpu.container_module} {19 20  gpu.module @kernels {21    gpu.func @kernel_1() kernel {22      %memref_a = memref.alloc() : memref<8x16xf32>23      memref.dealloc %memref_a : memref<8x16xf32>24      gpu.return25    }26  }27 28  func.func @main() {29    %memref_a = memref.alloc() : memref<8x16xf32>30    memref.dealloc %memref_a : memref<8x16xf32>31    return32  }33}34