Files
swift-mirror/include/swift/SIL/AddressUseKind.h
Andrew Trick d73a081fe7 Add pointer escape and dependent use tracking to InteriorLiveness
Rig TransitiveAddressWalker to keep track of enough information for passes to
correctly check for pointer escapes and dependence uses. Requires for precise
bail-outs and asserts.
2025-03-02 23:51:34 -08:00

27 lines
824 B
C++

//===--- AddressUseKind.h -------------------------------------------------===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2022 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//
#ifndef SWIFT_SIL_ADDRESSUSEKIND_H
#define SWIFT_SIL_ADDRESSUSEKIND_H
namespace swift {
enum class AddressUseKind { NonEscaping, Dependent, PointerEscape, Unknown };
inline AddressUseKind meet(AddressUseKind lhs, AddressUseKind rhs) {
return (lhs > rhs) ? lhs : rhs;
}
} // namespace swift
#endif