libFirm
Loading...
Searching...
No Matches

These functions allow printing of formated strings with support for printing firm objects in a human readable form. More...

Functions

int ir_printf (const char *fmt,...)
 A string formatting routine for ir objects.
 
int ir_fprintf (FILE *f, const char *fmt,...)
 
int ir_snprintf (char *buf, size_t n, const char *fmt,...)
 
int ir_vprintf (const char *fmt, va_list args)
 
int ir_vfprintf (FILE *f, const char *fmt, va_list args)
 
int ir_vsnprintf (char *buf, size_t len, const char *fmt, va_list args)
 
int ir_obst_vprintf (struct obstack *obst, const char *fmt, va_list args)
 
int tarval_snprintf (char *buf, size_t buflen, ir_tarval const *tv)
 Output a tarval in human readable format to a string buffer.
 

Detailed Description

These functions allow printing of formated strings with support for printing firm objects in a human readable form.

Function Documentation

◆ ir_fprintf()

int ir_fprintf ( FILE * f,
const char * fmt,
... )
See also
ir_printf.

◆ ir_obst_vprintf()

int ir_obst_vprintf ( struct obstack * obst,
const char * fmt,
va_list args )
See also
ir_printf.

◆ ir_printf()

int ir_printf ( const char * fmt,
... )

A string formatting routine for ir objects.

Parameters
fmtThe format string.

This function rudimentary implements a kind of printf(3) for ir nodes and adds the following additional conversion specifiers.

  • %t A type name.
  • %e An entity name.
  • %E An entity ld name.
  • %T A tarval.
  • %n A full description of a node.
  • %O The opcode name of an ir node.
  • %N The node number of an ir node.
  • %m The mode name of an ir mode.
  • %B The block node number of the nodes block.
  • %I An ident.
  • %D Print as many white spaces as given in the parameter.
  • %G A debug info (if available) from the given ir node.
  • %B A bitset.
  • %F A Firm object (automatically detected).

◆ ir_snprintf()

int ir_snprintf ( char * buf,
size_t n,
const char * fmt,
... )
See also
ir_printf.

◆ ir_vfprintf()

int ir_vfprintf ( FILE * f,
const char * fmt,
va_list args )
See also
ir_printf.

◆ ir_vprintf()

int ir_vprintf ( const char * fmt,
va_list args )
See also
ir_printf.

◆ ir_vsnprintf()

int ir_vsnprintf ( char * buf,
size_t len,
const char * fmt,
va_list args )
See also
ir_printf.

◆ tarval_snprintf()

int tarval_snprintf ( char * buf,
size_t buflen,
ir_tarval const * tv )

Output a tarval in human readable format to a string buffer.

This function is meant for debugging purposes, the string is formated in a way easily understandable for humans. You should not use this for storage or output for other tools (like assemblers), use get_tarval_sub_bits() for these cases.

The final string in "buf" is guaranteed to be zero-terminated (if buflen is at least 1).

Parameters
bufthe output buffer
buflenthe length of the buffer
tvthe tarval