- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 25 for Dive (0.14 sec)
-
src/cmd/compile/internal/ssa/tighten.go
// This can reduce the amount of register spilling required, // if it doesn't also create more live values. // A Value can be moved to any block that // dominates all blocks in which it is used. func tighten(f *Func) { if base.Flag.N != 0 && len(f.Blocks) < 10000 { // Skip the optimization in -N mode, except for huge functions. // Too many values live across blocks can cause pathological // behavior in the register allocator (see issue 52180).
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 16 01:01:38 UTC 2023 - 7.7K bytes - Viewed (0) -
src/cmd/compile/internal/test/testdata/addressed_test.go
x = x*y + y return &x } //go:noinline func f3a_ssa(x int) *int { return &x } //go:noinline func f3b_ssa(x int) interface{} { // ./foo.go:15: internal error: f3b_ssa ~r1 (type interface {}) recorded as live on entry return &x } //go:noinline func f3c_ssa(y int) interface{} { x := y return &x } type V struct { p *V w, x int64 } func args(t *testing.T) {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Apr 05 17:54:15 UTC 2022 - 4.4K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/deadcode.go
func liveValues(f *Func, reachable []bool) (live []bool, liveOrderStmts []*Value) { live = f.Cache.allocBoolSlice(f.NumValues()) liveOrderStmts = f.Cache.allocValueSlice(f.NumValues())[:0] // After regalloc, consider all values to be live. // See the comment at the top of regalloc.go and in deadcode for details. if f.RegAlloc != nil { for i := range live { live[i] = true } return }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Dec 08 00:29:01 UTC 2023 - 9.2K bytes - Viewed (0) -
src/cmd/cgo/internal/testplugin/testdata/method/main.go
// Copyright 2020 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. // Issue 42579: methods of symbols exported from plugin must be live. package main import ( "plugin" "reflect" ) func main() { p, err := plugin.Open("plugin.so") if err != nil { panic(err) } x, err := p.Lookup("X") if err != nil { panic(err)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 12 11:59:56 UTC 2023 - 478 bytes - Viewed (0) -
src/cmd/compile/internal/ssa/flagalloc.go
b.Values = b.Values[:0] // The current live flag value (the pre-flagalloc copy). var flag *Value if len(b.Preds) > 0 { flag = end[b.Preds[0].b.ID] // Note: the following condition depends on the lack of critical edges. for _, e := range b.Preds[1:] { p := e.b if end[p.ID] != flag { f.Fatalf("live flag in %s's predecessors not consistent", b) } } }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Oct 31 21:41:20 UTC 2022 - 6.7K bytes - Viewed (0) -
src/cmd/cgo/internal/testplugin/testdata/method2/main.go
// Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // A type can be passed to a plugin and converted to interface // there. So its methods need to be live. package main import ( "plugin" "testplugin/method2/p" ) var t p.T type I interface{ M() } func main() { pl, err := plugin.Open("method2.so") if err != nil { panic(err)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 12 11:59:56 UTC 2023 - 549 bytes - Viewed (0) -
src/cmd/cgo/internal/testplugin/testdata/method3/main.go
// Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // An unexported method can be reachable from the plugin via interface // when a package is shared. So it need to be live. package main import ( "plugin" "testplugin/method3/p" ) var i p.I func main() { pl, err := plugin.Open("method3.so") if err != nil { panic(err) }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 12 11:59:56 UTC 2023 - 533 bytes - Viewed (0) -
src/cmd/compile/internal/test/zerorange_test.go
// improve coverage of the compiler's arch-specific "zerorange" // function, which is invoked to zero out ambiguously live portions of // the stack frame in certain specific circumstances. // // In the current compiler implementation, for zerorange to be // invoked, we need to have an ambiguously live variable that needs // zeroing. One way to trigger this is to have a function with an
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Apr 01 18:18:07 UTC 2022 - 4.1K bytes - Viewed (0) -
src/cmd/cgo/internal/testplugin/testdata/issue18676/main.go
// chain rooted at hash bucket 0x111. // 3. The main binary then asks for the itab for *dynamodbstreamsevt.Event / // json.Unmarshaler. This itab happens to also live in bucket 0x111. // The lookup code goes into an infinite loop searching for this itab. // // The code is carefully crafted so that the two itabs are both from the // same bucket, and so that the second itab doesn't exist in
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 12 11:59:56 UTC 2023 - 1.1K bytes - Viewed (0) -
src/cmd/compile/internal/typecheck/dcl.go
if n >= len(autotmpnames) { autotmpnames = append(autotmpnames, make([]string, n+1-len(autotmpnames))...) autotmpnames = autotmpnames[:cap(autotmpnames)] } s := autotmpnames[n] if s == "" { // Give each tmp a different name so that they can be registerized. // Add a preceding . to avoid clashing with legal names. prefix := ".autotmp_%d" s = fmt.Sprintf(prefix, n) autotmpnames[n] = s } return s }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Sep 14 13:15:50 UTC 2023 - 3.1K bytes - Viewed (0)