Mercurial > projects > dstress
changeset 1337:0839eb936902
[Issue 697] No const folding on asm db,dw, etc
Don Clugston <clugdbug@yahoo.com.au>
2006-12-18
http://d.puremagic.com/issues/show_bug.cgi?id=697
author | thomask |
---|---|
date | Tue, 23 Jan 2007 12:03:51 +0000 |
parents | 986983b8cf7a |
children | 54d2cf6154ba |
files | run/a/asm_db_01_A.d run/a/asm_db_01_B.d run/a/asm_db_01_C.d run/a/asm_di_02_A.d run/a/asm_di_02_B.d run/a/asm_di_02_C.d run/a/asm_dl_02_A.d run/a/asm_dl_02_B.d run/a/asm_dl_02_C.d run/a/asm_ds_01_A.d run/a/asm_ds_01_B.d run/a/asm_ds_01_C.d |
diffstat | 12 files changed, 423 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/a/asm_db_01_A.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,36 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_db_01_A; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + const byte x = 0x40; + + asm{ + mov EAX, i; + db x; + mov i, EAX; + } + + assert(i == 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_db_01_B.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_db_01_B; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + db 0x40; + mov i, EAX; + } + + assert(i == 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_db_01_C.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_db_01_C; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + db 0x30 + 0x10; + mov i, EAX; + } + + assert(i == 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_di_02_A.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,36 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_di_02_A; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + short x = 0x40404040; + + asm{ + mov EAX, i; + di x; + mov i, EAX; + } + + assert(i == 7); + + 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_di_02_B.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_di_02_B; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + di 0x40404040; + mov i, EAX; + } + + assert(i == 7); + + 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_di_02_C.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_di_02_C; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + di 0x4040_1010 + 0x0000_3030; + mov i, EAX; + } + + assert(i == 7); + + 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_dl_02_A.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_dl_02_A; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + long x = 0x4040_4040_4040_4040; + asm{ + mov EAX, i; + dl x; + mov i, EAX; + } + + assert(i == 11); + + 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_dl_02_B.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_dl_02_B; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + dl 0x4040_4040_4040_4040; + mov i, EAX; + } + + assert(i == 11); + + 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_dl_02_C.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_dl_02_C; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + dl 0x4040_3030_2020_1010 + 0x0000_1010_2020_3030; + mov i, EAX; + } + + assert(i == 7); + + 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_ds_01_A.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,36 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_ds_01_A; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + short x = 0x4040; + + asm{ + mov EAX, i; + ds x; + mov i, EAX; + } + + assert(i == 5); + + 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_ds_01_B.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_ds_01_B; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + ds 0x4040; + mov i, EAX; + } + + assert(i == 5); + + 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_ds_01_C.d Tue Jan 23 12:03:51 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston <clugdbug@yahoo.com.au> +// @date@ 2006-12-18 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=697 +// @desc@ [Issue 697] No const folding on asm db,dw, etc + +module dstress.run.a.asm_ds_01_C; + +version(D_InlineAsm_X86){ + version = runTest; +}else version(D_InlineAsm_X86_64){ + version = runTest; +} + +version(runTest){ + int main(){ + int i = 3; + + asm{ + mov EAX, i; + ds 0x0040 + 0x4000; + mov i, EAX; + } + + assert(i == 5); + + return 0; + } +}else{ + pragma(msg, "DSTRESS{XFAIL}: no inline ASM support"); + static assert(0); +}