[clang] [llvm] [WIP] ABI Lowering Library (PR #140112)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 2 00:49:04 PDT 2025
================
@@ -17,19 +17,50 @@
#include "llvm/ABI/ABIFunctionInfo.h"
#include "llvm/ABI/Types.h"
#include <cassert>
+#include <climits>
+#include <cstdint>
namespace llvm {
namespace abi {
+struct ABICompatInfo {
+ unsigned Version = UINT_MAX;
+
+ struct ABIFlags {
+ bool PassInt128VectorsInMem : 1;
+ bool ReturnCXXRecordGreaterThan128InMem : 1;
+ bool ClassifyIntegerMMXAsSSE : 1;
+ bool HonorsRevision98 : 1;
+
+ ABIFlags()
+ : PassInt128VectorsInMem(true),
+ ReturnCXXRecordGreaterThan128InMem(true),
+ ClassifyIntegerMMXAsSSE(true), HonorsRevision98(true) {}
+
+ } Flags;
----------------
nikic wrote:
I assume the idea here is that these flags get automatically initialized based on the version, with the option to manually overwrite them?
https://github.com/llvm/llvm-project/pull/140112
More information about the llvm-commits
mailing list