Mercurial > projects > ddmd
comparison dmd/backend/iasm.d @ 22:fd4acc376c45
Implemented object file output and linking on linux.
author | Robert Clipsham <robert@octarineparrot.com> |
---|---|
date | Thu, 08 Apr 2010 04:21:03 +0100 |
parents | 1628b221808d |
children | 3f834bed4f13 |
comparison
equal
deleted
inserted
replaced
21:26b9f97f6162 | 22:fd4acc376c45 |
---|---|
189 enum mOTHER = (1 << OTHER); // 0x2000 | 189 enum mOTHER = (1 << OTHER); // 0x2000 |
190 | 190 |
191 enum mST0 = (1 << ST0); // 0x4000 | 191 enum mST0 = (1 << ST0); // 0x4000 |
192 enum mST01 = (1 << ST01); // 0x8000 | 192 enum mST01 = (1 << ST01); // 0x8000 |
193 | 193 |
194 version (XXX) { ///TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS | 194 version (POSIX) { ///TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS |
195 // To support positional independent code, | 195 // To support positional independent code, |
196 // must be able to remove BX from available registers | 196 // must be able to remove BX from available registers |
197 ///extern regm_t ALLREGS; | 197 extern (C) extern __gshared regm_t ALLREGS; |
198 ///#define ALLREGS_INIT (mAX|mBX|mCX|mDX|mSI|mDI) | 198 enum ALLREGS_INIT = (mAX|mBX|mCX|mDX|mSI|mDI); |
199 ///#define ALLREGS_INIT_PIC (mAX|mCX|mDX|mSI|mDI) | 199 enum ALLREGS_INIT_PIC = (mAX|mCX|mDX|mSI|mDI); |
200 ///extern regm_t BYTEREGS; | 200 extern (C) extern regm_t BYTEREGS; |
201 ///#define BYTEREGS_INIT (mAX|mBX|mCX|mDX) | 201 enum BYTEREGS_INIT = (mAX|mBX|mCX|mDX); |
202 ///#define BYTEREGS_INIT_PIC (mAX|mCX|mDX) | 202 enum BYTEREGS_INIT_PIC = (mAX|mCX|mDX); |
203 } else { | 203 } else { |
204 enum ALLREGS = (mAX|mBX|mCX|mDX|mSI|mDI); | 204 enum ALLREGS = (mAX|mBX|mCX|mDX|mSI|mDI); |
205 ///#define ALLREGS_INIT ALLREGS | 205 ///#define ALLREGS_INIT ALLREGS |
206 ///#undef BYTEREGS | 206 ///#undef BYTEREGS |
207 ///#define BYTEREGS (mAX|mBX|mCX|mDX) | 207 ///#define BYTEREGS (mAX|mBX|mCX|mDX) |