osprey/kgccfe/gnu/f/target.c File Reference

#include "proj.h"
#include "glimits.h"
#include "target.h"
#include "diagnostic.h"
#include "bad.h"
#include "info.h"
#include "lex.h"
#include "malloc.h"

Include dependency graph for target.c:

Go to the source code of this file.

Defines

#define FFETARGET_ATOF_(p, m)   atof ((p))
#define dotok(x)   if (x != NULL) ++sz;
#define dotoktxt(x)   if (x != NULL) sz += ffelex_token_length(x)
#define dotoktxt(x)
#define dotok(x)   if (x != NULL) ++sz;
#define dotoktxt(x)   if (x != NULL) sz += ffelex_token_length(x)
#define dotoktxt(x)
#define dotoktxtexp(x)

Functions/Subroutines

static void ffetarget_print_char_ (FILE *f, unsigned char c)
void ffetarget_aggregate_info (ffeinfoBasictype *ebt, ffeinfoKindtype *ekt, ffetargetAlign *units, ffeinfoBasictype abt, ffeinfoKindtype akt)
ffetargetAlign ffetarget_align (ffetargetAlign *updated_alignment, ffetargetAlign *updated_modulo, ffetargetOffset offset, ffetargetAlign alignment, ffetargetAlign modulo)
bool ffetarget_character1 (ffetargetCharacter1 *val, ffelexToken character, mallocPool pool)
int ffetarget_cmp_character1 (ffetargetCharacter1 l, ffetargetCharacter1 r)
ffebad ffetarget_concatenate_character1 (ffetargetCharacter1 *res, ffetargetCharacter1 l, ffetargetCharacter1 r, mallocPool pool, ffetargetCharacterSize *len)
ffebad ffetarget_eq_character1 (bool *res, ffetargetCharacter1 l, ffetargetCharacter1 r)
ffebad ffetarget_le_character1 (bool *res, ffetargetCharacter1 l, ffetargetCharacter1 r)
ffebad ffetarget_lt_character1 (bool *res, ffetargetCharacter1 l, ffetargetCharacter1 r)
ffebad ffetarget_ge_character1 (bool *res, ffetargetCharacter1 l, ffetargetCharacter1 r)
ffebad ffetarget_gt_character1 (bool *res, ffetargetCharacter1 l, ffetargetCharacter1 r)
bool ffetarget_iszero_character1 (ffetargetCharacter1 constant)
bool ffetarget_iszero_hollerith (ffetargetHollerith constant)
void ffetarget_layout (const char *error_text UNUSED, ffetargetAlign *alignment, ffetargetAlign *modulo, ffetargetOffset *size, ffeinfoBasictype bt, ffeinfoKindtype kt, ffetargetCharacterSize charsize, ffetargetIntegerDefault num_elements)
ffebad ffetarget_ne_character1 (bool *res, ffetargetCharacter1 l, ffetargetCharacter1 r)
ffebad ffetarget_substr_character1 (ffetargetCharacter1 *res, ffetargetCharacter1 l, ffetargetCharacterSize first, ffetargetCharacterSize last, mallocPool pool, ffetargetCharacterSize *len)
int ffetarget_cmp_hollerith (ffetargetHollerith l, ffetargetHollerith r)
ffebad ffetarget_convert_any_character1_ (char *res, size_t size, ffetargetCharacter1 l)
ffebad ffetarget_convert_any_hollerith_ (char *res, size_t size, ffetargetHollerith l)
ffebad ffetarget_convert_any_typeless_ (char *res, size_t size, ffetargetTypeless l)
ffebad ffetarget_convert_character1_character1 (ffetargetCharacter1 *res, ffetargetCharacterSize size, ffetargetCharacter1 l, mallocPool pool)
ffebad ffetarget_convert_character1_hollerith (ffetargetCharacter1 *res, ffetargetCharacterSize size, ffetargetHollerith l, mallocPool pool)
ffebad ffetarget_convert_character1_integer4 (ffetargetCharacter1 *res, ffetargetCharacterSize size, ffetargetInteger4 l, mallocPool pool)
ffebad ffetarget_convert_character1_logical4 (ffetargetCharacter1 *res, ffetargetCharacterSize size, ffetargetLogical4 l, mallocPool pool)
ffebad ffetarget_convert_character1_typeless (ffetargetCharacter1 *res, ffetargetCharacterSize size, ffetargetTypeless l, mallocPool pool)
ffebad ffetarget_divide_complex1 (ffetargetComplex1 *res, ffetargetComplex1 l, ffetargetComplex1 r)
ffebad ffetarget_divide_complex2 (ffetargetComplex2 *res, ffetargetComplex2 l, ffetargetComplex2 r)
bool ffetarget_hollerith (ffetargetHollerith *val, ffelexToken integer, mallocPool pool)
void ffetarget_integer_bad_magical (ffelexToken t)
void ffetarget_integer_bad_magical_binary (ffelexToken integer, ffelexToken minus)
void ffetarget_integer_bad_magical_precedence (ffelexToken integer, ffelexToken uminus, ffelexToken higher_op)
void ffetarget_integer_bad_magical_precedence_binary (ffelexToken integer, ffelexToken minus, ffelexToken higher_op)
bool ffetarget_integer1 (ffetargetInteger1 *val, ffelexToken integer)
bool ffetarget_integerbinary (ffetargetIntegerDefault *val, ffelexToken integer)
bool ffetarget_integerhex (ffetargetIntegerDefault *val, ffelexToken integer)
bool ffetarget_integeroctal (ffetargetIntegerDefault *val, ffelexToken integer)
ffebad ffetarget_multiply_complex1 (ffetargetComplex1 *res, ffetargetComplex1 l, ffetargetComplex1 r)
ffebad ffetarget_multiply_complex2 (ffetargetComplex2 *res, ffetargetComplex2 l, ffetargetComplex2 r)
ffebad ffetarget_power_complexdefault_integerdefault (ffetargetComplexDefault *res, ffetargetComplexDefault l, ffetargetIntegerDefault r)
ffebad ffetarget_power_complexdouble_integerdefault (ffetargetComplexDouble *res, ffetargetComplexDouble l, ffetargetIntegerDefault r)
ffebad ffetarget_power_integerdefault_integerdefault (ffetargetIntegerDefault *res, ffetargetIntegerDefault l, ffetargetIntegerDefault r)
ffebad ffetarget_power_realdefault_integerdefault (ffetargetRealDefault *res, ffetargetRealDefault l, ffetargetIntegerDefault r)
ffebad ffetarget_power_realdouble_integerdefault (ffetargetRealDouble *res, ffetargetRealDouble l, ffetargetIntegerDefault r)
void ffetarget_print_binary (FILE *f, ffetargetTypeless value)
void ffetarget_print_character1 (FILE *f, ffetargetCharacter1 value)
void ffetarget_print_hollerith (FILE *f, ffetargetHollerith value)
void ffetarget_print_octal (FILE *f, ffetargetTypeless value)
void ffetarget_print_hex (FILE *f, ffetargetTypeless value)
bool ffetarget_real1 (ffetargetReal1 *value, ffelexToken integer, ffelexToken decimal, ffelexToken fraction, ffelexToken exponent, ffelexToken exponent_sign, ffelexToken exponent_digits)
bool ffetarget_real2 (ffetargetReal2 *value, ffelexToken integer, ffelexToken decimal, ffelexToken fraction, ffelexToken exponent, ffelexToken exponent_sign, ffelexToken exponent_digits)
bool ffetarget_typeless_binary (ffetargetTypeless *xvalue, ffelexToken token)
bool ffetarget_typeless_octal (ffetargetTypeless *xvalue, ffelexToken token)
bool ffetarget_typeless_hex (ffetargetTypeless *xvalue, ffelexToken token)
void ffetarget_verify_character1 (mallocPool pool, ffetargetCharacter1 val)
voidffetarget_memcpy_ (void *dst, void *src, size_t len)
int ffetarget_num_digits_ (ffelexToken token)

