Mercurial > projects > dstress
changeset 1427:596115f20776
fixed #1042
author | thomask |
---|---|
date | Mon, 12 Mar 2007 05:30:13 +0000 |
parents | 3204340ec93b |
children | 9f63eb8157cd |
files | nocompile/a/asm_offset_01_B.d run/a/asm_offset_01_A.d run/a/asm_offset_01_B.d |
diffstat | 3 files changed, 46 insertions(+), 37 deletions(-) [+] |
line wrap: on
line diff
--- a/nocompile/a/asm_offset_01_B.d Mon Mar 12 05:29:36 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -// $HeadURL$ -// $Date$ -// $Author$ - -// @author@ <lugaidster@gmail.com> -// @date@ 2006-04-28 -// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=116 - -// __DSTRESS_ELINE__ 24 - -module dstress.nocompile.a.asm_offset_01_B; - -version(D_InlineAsm_X86){ - version = runTest; -} - -version(runTest){ - byte b; - - void main(){ - - static if(size_t.sizeof == 4){ - asm{ - mov EAX, offsetof b; - } - }else{ - pragma(msg, "DSTRESS{ERROR}: unsupported pointer size"); - static assert(0); - } - } -}else{ - pragma(msg, "DSTRESS{XFAIL}: no inline x86 asm support"); - static assert(0); -}
--- a/run/a/asm_offset_01_A.d Mon Mar 12 05:29:36 2007 +0000 +++ b/run/a/asm_offset_01_A.d Mon Mar 12 05:30:13 2007 +0000 @@ -6,12 +6,16 @@ // @date@ 2006-04-28 // @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=116 +// __DSTRESS_TORTURE_BLOCK__ -fPIC + module dstress.run.a.asm_offset_01_A; version(D_InlineAsm_X86){ version = runTest; }else version(D_InlineAsm_X86_64){ version = runTest; +}else{ + static assert(0, "DSTRESS{XFAIL}: no inline x86 asm support"); } version(runTest){ @@ -26,6 +30,10 @@ mov EAX, offset b; mov y, EAX; } + }else static if(size_t.sizeof == 8){ + asm{ + mov RAX, offset b; + mov y, RAX; }else{ pragma(msg, "DSTRESS{ERROR}: unsupported pointer size"); static assert(0); @@ -37,7 +45,4 @@ return 0; } -}else{ - pragma(msg, "DSTRESS{XFAIL}: no inline ASM support"); - static assert(0); }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/a/asm_offset_01_B.d Mon Mar 12 05:30:13 2007 +0000 @@ -0,0 +1,38 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ <lugaidster@gmail.com> +// @date@ 2006-04-28 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=116 + +// __DSTRESS_TORTURE_BLOCK__ -fPIC + +module dstress.run.a.asm_offset_01_B; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +}else{ + static assert(0, "DSTRESS{XFAIL}: no inline x86 asm support"); +} + +version(runTest){ + byte b; + + void main(){ + static if(size_t.sizeof == 4){ + asm{ + mov EAX, offsetof b; + } + }else static if(size_t.sizeof == 8){ + asm{ + mov RAX, offsetof b; + } + }else{ + pragma(msg, "DSTRESS{ERROR}: unsupported pointer size"); + static assert(0); + } + } +}