fc44f2673e388d6a7f26105e53121b1a0c7ba6dd
[ghc-hetmet.git] / ghc / includes / Bytecodes.h
1
2 /* -----------------------------------------------------------------------------
3  * $Id: Bytecodes.h,v 1.2 2000/12/08 15:45:55 sewardj Exp $
4  *
5  * (c) The GHC Team, 1998-2000
6  *
7  * Bytecode definitions.
8  *
9  * ---------------------------------------------------------------------------*/
10
11 /* --------------------------------------------------------------------------
12  * Instructions
13  *
14  * Notes:
15  * o CASEFAIL is generated by the compiler whenever it tests an "irrefutable"
16  *   pattern which fails.  If we don't see too many of these, we could
17  *   optimise out the redundant test.
18  * ------------------------------------------------------------------------*/
19
20 /* NOTE:
21
22    THIS FILE IS INCLUDED IN HASKELL SOURCES (ghc/compiler/ghci/ByteCodeGen.lhs).
23    DO NOT PUT C-SPECIFIC STUFF IN HERE!
24
25    I hope that's clear :-)
26 */
27
28 #define bci_ARGCHECK  1
29 #define bci_PUSH_L    2
30 #define bci_PUSH_LL   28
31 #define bci_PUSH_LLL  29
32 #define bci_PUSH_G    3
33 #define bci_PUSH_AS   26
34 #define bci_PUSHT_I   4
35 #define bci_PUSHT_F   5
36 #define bci_PUSHT_D   6
37 #define bci_PUSHU_I   7
38 #define bci_PUSHU_F   8
39 #define bci_PUSHU_D   9
40 #define bci_SLIDE     10
41 #define bci_ALLOC     11
42 #define bci_MKAP      12
43 #define bci_UNPACK    13
44 #define bci_PACK      14
45 #define bci_LABEL     15
46 #define bci_TESTLT_I  16 
47 #define bci_TESTEQ_I  17
48 #define bci_TESTLT_F  18
49 #define bci_TESTEQ_F  19
50 #define bci_TESTLT_D  20
51 #define bci_TESTEQ_D  21
52 #define bci_TESTLT_P  22
53 #define bci_TESTEQ_P  23
54 #define bci_CASEFAIL  24
55 #define bci_ENTER     25
56 #define bci_RETURN    27
57
58 /*-------------------------------------------------------------------------*/