Mercurial > projects > ddmd
comparison dmd/backend/iasm.d @ 14:2cc604139636
Implemented Linux support for ddmd. Some parts are a bit hacky to just "get it working", that said, druntime and phobos compile, and unittests pass.
author | Robert Clipsham <robert@octarineparrot.com> |
---|---|
date | Sun, 04 Apr 2010 02:06:32 +0100 |
parents | 63623152e82a |
children | 1628b221808d |
comparison
equal
deleted
inserted
replaced
11:3356c90e9aac | 14:2cc604139636 |
---|---|
75 "qword".ptr, | 75 "qword".ptr, |
76 "seg".ptr, | 76 "seg".ptr, |
77 "word".ptr, | 77 "word".ptr, |
78 ]; | 78 ]; |
79 | 79 |
80 extern (Pascal) extern { | 80 extern (C) code * cat(code *c1,code *c2); |
81 code* cat(code* c1 , code* c2 ); | 81 |
82 } | 82 version (Bug4059) |
83 | 83 { |
84 extern (C++) extern | 84 private extern(C) OP* _Z13asm_op_lookupPKc(const(char)* s); |
85 private extern(C) int _Z6binaryPKcPS0_i(const(char)* p , const(char)** tab, int high); | |
86 OP* asm_op_lookup(const(char)* s) { return _Z13asm_op_lookupPKc(s); } | |
87 int binary(const(char)* p , const(char)** tab, int high) { return _Z6binaryPKcPS0_i(p, tab, high); } | |
88 } | |
89 else | |
90 { | |
91 OP* asm_op_lookup(const(char)* s); | |
92 int binary(const(char)* p , const(char)** tab, int high); | |
93 } | |
94 | |
95 extern (C++) //extern | |
85 { | 96 { |
86 void init_optab(); | 97 void init_optab(); |
87 OP* asm_op_lookup(const(char)* s); | |
88 const(char)* asm_opstr(OP* pop); | 98 const(char)* asm_opstr(OP* pop); |
89 int binary(const(char)* p , const(char)** tab, int high); | |
90 } | 99 } |
91 | 100 |
92 static ubyte asm_TKlbra_seen = false; | 101 static ubyte asm_TKlbra_seen = false; |
93 | 102 |
94 struct REG | 103 struct REG |