Mercurial > projects > dstress
changeset 975:5f982ba378c4
extended asm tests
author | thomask |
---|---|
date | Fri, 28 Apr 2006 01:22:57 +0000 |
parents | 000adc086356 |
children | 4bc1d14d6851 |
files | norun/a/asm_fxrstor_01.d norun/a/asm_fxsave_01.d norun/a/asm_hlt_01.d |
diffstat | 3 files changed, 68 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/norun/a/asm_fxrstor_01.d Fri Apr 28 01:22:57 2006 +0000 @@ -0,0 +1,25 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +module dstress.norun.a.asm_fxrstor_01; + +int main(){ + version(D_InlineAsm_X86){ + ubyte[] data; + data.length = 512+1; + + if(!((cast(size_t)data.ptr) % 16)){ + data = data[1 .. $]; + } + + asm{ + fxrstor data; + } + + return 0; + }else{ + pragma(msg, "no Inline asm support"); + static assert(0); + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/norun/a/asm_fxsave_01.d Fri Apr 28 01:22:57 2006 +0000 @@ -0,0 +1,25 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +module dstress.norun.a.asm_fxsave_01; + +int main(){ + version(D_InlineAsm_X86){ + ubyte[] data; + data.length = 512+1; + + if(!((cast(size_t)data.ptr) % 16)){ + data = data[1 .. $]; + } + + asm{ + fxsave data; + } + + return 0; + }else{ + pragma(msg, "no Inline asm support"); + static assert(0); + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/norun/a/asm_hlt_01.d Fri Apr 28 01:22:57 2006 +0000 @@ -0,0 +1,18 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +module dstress.norun.a.asm_hlt_01; + +int main(){ + version(D_InlineAsm_X86){ + asm{ + hlt; + } + + return 0; + }else{ + pragma(msg, "no Inline asm support"); + static assert(0); + } +}