================
@@ -518,6 +518,16 @@ class TargetInfo : public TransferrableTargetInfo,
   /// getInt128Align() - Returns the alignment of Int128.
   unsigned getInt128Align() const { return Int128Align; }
 
+  /// getBitIntAlign/Width - Return aligned size of '_BitInt' and
+  /// 'unsigned _BitInt' for this target, in bits.
+  unsigned getBitIntWidth(unsigned NumBits) const {
+    return llvm::alignTo(NumBits, getBitIntAlign(NumBits));
+  }
+  virtual unsigned getBitIntAlign(unsigned NumBits) const {
----------------
efriedma-quic wrote:

```
unsigned getBitIntMaxAlign() {
  return BitIntMaxAlign.or(LongLongAlign);
}
unsigned getBitIntAlign(unsigned NumBits) const {
    return std::clamp<unsigned>(llvm::PowerOf2Ceil(NumBits), getCharWidth(),
                                getBitIntMaxAlign());
}
```

https://github.com/llvm/llvm-project/pull/90602
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to