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