示例#1
0
extern  void    DataBytes( unsigned_32 len, const void *src ) {
/*************************************************************/

    TellOptimizerByPassed();
    ObjBytes( src, len );
    TellByPassOver();
}
示例#2
0
extern  void    DataLong( unsigned_32 val )
/*****************************************/
{
    TellOptimizerByPassed();
    ObjBytes( &val, sizeof( val ) );
    TellByPassOver();
}
示例#3
0
void    DataLong( unsigned_32 val )
/*********************************/
{
    TellOptimizerByPassed();
    SetUpObj( true );
    OutDataLong( val );
    TellByPassOver();
}
示例#4
0
void    DataShort( unsigned_16 val )
/**********************************/
{
    TellOptimizerByPassed();
    SetUpObj( true );
    OutDataShort( val );
    TellByPassOver();
}
示例#5
0
void    DoBigBckPtr( back_handle bck, offset off )
/*****************************************************/
/* Careful! Make sure a DGLabel has been done first! */
{
    TellOptimizerByPassed();
    DoLblPtr( bck->lbl, bck->seg, F_PTR, off );
    TellByPassOver();
}
示例#6
0
void    IterBytes( offset len, byte pat )
/***************************************/
{
    TellOptimizerByPassed();
    SetUpObj( true );
    OutIBytes( pat, len );
    TellByPassOver();
}
示例#7
0
extern  void    BackPtrBase( back_handle bck, segment_id seg )
/************************************************************/
{
    TellOptimizerByPassed();
    OutSegReloc( bck->lbl, seg );
    ObjBytes( "\0\0", 2 );
    TellByPassOver();
}
示例#8
0
extern  void    IterBytes( offset len, byte pat ) {
/***********************************************/

    TellOptimizerByPassed();
    SetUpObj( TRUE );
    OutIBytes( pat, len );
    TellByPassOver();
}
示例#9
0
extern  void    BackBigOffset( back_handle bck, segment_id seg, offset plus )
/***************************************************************************/
{
    seg = seg;
    TellOptimizerByPassed();
    OutReloc( bck->lbl, OWL_RELOC_WORD, 0 );
    ObjBytes( &plus, 4 );
    TellByPassOver();
}
示例#10
0
extern  void    BackPtr( back_handle bck, segment_id seg, offset plus, type_def *tipe )
/*************************************************************************************/
{
    seg = seg; tipe = tipe;
    assert( tipe->length == 4 );
    TellOptimizerByPassed();
    OutReloc( bck->lbl, OWL_RELOC_WORD, 0 );
    ObjBytes( &plus, 4 );
    TellByPassOver();
}
示例#11
0
void    DataBytes( unsigned len, const void *src )
/************************************************/
{
    if( len != 0 ){
        TellOptimizerByPassed();
        SetUpObj( true );
        OutDBytes( len, src );
        TellByPassOver();
    }
}
示例#12
0
extern  void    FEPtr( cg_sym_handle sym, type_def *tipe, offset plus ) {
/*******************************************************************/

    tipe = tipe;
    assert( tipe->length == 4 );
    TellOptimizerByPassed();
    OutReloc( FEBack( sym )->lbl, OWL_RELOC_WORD, 0 );
    ObjBytes( &plus, 4 );
    TellByPassOver();
}
示例#13
0
extern  void    DataBytes( unsigned len, const void *src ) {
/**********************************************************/

    if( len != 0 ){
        TellOptimizerByPassed();
        SetUpObj( TRUE );
        OutDBytes( len, src );
        TellByPassOver();
    }
}
示例#14
0
extern  void    FEPtrBase( cg_sym_handle sym )
/*****************************************/
{
    segment_id          seg;

    TellOptimizerByPassed();
    seg = FESegID( sym );
    OutSegReloc( FEBack( sym )->lbl, seg );
    ObjBytes( "\0\0", 2 );
    TellByPassOver();
}
示例#15
0
extern  void    FEPtrBaseOffset( cg_sym_handle sym,  offset plus ) {
/***************************************************************/
    back_handle     bck;
//    segment_id          seg;

    TellOptimizerByPassed();
    bck = FEBack( sym );
//    seg = FESegID( sym );
    OutReloc( bck->lbl, OWL_RELOC_SECTION_INDEX, 0 );
    ObjBytes( &plus, 4 );
//    OutSegReloc( bck->lbl, seg );
    OutReloc( bck->lbl, OWL_RELOC_SECTION_OFFSET, 0 );
    ObjBytes( "\0\0", 2 );
    TellByPassOver();
}
示例#16
0
extern  void    IterBytes( offset len, byte pat )
/***********************************************/
{
    TellOptimizerByPassed();
    if( len > MAX_HACK_LEN ) {
        byte    *buff;

        buff = CGAlloc( len );
        memset( buff, pat, len );
        ObjBytes( buff, len );
        CGFree( buff );
    } else {
        memset( Buffer, pat, len );
        ObjBytes( Buffer, len );
    }
    TellByPassOver();
}
示例#17
0
extern  void    DataLabel( label_handle lbl ) {
/*********************************************/
    TellOptimizerByPassed();
    OutLabel( lbl );
    TellByPassOver();
}