16#ifndef CLANG_CIR_ABIARGINFO_H
17#define CLANG_CIR_ABIARGINFO_H
19#include "mlir/IR/Types.h"
44 struct DirectAttrInfo {
58 info.setCoerceToType(ty);
ABIArgInfo(Kind k=Direct)
bool isIndirectAliased() const
DirectAttrInfo directAttr
@ Direct
Pass the argument directly using the normal converted CIR type, or by coercing to another specified t...
@ Ignore
Ignore the argument (treat as void).
mlir::Type getCoerceToType() const
void setCoerceToType(mlir::Type ty)
static ABIArgInfo getIgnore()
bool canHaveCoerceToType() const
static ABIArgInfo getDirect(mlir::Type ty=nullptr)
unsigned getDirectOffset() const
__builtin_bitreverse32 uint32_t __builtin_riscv_aaddu_u32 __builtin_riscv_asubu_u32 __builtin_elementwise_add_sat __builtin_elementwise_sub_sat int32_t uint32_t uint32_t uint8_t