Variables

char ffetarget_string_ [40]
HOST_WIDE_INT ffetarget_long_val_
HOST_WIDE_INT ffetarget_long_junk_


Define Documentation

#define dotok (  )     if (x != NULL) ++sz;

#define dotok (  )     if (x != NULL) ++sz;

Referenced by ffetarget_real1(), and ffetarget_real2().

#define dotoktxt (  ) 

Value:

if (x != NULL)           \
      {              \
      for (q = ffelex_token_text(x); *q != '\0'; ++q)  \
        *p++ = *q;             \
      }

#define dotoktxt (  )     if (x != NULL) sz += ffelex_token_length(x)

#define dotoktxt (  ) 

Value:

if (x != NULL)           \
      {              \
      for (q = ffelex_token_text(x); *q != '\0'; ++q)  \
        *p++ = *q;             \
      }

#define dotoktxt (  )     if (x != NULL) sz += ffelex_token_length(x)

Referenced by ffetarget_real1(), and ffetarget_real2().

#define dotoktxtexp (  ) 

Value:

if (x != NULL)               \
      {                  \
      *p++ = 'E';                \
      for (q = ffelex_token_text(x) + 1; *q != '\0'; ++q)  \
        *p++ = *q;                 \
      }

Referenced by ffetarget_real2().

