2016-10-07 Steven G. Kargl <kargl@gcc.gnu.org>
[official-gcc.git] / libgo / runtime / go-unsafe-newarray.c
blobf5c5efce78ca2035b723044f85c8c96a5eae6d00
1 /* go-unsafe-newarray.c -- unsafe.NewArray function for Go.
3 Copyright 2009 The Go Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style
5 license that can be found in the LICENSE file. */
7 #include "runtime.h"
8 #include "arch.h"
9 #include "malloc.h"
10 #include "go-type.h"
11 #include "interface.h"
13 /* Implement unsafe_NewArray, called from the reflect package. */
15 void *unsafe_NewArray (const struct __go_type_descriptor *, intgo)
16 __asm__ (GOSYM_PREFIX "reflect.unsafe_NewArray");
18 /* The dynamic type of the argument will be a pointer to a type
19 descriptor. */
21 void *
22 unsafe_NewArray (const struct __go_type_descriptor *descriptor, intgo n)
24 return runtime_cnewarray (descriptor, n);