================
@@ -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
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to