]> Cypherpunks.ru repositories - gostls13.git/commitdiff
[dev.garbage] all: merge dev.power64 (7667e41f3ced) into dev.garbage
authorRuss Cox <rsc@golang.org>
Fri, 14 Nov 2014 17:09:42 +0000 (12:09 -0500)
committerRuss Cox <rsc@golang.org>
Fri, 14 Nov 2014 17:09:42 +0000 (12:09 -0500)
Now the only difference between dev.cc and dev.garbage
is the runtime conversion on the one side and the
garbage collection on the other. They both have the
same set of changes from default and dev.power64.

LGTM=austin
R=austin
CC=golang-codereviews
https://golang.org/cl/172570043

1  2 
include/link.h
src/cmd/5g/reg.c
src/cmd/gc/go.h
src/cmd/objdump/objdump_test.go
src/runtime/asm_power64x.s
src/runtime/gcinfo_test.go
src/runtime/mgc0.c
test/live.go

diff --cc include/link.h
index c80f467580cd80f2210221e05deacda7112434a1,06f3ebb489408ebd26038c693b89c16e1163c30c..80f3f4d82e27ad61ac991b4da4ca96e45b6a6841
@@@ -89,10 -89,13 +89,13 @@@ struct     Pro
        int32   lineno;
        Prog*   link;
        short   as;
-       uchar   reg; // arm, power64 only
 -      uchar   scond; // arm only; condition codes
 +      uchar   scond; // arm only
+       // operands
        Addr    from;
-       Addr    from3; // power64 only, fma and rlwm
+       uchar   reg; // arm, power64 only (e.g., ADD from, reg, to);
+                    // also used for ADATA width on arm, power64
+       Addr    from3; // power64 only (e.g., RLWM/FMADD from, reg, from3, to)
        Addr    to;
        
        // for 5g, 6g, 8g internal use
Simple merge
diff --cc src/cmd/gc/go.h
Simple merge
Simple merge
index fd0c6be16151fd0cc7c8a3f983f89cc5c6f1a2cc,a75bb8ce1e0f1d56336ec393b8c7fe00d5460b2d..ba900c2b3f5fe827e3bbe6f119ab29711ed67fd0
@@@ -472,10 -472,10 +472,10 @@@ TEXT runtime·atomicstoreuintptr(SB), N
  //            return 1;
  //    } else
  //            return 0;
 -TEXT runtime·casp(SB), NOSPLIT, $0-25
 +TEXT runtime·casp1(SB), NOSPLIT, $0-25
        BR runtime·cas64(SB)
  
- // uint32 xadd(uint32 volatile *val, int32 delta)
+ // uint32 xadd(uint32 volatile *ptr, int32 delta)
  // Atomically:
  //    *val += delta;
  //    return *val;
Simple merge
index 3248b0f49a006e7b4949ae0a23cd254a043c5a9f,897dc1415c0f51fd71c70701c664d7226e1448a0..f37c01af058c9a530c5c868b37f1f3d6f4b19f7a
  
  enum {
        Debug           = 0,
 -      ConcurrentSweep = 0,
+       DebugPtrs       = 0, // if 1, print trace of every pointer load during GC
 +      ConcurrentSweep = 1,
  
 -      WorkbufSize     = 4*1024,
        FinBlockSize    = 4*1024,
        RootData        = 0,
        RootBss         = 1,
diff --cc test/live.go
index 55a1bd35d16c80ebe60a42f8beb49a777384d07b,f69d0a4c1e62e1e21a025301c42e7fdaf30f39e4..62c6a0b0e523fe1f042076934feed8c380e01bcd
@@@ -634,8 -614,8 +634,8 @@@ func newT40() *T40 
  
  func bad40() {
        t := newT40()
-       printnl()
        _ = t
 -      println()
++      printnl()
  }
  
  func good40() {