Changeset 230 in svn


Ignore:
Timestamp:
2006-10-10T00:31:50Z (9 years ago)
Author:
Xuefer
Message:

processor: dprint upgrade, added --enable-xcache-dprint

Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/config.m4

    r186 r230  
    5757  fi
    5858  PHP_SUBST([XCACHE_ENABLE_TEST])
     59
     60  PHP_ARG_ENABLE(xcache-dprint, for XCache self test,
     61  [  --enable-xcache-dprint          XCache: Enable debug print functions - FOR DEVELOPERS ONLY!!], no, no)
     62  if test "$PHP_XCACHE_DPRINT" != "no"; then
     63    AC_DEFINE([HAVE_XCACHE_DPRINT], 1, [Define to enable XCache debug print functions])
     64  fi
    5965
    6066  AC_PATH_PROGS([AWK], [gawk awk])
  • trunk/config.w32

    r148 r230  
    119119        ADD_FLAG("XCACHE_ENABLE_TEST", "");
    120120    }
    121 
     121    // }}}
    122122    XCACHE_PROC_SOURCES=glob(srcdir + "\\processor\\*.m4").join(' ');
    123123    ADD_FLAG("XCACHE_PROC_SOURCES", XCACHE_PROC_SOURCES);
     124    // {{{ check for xcache-test
     125    ARG_ENABLE("xcache-dprint", "XCache: Enable self debug print functions - FOR DEVELOPERS ONLY!!", "no");
     126    if (PHP_XCACHE_TEST != "no") {
     127        AC_DEFINE("HAVE_XCACHE_TEST", 1, "Define to enable XCache debug print functions");
     128    }
    124129    // }}}
    125130    // {{{ check for opcode_spec_def.h
  • trunk/processor/hashtable.m4

    r200 r230  
    119119                dst->arBuckets[n] = pnew;
    120120            ')
     121            IFDPRINT(`
     122                INDENT()
     123                fprintf(stderr, "$2:\"");
     124                xc_dprint_str_len(BUCKET_KEY_S(b), BUCKET_KEY_SIZE(b));
     125                fprintf(stderr, "\" %d:h=%lu", BUCKET_KEY_SIZE(b), b->h);
     126            ')
    121127            if (sizeof(void *) == sizeof($2)) {
    122128                IFCOPY(`pnew->pData = &pnew->pDataPtr;')
  • trunk/processor/head.m4

    r220 r230  
    7777};
    7878/* }}} */
    79 #ifdef XCACHE_HAVE_DPRINT
     79#ifdef HAVE_XCACHE_DPRINT
    8080static void xc_dprint_indent(int indent) /* {{{ */
    8181{
     
    8585    }
    8686}
    87 #endif
    88 /* }}} */
     87/* }}} */
     88static void xc_dprint_str_len(const char *str, int len) /* {{{ */
     89{
     90    const unsigned char *p = str;
     91    int i;
     92    for (i = 0; i < len; i ++) {
     93        if (p[i] < 32 || p[i] == 127) {
     94            fprintf(stderr, "\\%03o", (unsigned int) p[i]);
     95        }
     96        else {
     97            fputc(p[i], stderr);
     98        }
     99    }
     100}
     101/* }}} */
     102#endif
    89103/* {{{ xc_zstrlen_char */
    90104static inline int xc_zstrlen_char(zstr s)
     
    402416/* }}} */
    403417/* export: void xc_dprint(xc_entry_t *src, int indent TSRMLS_DC); :export {{{ */
    404 #ifdef XCACHE_HAVE_DPRINT
     418#ifdef HAVE_XCACHE_DPRINT
    405419void xc_dprint(xc_entry_t *src, int indent TSRMLS_DC) {
    406420    IFDPRINT(`INDENT()`'fprintf(stderr, "xc_entry_t:src");')
  • trunk/processor/processor.m4

    r221 r230  
    196196                dnl fprintf(stderr, "copy from %p to %p\n", src[0], dst[0]);
    197197            ')
     198            IFDPRINT(`INDENT()`'fprintf(stderr, "[%p]", src[0]);')
    198199            STRUCT_P_EX(zval, dst[0], src[0], `[0]', `', ` ')
    199200        } while (0);
     
    747748        }
    748749    ')
     750    IFDPRINT(`INDENT()`'fprintf(stderr, "zval:value");')
    749751    STRUCT_P_EX(zval_ptr, dst->value, src->value, `value', `', `&')
    750752    DONE(value)
  • trunk/processor/string.m4

    r103 r230  
    4141                ZVAL_UNICODEL(&zv, (UChar *) ($2), $3 - 1, 1);
    4242                zend_make_printable_zval(&zv, &reszv, &usecopy);
    43                 fprintf(stderr, "string:%s:\t\"%s\" len=%d\n", "$1", reszv.value.str.val, $3 - 1);
     43                fprintf(stderr, "string:%s:\t\"", "$1");
     44                xc_dprint_str_len(Z_STRVAL(reszv), Z_STRLEN(reszv));
     45                fprintf(stderr, "\" len=%d\n", $3 - 1);
    4446                if (usecopy) {
    4547                    zval_dtor(&reszv);
     
    4951#endif
    5052            ', `
    51             fprintf(stderr, "string:%s:\t\"%s\" len=%d\n", "$1", SRCPTR, $3 - 1);
     53            fprintf(stderr, "string:%s:\t\"", "$1");
     54            xc_dprint_str_len(SRCPTR, $3 - 1);
     55            fprintf(stderr, "\" len=%d\n", $3 - 1);
    5256            ')
    5357        ')
  • trunk/processor/struct.m4

    r178 r230  
    146146    DBG(`$0($*)')
    147147    if (src->$2) {
     148        IFDPRINT(`INDENT()`'fprintf(stderr, "$1:$2");')
    148149        STRUCT_P_EX(`$1', `dst->$2', `src->$2', `$2', `$3')
    149         IFDPRINT(`INDENT()`'fprintf(stderr, "$1:$2");')
    150150    }
    151151    else {
     152        IFDPRINT(`INDENT()`'fprintf(stderr, "$1:$2:\tNULL\n");')
    152153        COPYNULL_EX(`dst->$2', `$2')
    153         IFDPRINT(`INDENT()`'fprintf(stderr, "$1:$2:\tNULL\n");')
    154154    }
    155155    DONE(`$2')
  • trunk/xcache.c

    r227 r230  
    22#if 0
    33#define DEBUG
     4#define SHOW_DPRINT
    45#endif
    56
     
    10151016    xc_redo_pass_two(php.op_array TSRMLS_CC);
    10161017    /* }}} */
     1018#ifdef SHOW_DPRINT
     1019    xc_dprint(&xce, 0 TSRMLS_CC);
     1020#endif
    10171021    ENTER_LOCK_EX(cache) { /* {{{ store/add entry */
    10181022        stored_xce = xc_entry_store_dmz(&xce TSRMLS_CC);
     
    10751079#endif
    10761080    xc_processor_restore_xc_entry_t(&xce, stored_xce, xc_readonly_protection TSRMLS_CC);
     1081#ifdef SHOW_DPRINT
     1082    xc_dprint(&xce, 0 TSRMLS_CC);
     1083#endif
    10771084
    10781085    catched = 0;
Note: See TracChangeset for help on using the changeset viewer.