Author: leo
Date: Wed Oct 12 06:17:05 2005
New Revision: 9467
Modified:
trunk/include/parrot/interpreter.h
trunk/src/generic_register.c
Log:
Variable-sized reg frames 4a - remove SLIDING_BP define
* unused and will not be used
Modified: trunk/include/parrot/interpreter.h
==============================================================================
--- trunk/include/parrot/interpreter.h (original)
+++ trunk/include/parrot/interpreter.h Wed Oct 12 06:17:05 2005
@@ -163,19 +163,10 @@ struct _imc_info_t;
* of a continuation by restoring the interpreter context.
*/
struct parrot_regs_t {
-#ifdef SLIDING_BP
- struct {
- INTVAL int_reg;
- FLOATVAL num_reg;
- STRING * string_reg;
- PMC * pmc_reg;
- } registers[32];
-#else
struct IReg int_reg;
struct NReg num_reg;
struct SReg string_reg;
struct PReg pmc_reg;
-#endif /* SLIDING_BP */
};
struct Parrot_Context {
@@ -364,20 +355,6 @@ typedef enum {
* Macros to make accessing registers more convenient/readable.
*/
-#ifdef SLIDING_BP
-
-# define INTERP_REG_INT(i, x) i->ctx.bp->registers[x].int_reg
-# define INTERP_REG_NUM(i, x) i->ctx.bp->registers[x].num_reg
-# define INTERP_REG_STR(i, x) i->ctx.bp->registers[x].string_reg
-# define INTERP_REG_PMC(i, x) i->ctx.bp->registers[x].pmc_reg
-
-# define BP_REG_INT(bp, x) bp->registers[x].int_reg
-# define BP_REG_NUM(bp, x) bp->registers[x].num_reg
-# define BP_REG_STR(bp, x) bp->registers[x].string_reg
-# define BP_REG_PMC(bp, x) bp->registers[x].pmc_reg
-
-#else
-
# define INTERP_REG_INT(i, x) i->ctx.bp->int_reg.registers[x]
# define INTERP_REG_NUM(i, x) i->ctx.bp->num_reg.registers[x]
# define INTERP_REG_STR(i, x) i->ctx.bp->string_reg.registers[x]
@@ -388,8 +365,6 @@ typedef enum {
# define BP_REG_STR(bp, x) (bp)->string_reg.registers[x]
# define BP_REG_PMC(bp, x) (bp)->pmc_reg.registers[x]
-#endif /* SLIDING_BP */
-
#define REG_BASE struct parrot_regs_t
/*
@@ -408,17 +383,10 @@ typedef enum {
*/
-#ifdef SLIDING_BP
-# define REG_OFFS_INT(x) offsetof(REG_BASE, registers[x].int_reg)
-# define REG_OFFS_NUM(x) offsetof(REG_BASE, registers[x].num_reg)
-# define REG_OFFS_STR(x) offsetof(REG_BASE, registers[x].string_reg)
-# define REG_OFFS_PMC(x) offsetof(REG_BASE, registers[x].pmc_reg)
-#else
# define REG_OFFS_INT(x) offsetof(REG_BASE, int_reg.registers[x])
# define REG_OFFS_NUM(x) offsetof(REG_BASE, num_reg.registers[x])
# define REG_OFFS_STR(x) offsetof(REG_BASE, string_reg.registers[x])
# define REG_OFFS_PMC(x) offsetof(REG_BASE, pmc_reg.registers[x])
-#endif /* SLIDING_BP */
#define PCONST(i) PF_CONST(interpreter->code, (i))
#define PNCONST PF_NCONST(interpreter->code)
Modified: trunk/src/generic_register.c
==============================================================================
--- trunk/src/generic_register.c (original)
+++ trunk/src/generic_register.c Wed Oct 12 06:17:05 2005
@@ -87,11 +87,7 @@ REG_CLEAR(Interp *interpreter)
{
int i;
for (i = 0; i < NUM_REGISTERS; i++) {
-#ifdef SLIDING_BP
- interpreter->ctx.bp->registers[i].REG_TYPE = REG_NULL;
-#else
interpreter->ctx.bp->REG_TYPE.registers[i] = REG_NULL;
-#endif
}
}