Merge remote branch 'alexis/wip'
[nit.git] / c_src / standard___hash._sep.c
1 /* This C file is generated by NIT to compile module standard___hash. */
2 #include "standard___hash._sep.h"
3 val_t standard___hash___Object___hash(val_t p0){
4 struct {struct stack_frame_t me;} fra;
5 val_t REGB0;
6 val_t REGB1;
7 val_t tmp;
8 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
9 fra.me.file = LOCATE_standard___hash;
10 fra.me.line = 20;
11 fra.me.meth = LOCATE_standard___hash___Object___hash;
12 fra.me.has_broke = 0;
13 fra.me.REG_size = 1;
14 fra.me.nitni_local_ref_head = NULL;
15 fra.me.REG[0] = NIT_NULL;
16 fra.me.REG[0] = p0;
17 /* ./../lib/standard//hash.nit:24 */
18 REGB0 = CALL_standard___kernel___Object___object_id(fra.me.REG[0])(fra.me.REG[0]);
19 REGB1 = TAG_Int(8);
20 /* ./../lib/standard//kernel.nit:239 */
21 REGB1 = TAG_Int(UNTAG_Int(REGB0)/UNTAG_Int(REGB1));
22 /* ./../lib/standard//hash.nit:24 */
23 goto label1;
24 label1: while(0);
25 stack_frame_head = fra.me.prev;
26 return REGB1;
27 }
28 val_t standard___hash___Int___hash(val_t p0){
29 struct {struct stack_frame_t me;} fra;
30 val_t REGB0;
31 val_t tmp;
32 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
33 fra.me.file = LOCATE_standard___hash;
34 fra.me.line = 28;
35 fra.me.meth = LOCATE_standard___hash___Int___hash;
36 fra.me.has_broke = 0;
37 fra.me.REG_size = 0;
38 fra.me.nitni_local_ref_head = NULL;
39 REGB0 = p0;
40 /* ./../lib/standard//hash.nit:28 */
41 goto label1;
42 label1: while(0);
43 stack_frame_head = fra.me.prev;
44 return REGB0;
45 }
46 val_t standard___hash___Char___hash(val_t p0){
47 struct {struct stack_frame_t me;} fra;
48 val_t REGB0;
49 val_t tmp;
50 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
51 fra.me.file = LOCATE_standard___hash;
52 fra.me.line = 32;
53 fra.me.meth = LOCATE_standard___hash___Char___hash;
54 fra.me.has_broke = 0;
55 fra.me.REG_size = 0;
56 fra.me.nitni_local_ref_head = NULL;
57 REGB0 = p0;
58 /* ./../lib/standard//kernel.nit:413 */
59 REGB0 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
60 /* ./../lib/standard//hash.nit:32 */
61 goto label1;
62 label1: while(0);
63 stack_frame_head = fra.me.prev;
64 return REGB0;
65 }
66 val_t standard___hash___Bool___hash(val_t p0){
67 struct {struct stack_frame_t me;} fra;
68 val_t REGB0;
69 val_t REGB1;
70 val_t tmp;
71 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
72 fra.me.file = LOCATE_standard___hash;
73 fra.me.line = 36;
74 fra.me.meth = LOCATE_standard___hash___Bool___hash;
75 fra.me.has_broke = 0;
76 fra.me.REG_size = 0;
77 fra.me.nitni_local_ref_head = NULL;
78 REGB0 = p0;
79 /* ./../lib/standard//hash.nit:38 */
80 if (UNTAG_Bool(REGB0)) {
81 /* ./../lib/standard//hash.nit:39 */
82 REGB0 = TAG_Int(1);
83 goto label1;
84 } else {
85 /* ./../lib/standard//hash.nit:41 */
86 REGB1 = TAG_Int(0);
87 REGB0 = REGB1;
88 goto label1;
89 }
90 label1: while(0);
91 stack_frame_head = fra.me.prev;
92 return REGB0;
93 }