summaryrefslogtreecommitdiff
path: root/PCode.h
diff options
context:
space:
mode:
Diffstat (limited to 'PCode.h')
-rw-r--r--PCode.h110
1 files changed, 0 insertions, 110 deletions
diff --git a/PCode.h b/PCode.h
deleted file mode 100644
index 601cfdc..0000000
--- a/PCode.h
+++ /dev/null
@@ -1,110 +0,0 @@
-#pragma once
-
-typedef struct _PCodeArg {
- unsigned int _0;
- unsigned int _4;
- unsigned int _8;
-} PCodeArg;
-
-typedef struct _PCode {
- struct _PCode *nextPCode;
- struct _PCode *prevPCode;
- struct _PCBlock *block;
- unsigned int xx_C;
- unsigned int _10;
- int flags;
- unsigned int _18;
- unsigned int _1C;
- short op;
- short argCount;
- PCodeArg args[0];
-} PCode;
-
-typedef struct _PCLabel {
- struct _PCLabel *nextLabel;
- struct _PCBlock *block;
- short resolved;
- short index;
-} PCLabel;
-
-typedef struct _PCLink {
- struct _PCLink *nextLink;
- struct _PCBlock *block;
-} PCLink;
-
-typedef struct _PCBlock {
- struct _PCBlock *nextBlock;
- struct _PCBlock *prevBlock;
- PCLabel *labels;
- PCLink *predecessors;
- PCLink *successors;
- PCode *firstPCode;
- PCode *lastPCode;
- int blockIndex;
- int codeOffset; // in bytes
- int loopWeight;
- short pcodeCount;
- unsigned short flags;
-} PCBlock;
-
-/* PCode Flags */
-enum {
- fPCodeFlag1 = 1,
- fPCodeFlag2 = 2,
- fPCodeFlag4 = 4,
- fPCodeFlag8 = 8,
- fPCodeFlag10 = 0x10,
- fIsPtrOp = 0x20,
- fIsConst = 0x40,
- fIsVolatile = 0x80,
- fSideEffects = 0x100,
- fPCodeFlag200 = 0x200,
- fPCodeFlag400 = 0x400,
- fPCodeFlag800 = 0x800,
- fPCodeFlag1000 = 0x1000,
- fCommutative = 0x2000,
- fIsCSE = 0x4000,
- fOverflow = 0x800000,
- fLink = 0x1000000,
- fBranchNotTaken = 0x4000000,
- fBranchTaken = 0x8000000,
- fAbsolute = 0x10000000,
- fSetsCarry = 0x10000000,
-};
-
-enum {
- fPCBlockFlag1 = 1,
- fPCBlockFlag2 = 2,
- fPCBlockFlag4 = 4,
- fPCBlockFlag8 = 8,
- fPCBlockFlag10 = 0x10,
- fPCBlockFlag20 = 0x20
-};
-
-extern PCBlock *pcbasicblocks;
-extern PCBlock *pclastblock;
-extern void *prologue;
-extern void *epilogue;
-extern PCBlock **depthfirstordering;
-extern int pcblockcount;
-extern int pcloopweight;
-
-extern void initpcode();
-extern PCode *makepcode(short op, ...);
-extern void emitpcode(short op, ...);
-extern PCode *copypcode(PCode *pcode);
-extern PCLabel *makepclabel();
-extern PCBlock *makepcblock();
-extern void pclabel(PCBlock *block, PCLabel *label);
-extern void pcbranch(PCBlock *block, PCLabel *label);
-extern void pccomputepredecessors();
-extern void deleteblock(PCBlock *block);
-extern void deleteunreachableblocks();
-extern void appendpcode(PCBlock *block, PCode *pcode);
-extern void deletepcode(PCode *pcode);
-extern void insertpcodebefore(PCode *anchor, PCode *newpcode);
-extern void insertpcodeafter(PCode *anchor, PCode *newpcode);
-extern void setpcodeflags(int flags);
-extern void clearpcodeflags(int flags);
-extern int pccomputeoffsets();
-extern void computedepthfirstordering();