Annotation of cci/usr/src/usr.bin/cdb/transBsd/misc.c, revision 1.1.1.1

1.1       root        1: /* $Header: misc.c,v 1.1 86/03/24 16:19:21 rcs Exp $ */
                      2: /* (C) Copyright 1985 Third Eye Software, Inc. - All Rights Reserved */
                      3: 
                      4: #include "tes42.h"
                      5: 
                      6: 
                      7: /* D O   R   B R A C */
                      8: 
                      9: export void DoRBrac(nlist)
                     10: pNLISTR        nlist;
                     11: {
                     12:     pSYMR      symEnd, symStart;
                     13: 
                     14:     symEnd = SymFInsert();
                     15:     symEnd->st = stEnd;
                     16:     symEnd->sc = scText;
                     17:     symEnd->value = vrgFd[vifd].adr + nlist->n_value;
                     18:     if (symEnd->value < vdot) {
                     19:        if (vfWarn)
                     20:           printf("Warning: incorrect address in RBRAC symbol: %d, %lx < %lx\n",
                     21:                    visym, symEnd->value, vdot);
                     22:            symEnd->value = vdot;
                     23:     } /* if */
                     24:     symStart = vrgSymBrac[nlist->n_desc];
                     25:     symEnd->index = IsymFSym(symStart);
                     26:     symStart->index = IsymFSym(symEnd) + 1;
                     27:     if (symStart->value > symEnd->value) {
                     28:        if (vfWarn)
                     29:           printf("Warning: incorrect address in LBRAC symbol: %d, %lx > %lx\n",
                     30:                    symEnd->index, symStart->value, symEnd->value);
                     31:        symStart->value = vsymProc->value;
                     32:     } /* if */
                     33:     vdot = symEnd->value;
                     34: } /* DoRBrac */
                     35: 
                     36: 
                     37: /* D O   L   B R A C */
                     38: 
                     39: export void DoLBrac(nlist)
                     40: pNLISTR        nlist;
                     41: {
                     42:     pSYMR      sym;
                     43:     LINER      aline;
                     44: 
                     45:     if (vfBlockPending) {
                     46:        sym = vsymBlock;
                     47:        vfBlockPending = false;
                     48:     } else {
                     49:        sym = SymFInsert();
                     50:     } /* if */
                     51:     sym->st = stBlock;
                     52:     sym->sc = scText;
                     53:     sym->value = vrgFd[vifd].adr + nlist->n_value;
                     54:     if (sym->value < vdot)
                     55:        printf("Warning: incorrect address in RBRAC symbol: %d, %lx < %lx\n",
                     56:                visym, sym->value, vdot);
                     57:     vdot = sym->value;
                     58:     vrgSymBrac[nlist->n_desc] = sym;
                     59: } /* DoLBrac */
                     60: 
                     61: 
                     62: /* F   C O M P L E X   B T */
                     63: 
                     64: FComplexBt(bt)
                     65: int    bt;
                     66: {
                     67:     switch (bt) {
                     68:        case btUnion:
                     69:        case btStruct:
                     70:        case btEnum:
                     71:        case btTypedef:
                     72:            return(true);
                     73: 
                     74:     default:
                     75:            return(false);
                     76:     } /* switch */
                     77: } /* FComplexBt */
                     78: 
                     79: 
                     80: /* F I N D   C */
                     81: 
                     82: export char * FindC(src, ch)
                     83: register char  *src;
                     84: register char  ch;
                     85: {
                     86:     while (*src && *src != ch)
                     87:        src++;
                     88: 
                     89:     return(src);
                     90: } /* FindC */
                     91: 
                     92: 
                     93: /* P A N I C */
                     94: 
                     95: export void panic(sb, arg)
                     96: char   *sb;
                     97: int    arg;
                     98: {
                     99:     int        *args = &arg;
                    100: 
                    101:     fprintf(stderr, sb, args[0], args[1], args[2], args[3], args[4]);
                    102:     exit(1);
                    103: } /* panic */
                    104: 
                    105: 
                    106: /* M A X */
                    107: 
                    108: export int Max(a, b)
                    109: int    a, b;
                    110: {
                    111:     return((a > b) ? a : b );
                    112: } /* Max */
                    113: 
                    114: 
                    115: /* C O P Y   B L O C K */
                    116: 
                    117: export void CopyBlock(dest, src, size)
                    118: register char  *dest;
                    119: register char  *src;
                    120: register int   size;
                    121: {
                    122:     while (size--)
                    123:        *(dest++) = *(src++);
                    124: } /* CopyBlock */
                    125: 
                    126: 
                    127: #ifndef BSD
                    128: /* Z E R O   B L O C K */
                    129: 
                    130: export void ZeroBlock(src, size)
                    131: register char  *src;
                    132: register int   size;
                    133: {
                    134:     while (size--)
                    135:        *(src++) = 0;
                    136: } /* ZeroBlock */
                    137: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.