Thorin
1.9.0
The Higher ORder INtermediate representation
Loading...
Searching...
No Matches
autogen.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
thorin/axiom.h
>
4
#include <
thorin/plugin.h
>
5
6
/// @namespace thorin::plug::affine @ref affine
7
namespace
thorin
{
8
namespace
plug::affine {
9
10
static
constexpr
plugin_t
Plugin_Id
= 0x871ca3c60000000;
11
12
/// @name %%affine.For
13
///@{
14
#ifdef DOXYGEN
// see https://github.com/doxygen/doxygen/issues/9668
15
enum
For
:
flags_t
{
16
#else
17
enum class
For
:
flags_t
{
18
#endif
19
};
20
21
///@}
22
23
/// @name %%affine.lower_for_pass
24
///@{
25
#ifdef DOXYGEN
// see https://github.com/doxygen/doxygen/issues/9668
26
enum
lower_for_pass
:
flags_t
{
27
#else
28
enum class
lower_for_pass
:
flags_t
{
29
#endif
30
};
31
32
///@}
33
34
}
// namespace plug::affine
35
36
#ifndef DOXYGEN
// don't include in Doxygen documentation
37
template
<>
constexpr
flags_t
Annex::Base<plug::affine::For>
= 0x871ca3c60000000;
38
template
<>
constexpr
size_t
Annex::Num<plug::affine::For>
= 0;
39
template
<>
constexpr
flags_t
Annex::Base<plug::affine::lower_for_pass>
= 0x871ca3c60000100;
40
template
<>
constexpr
size_t
Annex::Num<plug::affine::lower_for_pass>
= 0;
41
42
template
<>
struct
Axiom::Match
<plug::
affine::lower_for_pass
> {
using
type =
Axiom
; };
43
#endif
44
}
// namespace thorin
axiom.h
thorin::Axiom
Definition
axiom.h:9
thorin::Axiom::Match
Type of Match::def_.
Definition
axiom.h:57
thorin::plug::affine::Plugin_Id
static constexpr plugin_t Plugin_Id
Definition
autogen.h:10
thorin::plug::affine::lower_for_pass
lower_for_pass
Definition
autogen.h:26
thorin::plug::affine::For
For
Definition
autogen.h:15
thorin
Definition
cfg.h:11
thorin::plugin_t
u64 plugin_t
Definition
types.h:47
thorin::flags_t
u64 flags_t
Definition
types.h:46
plugin.h
thorin::Annex::Base
static constexpr flags_t Base
Definition
plugin.h:131
build
include
thorin
plug
affine
autogen.h
Generated by
1.9.8