Change the compiler handle append as the gc compiler does: call a
function to grow the slice, but otherwise assign the new elements
directly to the final slice.
For the current gccgo memory allocator the slice code has to call
runtime_newarray, not mallocgc directly, so that the allocator sets the
TypeInfo_Array bit in the type pointer.
Rename the static function cnew to runtime_docnew, so that the stack
trace ignores it when ignoring runtime functions. This was needed to
fix the runtime/pprof tests on 386.
Reviewed-on: https://go-review.googlesource.com/32218
From-SVN: r241667
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| debug | Loading commit data... | |
| internal | Loading commit data... | |
| msan | Loading commit data... | |
| pprof | Loading commit data... | |
| race | Loading commit data... | |
| testdata | Loading commit data... | |
| alg.go | Loading commit data... | |
| append_test.go | Loading commit data... | |
| callers_test.go | Loading commit data... | |
| cgo_mmap.go | Loading commit data... | |
| cgocheck.go | Loading commit data... | |
| chan.go | Loading commit data... | |
| chan_test.go | Loading commit data... | |
| chanbarrier_test.go | Loading commit data... | |
| closure_test.go | Loading commit data... | |
| compiler.go | Loading commit data... | |
| complex_test.go | Loading commit data... | |
| cpuprof.go | Loading commit data... | |
| cputicks.go | Loading commit data... | |
| crash_cgo_test.go | Loading commit data... | |
| crash_nonunix_test.go | Loading commit data... | |
| crash_test.go | Loading commit data... | |
| crash_unix_test.go | Loading commit data... | |
| debug.go | Loading commit data... | |
| env_posix.go | Loading commit data... | |
| env_test.go | Loading commit data... | |
| error.go | Loading commit data... | |
| export_arm_test.go | Loading commit data... | |
| export_linux_test.go | Loading commit data... | |
| export_mmap_test.go | Loading commit data... | |
| export_test.go | Loading commit data... | |
| export_windows_test.go | Loading commit data... | |
| extern.go | Loading commit data... | |
| fastlog2.go | Loading commit data... | |
| fastlog2_test.go | Loading commit data... | |
| fastlog2table.go | Loading commit data... | |
| gc_test.go | Loading commit data... | |
| gcinfo_test.go | Loading commit data... | |
| hashmap.go | Loading commit data... | |
| hashmap_fast.go | Loading commit data... | |
| iface.go | Loading commit data... | |
| iface_test.go | Loading commit data... | |
| lfstack.go | Loading commit data... | |
| lfstack_32bit.go | Loading commit data... | |
| lfstack_64bit.go | Loading commit data... | |
| lfstack_test.go | Loading commit data... | |
| lock_futex.go | Loading commit data... | |
| lock_sema.go | Loading commit data... | |
| malloc_test.go | Loading commit data... | |
| map_test.go | Loading commit data... | |
| mapspeed_test.go | Loading commit data... | |
| mcache.go | Loading commit data... | |
| mfinal_test.go | Loading commit data... | |
| mkfastlog2table.go | Loading commit data... | |
| mmap.go | Loading commit data... | |
| mprof.go | Loading commit data... | |
| msan0.go | Loading commit data... | |
| mstats.go | Loading commit data... | |
| mstkbar.go | Loading commit data... | |
| netpoll.go | Loading commit data... | |
| netpoll_epoll.go | Loading commit data... | |
| netpoll_kqueue.go | Loading commit data... | |
| netpoll_nacl.go | Loading commit data... | |
| netpoll_solaris.go | Loading commit data... | |
| netpoll_stub.go | Loading commit data... | |
| netpoll_windows.go | Loading commit data... | |
| norace_test.go | Loading commit data... | |
| os_darwin.go | Loading commit data... | |
| os_dragonfly.go | Loading commit data... | |
| os_freebsd.go | Loading commit data... | |
| os_linux.go | Loading commit data... | |
| os_netbsd.go | Loading commit data... | |
| os_openbsd.go | Loading commit data... | |
| os_solaris.go | Loading commit data... | |
| print.go | Loading commit data... | |
| proc_runtime_test.go | Loading commit data... | |
| proc_test.go | Loading commit data... | |
| race0.go | Loading commit data... | |
| rdebug.go | Loading commit data... | |
| rune.go | Loading commit data... | |
| runtime-lldb_test.go | Loading commit data... | |
| runtime.go | Loading commit data... | |
| runtime1.go | Loading commit data... | |
| runtime2.go | Loading commit data... | |
| runtime_mmap_test.go | Loading commit data... | |
| runtime_test.go | Loading commit data... | |
| runtime_unix_test.go | Loading commit data... | |
| select.go | Loading commit data... | |
| sema.go | Loading commit data... | |
| signal2_unix.go | Loading commit data... | |
| signal_sigtramp.go | Loading commit data... | |
| slice.go | Loading commit data... | |
| stack.go | Loading commit data... | |
| string.go | Loading commit data... | |
| string_test.go | Loading commit data... | |
| stubs.go | Loading commit data... | |
| stubs2.go | Loading commit data... | |
| symtab.go | Loading commit data... | |
| symtab_test.go | Loading commit data... | |
| time.go | Loading commit data... | |
| trace.go | Loading commit data... | |
| traceback_gccgo.go | Loading commit data... | |
| type.go | Loading commit data... | |
| typekind.go | Loading commit data... | |
| vdso_none.go | Loading commit data... | |
| write_err.go | Loading commit data... | |
| write_err_android.go | Loading commit data... |