Loading [MathJax]/extensions/tex2jax.js
CIRCT
21.0.0git
Toggle main menu visibility
Main Page
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
Variables
_
a
b
c
d
e
f
g
i
k
l
m
n
o
r
s
t
u
v
w
Typedefs
a
b
c
d
e
f
g
h
i
m
o
p
r
s
t
u
w
Enumerations
Enumerator
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
~
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
z
~
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Typedefs
a
b
c
d
e
f
g
i
k
l
m
n
o
p
r
s
t
u
v
Enumerations
Enumerator
a
b
c
d
f
i
m
n
o
p
r
s
t
u
v
w
x
z
Related Symbols
Files
File List
File Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
y
z
Variables
c
e
g
i
l
m
n
p
r
s
t
w
Typedefs
b
c
d
e
f
h
i
j
l
m
n
o
p
r
s
u
v
Enumerations
Enumerator
a
c
d
f
h
i
n
o
r
Macros
a
c
d
e
g
h
i
r
s
t
v
x
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
include
circt
Support
Utils.h
Go to the documentation of this file.
1
//===- Utils.h - Miscellaneous utilities ----------------------------------===//
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
// Miscellaneous utilities for CIRCT that do not fit in with other files.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef CIRCT_SUPPORT_UTILS_H
14
#define CIRCT_SUPPORT_UTILS_H
15
16
#include "
circt/Support/LLVM.h
"
17
#include "mlir/IR/Operation.h"
18
#include "mlir/IR/Value.h"
19
20
namespace
circt
{
21
/// Return true if a Value is created "underneath" an operation. This is
22
/// frequently useful when negated as that indicates that a Value is defined
23
/// "outside" the region of an Operation and that the Operation is thereby
24
/// "capturing" the value.
25
inline
bool
isAncestorOfValueOwner
(Operation *op, Value value) {
26
return
op->isAncestor(value.getParentBlock()->getParentOp());
27
}
25
inline
bool
isAncestorOfValueOwner
(Operation *op, Value value) {
…
}
28
}
// namespace circt
29
30
#endif
// CIRCT_SUPPORT_UTILS_H
LLVM.h
circt
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
Definition
DebugAnalysis.h:21
circt::isAncestorOfValueOwner
bool isAncestorOfValueOwner(Operation *op, Value value)
Return true if a Value is created "underneath" an operation.
Definition
Utils.h:25
Generated on Wed Apr 23 2025 00:08:56 for CIRCT by
1.9.8