e576bb2002-10-11Martin Nilsson /* || 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. */
1b10db2002-10-08Martin Nilsson 
2199ed1996-04-13Fredrik Hübinette (Hubbe) #ifndef PEEP_H #define PEEP_H
2423102016-12-29Arne Goedeke #include "buffer.h" extern struct byte_buffer instrbuf;
2199ed1996-04-13Fredrik Hübinette (Hubbe) 
928f952000-11-30Fredrik Hübinette (Hubbe) struct p_instr_s { short opcode;
ef24a82012-01-12Henrik Grubbström (Grubba)  INT_TYPE line;
928f952000-11-30Fredrik Hübinette (Hubbe)  struct pike_string *file; INT32 arg; INT32 arg2; }; typedef struct p_instr_s p_instr;
2199ed1996-04-13Fredrik Hübinette (Hubbe) /* Prototypes begin here */
be478c1997-08-30Henrik Grubbström (Grubba) void init_bytecode(void); void exit_bytecode(void);
7a35a42000-08-14Henrik Grubbström (Grubba) ptrdiff_t insert_opcode2(unsigned int f,
fd7b9b2002-11-01Henrik Grubbström (Grubba)  INT32 a,
7a35a42000-08-14Henrik Grubbström (Grubba)  INT32 b,
ef24a82012-01-12Henrik Grubbström (Grubba)  INT_TYPE current_line,
7a35a42000-08-14Henrik Grubbström (Grubba)  struct pike_string *current_file); ptrdiff_t insert_opcode1(unsigned int f,
fd7b9b2002-11-01Henrik Grubbström (Grubba)  INT32 a,
ef24a82012-01-12Henrik Grubbström (Grubba)  INT_TYPE current_line,
7a35a42000-08-14Henrik Grubbström (Grubba)  struct pike_string *current_file);
ef24a82012-01-12Henrik Grubbström (Grubba) ptrdiff_t insert_opcode0(int f, INT_TYPE current_line,
fd7b9b2002-11-01Henrik Grubbström (Grubba)  struct pike_string *current_file);
2199ed1996-04-13Fredrik Hübinette (Hubbe) void update_arg(int instr,INT32 arg);
ee6a782003-11-19Henrik Grubbström (Grubba) INT32 assemble(int store_linenumbers);
2199ed1996-04-13Fredrik Hübinette (Hubbe) /* Prototypes end here */ #endif