runtime: fix arenaBaseOffset for aix/ppc
authorClément Chigot <chigot.c@gmail.com>
Tue, 9 Jun 2020 09:36:01 +0000 (11:36 +0200)
committerIan Lance Taylor <iant@golang.org>
Fri, 12 Jun 2020 23:30:53 +0000 (16:30 -0700)
The arenaBaseOffset modifications was aimed only for aix/ppc64.

Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/237038

gcc/go/gofrontend/MERGE
libgo/go/runtime/export_test.go
libgo/go/runtime/malloc.go

index 284374820b0dc11aa5f2e0805f5687d69eb5cf7e..c8b78bfda042435756de0af71d9125487ef61428 100644 (file)
@@ -1,4 +1,4 @@
-ea58b8491064fbed18a220571a3043c38dccf7c7
+74199467ea912138c1b76e9a156bb47886be1436
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
index 6595fafe3689de14c81819300e3409635e037195..ab74e34d6114121365609542e6a8882fd22b3798 100644 (file)
@@ -866,7 +866,7 @@ func FreePageAlloc(pp *PageAlloc) {
 //
 // This should not be higher than 0x100*pallocChunkBytes to support
 // mips and mipsle, which only have 31-bit address spaces.
-var BaseChunkIdx = ChunkIdx(chunkIndex(((0xc000*pageAlloc64Bit + 0x100*pageAlloc32Bit) * pallocChunkBytes) + 0x0a00000000000000*sys.GoosAix))
+var BaseChunkIdx = ChunkIdx(chunkIndex(((0xc000*pageAlloc64Bit + 0x100*pageAlloc32Bit) * pallocChunkBytes) + 0x0a00000000000000*sys.GoosAix*sys.GoarchPpc64))
 
 // PageBase returns an address given a chunk index and a page index
 // relative to that chunk.
index 266f5eba747ba09a7cee4e17526a774b47709b76..6df7eaa53bb6aa255becb90b57d56554a29de1f5 100644 (file)
@@ -312,7 +312,7 @@ const (
        //
        // On other platforms, the user address space is contiguous
        // and starts at 0, so no offset is necessary.
-       arenaBaseOffset = sys.GoarchAmd64*(1<<47) + (^0x0a00000000000000+1)&uintptrMask*sys.GoosAix
+       arenaBaseOffset = sys.GoarchAmd64*(1<<47) + (^0x0a00000000000000+1)&uintptrMask*sys.GoosAix*sys.GoarchPpc64
 
        // Max number of threads to run garbage collection.
        // 2, 3, and 4 are all plausible maximums depending