#define FFETARGET_ATOF_ ( p,
 )     atof ((p))

Definition at line 110 of file target.c.

Referenced by ffetarget_real1(), and ffetarget_real2().


Function Documentation

void ffetarget_aggregate_info ( ffeinfoBasictype ebt,
ffeinfoKindtype ekt,
ffetargetAlign units,
ffeinfoBasictype  abt,
ffeinfoKindtype  akt 
)

ffetargetAlign ffetarget_align ( ffetargetAlign updated_alignment,
ffetargetAlign updated_modulo,
ffetargetOffset  offset,
ffetargetAlign  alignment,
ffetargetAlign  modulo 
)

Definition at line 203 of file target.c.

References assert, and i.

Referenced by ffeequiv_layout_cblock(), ffeequiv_layout_local_(), and ffestorag_exec_layout().

bool ffetarget_character1 ( ffetargetCharacter1 val,
ffelexToken  character,
mallocPool  pool 
)

int ffetarget_cmp_character1 ( ffetargetCharacter1  l,
ffetargetCharacter1  r 
)

int ffetarget_cmp_hollerith ( ffetargetHollerith  l,
ffetargetHollerith  r 
)

ffebad ffetarget_concatenate_character1 ( ffetargetCharacter1 res,
ffetargetCharacter1  l,
ffetargetCharacter1  r,
mallocPool  pool,
ffetargetCharacterSize len 
)

ffebad ffetarget_convert_any_character1_ ( char *  res,
size_t  size,
ffetargetCharacter1  l 
)

Definition at line 575 of file target.c.

References i, _ffetarget_char_1_::length, memcpy, memset, p, and _ffetarget_char_1_::text.

ffebad ffetarget_convert_any_hollerith_ ( char *  res,
size_t  size,
ffetargetHollerith  l 
)

Definition at line 600 of file target.c.

References i, _ffetarget_hollerith_::length, memcpy, memset, p, and _ffetarget_hollerith_::text.

ffebad ffetarget_convert_any_typeless_ ( char *  res,
size_t  size,
ffetargetTypeless  l 
)

Definition at line 625 of file target.c.

References abort, assert, i, l1, l2, l4, memcpy, memset, NULL, and p.

ffebad ffetarget_convert_character1_character1 ( ffetargetCharacter1 res,
ffetargetCharacterSize  size,
ffetargetCharacter1  l,
mallocPool  pool 
)

ffebad ffetarget_convert_character1_hollerith ( ffetargetCharacter1 res,
ffetargetCharacterSize  size,
ffetargetHollerith  l,
mallocPool  pool 
)

ffebad ffetarget_convert_character1_integer4 ( ffetargetCharacter1 res,
ffetargetCharacterSize  size,
ffetargetInteger4  l,
mallocPool  pool 
)

ffebad ffetarget_convert_character1_logical4 ( ffetargetCharacter1 res,
ffetargetCharacterSize  size,
ffetargetLogical4  l,
mallocPool  pool 
)

ffebad ffetarget_convert_character1_typeless ( ffetargetCharacter1 res,
ffetargetCharacterSize  size,
ffetargetTypeless  l,
mallocPool  pool 
)

ffebad ffetarget_divide_complex1 ( ffetargetComplex1 res,
ffetargetComplex1  l,
ffetargetComplex1  r 
)

