Index: sim/frv/ChangeLog
[binutils-gdb.git] / sim / ppc / lf.h
index 13017f1f74e7594cbb5a1813d2e99c4859701f86..7bf6d1caffff7c9d49604edc07704a856f25db21 100644 (file)
 
 typedef struct _lf lf;
 
+typedef enum {
+  lf_is_h,
+  lf_is_c,
+  lf_is_text,
+} lf_file_type;
+
+
+typedef enum {
+  lf_include_references,
+  lf_omit_references,
+} lf_file_references;
 
-#if !defined (__attribute__) && (!defined(__GNUC__) || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7))
-#define __attribute__(arg)
-#endif
 
 /* Open the file NAME for writing.  REAL_NAME is to be included in any
    line number outputs.  The output of line number information can be
    suppressed with LINE_NUMBERS */
+
 extern lf *lf_open
 (char *name,
  char *real_name,
- int number_lines);
+ lf_file_references file_references,
+ lf_file_type type,
+ const char *program);
 
 extern void lf_close
 (lf *file);
 
 
-/* Suppress indentation for the next new line (current if not yet
-   started) */
-extern void lf_indent_suppress
-(lf *file);
+/* Basic output functions */
 
-extern void lf_putchr
+extern int lf_putchr
 (lf *file,
  const char ch);
 
-extern void lf_putstr
+extern int lf_putstr
 (lf *file,
  const char *string);
 
-extern void lf_putint
+extern int lf_putint
 (lf *file,
  int decimal);
 
-extern void lf_printf
+extern int lf_putbin
+(lf *file,
+ int decimal,
+ int width);
+
+extern int lf_printf
 (lf *file,
  const char *fmt,
  ...) __attribute__((format(printf, 2, 3)));
 
-extern void lf_print_lf_c_line_nr
+
+/* Indentation control.
+
+   lf_indent_suppress suppresses indentation on the next line (current
+   line if that has not yet been started) */
+
+extern void lf_indent_suppress
 (lf *file);
 
 extern void lf_indent
 (lf *file,
  int delta);
 
-extern void lf_print_copyleft
+
+/* Print generic text: */
+
+
+extern int lf_print__gnu_copyleft
 (lf *file);
 
-extern void lf_print_binary
+extern int lf_print__file_start
+(lf *file);
+
+extern int lf_print__this_file_is_empty
+(lf *file);
+
+extern int lf_print__file_finish
+(lf *file);
+
+extern int lf_print__internal_reference
+(lf *file);
+
+extern int lf_print__external_reference
 (lf *file,
- int decimal,
int width);
+ int line_nr,
const char *file_name);
 
-/* it is assumed that each line of code is prefixed by a tab character
-   that should be suppressed */
-extern void lf_print_c_code
+extern int lf_print__ucase_filename
+(lf *file);
+
+/* Tab prefix is suppressed */
+
+extern int lf_print__c_code
 (lf *file,
- char *code);
+ const char *code);
 
 
-extern void lf_print_c_line_nr
+extern int lf_print_function_type
 (lf *file,
- int line_nr,
- char *file_name);
+ const char *type,
+ const char *prefix,
+ const char *trailing_space);