Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 7 of 7 for lateLower (0.26 sec)

  1. src/cmd/compile/internal/ssa/lower.go

    func lower(f *Func) {
    	// repeat rewrites until we find no more rewrites
    	applyRewrite(f, f.Config.lowerBlock, f.Config.lowerValue, removeDeadValues)
    }
    
    // lateLower applies those rules that need to be run after the general lower rules.
    func lateLower(f *Func) {
    	// repeat rewrites until we find no more rewrites
    	if f.Config.lateLowerValue != nil {
    		applyRewrite(f, f.Config.lateLowerBlock, f.Config.lateLowerValue, removeDeadValues)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Feb 16 00:16:13 UTC 2023
    - 1.7K bytes
    - Viewed (0)
  2. src/cmd/dist/buildtool.go

    		return "", false
    	}
    	archCaps = fileArch
    	fileArch = strings.ToLower(fileArch)
    	fileArch = strings.TrimSuffix(fileArch, "splitload")
    	fileArch = strings.TrimSuffix(fileArch, "latelower")
    	if fileArch == goArch {
    		return "", false
    	}
    	if fileArch == strings.TrimSuffix(goArch, "le") {
    		return "", false
    	}
    	return archCaps, true
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 09 23:29:41 UTC 2024
    - 11.5K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/compile.go

    		disabled: !buildcfg.Experiment.PreemptibleLoops}, // insert resched checks in loops.
    	{name: "lower", fn: lower, required: true},
    	{name: "addressing modes", fn: addressingModes, required: false},
    	{name: "late lower", fn: lateLower, required: true},
    	{name: "lowered deadcode for cse", fn: deadcode}, // deadcode immediately before CSE avoids CSE making dead values live again
    	{name: "lowered cse", fn: cse},
    	{name: "elim unread autos", fn: elimUnreadAutos},
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 22 14:55:18 UTC 2024
    - 18.6K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/_gen/rulegen.go

    	return match, cond, result
    }
    
    func genRules(arch arch)          { genRulesSuffix(arch, "") }
    func genSplitLoadRules(arch arch) { genRulesSuffix(arch, "splitload") }
    func genLateLowerRules(arch arch) { genRulesSuffix(arch, "latelower") }
    
    func genRulesSuffix(arch arch, suff string) {
    	// Open input file.
    	text, err := os.Open(arch.name + suff + ".rules")
    	if err != nil {
    		if suff == "" {
    			// All architectures must have a plain rules file.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Sat Sep 02 22:09:21 UTC 2023
    - 48.7K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/_gen/PPC64.rules

    // n is always a zero-extended uint16 value, so n & z is always a non-negative 32 or 64 bit value.
    // Rewrite to a cmp int64(0) to lower into ANDCCconst in the latelower pass.
    (CMP(W|U|WU)const [0] a:(ANDconst [n] z)) => (CMPconst [0] a)
    
    // SETBC auxInt values 0=LT 1=GT 2=EQ   Crbit==1 ? 1 : 0
    // SETBCR auxInt values 0=LT 1=GT 2=EQ   Crbit==1 ? 0 : 1
    (Equal cmp) => (SETBC [2] cmp)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 53.2K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/ssa/_gen/ARM64latelower.rules

    // Copyright 2022 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.
    
    // This file contains rules used by the laterLower pass.
    // These are often the exact inverse of rules in ARM64.rules.
    
    (ADDconst [c] x) && !isARM64addcon(c)  => (ADD x (MOVDconst [c]))
    (SUBconst [c] x) && !isARM64addcon(c)  => (SUB x (MOVDconst [c]))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Mar 12 19:38:41 UTC 2024
    - 4.1K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/ssa/_gen/PPC64latelower.rules

    // Copyright 2022 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.
    
    // This file contains rules used by the laterLower pass.
    
    // Simplify ISEL x $0 z into ISELZ
    (ISEL [a] x (MOVDconst [0]) z) => (ISELZ [a] x z)
    // Simplify ISEL $0 y z into ISELZ by inverting comparison and reversing arguments.
    (ISEL [a] (MOVDconst [0]) y z) => (ISELZ [a^0x4] y z)
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 19:59:38 UTC 2024
    - 3.8K bytes
    - Viewed (0)
Back to top