pike.git / src / code / sparc.c

version» Context lines:

pike.git/src/code/sparc.c:1:   /*   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: sparc.c,v 1.31 2002/11/11 12:34:17 grubba Exp $ + || $Id: sparc.c,v 1.32 2002/11/11 12:58:39 grubba Exp $   */      /*    * Machine code generator for sparc.    *    * Henrik Grubbström 20010720    */      #include "global.h"   #include "svalue.h"
pike.git/src/code/sparc.c:127:      #define SPARC_SETHI(D, VAL) \    add_to_program(0x01000000|((D)<<25)|(((VAL)>>10)&0x3fffff))      #define SPARC_BE(DISP22, A) \    add_to_program(0x02800000|((A)<<29)|(((DISP22)>>2)&0x1fffff))      #define SPARC_BNE(DISP22, A) \    add_to_program(0x12800000|((A)<<29)|(((DISP22)>>2)&0x1fffff))    + #define SPARC_CALL(DISP30) \ +  add_to_program(0x40000000 | (((DISP30) >> 2) & 0x3fffffff)) +  +    #define SET_REG(REG, X) do { \    INT32 val_ = X; \    INT32 reg_ = REG; \    if ((-4096 <= val_) && (val_ <= 4095)) { \    /* or %g0, val_, reg */ \    SPARC_OR(reg_, SPARC_REG_G0, val_, 1); \    } else { \    /* sethi %hi(val_), reg */ \    SPARC_SETHI(reg_, val_); \    if (val_ & 0x3ff) { \