object.c
/*
 *  emitFieldEnd - complete the emission of a field of bits
 */
complete the emission of a field of bits
complete the emission of a field of bits
void emitFieldEnd(Section *section) {
    int lastBitPos;
    int lastCol;
    int len;
    int shiftCount;
    u64 subfield;
    len = section->wordBitPosCounter - fieldStartingBitPos;
    if (len > 0) {
        lastCol = (section->wordBitPosCounter + 1) / 3;
        subfield = extractSubfield(getWord(section, section->originCounter), fieldStartingBitPos, len);
        lastBitPos = (section->wordBitPosCounter - 1) % 3;
        if (lastBitPos > 0) {
            shiftCount = 3 - lastBitPos;
            subfield <<= shiftCount;
            len += shiftCount;
        }
        listField(subfield, len, fieldAttributes, lastCol);
    }
}
void emitFieldEnd ( Section * section ) { int lastBitPos ; int lastCol ; int len ; int shiftCount ; u64 subfield ; len = section -> wordBitPosCounter - fieldStartingBitPos ; if ( len > 0 ) { lastCol = ( section -> wordBitPosCounter + 1 ) / 3 ; subfield = extractSubfield ( getWord ( section , section -> originCounter ) , fieldStartingBitPos , len ) ; lastBitPos = ( section -> wordBitPosCounter - 1 ) % 3 ; if ( lastBitPos > 0 ) { shiftCount = 3 - lastBitPos ; subfield <<= shiftCount ; len += shiftCount ; } listField ( subfield , len , fieldAttributes , lastCol ) ; } }
emitFieldEnd - complete the emission of a field of bits
emitFieldEnd - complete the emission of a field of bits