comparison runtime/internal/arrayInit.d @ 593:7042d912767e

Undid some of the previous changes: DtoArrayInit has issues with arrays similar to T[n][].
author Christian Kamm <kamm incasoftware de>
date Sun, 14 Sep 2008 13:47:38 +0200
parents 192b82878b78
children 6aaa3d3c1183
comparison
equal deleted inserted replaced
592:5fb7ed0ac580 593:7042d912767e
116 llvm_memcpy(p,v,nv,0); 116 llvm_memcpy(p,v,nv,0);
117 p += nv; 117 p += nv;
118 } 118 }
119 } 119 }
120 120
121 /*
122 void _d_array_init(TypeInfo ti, void* a)
123 {
124 auto initializer = ti.next.init();
125 auto isize = initializer.length;
126 auto q = initializer.ptr;
127
128 if (isize == 1)
129 memset(p, *cast(ubyte*)q, size);
130 else if (isize == int.sizeof)
131 {
132 int init = *cast(int*)q;
133 size /= int.sizeof;
134 for (size_t u = 0; u < size; u++)
135 {
136 (cast(int*)p)[u] = init;
137 }
138 }
139 else
140 {
141 for (size_t u = 0; u < size; u += isize)
142 {
143 memcpy(p + u, q, isize);
144 }
145 }
146 }*/
147
121 // for array cast 148 // for array cast
122 size_t _d_array_cast_len(size_t len, size_t elemsz, size_t newelemsz) 149 size_t _d_array_cast_len(size_t len, size_t elemsz, size_t newelemsz)
123 { 150 {
124 if (newelemsz == 1) { 151 if (newelemsz == 1) {
125 return len*elemsz; 152 return len*elemsz;