Changeset 377
- Timestamp:
- 07/05/08 16:50:12 (5 months ago)
- Files:
-
- trunk/tools/tools/stackthreads_impl.d (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/tools/tools/stackthreads_impl.d
r370 r377 2 2 import tools.base; 3 3 4 static if (size_t.sizeof==8) const string regsize="r" ;5 else const string regsize="e" ;4 static if (size_t.sizeof==8) const string regsize="r", suffix="q"; 5 else const string regsize="e", suffix="l"; 6 6 7 7 import std.gc; … … 48 48 jmp 1f 49 49 0: 50 51 pushal 50 pusha! 52 51 53 52 mov #sp, (#cx) 54 53 mov #dx, #sp 55 54 56 popa l55 popa! 57 56 58 57 ret 59 58 1:\" : : \"c\" ep, \"d\" to.esp : \"ax\", \"bx\"; 60 }", "#", "%%"~regsize ));59 }", "#", "%%"~regsize, "!", suffix)); 61 60 } else { 62 61 asm { … … 91 90 jmp 1f 92 91 93 0: pusha l92 0: pusha! 94 93 mov %%sp, (%%bx) 95 94 mov %%cx, %%sp … … 97 96 push $1 98 97 1: pop %%cx\" : \"=c\" loaded, \"=d\" new_ptr : \"b\" ep, \"c\" esp, \"d\" dg_ptr; 99 }", "%%", "%%"~regsize 98 }", "%%", "%%"~regsize, "!", suffix 100 99 )); 101 100 } else asm {
