Mercurial > projects > ldc
diff tests/mini/intrinsics.d @ 443:44f08170f4ef
Removed tango from the repository and instead added a runtime dir with the files needed to patch and build tango from svn.
Reworked the LLVMDC specific pragmas.
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Fri, 01 Aug 2008 00:32:06 +0200 |
parents | 1bb99290e03a |
children | cc40db549aea |
line wrap: on
line diff
--- a/tests/mini/intrinsics.d Thu Jul 31 19:14:49 2008 +0200 +++ b/tests/mini/intrinsics.d Fri Aug 01 00:32:06 2008 +0200 @@ -1,31 +1,36 @@ -import llvm.intrinsic; +import llvmdc.intrinsics; extern(C) int printf(char*,...); extern(C) int scanf(char*,...); void main() { - { float f; printf("Enter float: "); - scanf("%f", &f); - float sf = llvm_sqrt(f); + //scanf("%f", &f); + f = 1.22345; + float sf = llvm_sqrt_f32(f); printf("sqrt(%f) = %f\n", f, sf); - } - - { + double d; printf("Enter double: "); - scanf("%lf", &d); - double sd = llvm_sqrt(d); + //scanf("%lf", &d); + d = 2.2311167895435245; + double sd = llvm_sqrt_f64(d); printf("sqrt(%lf) = %lf\n", d, sd); - } - + + real r; + printf("Enter real: "); + //scanf("%lf", &d); + r = 3.2311167891231231234754764576; + version(LLVM_X86_FP80) { - real d; - printf("Enter real: "); - scanf("%lf", &d); - real sd = llvm_sqrt(d); - printf("sqrt(%lf) = %lf\n", d, sd); + real sr = llvm_sqrt_f80(r); + printf("sqrt(%llf) = %llf\n", r, sr); + } + else + { + real sr = llvm_sqrt_f64(r); + printf("sqrt(%lf) = %lf\n", r, sr); } }