projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Switched set, pset, eset to size_t, hash remains unsigned.
[libfirm]
/
include
/
libfirm
/
irio.h
diff --git
a/include/libfirm/irio.h
b/include/libfirm/irio.h
index
ecf232e
..
0fe4ee5
100644
(file)
--- a/
include/libfirm/irio.h
+++ b/
include/libfirm/irio.h
@@
-22,6
+22,9
@@
* @brief Import/export textual representation of firm.
* @author Moritz Kroll
* @version $Id$
* @brief Import/export textual representation of firm.
* @author Moritz Kroll
* @version $Id$
+ *
+ * Note: The file format is not considered stable yet. So expect
+ * incompatibilities between file formats of different libfirm versions.
*/
#ifndef FIRM_IR_IRIO_H
#define FIRM_IR_IRIO_H
*/
#ifndef FIRM_IR_IRIO_H
#define FIRM_IR_IRIO_H
@@
-29,6
+32,7
@@
#include <stdio.h>
#include "firm_types.h"
#include <stdio.h>
#include "firm_types.h"
+#include "begin.h"
/**
* Exports the whole irp to the given file in a textual form.
/**
* Exports the whole irp to the given file in a textual form.
@@
-37,17
+41,24
@@
*
* Exports all types, all ir graphs, and the constant graph.
*/
*
* Exports all types, all ir graphs, and the constant graph.
*/
-void ir_export(const char *filename);
+
FIRM_API
void ir_export(const char *filename);
/**
/**
- * Exports the given ir graph to the given file in a textual form.
+ * same as ir_export but writes to a FILE*
+ */
+FIRM_API void ir_export_file(FILE *output, const char *outputname);
+
+/**
+ * Write the given ir graph to a stream in a textual format
*
*
- * @param irg the ir graph
- * @param filename the name of the resulting file
+ * @param irg the ir graph
+ * @param output output stream the irg is written to
+ * @param outputname a name for the output stream (used for error messages)
*
* Exports the type graph used by the given graph and the graph itself.
*/
*
* Exports the type graph used by the given graph and the graph itself.
*/
-void ir_export_irg(ir_graph *irg, const char *filename);
+FIRM_API void ir_export_irg(ir_graph *irg, FILE *output,
+ const char *outputname);
/**
* Imports the data stored in the given file.
/**
* Imports the data stored in the given file.
@@
-56,6
+67,13
@@
void ir_export_irg(ir_graph *irg, const char *filename);
*
* Imports any type graphs and ir graphs contained in the file.
*/
*
* Imports any type graphs and ir graphs contained in the file.
*/
-void ir_import(const char *filename);
+FIRM_API void ir_import(const char *filename);
+
+/**
+ * same as ir_import but imports from a FILE*
+ */
+FIRM_API void ir_import_file(FILE *input, const char *inputname);
+
+#include "end.h"
#endif
#endif