// RUN: mlir-translate -mlir-to-llvmir %s -split-input-file -verify-diagnostics | FileCheck %s // CHECK: target datalayout // CHECK: E- // CHECK: A4- // CHECK: S128- // CHECK: i64:64:128 // CHECK: f80:128:256 // CHECK: p0:32:64:128 // CHECK: p1:32:32:32:16 module attributes {dlti.dl_spec = #dlti.dl_spec< #dlti.dl_entry<"dlti.endianness", "big">, #dlti.dl_entry<"dlti.alloca_memory_space", 4 : ui32>, #dlti.dl_entry<"dlti.stack_alignment", 128 : i32>, #dlti.dl_entry, #dlti.dl_entry : vector<2xi64>>, #dlti.dl_entry : vector<2xi64>>, #dlti.dl_entry : vector<3xi64>>, #dlti.dl_entry, dense<[32,32,32,16]> : vector<4xi64>> >} { llvm.func @foo() { llvm.return } } // ----- // CHECK: target datalayout // CHECK: e // CHECK-NOT: A0 // CHECK-NOT: S0 module attributes {dlti.dl_spec = #dlti.dl_spec< #dlti.dl_entry<"dlti.endianness", "little">, #dlti.dl_entry<"dlti.alloca_memory_space", 0 : ui32>, #dlti.dl_entry<"dlti.stack_alignment", 0 : i32> >} { llvm.func @bar() { llvm.return } } // ----- // expected-error@below {{unsupported data layout for non-signless integer 'ui64'}} module attributes {dlti.dl_spec = #dlti.dl_spec< #dlti.dl_entry : vector<2xi64>>> } {} // ----- // expected-error@below {{unsupported type in data layout: 'bf16'}} module attributes {dlti.dl_spec = #dlti.dl_spec< #dlti.dl_entry : vector<2xi64>>> } {} // ----- // expected-error@below {{unsupported data layout key "foo"}} module attributes {dlti.dl_spec = #dlti.dl_spec< #dlti.dl_entry<"foo", dense<[64,128]> : vector<2xi64>>> } {}