diff addon/cpuinfo.d @ 1029:aab96ff8d6cd

partial dmd-0.158 review
author thomask
date Fri, 26 May 2006 18:15:10 +0000
parents a7310ceac844
children f34b7d4a2db7
line wrap: on
line diff
--- a/addon/cpuinfo.d	Fri May 26 18:13:37 2006 +0000
+++ b/addon/cpuinfo.d	Fri May 26 18:15:10 2006 +0000
@@ -165,3 +165,20 @@
 		}
 	}
 }
+
+template aligned_new(T){
+	T[] aligned_new(size_t len, size_t alignment){
+		ubyte* ptr = new ubyte[len * T.sizeof + alignment];
+
+		alignment *= 8;
+
+		while((cast(size_t)ptr) % alignment){
+			ptr++;
+		}
+
+		T[]data = (cast(T*) ptr)[0 .. len];
+		data[] = T.init;
+
+		return data;
+	}
+}