From 1ad16c52842e0513b96a0e02d2a431dc0f338c5d Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 12 Oct 2016 18:17:52 +0000 Subject: compiler, runtime: copy string code from Go 1.7 Add compiler support for turning concatenating strings into a call to a runtime function that takes the appropriate number of arguments. Rename some local variables in mgc0.c to avoid macros that the new rune.go causes to appear in runtime.inc. Reviewed-on: https://go-review.googlesource.com/30827 From-SVN: r241074 --- libgo/runtime/go-string-to-byte-array.c | 28 ---------------------------- 1 file changed, 28 deletions(-) delete mode 100644 libgo/runtime/go-string-to-byte-array.c (limited to 'libgo/runtime/go-string-to-byte-array.c') diff --git a/libgo/runtime/go-string-to-byte-array.c b/libgo/runtime/go-string-to-byte-array.c deleted file mode 100644 index 61591eb..0000000 --- a/libgo/runtime/go-string-to-byte-array.c +++ /dev/null @@ -1,28 +0,0 @@ -/* go-string-to-byte-array.c -- convert a string to an array of bytes in Go. - - Copyright 2010 The Go Authors. All rights reserved. - Use of this source code is governed by a BSD-style - license that can be found in the LICENSE file. */ - -#include "runtime.h" -#include "array.h" -#include "arch.h" -#include "malloc.h" - -struct __go_open_array -__go_string_to_byte_array (String str) -{ - uintptr cap; - unsigned char *data; - struct __go_open_array ret; - - cap = runtime_roundupsize (str.len); - data = (unsigned char *) runtime_mallocgc (cap, 0, FlagNoScan | FlagNoZero); - __builtin_memcpy (data, str.str, str.len); - if (cap != (uintptr) str.len) - __builtin_memset (data + str.len, 0, cap - (uintptr) str.len); - ret.__values = (void *) data; - ret.__count = str.len; - ret.__capacity = str.len; - return ret; -} -- cgit v1.1