ffebad ffetarget_divide_complex2 ( ffetargetComplex2 res,
ffetargetComplex2  l,
ffetargetComplex2  r 
)

ffebad ffetarget_eq_character1 ( bool res,
ffetargetCharacter1  l,
ffetargetCharacter1  r 
)

Definition at line 374 of file target.c.

References assert, _ffetarget_char_1_::length, memcmp, and _ffetarget_char_1_::text.

Referenced by ffeexpr_collapse_eq().

ffebad ffetarget_ge_character1 ( bool res,
ffetargetCharacter1  l,
ffetargetCharacter1  r 
)

Definition at line 419 of file target.c.

References assert, _ffetarget_char_1_::length, memcmp, and _ffetarget_char_1_::text.

Referenced by ffeexpr_collapse_ge().

ffebad ffetarget_gt_character1 ( bool res,
ffetargetCharacter1  l,
ffetargetCharacter1  r 
)

Definition at line 434 of file target.c.

References assert, _ffetarget_char_1_::length, memcmp, and _ffetarget_char_1_::text.

Referenced by ffeexpr_collapse_gt().

bool ffetarget_hollerith ( ffetargetHollerith val,
ffelexToken  integer,
mallocPool  pool 
)

bool ffetarget_integer1 ( ffetargetInteger1 val,
ffelexToken  integer 
)

void ffetarget_integer_bad_magical ( ffelexToken  t  ) 

void ffetarget_integer_bad_magical_binary ( ffelexToken  integer,
ffelexToken  minus 
)

void ffetarget_integer_bad_magical_precedence ( ffelexToken  integer,
ffelexToken  uminus,
ffelexToken  higher_op 
)

void ffetarget_integer_bad_magical_precedence_binary ( ffelexToken  integer,
ffelexToken  minus,
ffelexToken  higher_op 
)

bool ffetarget_integerbinary ( ffetargetIntegerDefault val,
ffelexToken  integer 
)

bool ffetarget_integerhex ( ffetargetIntegerDefault val,
ffelexToken  integer 
)

bool ffetarget_integeroctal ( ffetargetIntegerDefault val,
ffelexToken  integer 
)

bool ffetarget_iszero_character1 ( ffetargetCharacter1  constant  ) 

Definition at line 445 of file target.c.

References FALSE, i, _ffetarget_char_1_::length, _ffetarget_char_1_::text, and TRUE.

Referenced by ffebld_constant_is_zero().

bool ffetarget_iszero_hollerith ( ffetargetHollerith  constant  ) 

Definition at line 457 of file target.c.

References FALSE, i, _ffetarget_hollerith_::length, _ffetarget_hollerith_::text, and TRUE.

Referenced by ffebld_constant_is_zero().

void ffetarget_layout ( const char *error_text  UNUSED,
ffetargetAlign alignment,
ffetargetAlign modulo,
ffetargetOffset size,
ffeinfoBasictype  bt,
ffeinfoKindtype  kt,
ffetargetCharacterSize  charsize,
ffetargetIntegerDefault  num_elements 
)

ffebad ffetarget_le_character1 ( bool res,
ffetargetCharacter1  l,
ffetargetCharacter1  r 
)

Definition at line 389 of file target.c.

References assert, _ffetarget_char_1_::length, memcmp, and _ffetarget_char_1_::text.

Referenced by ffeexpr_collapse_le().

ffebad ffetarget_lt_character1 ( bool res,
ffetargetCharacter1  l,
ffetargetCharacter1  r 
)

Definition at line 404 of file target.c.

References assert, _ffetarget_char_1_::length, memcmp, and _ffetarget_char_1_::text.

Referenced by ffeexpr_collapse_lt().

void* ffetarget_memcpy_ ( void dst,
void src,
size_t  len 
)

Definition at line 2521 of file target.c.

References BYTES_BIG_ENDIAN, HOST_WORDS_BIG_ENDIAN, memcpy, sorry(), and WORDS_BIG_ENDIAN.

ffebad ffetarget_multiply_complex1 ( ffetargetComplex1 res,
ffetargetComplex1  l,
ffetargetComplex1  r 
)

ffebad ffetarget_multiply_complex2 ( ffetargetComplex2 res,
ffetargetComplex2  l,
ffetargetComplex2  r 
)

