-#define be_emit_cstring(env,x) { be_emit_string_len(env, x, sizeof(x)-1); }
+/**
+ * Emit a C string-constant to the (assembler) output.
+ *
+ * @param str the null-terminated string constant
+ */
+#define be_emit_cstring(str) \
+ be_emit_string_len(str, sizeof(str) - 1)
+
+/**
+ * Initializes an emitter environment.
+ *
+ * @param F a file handle where the emitted file is written to.
+ */
+void be_emit_init(FILE *F);
+
+/**
+ * Destroys the given emitter environment.
+ */
+void be_emit_exit(void);
+
+/**
+ * Emit the output of an ir_printf.
+ *
+ * @param fmt the ir_printf format
+ */
+void be_emit_irprintf(const char *fmt, ...);
+
+/**
+ * Emit the output of an ir_vprintf.
+ *
+ * @param fmt the ir_printf format
+ */
+void be_emit_irvprintf(const char *fmt, va_list args);