#ifndef _READ_H_
#define _READ_H_
#import "expr.h"
#define PERMIT_WHITESPACE
#ifdef PERMIT_WHITESPACE
#define SKIP_WHITESPACE() \
(void)((*input_line_pointer == ' ') ? ++input_line_pointer : 0)
#else
#define SKIP_WHITESPACE() know(*input_line_pointer != ' ' )
#endif
#define LEX_NAME (1)
#define LEX_BEGIN_NAME (2)
#define is_name_beginner(c) ( lex_type[(c) & 0xff] & LEX_BEGIN_NAME )
#define is_part_of_name(c) ( lex_type[(c) & 0xff] & LEX_NAME )
typedef struct {
char *poc_name;
void (*poc_handler)(uintptr_t poc_val);
uintptr_t poc_val;
} pseudo_typeS;
extern char *input_line_pointer;
extern char *buffer_limit;
extern int target_big_endian;
extern
#ifndef PPC
const
#endif
char lex_type[];
extern char is_end_of_line(
int c);
extern uint32_t text_nsect;
extern int inlineasm_checks;
extern char *inlineasm_file_name;
extern int inlineasm_line_number;
extern int inlineasm_column_number;
extern void read_begin(
void);
#ifdef PPC
extern void ppcasm_read_begin(
void);
#endif
void read_a_source_file(
char *buffer);
extern signed_target_addr_t get_absolute_expression(
void);
extern char *demand_copy_C_string(
int *len_pointer);
extern void demand_empty_rest_of_line(
void);
extern void ignore_rest_of_line(
void);
extern void add_to_macro_definition(
char *char_pointer);
extern segT get_known_segmented_expression(
expressionS *expP);
extern void totally_ignore_line(
void);
extern void stringer(
uintptr_t append_zero);
extern void s_space(
uintptr_t value);
extern void s_abs(
uintptr_t value);
extern void float_cons(
uintptr_t float_type);
extern void cons(
uintptr_t nbytes);
extern void s_globl(
uintptr_t value);
void s_app_file(
uintptr_t value);
extern void s_ignore(
uintptr_t arg);
extern void s_line(
uintptr_t value);
extern void s_macro(
uintptr_t value);
extern void s_endmacro(
uintptr_t value);
extern void big_cons(
uintptr_t nbytes);
extern void pseudo_set(
symbolS *symbolP);
extern int output_leb128(
char *p,
valueT value,
int sign);
extern int sizeof_leb128(
valueT value,
int sign);
#endif