ffebad ffetarget_ne_character1 ( bool res,
ffetargetCharacter1  l,
ffetargetCharacter1  r 
)

Definition at line 516 of file target.c.

References assert, _ffetarget_char_1_::length, memcmp, and _ffetarget_char_1_::text.

Referenced by ffeexpr_collapse_ne().

int ffetarget_num_digits_ ( ffelexToken  token  ) 

ffebad ffetarget_power_complexdefault_integerdefault ( ffetargetComplexDefault res,
ffetargetComplexDefault  l,
ffetargetIntegerDefault  r 
)

ffebad ffetarget_power_complexdouble_integerdefault ( ffetargetComplexDouble res,
ffetargetComplexDouble  l,
ffetargetIntegerDefault  r 
)

ffebad ffetarget_power_integerdefault_integerdefault ( ffetargetIntegerDefault res,
ffetargetIntegerDefault  l,
ffetargetIntegerDefault  r 
)

Definition at line 1929 of file target.c.

Referenced by ffedata_eval_integer1_(), and ffeexpr_collapse_power().

ffebad ffetarget_power_realdefault_integerdefault ( ffetargetRealDefault res,
ffetargetRealDefault  l,
ffetargetIntegerDefault  r 
)

ffebad ffetarget_power_realdouble_integerdefault ( ffetargetRealDouble res,
ffetargetRealDouble  l,
ffetargetIntegerDefault  r 
)

void ffetarget_print_binary ( FILE f,
ffetargetTypeless  value 
)

Definition at line 2106 of file target.c.

References ARRAY_SIZE, CHAR_BIT, dmpout, fputs(), NULL, and p.

static void ffetarget_print_char_ ( FILE f,
unsigned char  c 
) [static]

Definition at line 121 of file target.c.

References fprintf(), fputc(), fputs(), and ISPRINT.

Referenced by ffetarget_print_character1(), and ffetarget_print_hollerith().

void ffetarget_print_character1 ( FILE f,
ffetargetCharacter1  value 
)

void ffetarget_print_hex ( FILE f,
ffetargetTypeless  value 
)

Definition at line 2190 of file target.c.

References ARRAY_SIZE, CHAR_BIT, dmpout, fputs(), NULL, and p.

void ffetarget_print_hollerith ( FILE f,
ffetargetHollerith  value 
)

void ffetarget_print_octal ( FILE f,
ffetargetTypeless  value 
)

Definition at line 2165 of file target.c.

References ARRAY_SIZE, CHAR_BIT, dmpout, fputs(), NULL, and p.

bool ffetarget_real1 ( ffetargetReal1 value,
ffelexToken  integer,
ffelexToken  decimal,
ffelexToken  fraction,
ffelexToken  exponent,
ffelexToken  exponent_sign,
ffelexToken  exponent_digits 
)

bool ffetarget_real2 ( ffetargetReal2 value,
ffelexToken  integer,
ffelexToken  decimal,
ffelexToken  fraction,
ffelexToken  exponent,
ffelexToken  exponent_sign,
ffelexToken  exponent_digits 
)

ffebad ffetarget_substr_character1 ( ffetargetCharacter1 res,
ffetargetCharacter1  l,
ffetargetCharacterSize  first,
ffetargetCharacterSize  last,
mallocPool  pool,
ffetargetCharacterSize len 
)

bool ffetarget_typeless_binary ( ffetargetTypeless xvalue,
ffelexToken  token 
)

bool ffetarget_typeless_hex ( ffetargetTypeless xvalue,
ffelexToken  token 
)

bool ffetarget_typeless_octal ( ffetargetTypeless xvalue,
ffelexToken  token 
)

void ffetarget_verify_character1 ( mallocPool  pool,
ffetargetCharacter1  val 
)


Variable Documentation

HOST_WIDE_INT ffetarget_long_junk_

Definition at line 84 of file target.c.

HOST_WIDE_INT ffetarget_long_val_

Definition at line 83 of file target.c.

Definition at line 82 of file target.c.

Referenced by ffetarget_real1(), and ffetarget_real2().


Generated on Wed Apr 8 15:50:06 2009 for Open64 by  doxygen 1.5.6