Skip to content

Commit 8571d40

Browse files
committed
Revert "[CIR] React to breaking change to DataLayoutTypeInterface (llvm#128772)"
This reverts commit ad94af9.
1 parent 1a62aee commit 8571d40

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

clang/lib/CIR/Dialect/IR/CIRTypes.cpp

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,12 @@ uint64_t IntType::getABIAlignment(const mlir::DataLayout &dataLayout,
125125
return (uint64_t)(getWidth() / 8);
126126
}
127127

128+
uint64_t
129+
IntType::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
130+
::mlir::DataLayoutEntryListRef params) const {
131+
return (uint64_t)(getWidth() / 8);
132+
}
133+
128134
mlir::LogicalResult
129135
IntType::verify(llvm::function_ref<mlir::InFlightDiagnostic()> emitError,
130136
unsigned width, bool isSigned) {
@@ -157,6 +163,12 @@ SingleType::getABIAlignment(const mlir::DataLayout &dataLayout,
157163
return (uint64_t)(getWidth() / 8);
158164
}
159165

166+
uint64_t
167+
SingleType::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
168+
::mlir::DataLayoutEntryListRef params) const {
169+
return (uint64_t)(getWidth() / 8);
170+
}
171+
160172
const llvm::fltSemantics &DoubleType::getFloatSemantics() const {
161173
return llvm::APFloat::IEEEdouble();
162174
}
@@ -173,6 +185,12 @@ DoubleType::getABIAlignment(const mlir::DataLayout &dataLayout,
173185
return (uint64_t)(getWidth() / 8);
174186
}
175187

188+
uint64_t
189+
DoubleType::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
190+
::mlir::DataLayoutEntryListRef params) const {
191+
return (uint64_t)(getWidth() / 8);
192+
}
193+
176194
const llvm::fltSemantics &FP16Type::getFloatSemantics() const {
177195
return llvm::APFloat::IEEEhalf();
178196
}
@@ -188,6 +206,12 @@ uint64_t FP16Type::getABIAlignment(const mlir::DataLayout &dataLayout,
188206
return (uint64_t)(getWidth() / 8);
189207
}
190208

209+
uint64_t
210+
FP16Type::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
211+
::mlir::DataLayoutEntryListRef params) const {
212+
return (uint64_t)(getWidth() / 8);
213+
}
214+
191215
const llvm::fltSemantics &BF16Type::getFloatSemantics() const {
192216
return llvm::APFloat::BFloat();
193217
}
@@ -203,6 +227,12 @@ uint64_t BF16Type::getABIAlignment(const mlir::DataLayout &dataLayout,
203227
return (uint64_t)(getWidth() / 8);
204228
}
205229

230+
uint64_t
231+
BF16Type::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
232+
::mlir::DataLayoutEntryListRef params) const {
233+
return (uint64_t)(getWidth() / 8);
234+
}
235+
206236
const llvm::fltSemantics &FP80Type::getFloatSemantics() const {
207237
return llvm::APFloat::x87DoubleExtended();
208238
}
@@ -219,6 +249,12 @@ uint64_t FP80Type::getABIAlignment(const mlir::DataLayout &dataLayout,
219249
return 16;
220250
}
221251

252+
uint64_t
253+
FP80Type::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
254+
::mlir::DataLayoutEntryListRef params) const {
255+
return 16;
256+
}
257+
222258
const llvm::fltSemantics &FP128Type::getFloatSemantics() const {
223259
return llvm::APFloat::IEEEquad();
224260
}
@@ -234,6 +270,12 @@ uint64_t FP128Type::getABIAlignment(const mlir::DataLayout &dataLayout,
234270
return 16;
235271
}
236272

273+
uint64_t
274+
FP128Type::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
275+
::mlir::DataLayoutEntryListRef params) const {
276+
return 16;
277+
}
278+
237279
const llvm::fltSemantics &LongDoubleType::getFloatSemantics() const {
238280
return mlir::cast<cir::CIRFPTypeInterface>(getUnderlying())
239281
.getFloatSemantics();
@@ -253,6 +295,13 @@ LongDoubleType::getABIAlignment(const mlir::DataLayout &dataLayout,
253295
.getABIAlignment(dataLayout, params);
254296
}
255297

298+
uint64_t LongDoubleType::getPreferredAlignment(
299+
const ::mlir::DataLayout &dataLayout,
300+
mlir::DataLayoutEntryListRef params) const {
301+
return mlir::cast<mlir::DataLayoutTypeInterface>(getUnderlying())
302+
.getPreferredAlignment(dataLayout, params);
303+
}
304+
256305
LogicalResult
257306
LongDoubleType::verify(function_ref<InFlightDiagnostic()> emitError,
258307
mlir::Type underlying) {
@@ -348,6 +397,12 @@ BoolType::getABIAlignment(const ::mlir::DataLayout &dataLayout,
348397
return 1;
349398
}
350399

400+
uint64_t
401+
BoolType::getPreferredAlignment(const ::mlir::DataLayout &dataLayout,
402+
::mlir::DataLayoutEntryListRef params) const {
403+
return 1;
404+
}
405+
351406
//===----------------------------------------------------------------------===//
352407
// PointerType Definitions
353408
//===----------------------------------------------------------------------===//
@@ -366,6 +421,13 @@ PointerType::getABIAlignment(const ::mlir::DataLayout &dataLayout,
366421
return 8;
367422
}
368423

424+
uint64_t PointerType::getPreferredAlignment(
425+
const ::mlir::DataLayout &dataLayout,
426+
::mlir::DataLayoutEntryListRef params) const {
427+
// FIXME: improve this in face of address spaces
428+
return 8;
429+
}
430+
369431
mlir::LogicalResult
370432
PointerType::verify(llvm::function_ref<mlir::InFlightDiagnostic()> emitError,
371433
mlir::Type pointee) {

0 commit comments

Comments
 (0)