Example #1
0
pch_status PCHInitRewrites( bool writing )
{
    if( writing ) {
        PCHWriteCVIndex( CarveLastValidIndex( carveREWRITE ) );
        PCHWriteCVIndex( CarveLastValidIndex( carveREWRITE_TOKENS ) );
        PCHWriteCVIndex( CarveLastValidIndex( carveSRCFILE_HANDLE ) );
    } else {
        carveREWRITE = CarveRestart( carveREWRITE );
        CarveMapOptimize( carveREWRITE, PCHReadCVIndex() );
        carveREWRITE_TOKENS = CarveRestart( carveREWRITE_TOKENS );
        CarveMapOptimize( carveREWRITE_TOKENS, PCHReadCVIndex() );
        carveSRCFILE_HANDLE = CarveRestart( carveSRCFILE_HANDLE );
        CarveMapOptimize( carveSRCFILE_HANDLE, PCHReadCVIndex() );
    }
    return( PCHCB_OK );
}
Example #2
0
pch_status PCHInitConstantPool( bool writing )
{
    if( writing ) {
        PCHWriteCVIndex( CarveLastValidIndex( carvePOOL_CON ) );
    } else {
        carvePOOL_CON = CarveRestart( carvePOOL_CON );
        CarveMapOptimize( carvePOOL_CON, PCHReadCVIndex() );
    }
    return( PCHCB_OK );
}
Example #3
0
pch_status PCHInitTypeSigs( bool writing )
{
    if( writing ) {
        PCHWriteCVIndex( CarveLastValidIndex( carveTYPE_SIG ) );
    } else {
        carveTYPE_SIG = CarveRestart( carveTYPE_SIG );
        CarveMapOptimize( carveTYPE_SIG, PCHReadCVIndex() );
    }
    return( PCHCB_OK );
}
Example #4
0
pch_status PCHInitTokenLocns( bool writing )
{
    if( writing ) {
        PCHWriteCVIndex( CarveLastValidIndex( carveSYMBOL_LOCN ) );
    } else {
        carveSYMBOL_LOCN = CarveRestart( carveSYMBOL_LOCN );
        CarveMapOptimize( carveSYMBOL_LOCN, PCHReadCVIndex() );
    }
    return( PCHCB_OK );
}
Example #5
0
pch_status PCHReadTypeSigs( void )
{
    TYPE_SIG *s;
    auto cvinit_t data;

    type_sigs = TypeSigMapIndex( (TYPE_SIG *)PCHReadCVIndex() );
    CarveInitStart( carveTYPE_SIG, &data );
    for( ; (s = PCHReadCVIndexElement( &data )) != NULL; ) {
        PCHReadVar( *s );
        s->next = TypeSigMapIndex( s->next );
        s->base = TypeSigMapIndex( s->base );
        s->type = TypeMapIndex( s->type );
        s->sym = SymbolMapIndex( s->sym );
        s->dtor = SymbolMapIndex( s->dtor );
        s->default_ctor = SymbolMapIndex( s->default_ctor );
        s->copy_ctor = SymbolMapIndex( s->copy_ctor );
    }
    return( PCHCB_OK );
}