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
lib
Support
Path.cpp
Go to the documentation of this file.
1
//===- Path.cpp - Path Utilities --------------------------------*- 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
// Utilities for file system path handling, supplementing the ones from
10
// llvm::sys::path.
11
//
12
//===----------------------------------------------------------------------===//
13
14
#include "
circt/Support/Path.h
"
15
#include "llvm/Support/Path.h"
16
17
using namespace
circt
;
18
19
/// Append a path to an existing path, replacing it if the other path is
20
/// absolute. This mimicks the behaviour of `foo/bar` and `/foo/bar` being used
21
/// in a working directory `/home`, resulting in `/home/foo/bar` and `/foo/bar`,
22
/// respectively.
23
void
circt::appendPossiblyAbsolutePath
(llvm::SmallVectorImpl<char> &base,
24
const
llvm::Twine &suffix) {
25
if
(llvm::sys::path::is_absolute(suffix)) {
26
base.clear();
27
suffix.toVector(base);
28
}
else
{
29
llvm::sys::path::append(base, suffix);
30
}
31
}
23
void
circt::appendPossiblyAbsolutePath
(llvm::SmallVectorImpl<char> &base, {
…
}
Path.h
circt
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
Definition
DebugAnalysis.h:21
circt::appendPossiblyAbsolutePath
void appendPossiblyAbsolutePath(llvm::SmallVectorImpl< char > &base, const llvm::Twine &suffix)
Append a path to an existing path, replacing it if the other path is absolute.
Definition
Path.cpp:23
Generated on Tue Apr 22 2025 00:08:33 for CIRCT by
1.9.8