aboutsummaryrefslogtreecommitdiff
path: root/backendC/CleanCompilerSources/codegen3.h
diff options
context:
space:
mode:
Diffstat (limited to 'backendC/CleanCompilerSources/codegen3.h')
-rw-r--r--backendC/CleanCompilerSources/codegen3.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/backendC/CleanCompilerSources/codegen3.h b/backendC/CleanCompilerSources/codegen3.h
new file mode 100644
index 0000000..69af6b1
--- /dev/null
+++ b/backendC/CleanCompilerSources/codegen3.h
@@ -0,0 +1,13 @@
+
+extern void RedirectResultAndReturn (int asp,int bsp,int aindex,int bindex,
+ StateS offstate,StateS demstate,int offasize,int offbsize);
+
+extern int CodeRhsNodeDefs
+ (Node root_node,NodeDefs defs,int asp,int bsp,struct saved_nid_state **then_or_else,StateS resultstate,struct esc *esc_p,
+ struct node_id_list_element *a_node_ids,struct node_id_list_element *b_node_ids,
+ struct node_id_list_element *free_node_ids,int doesnt_fail);
+
+struct saved_node_id_ref_counts* save_lhs_node_id_ref_counts (NodeP node_p,struct saved_node_id_ref_counts *snir_p);
+struct saved_node_id_ref_counts* save_rhs_node_id_ref_counts (NodeP node_p,NodeDefP node_defs,
+ struct saved_node_id_ref_counts *snir_p,struct saved_case_node_id_ref_counts ***scnirc_h);
+void restore_node_id_ref_counts (struct saved_node_id_ref_counts *snir_p,struct saved_case_node_id_ref_counts *scnirc_p);