Poplar and PopLibs
VectorLayout.hpp
1// Copyright (c) 2020 Graphcore Ltd. All rights reserved.
2#ifndef poplar_VectorLayout_hpp
3#define poplar_VectorLayout_hpp
4
5#include <iosfwd>
6
7namespace poplar {
8
10namespace layout {
11
15enum class Vector {
16 NotAVector,
17 Span,
18 ShortSpan,
19 OnePtr,
20 ScaledPtr32,
21 ScaledPtr64,
22 ScaledPtr128
23};
24
25std::ostream &operator<<(std::ostream &os, const Vector v);
26std::string to_string(const Vector v);
27
31enum class VectorList {
32 NotAVector,
33 OnePtr,
34 ScaledPtr32,
35 ScaledPtr64,
36 ScaledPtr128,
37 DeltaN,
38 DeltaNElements
39};
40
41std::ostream &operator<<(std::ostream &os, const VectorList v);
42std::string to_string(const VectorList v);
43
44} // namespace layout
45} // namespace poplar
46
47#endif // poplar_VectorLayout_hpp
Vector
An enumeration used to state what type of pointer is used for a Vector vertex field.
Definition: VectorLayout.hpp:15
VectorList
An enumeration used to state what type of pointer is used for a VectorList vertex field.
Definition: VectorLayout.hpp:31
Poplar classes and functions.
Definition: ArrayRef.hpp:14