Andres-Salamanca dc9b8fe3b7
[CIR ] Add DLTI dialect support to module attributes (#142241)
This PR adds support for the DLTI dialect by attaching it to the module
attributes and introduces a utility function to determine if the target
is big-endian, which is required for
https://github.com/llvm/llvm-project/pull/142041. Some tests were
updated because we now use `mlir::translateDataLayout`, which "updates"
the `DataLayout` where the alignment for `long` is 8 instead of the
previously 4. This updated is consistent with Incubator.
2025-06-05 09:42:01 -05:00

24 lines
1.1 KiB
C

// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-cir %s -o %t.cir
// RUN: FileCheck --input-file=%t.cir %s --check-prefix=LITTLE
void foo() {}
// LITTLE-DAG: dlti.dl_spec =
// LITTLE-DAG: #dlti.dl_spec<
// LITTLE-DAG: i16 = dense<16> : vector<2xi64>,
// LITTLE-DAG: i32 = dense<32> : vector<2xi64>,
// LITTLE-DAG: i8 = dense<8> : vector<2xi64>,
// LITTLE-DAG: i1 = dense<8> : vector<2xi64>,
// LITTLE-DAG: !llvm.ptr = dense<64> : vector<4xi64>,
// LITTLE-DAG: f80 = dense<128> : vector<2xi64>,
// LITTLE-DAG: i128 = dense<128> : vector<2xi64>,
// LITTLE-DAG: !llvm.ptr<272> = dense<64> : vector<4xi64>,
// LITTLE-DAG: i64 = dense<64> : vector<2xi64>,
// LITTLE-DAG: !llvm.ptr<270> = dense<32> : vector<4xi64>,
// LITTLE-DAG: !llvm.ptr<271> = dense<32> : vector<4xi64>,
// LITTLE-DAG: f128 = dense<128> : vector<2xi64>,
// LITTLE-DAG: f16 = dense<16> : vector<2xi64>,
// LITTLE-DAG: f64 = dense<64> : vector<2xi64>,
// LITTLE-DAG: "dlti.stack_alignment" = 128 : i64
// LITTLE-DAG: "dlti.endianness" = "little"