Cthulhu  0.2.10
Cthulhu compiler collection
target.c
Go to the documentation of this file.
1 // SPDX-License-Identifier: GPL-3.0-only
2 
4 
5 #include "driver/driver.h"
6 
7 CT_DRIVER_API const target_t kTargetC = {
8  .info = {
9  .id = "target/cfamily",
10  .name = "C",
11  .version = {
12  .license = "LGPLv3",
13  .author = "Elliot Haisley",
14  .desc = "C89 output target",
15  .version = CT_NEW_VERSION(0, 0, 1)
16  }
17  },
18 
19  .fn_tree = cfamily_tree,
20  .fn_ssa = cfamily_ssa
21 };
22 
CT_BEGIN_API CT_LOCAL void cfamily_tree(target_runtime_t *runtime, const tree_t *tree, target_emit_t *emit)
Definition: tree.c:100
CT_LOCAL emit_result_t cfamily_ssa(target_runtime_t *runtime, const ssa_result_t *ssa, target_emit_t *emit)
Definition: emit.c:1140
CT_DRIVER_API const target_t kTargetC
Definition: target.c:7
#define CT_NEW_VERSION(major, minor, patch)
creates a new ctu_version_t from major, minor and patch
Definition: version_def.h:20
#define CT_TARGET_EXPORT(mod)
declares the entry point for a target driver module
const char * id
unique id for the module
Definition: broker.h:101
a codegen target backend
Definition: broker.h:232
module_info_t info
information about the target
Definition: broker.h:234