clang 24.0.0git
ItaniumCXXABIUtils.h
Go to the documentation of this file.
1//===--- ItaniumCXXABIUtils.h - Shared Itanium C++ ABI queries --*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file holds the Itanium C++ ABI queries that both classic CodeGen and
10// CIR CodeGen need while lowering ABI constructs whose encoding the ABI
11// specifies in terms of the AST.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef LLVM_CLANG_CODEGENUTILS_ITANIUMCXXABIUTILS_H
16#define LLVM_CLANG_CODEGENUTILS_ITANIUMCXXABIUTILS_H
17
19
20namespace clang::CodeGenUtils {
21
22/// Compute the src2dst_offset hint as described in the Itanium C++ ABI [2.9.7].
23CharUnits computeOffsetHint(ASTContext &Ctx, const CXXRecordDecl *Src,
24 const CXXRecordDecl *Dst);
25
26} // namespace clang::CodeGenUtils
27
28#endif // LLVM_CLANG_CODEGENUTILS_ITANIUMCXXABIUTILS_H
Defines the clang::ASTContext interface.
CharUnits computeOffsetHint(ASTContext &Ctx, const CXXRecordDecl *Src, const CXXRecordDecl *Dst)
Compute the src2dst_offset hint as described in the Itanium C++ ABI [2.9.7].