From patchwork Tue Jun 19 15:43:40 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139154 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5368191lji; Tue, 19 Jun 2018 08:47:43 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLDfYGC+gkbN2IYih/uude7tRao0SZzq2pgtobED9FTorMMlvRD8rgCzopVeJOVhu0uW7ET X-Received: by 2002:aed:21a9:: with SMTP id l38-v6mr15481274qtc.87.1529423263674; Tue, 19 Jun 2018 08:47:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423263; cv=none; d=google.com; s=arc-20160816; b=elRXlDyuYmtJnSWZzHeMVwrgG7PKWuT5U/SAeiF/kIN6quGrt7tydqnRvvufzoNrL4 YKYzhZunKanTUjvA8JTjXxeJdF+Kqpfj+p47PGoZbPt8EDB7MjqVU40kZtDANzZDq+dP 7DUZrU1vIqrihtDOqhxFZ6dPsWel2zqWw/8TOn7D0lzS+T5O+aez8kkyUQj8Nigt6tzP zAkw6Jtx1y5rdy9cS+mHyvgrw23ZxLful/JqIwTPKtBA4S4NpBa2ikZvwKU+DQYaVLoi 0eumPqMbvJ+d5DcMXGoLLJ5YcdIl1UG22wsH8GcRnc1PPksb8VXe4FsXFfPmhyX5jznw UPgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=ZfKHVBo27aS5rOvSVvcAi7UwuRGHO8gLT/mozS0c1e4=; b=eN5S76vPeteI7OBlY46sIXxG4a5LhB+jHLekCuigNDmADbyxrPCkXzSrQJ8Ni2tPtT fIRKHppyEW9csIjbAoWSoa5bUO7MwI/wbmpa1agItmPqs57QsmG3/X8iYj4uK/ebFFCf fmRuOs17GJB12NoPd4MHJ02FkXiDGMZviu7I069MmRnuObBoODO92cv1rxGUIOtHIW6C 2sHs2W42/v7/lm33etFYXrwQMIQWZKBVXevtPKxKOXi1z8Mw1D0memPbr005NOG8jqAF /8jp/6N95c3oaqSzYoTap7HW6bZmNDUNj8HKkFFrnX/peO9jxjWOQQOuaRT745TUi7ls BeYQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=d5JNcDxb; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id x11-v6si12980qtk.208.2018.06.19.08.47.43 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:47:43 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=d5JNcDxb; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43340 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIr9-0007nM-4d for patch@linaro.org; Tue, 19 Jun 2018 11:47:43 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35017) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoD-0006Um-Sm for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoB-0006JP-2h for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:41 -0400 Received: from mail-wr0-x241.google.com ([2a00:1450:400c:c0c::241]:32794) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoA-0006J1-Pl for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:39 -0400 Received: by mail-wr0-x241.google.com with SMTP id k16-v6so169504wro.0 for ; Tue, 19 Jun 2018 08:44:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZfKHVBo27aS5rOvSVvcAi7UwuRGHO8gLT/mozS0c1e4=; b=d5JNcDxb/NkOgaey+zss64Rka3CdABnaIZZPkQ8affUFHlrvUewm2XUwFWY80nFhGg AGh+xu8x2SisbmhLEIKHPTsRBRNJRSIdOwEx6w2cDTk6Xxj86DiAItYRjaCvxSXWsrgM wGk/T7eEZN1Sp4tRHDitDKueg12FAYtzqClDo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ZfKHVBo27aS5rOvSVvcAi7UwuRGHO8gLT/mozS0c1e4=; b=J07l16tkOQAlS+dM20DYscM8Q28SiKbZt+Ozo+jT7+mWvHyQ4b0IJxbRpl8ETruRjg 1WoKNOFq2kdVLuKYl9qSMW9UFEA6RbQRt9x3d26blDIYl6EJDfiyCienOWaAFI04Gjl2 sH057CY1XijPWa7nJcMVTSXrqmhyzNtdS2mhZy60O0bwuD86xEbp2uLlUnB9RE0U0mg9 DYuabnGVI+MrTh2SZcpHs6nehhGFuUOMu21q/aq2m+VAFxVieRzySAFd5iP2oqbgC3jP hsofaDw1wiyFIppORSEhikwiTg2w4stgTzpnrOTAx2RoOTj3MyEewDMNfJd7kNKddCZb 3krw== X-Gm-Message-State: APt69E3OOKxcu1ads37i7WR+LRjJZ17MZfqp5/7JoN1G/NFHM43LweW2 Gz3kXF9wpCu68AMYcUhIkzJsVw== X-Received: by 2002:adf:8747:: with SMTP id 7-v6mr13531171wrz.117.1529423077581; Tue, 19 Jun 2018 08:44:37 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id 132-v6sm522202wmr.33.2018.06.19.08.44.35 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:36 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 8B5063E0865; Tue, 19 Jun 2018 16:44:35 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:40 +0100 Message-Id: <20180619154435.18898-2-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::241 Subject: [Qemu-devel] [PULL 01/56] configure: add support for --cross-cc-FOO X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This allows us to specify cross compilers for our guests. This is useful for building test images/programs. Currently we re-run the compile test for each target. I couldn't think of a way to cache the value for a given arch without getting messier configure code. The cross compiler for the guest is visible to each target as CROSS_CC_GUEST in config-target.mak. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson --- v3 - --cross-cc-*[!a-zA-Z0-9_-]*=*) error_exit... - --cross-cc-*) cc_arch=${opt#--cross-cc-}; cc_arch=${cc_arch%%=*} - add remaining target_compiler definitions v4 - also set cross_cc_$cpu=$host_cc - try a non-static build if static fails - use write_c_skeleton - add doc string in help -- 2.17.1 diff --git a/configure b/configure index a8c4094c87..089de03918 100755 --- a/configure +++ b/configure @@ -458,6 +458,13 @@ vxhs="" libxml2="" docker="no" +# cross compilers defaults, can be overridden with --cross-cc-ARCH +cross_cc_aarch64="aarch64-linux-gnu-gcc" +cross_cc_arm="arm-linux-gnueabihf-gcc" +cross_cc_powerpc="powerpc-linux-gnu-gcc" + +enabled_cross_compilers="" + supported_cpu="no" supported_os="no" bogus_os="no" @@ -488,6 +495,11 @@ for opt do ;; --disable-debug-info) debug_info="no" ;; + --cross-cc-*[!a-zA-Z0-9_-]*=*) error_exit "Passed bad --cross-cc-FOO option" + ;; + --cross-cc-*) cc_arch=${opt#--cross-cc-}; cc_arch=${cc_arch%%=*} + eval "cross_cc_${cc_arch}=\$optarg" + ;; esac done # OS specific @@ -676,30 +688,37 @@ case "$cpu" in ppc|ppc64|s390|s390x|sparc64|x32) cpu="$cpu" supported_cpu="yes" + eval "cross_cc_${cpu}=\$host_cc" ;; i386|i486|i586|i686|i86pc|BePC) cpu="i386" supported_cpu="yes" + cross_cc_i386=$host_cc ;; x86_64|amd64) cpu="x86_64" supported_cpu="yes" + cross_cc_x86_64=$host_cc ;; armv*b|armv*l|arm) cpu="arm" supported_cpu="yes" + cross_cc_arm=$host_cc ;; aarch64) cpu="aarch64" supported_cpu="yes" + cross_cc_aarch64=$host_cc ;; mips*) cpu="mips" supported_cpu="yes" + cross_cc_mips=$host_cc ;; sparc|sun4[cdmuv]) cpu="sparc" supported_cpu="yes" + cross_cc_sparc=$host_cc ;; *) # This will result in either an error or falling back to TCI later @@ -917,6 +936,8 @@ for opt do ;; --disable-debug-info) ;; + --cross-cc-*) + ;; --enable-modules) modules="yes" ;; @@ -1501,6 +1522,7 @@ Advanced options (experts only): --extra-cflags=CFLAGS append extra C compiler flags QEMU_CFLAGS --extra-cxxflags=CXXFLAGS append extra C++ compiler flags QEMU_CXXFLAGS --extra-ldflags=LDFLAGS append extra linker flags LDFLAGS + --cross-cc-ARCH=CC use compiler when building ARCH guest test cases --make=MAKE use specified make [$make] --install=INSTALL use specified install [$install] --python=PYTHON use specified python [$python] @@ -6820,6 +6842,9 @@ case "$target" in ;; esac +target_compiler="" +target_compiler_static="" + mkdir -p $target_dir echo "# Automatically generated by configure - do not modify" > $config_target_mak @@ -6835,19 +6860,23 @@ TARGET_ABI_DIR="" case "$target_name" in i386) gdb_xml_files="i386-32bit.xml i386-32bit-core.xml i386-32bit-sse.xml" + target_compiler=$cross_cc_i386 ;; x86_64) TARGET_BASE_ARCH=i386 gdb_xml_files="i386-64bit.xml i386-64bit-core.xml i386-64bit-sse.xml" + target_compiler=$cross_cc_x86_64 ;; alpha) mttcg="yes" + target_compiler=$cross_cc_alpha ;; arm|armeb) TARGET_ARCH=arm bflt="yes" mttcg="yes" gdb_xml_files="arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml" + target_compiler=$cross_cc_arm ;; aarch64|aarch64_be) TARGET_ARCH=aarch64 @@ -6855,59 +6884,74 @@ case "$target_name" in bflt="yes" mttcg="yes" gdb_xml_files="aarch64-core.xml aarch64-fpu.xml arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml" + target_compiler=$cross_cc_aarch64 ;; cris) + target_compiler=$cross_cc_cris ;; hppa) mttcg="yes" + target_compiler=$cross_cc_hppa ;; lm32) + target_compiler=$cross_cc_lm32 ;; m68k) bflt="yes" gdb_xml_files="cf-core.xml cf-fp.xml m68k-fp.xml" + target_compiler=$cross_cc_m68k ;; microblaze|microblazeel) TARGET_ARCH=microblaze bflt="yes" echo "TARGET_ABI32=y" >> $config_target_mak + target_compiler=$cross_cc_microblaze ;; mips|mipsel) TARGET_ARCH=mips + target_compiler=$cross_cc_mips echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak ;; mipsn32|mipsn32el) TARGET_ARCH=mips64 TARGET_BASE_ARCH=mips + target_compiler=$cross_cc_mipsn32 echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak echo "TARGET_ABI32=y" >> $config_target_mak ;; mips64|mips64el) TARGET_ARCH=mips64 TARGET_BASE_ARCH=mips + target_compiler=$cross_cc_mips64 echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak ;; moxie) + target_compiler=$cross_cc_moxie ;; nios2) + target_compiler=$cross_cc_nios2 ;; or1k) + target_compiler=$cross_cc_or1k TARGET_ARCH=openrisc TARGET_BASE_ARCH=openrisc ;; ppc) gdb_xml_files="power-core.xml power-fpu.xml power-altivec.xml power-spe.xml" + target_compiler=$cross_cc_powerpc ;; ppcemb) TARGET_BASE_ARCH=ppc TARGET_ABI_DIR=ppc gdb_xml_files="power-core.xml power-fpu.xml power-altivec.xml power-spe.xml" + target_compiler=$cross_cc_ppcemb ;; ppc64) TARGET_BASE_ARCH=ppc TARGET_ABI_DIR=ppc mttcg=yes gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" + target_compiler=$cross_cc_ppc64 ;; ppc64le) TARGET_ARCH=ppc64 @@ -6915,6 +6959,7 @@ case "$target_name" in TARGET_ABI_DIR=ppc mttcg=yes gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" + target_compiler=$cross_cc_ppc64le ;; ppc64abi32) TARGET_ARCH=ppc64 @@ -6922,45 +6967,57 @@ case "$target_name" in TARGET_ABI_DIR=ppc echo "TARGET_ABI32=y" >> $config_target_mak gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" + target_compiler=$cross_cc_ppc64abi32 ;; riscv32) TARGET_BASE_ARCH=riscv TARGET_ABI_DIR=riscv mttcg=yes + target_compiler=$cross_cc_riscv32 ;; riscv64) TARGET_BASE_ARCH=riscv TARGET_ABI_DIR=riscv mttcg=yes + target_compiler=$cross_cc_riscv64 ;; sh4|sh4eb) TARGET_ARCH=sh4 bflt="yes" + target_compiler=$cross_cc_sh4 ;; sparc) + target_compiler=$cross_cc_sparc ;; sparc64) TARGET_BASE_ARCH=sparc + target_compiler=$cross_cc_sparc64 ;; sparc32plus) TARGET_ARCH=sparc64 TARGET_BASE_ARCH=sparc TARGET_ABI_DIR=sparc + target_compiler=$cross_cc_sparc32plus echo "TARGET_ABI32=y" >> $config_target_mak ;; s390x) mttcg=yes gdb_xml_files="s390x-core64.xml s390-acr.xml s390-fpr.xml s390-vx.xml s390-cr.xml s390-virt.xml s390-gs.xml" + target_compiler=$cross_cc_s390x ;; tilegx) + target_compiler=$cross_cc_tilegx ;; tricore) + target_compiler=$cross_cc_tricore ;; unicore32) + target_compiler=$cross_cc_unicore32 ;; xtensa|xtensaeb) TARGET_ARCH=xtensa mttcg="yes" + target_compiler=$cross_cc_xtensa ;; *) error_exit "Unsupported target CPU" @@ -6971,6 +7028,27 @@ if [ "$TARGET_BASE_ARCH" = "" ]; then TARGET_BASE_ARCH=$TARGET_ARCH fi +# Do we have a cross compiler for this target? +if has $target_compiler; then + + write_c_skeleton + + if ! do_compiler $target_compiler -o $TMPE $TMPC -static ; then + # For host systems we might get away with building without -static + if ! do_compiler $target_compiler -o $TMPE $TMPC ; then + target_compiler="" + else + enabled_cross_compilers="${enabled_cross_compilers} ${target_compiler}" + target_compiler_static="n" + fi + else + enabled_cross_compilers="${enabled_cross_compilers} ${target_compiler}" + target_compiler_static="y" + fi +else + target_compiler="" +fi + symlink "$source_path/Makefile.target" "$target_dir/Makefile" upper() { @@ -7044,6 +7122,14 @@ if test "$target_bsd_user" = "yes" ; then echo "CONFIG_BSD_USER=y" >> $config_target_mak fi +if test -n "$target_compiler"; then + echo "CROSS_CC_GUEST=$target_compiler" >> $config_target_mak + + if test -n "$target_compiler_static"; then + echo "CROSS_CC_GUEST_STATIC=$target_compiler_static" >> $config_target_mak + fi +fi + # generate QEMU_CFLAGS/LDFLAGS for targets cflags="" @@ -7166,6 +7252,12 @@ echo "QEMU_CFLAGS+=$cflags" >> $config_target_mak done # for target in $targets +if test -n "$enabled_cross_compilers"; then + echo + echo "NOTE: cross-compilers enabled:" + printf '%s\n' $enabled_cross_compilers | sort -u +fi + if [ "$fdt" = "git" ]; then echo "config-host.h: subdir-dtc" >> $config_host_mak fi From patchwork Tue Jun 19 15:43:41 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139167 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5376035lji; Tue, 19 Jun 2018 08:55:03 -0700 (PDT) X-Google-Smtp-Source: ADUXVKI+S+itidhxXcUA+5G3WJu6dKheVq0Wx30rHr7OU9YkwNJhNDPKIeV+qVgkCkWUhrDvfDtI X-Received: by 2002:a37:6d03:: with SMTP id i3-v6mr14562953qkc.34.1529423703403; Tue, 19 Jun 2018 08:55:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423703; cv=none; d=google.com; s=arc-20160816; b=laIlxnyDTsvZZXSJwnba12OFsU/l9bctbrc6ni3+Dlx2bDNjj2EEpjvnPrs02qbaNq EW3yhYHF1boY8Lo9EpOkXh08X/MLEjkpNzUQyi+DQPwvY9CEnXX2S3P5DFf+BvRunzem qO1PhurCpIcFcgsxAbqo6hEH/7sfW1EH1oT3vme+TBSn11tFDbOfQmIvFgKR0IVGVCMQ Bv2xWA3f6yUVnukUl/MVrKtwkdNUmhb3JKxdChK+w2zBM7lI5n5Pu7NtzgzqWRiZq+9T qGcp2DQneL02a0ofAxA+5GCgAsUiDm5CYJZSpuIFP+aOrpnmTe4PtX6POKFk0kXefj+d R+5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=a382plahQ2poUqc2xxWA00puTkun/ceu60ki1dROSyQ=; b=gFWubj3YXmifcS38PqiVTqXGjRkk0pXRxCsRkcqs0FDbKR2M8nqsclLNjAFvr2p0ik bOAGFPF49VFQH1okqgDXO0IOV8rl4jDFMq3Ypd/4tCXBAoqlEH3iW0tqFML39V6QBK6D vfpun47DZK0dSKyCNBLb03Wra+EUl3MFSoil/pcAGm7BhbygrT0OyNsbJUMqSbbOBeGY fWsnxHxP0YHY2yTrZibFNen99LlYkxKbp8nIhYsMS47UctdrR5aeUnOsPVtgLsIEokxv 0l+4D6KMIVrJtupPWkXZgfus57lwWFzJdoGZeL92Ln6kMiqe5s9JxH20+H3X0ZNwubWF AfBQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="fYpa/43G"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id h15-v6si12146qvm.259.2018.06.19.08.55.03 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:55:03 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="fYpa/43G"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43376 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIyE-0005O9-RQ for patch@linaro.org; Tue, 19 Jun 2018 11:55:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35020) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoD-0006Ur-UH for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoB-0006Jg-Hw for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:41 -0400 Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:34876) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoB-0006JG-C5 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:39 -0400 Received: by mail-wm0-x241.google.com with SMTP id j15-v6so1370428wme.0 for ; Tue, 19 Jun 2018 08:44:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=a382plahQ2poUqc2xxWA00puTkun/ceu60ki1dROSyQ=; b=fYpa/43G7avLdy6CnO2Q/Y39385Gcp19nYT7QEL29fkNBc7zK963p2DazGzG3dCq/s vPj5ISUphu7aMyl1KP1EDKDPWxRZnc4ihUnScKzecRvlCSjbXvp9jbSo41ZxeJWazNgA QS6IcxmYd5TnpTwnRwgZ0ifoOOvxlLKX1l/f0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=a382plahQ2poUqc2xxWA00puTkun/ceu60ki1dROSyQ=; b=DK/2BYnSDa+vyyOntNUEOatrn/rApPCbxhQ4rPfTPPGrKPuzBpLnpwcrtLMHXU9d8w jkvq02dUuEvQqWKDG9YT3NhYzMfUlYMCgrpLCtx3sfA/aBuH6EezKZHrFyvBbX+RMrGx VGy+M/sVhyb97O5Gm9DQVaPIUxgTs9ZbmxyxJ5BvpF7R7uYp9cyehHFx9no3MiKaeMKd o83smosBvzkE0my1IHJgqaVfY3wjvCiv+mVUtCbRak2+qm+sHFmpE8yUYeekGDQKYyuZ kqi35S8QqF3hv7MUJZzSzUGqptiKgOCdsNFkZXCO7UDpiEOFVfoP9t6BLrsQEvzbQbhV YFvQ== X-Gm-Message-State: APt69E1aOmLDK9IZymoSvvmZULG0T5CLPq1OLWYvJe4S8J7nPIUZAD7G pBzz0wFZ9/AryaTe8wEEN4AsTg== X-Received: by 2002:a1c:e594:: with SMTP id c142-v6mr12484913wmh.161.1529423078299; Tue, 19 Jun 2018 08:44:38 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id a1-v6sm1538wrq.54.2018.06.19.08.44.35 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:36 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 9E93B3E0866; Tue, 19 Jun 2018 16:44:35 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:41 +0100 Message-Id: <20180619154435.18898-3-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::241 Subject: [Qemu-devel] [PULL 02/56] configure: move i386_cc to cross_cc_i386 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Also dont assume x86_64 compiler can build i386 binaries. Signed-off-by: Alex Bennée Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- v2 - drop using system x86_64 compiler for i386 compiles v3 - fix cross_cc_i386 when on i386 v4 - fix merge conflicts - sort cross_cc defines -- 2.17.1 diff --git a/configure b/configure index 089de03918..6e33dbbe10 100755 --- a/configure +++ b/configure @@ -289,7 +289,6 @@ libs_softmmu="" libs_tools="" audio_pt_int="" audio_win_int="" -cc_i386=i386-pc-linux-gnu-gcc libs_qga="" debug_info="yes" stack_protector="" @@ -461,6 +460,8 @@ docker="no" # cross compilers defaults, can be overridden with --cross-cc-ARCH cross_cc_aarch64="aarch64-linux-gnu-gcc" cross_cc_arm="arm-linux-gnueabihf-gcc" +cross_cc_i386="i386-pc-linux-gnu-gcc" +cross_cc_cflags_i386="" cross_cc_powerpc="powerpc-linux-gnu-gcc" enabled_cross_compilers="" @@ -1447,7 +1448,8 @@ case "$cpu" in i386) CPU_CFLAGS="-m32" LDFLAGS="-m32 $LDFLAGS" - cc_i386='$(CC) -m32' + cross_cc_i386=$cc + cross_cc_cflags_i386=$CPU_CFLAGS ;; x86_64) # ??? Only extremely old AMD cpus do not have cmpxchg16b. @@ -1455,12 +1457,14 @@ case "$cpu" in # runtime and generate the fallback to serial emulation. CPU_CFLAGS="-m64 -mcx16" LDFLAGS="-m64 $LDFLAGS" - cc_i386='$(CC) -m32' + cross_cc_x86_64=$cc + cross_cc_cflags_x86_64=$CPU_CFLAGS ;; x32) CPU_CFLAGS="-mx32" LDFLAGS="-mx32 $LDFLAGS" - cc_i386='$(CC) -m32' + cross_cc_i386=$cc + cross_cc_cflags_i386="-m32" ;; # No special flags required for other host CPUs esac @@ -6723,7 +6727,6 @@ echo "CC=$cc" >> $config_host_mak if $iasl -h > /dev/null 2>&1; then echo "IASL=$iasl" >> $config_host_mak fi -echo "CC_I386=$cc_i386" >> $config_host_mak echo "HOST_CC=$host_cc" >> $config_host_mak echo "CXX=$cxx" >> $config_host_mak echo "OBJCC=$objcc" >> $config_host_mak @@ -6844,6 +6847,7 @@ esac target_compiler="" target_compiler_static="" +target_compiler_cflags="" mkdir -p $target_dir echo "# Automatically generated by configure - do not modify" > $config_target_mak @@ -6861,6 +6865,7 @@ case "$target_name" in i386) gdb_xml_files="i386-32bit.xml i386-32bit-core.xml i386-32bit-sse.xml" target_compiler=$cross_cc_i386 + target_compiler_cflags=$cross_cc_ccflags_i386 ;; x86_64) TARGET_BASE_ARCH=i386 @@ -7033,9 +7038,9 @@ if has $target_compiler; then write_c_skeleton - if ! do_compiler $target_compiler -o $TMPE $TMPC -static ; then + if ! do_compiler $target_compiler $target_compiler_cflags -o $TMPE $TMPC -static ; then # For host systems we might get away with building without -static - if ! do_compiler $target_compiler -o $TMPE $TMPC ; then + if ! do_compiler $target_compiler $target_compiler_cflags -o $TMPE $TMPC ; then target_compiler="" else enabled_cross_compilers="${enabled_cross_compilers} ${target_compiler}" @@ -7128,8 +7133,13 @@ if test -n "$target_compiler"; then if test -n "$target_compiler_static"; then echo "CROSS_CC_GUEST_STATIC=$target_compiler_static" >> $config_target_mak fi + + if test -n "$target_compiler_cflags"; then + echo "CROSS_CC_GUEST_CFLAGS=$target_compiler_cflags" >> $config_target_mak + fi fi + # generate QEMU_CFLAGS/LDFLAGS for targets cflags="" From patchwork Tue Jun 19 15:43:42 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139164 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5373038lji; Tue, 19 Jun 2018 08:52:00 -0700 (PDT) X-Google-Smtp-Source: ADUXVKI/iSS4Nx/bhb3NfWRts3hH447XnsPNHuNUIfuUcNk5AD8X0CVHXYs5lblcMjG6K+b4bqhX X-Received: by 2002:a37:b507:: with SMTP id e7-v6mr14513201qkf.31.1529423520619; Tue, 19 Jun 2018 08:52:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423520; cv=none; d=google.com; s=arc-20160816; b=WaQVrK2yg1TlsNPWoF5WPDvUvDRcwEyMY++9cOHUAuy3bhr7l5N2GVY1J0Mfyg6yAr iDEMuicLJ+qNsZkXsSNYILz+Gk2zeFCY65qsMra0vwVLR5OwLRBbLKDtTR5jxiwomCf1 r1HHgqupdyzvvjiq0i9tcbRVkh7I11+MUb1ztsztfGOK5kpF7hoTZMSwfP0WGOUe8x2B AbL0KzHXVnrOjXwajoXZv82XR5APiptkU81sw5Wuo9hJ+4164mIWHL4BM1xtU3bd9Om+ VsvX8UcfbsoGN/qVav6Jw7rfUi1+6cDzvh/tJxZbz4U88aCdxnZbezWDJhx9Fw81Mjnz oATQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=cvehJuDYPMZZqdlegd4RYj4DgePqyiE6cHaMBkQSQAE=; b=uDmf/zb+iFLcxNyUy4mrt8+G2cn7KH5rhtPEy3+EW+NeS67NvpsFJHf4i3D89pxldj Ix62DgjQlERAb/58HKw6ufhn3SH4y8ts0G5YMXUhzbwH1SYs6Uhic0wDyfDRDobQETON WP2ORqiG9AWTnlfrG4i93KAZ2CLIaFUl1Wxj1aQ1GmtcUDDUweMZRBKYQnHBf5EbRMvi tgCmHEuOiKrLLoIkDgJFkaddr1lznoJvsg7IrkJAQQTOi7jgbrZ1IhZ2czbgdPT6Qblx jC5pLgnxUqFHBxrfmLJNmssOWPNjIAS64MKPs2NHgfXy6bHs9uw4GP4OgK6tJYmCDAkk rUdA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UoR0Rs+A; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [208.118.235.17]) by mx.google.com with ESMTPS id q1-v6si21760qvm.137.2018.06.19.08.52.00 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:52:00 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UoR0Rs+A; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43367 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvI-00047E-0p for patch@linaro.org; Tue, 19 Jun 2018 11:52:00 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35019) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoD-0006Uq-U9 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoC-0006KU-DL for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:41 -0400 Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:40448) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoC-0006Jb-34 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:40 -0400 Received: by mail-wm0-x241.google.com with SMTP id n5-v6so1299455wmc.5 for ; Tue, 19 Jun 2018 08:44:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=cvehJuDYPMZZqdlegd4RYj4DgePqyiE6cHaMBkQSQAE=; b=UoR0Rs+A4IHuC74IG+7nIrrUbq69vIE99S+z6nmnIIWfy7YeWU7EF9KFoezCPY/+BD XcNH2ynhv7fO+zxi/SaVh62gPVL5Xn3PvJOAzq/YqO5cuHqdbpjyeTVXFD376Ps2tdSs UAi9Tav/b19rp/NMh5f/c6H2jls8W49M3zqsk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=cvehJuDYPMZZqdlegd4RYj4DgePqyiE6cHaMBkQSQAE=; b=odCnFho2w3UHe9e2qr3Vnt3SoQmWdr0Pil5AigMe5Ui4lYqv9Ee4zBTGart+T6Lrmx 6/+MmfYRvKnVzzK/6++2EJrlinzU4guiPWd4nJOy95uiVct/YvSmAdBNcD9TLR8jXQ7+ vV8EmhC3k2T9QMmSPzmP0uFWMWHQAJTEtgyp/ED7NCNGcfdvRdICKFmjOdJ4CFGM8nhj 5nWiPHzWcE2CtA5kkWMHxzCdpOFuEUCQ7bNC8Dd/tWXC9QQ88iD+SrYuJppaCycZm2Tl Fr2tOBnTPWF07z4WQiGcuE7PhZSguj15iJRYGFLuxTodIiNuPZGH13P4MFUHnSzq04QV kt8Q== X-Gm-Message-State: APt69E31A9FGp1M/FLlqBjy3nOW8QsQD49opJyokL/28obYcBqLEeXQc b5/KLx4gQmiPOeio3E6Udcu8IA== X-Received: by 2002:a1c:a54e:: with SMTP id o75-v6mr12738905wme.157.1529423079013; Tue, 19 Jun 2018 08:44:39 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id s2-v6sm20434578wrn.75.2018.06.19.08.44.36 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:36 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id B5B913E08B3; Tue, 19 Jun 2018 16:44:35 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:42 +0100 Message-Id: <20180619154435.18898-4-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::241 Subject: [Qemu-devel] [PULL 03/56] configure: allow user to specify --cross-cc-cflags-foo= X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As an individual compiler may be able to support several targets with the appropriate flags we need to expose this to the user as well. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson --- v3 - fix up the cross-cc v4 - add --help text - sort cross_cc_foo lines -- 2.17.1 diff --git a/configure b/configure index 6e33dbbe10..b96017b423 100755 --- a/configure +++ b/configure @@ -459,10 +459,14 @@ docker="no" # cross compilers defaults, can be overridden with --cross-cc-ARCH cross_cc_aarch64="aarch64-linux-gnu-gcc" +cross_cc_aarch64_be="$cross_cc_aarch64" +cross_cc_cflags_aarch64_be="-mbig-endian" cross_cc_arm="arm-linux-gnueabihf-gcc" +cross_cc_cflags_armeb="-mbig-endian" cross_cc_i386="i386-pc-linux-gnu-gcc" cross_cc_cflags_i386="" cross_cc_powerpc="powerpc-linux-gnu-gcc" +cross_cc_powerpc="powerpc-linux-gnu-gcc" enabled_cross_compilers="" @@ -498,6 +502,9 @@ for opt do ;; --cross-cc-*[!a-zA-Z0-9_-]*=*) error_exit "Passed bad --cross-cc-FOO option" ;; + --cross-cc-cflags-*) cc_arch=${opt#--cross-cc-flags-}; cc_arch=${cc_arch%%=*} + eval "cross_cc_cflags_${cc_arch}=\$optarg" + ;; --cross-cc-*) cc_arch=${opt#--cross-cc-}; cc_arch=${cc_arch%%=*} eval "cross_cc_${cc_arch}=\$optarg" ;; @@ -1527,6 +1534,7 @@ Advanced options (experts only): --extra-cxxflags=CXXFLAGS append extra C++ compiler flags QEMU_CXXFLAGS --extra-ldflags=LDFLAGS append extra linker flags LDFLAGS --cross-cc-ARCH=CC use compiler when building ARCH guest test cases + --cross-cc-flags-ARCH= use compiler flags when building ARCH guest tests --make=MAKE use specified make [$make] --install=INSTALL use specified install [$install] --python=PYTHON use specified python [$python] @@ -6882,6 +6890,7 @@ case "$target_name" in mttcg="yes" gdb_xml_files="arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml" target_compiler=$cross_cc_arm + eval "target_compiler_cflags=\$cross_cc_cflags_${target_name}" ;; aarch64|aarch64_be) TARGET_ARCH=aarch64 @@ -6890,6 +6899,7 @@ case "$target_name" in mttcg="yes" gdb_xml_files="aarch64-core.xml aarch64-fpu.xml arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml" target_compiler=$cross_cc_aarch64 + eval "target_compiler_cflags=\$cross_cc_cflags_${target_name}" ;; cris) target_compiler=$cross_cc_cris From patchwork Tue Jun 19 15:43:43 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139153 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5366857lji; Tue, 19 Jun 2018 08:46:26 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJZV73iqKMtgnlOknfn8DQjE5bDb4o/6C2CrWrj+87TPVkYE/HotsoX8a5aqtkcXblSAHtK X-Received: by 2002:a37:ef0d:: with SMTP id j13-v6mr14175070qkk.120.1529423186487; Tue, 19 Jun 2018 08:46:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423186; cv=none; d=google.com; s=arc-20160816; b=KxTpPVuG7S4Ke+xaE/9ZjgcnW50SQFRPXXIqScFWG8oa1ujMP57kEqsVbwUZQ8d3IO JGTPf2K/KHHmZZDDPrT7CHwoPsIbp7QtsURT9LIIEmxMlnSEzl6mAnjE3fvA0bv0JLFI i/KMA9SV91exlFLJq6W0NuniNi+e/7i1ugR2VitjHrqha5D/0k1DS7ek/gxOFlTFmpl8 Pd1YLIYtDNVgb1q13T0rAeeuXnhaMZuN3beWKFgOCj35eqEeZWXsk6Fs3s675lZAqCd0 LWhBs/CiiPkkF5ZERPkataDU6AMHv0PulCpsW3RJOWuim6HpuexB8ewP92YixJGyZQFF pu8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=nLYyHY5cnrQ4ej4B04HPYm6T5UydIYCTi8Xp0zB5Vpk=; b=pNmHL5Z4Si3xVgySn0jhPWcR9XoMZ7KknIvglgzsQ4zVu2tDm4YntVdS1TS7oCAlsF GnG8tIcns/Ny3oPQIBrg8f6HWQbTJnU93LTjYwGJhBbNCbmTQAfCXeHav1u2I0jF22G6 f+HONIsU2Hb+0W2hxLU18WrZWlisfQtq9+prrxbJQBh/fcwNpqXStHNyoqPe9TQnOFkc FVKZh5HHDOWJng+214sBqaP9SzrFJpO7ioR8IJ/0MaQ6Tth/yeNqsGqQO9gimm20t2Yi isJ/EKwI5zJFzwkDjAwa5uKEU9gCM1GUXnEkh9pZd/PNb+5xD+pTtTDXuBo4bI6GOHTB iMaQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=ZvV7AYkb; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id o59-v6si1920826qvo.281.2018.06.19.08.46.26 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:46:26 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=ZvV7AYkb; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43339 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIpu-0007dP-0T for patch@linaro.org; Tue, 19 Jun 2018 11:46:26 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35025) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoE-0006Uz-4Y for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoD-0006Kx-6c for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:42 -0400 Received: from mail-wm0-x231.google.com ([2a00:1450:400c:c09::231]:50447) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoD-0006KY-0l for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:41 -0400 Received: by mail-wm0-x231.google.com with SMTP id e16-v6so1190732wmd.0 for ; Tue, 19 Jun 2018 08:44:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=nLYyHY5cnrQ4ej4B04HPYm6T5UydIYCTi8Xp0zB5Vpk=; b=ZvV7AYkbP9NB9hCqepRLq1c+7UwHv7XGLPEaVb6taQrv2xipYXESAdO6jL0Gb96ZjE jMqbzt9z65NGx7AzdQyNYrkDTNDjgiELf3YalsFkPO+sxgP97aigwmdvCGSQhQLPMHxE ol1k6nxJKOLOAPf6ZpsdFfVS+sQcMWml9J2tI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=nLYyHY5cnrQ4ej4B04HPYm6T5UydIYCTi8Xp0zB5Vpk=; b=YLRBprshLk69uJjAFh2psJcFhymhwTqIl0s4/cJN0uggBy+mM/Pp/Ee8dC19B91l1q qkILDtEJRm9sY3hPjDlMcB35vCoERLKid67+Vl9rLFB9PCHAKMfJb3RqRd8l1LFNLhHU XE6d7wYR/K33x9JZm9hTIfNJop4AGzeTKYTj6a4EEqJPmc4ewBqjj/io8o98YkL99wes hW/6JWtD5ePERZxPaLl8isKUQ/DJmdyAT2sicy47PvWCbZUeVWwkcVO3wREziHm/MDLq 3qI3uytElRJoqGummH8D3qY6NT1BFz8VlqMRx/P+jjs3KAxmPWeDphbF+9lpnRCDxDEH wnsQ== X-Gm-Message-State: APt69E2XrPfmtPhRA154uXlHT696I1ERWn4G+mDvbHAU5J85Zsj4Z+cg I3nAesruBwBO/hKFljgKcZ+28A== X-Received: by 2002:a1c:f014:: with SMTP id a20-v6mr11481121wmb.97.1529423079894; Tue, 19 Jun 2018 08:44:39 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id g205-v6sm428208wmg.43.2018.06.19.08.44.36 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:36 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id C9A983E08BB; Tue, 19 Jun 2018 16:44:35 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:43 +0100 Message-Id: <20180619154435.18898-5-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::231 Subject: [Qemu-devel] [PULL 04/56] configure: set cross_cc_FOO for host compiler X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" We can build tests for the host system with the compiler that we have selected. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson -- 2.17.1 diff --git a/configure b/configure index b96017b423..069219e9ae 100755 --- a/configure +++ b/configure @@ -1431,26 +1431,38 @@ case "$cpu" in ppc) CPU_CFLAGS="-m32" LDFLAGS="-m32 $LDFLAGS" + cross_cc_powerpc=$cc + cross_cc_cflags_powerpc=$CPU_CFLAGS ;; ppc64) CPU_CFLAGS="-m64" LDFLAGS="-m64 $LDFLAGS" + cross_cc_ppc64=$cc + cross_cc_cflags_ppc64=$CPU_CFLAGS ;; sparc) CPU_CFLAGS="-m32 -mv8plus -mcpu=ultrasparc" LDFLAGS="-m32 -mv8plus $LDFLAGS" + cross_cc_sparc=$cc + cross_cc_cflags_sparc=$CPU_CFLAGS ;; sparc64) CPU_CFLAGS="-m64 -mcpu=ultrasparc" LDFLAGS="-m64 $LDFLAGS" + cross_cc_sparc64=$cc + cross_cc_cflags_sparc64=$CPU_CFLAGS ;; s390) CPU_CFLAGS="-m31" LDFLAGS="-m31 $LDFLAGS" + cross_cc_s390=$cc + cross_cc_cflags_s390=$CPU_CFLAGS ;; s390x) CPU_CFLAGS="-m64" LDFLAGS="-m64 $LDFLAGS" + cross_cc_s390x=$cc + cross_cc_cflags_s390x=$CPU_CFLAGS ;; i386) CPU_CFLAGS="-m32" @@ -1471,7 +1483,7 @@ case "$cpu" in CPU_CFLAGS="-mx32" LDFLAGS="-mx32 $LDFLAGS" cross_cc_i386=$cc - cross_cc_cflags_i386="-m32" + cross_cc_cflags_i386=$CPU_CFLAGS ;; # No special flags required for other host CPUs esac From patchwork Tue Jun 19 15:43:44 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139184 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5386535lji; Tue, 19 Jun 2018 09:04:15 -0700 (PDT) X-Google-Smtp-Source: ADUXVKK5EAGfPQ+0R6GhNHmAMXj1haVmwYf5bLBDeFdpJQy7i+T4JtwS9RletIicNppizt5u45E4 X-Received: by 2002:a37:4788:: with SMTP id u130-v6mr15049864qka.301.1529424255823; Tue, 19 Jun 2018 09:04:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424255; cv=none; d=google.com; s=arc-20160816; b=hcA2wmLFoE4wPxuHyRTmXpcPyE7UxM8qIVsA58o14aYibUFwhIVfi0UC+YuZFVaE1p XF8gZ/t7pAVy4h7HPxiJrp5Gc/XJU7WtzGINcKh+/fGBZetidXyJYfjnb4ERZHx2+h/b HM48erZgf8prTcximVdLyZ02u1nackzZHnQrpM3FhFcA3cxUfyJoi757Vy2Y33+XSftx kEOTBFWkzTCXqQujAKzmWWTFZcM32ojaPYtgprmcSwg8rXrNKF0cC4gDc4+EMD6ZFS8d uqH2A1ociuFl4FPU5BxXqQm78+fuoOZTv3fC7YjfplBVdhB/OjqKy3cEG2mW/owJmaUd 1ymg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=H34F/QynxIPq1fCHjZu6nADKVRU7PN3mDXHYD0McbMg=; b=009HrA+sSR3EY0XfIvFHMBGzn18ucWIwsGOsKR/KhaP5neHjNW4tLiqhdAMLL5kY4I bvJe3roplN8Kc8m1/Q/6EBy6LJLjS5NzmAXNetMNviklQ9lCAYiV6Gy9l9kDAcV0oi5h GB4fi0HZ2ynQbTpipd+h5fc53F2Vwy/z5BPGrtJYvCHScmLVR+xl7e/Rku3uvcrXk7yN 08p8UUp6RwxEyF54c5npwNGzgeLRcNMoIeIgePRFhdchoro4TlYS/WIK+CeSar3756MO u11q//pwwA1DYgmYjD5XrmVRPWSHuLnq0k1Bib16Z0pwRQk8IJMTO2N/ymFoYRR2YFd1 +3JA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=iUG4jkYV; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id z12-v6si76084qva.19.2018.06.19.09.04.15 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:04:15 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=iUG4jkYV; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43438 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ79-00052y-AA for patch@linaro.org; Tue, 19 Jun 2018 12:04:15 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35071) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoG-0006WE-3a for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoF-0006NY-6F for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:44 -0400 Received: from mail-wm0-x233.google.com ([2a00:1450:400c:c09::233]:55265) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoE-0006Mn-V8 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:43 -0400 Received: by mail-wm0-x233.google.com with SMTP id o13-v6so1147622wmf.4 for ; Tue, 19 Jun 2018 08:44:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=H34F/QynxIPq1fCHjZu6nADKVRU7PN3mDXHYD0McbMg=; b=iUG4jkYVfdPKZiDJ2ChGG8c9Vt7LSNUW9qBtzdpC9TQbxiCp5PIi0z5lcTzYWmAXir jl4pTqVYNHWRWxkwRaLSqkd+9Yd0nAPh8kct3Pd4XdNWUF6UncquR5+nlNx+iojxl1nq RqUuP3oxNkqxZd5aD5OYT5ZnZOLj+vJBfuD34= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=H34F/QynxIPq1fCHjZu6nADKVRU7PN3mDXHYD0McbMg=; b=GvALmI8/q8DnlGHec094wXWkF3pSuaoYxwl+RwyWFpHIgLpTok+Bn9bk6H21iMAe0m YxyBs9NhsjZl6zNaVTCfbEedsKxuKWeK5g2soJ/dhuk7sqvLMD3VGRPl3vNG4isNX2Ux JM9rvBCXzwnZB2Xeqvb/dFj0Ac8S1ULE5eT0YYel50yyxU6s39JBwiCWgYdLSk9wu+vj LsMcHmWoBGOQJDuLLBm5bF7u5iHQ6HloWbhxM3CPYc6jlMzs5SO1cXR1D4TUkMuZ8yIR 8LhUukdkSJd+IyiY9VmCHoSYNRvP9djbpxBJtpCeUi4ElX9uMLrkH2wix2THd2rMGhCb jh6A== X-Gm-Message-State: APt69E3MXs7xtA8V+kyntcPDAEt1MstJsFqcc6V+zBWIc2DlwUA8b2s6 e8+Uf4n4xRAElRxIQ+Z+pitFoQ== X-Received: by 2002:a1c:820c:: with SMTP id e12-v6mr12091018wmd.132.1529423081840; Tue, 19 Jun 2018 08:44:41 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id t124-v6sm243844wmt.29.2018.06.19.08.44.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:39 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id DDC323E08E5; Tue, 19 Jun 2018 16:44:35 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:44 +0100 Message-Id: <20180619154435.18898-6-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::233 Subject: [Qemu-devel] [PULL 05/56] docker: Add "cc" subcommand X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Fam Zheng [AJB: add if args.paths check] Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v2 - add if args.paths check to avoid iterating null argument -- 2.17.1 diff --git a/tests/docker/docker.py b/tests/docker/docker.py index 306e14cf69..4cd6f9b8ec 100755 --- a/tests/docker/docker.py +++ b/tests/docker/docker.py @@ -409,6 +409,31 @@ class ProbeCommand(SubCommand): return +class CcCommand(SubCommand): + """Compile sources with cc in images""" + name = "cc" + + def args(self, parser): + parser.add_argument("--image", "-i", required=True, + help="The docker image in which to run cc") + parser.add_argument("--source-path", "-s", nargs="*", dest="paths", + help="""Extra paths to (ro) mount into container for + reading sources""") + + def run(self, args, argv): + if argv and argv[0] == "--": + argv = argv[1:] + cwd = os.getcwd() + cmd = ["--rm", "-w", cwd, + "-v", "%s:%s:rw" % (cwd, cwd)] + if args.paths: + for p in args.paths: + cmd += ["-v", "%s:%s:ro,z" % (p, p)] + cmd += [args.image, "cc"] + cmd += argv + return Docker().command("run", cmd, args.quiet) + + def main(): parser = argparse.ArgumentParser(description="A Docker helper", usage="%s ..." % os.path.basename(sys.argv[0])) From patchwork Tue Jun 19 15:43:45 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139172 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5379631lji; Tue, 19 Jun 2018 08:58:28 -0700 (PDT) X-Google-Smtp-Source: ADUXVKL2sdTNUBKOzE/MMcglNGTht3sb7uh9knTcmaeOuIVCd8KgNlS2V3f3m/ivK/eMOeM8HnqH X-Received: by 2002:ac8:2351:: with SMTP id b17-v6mr15071686qtb.304.1529423908608; Tue, 19 Jun 2018 08:58:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423908; cv=none; d=google.com; s=arc-20160816; b=o0oLlOWOA5uRWWNv5mSuEKoS23cWLWbuwdu5aD+b0/wm5uhubQyo40DMs2CeC5XILY fSb4DlN1Kfnlz7ayfcA9GFMgLLuLtFazwn1fcdY387Km1ohXrzM1YmnTct7LGIAiaW9w Qy8lfd/uzs8A5A1EkdxnbWsOWXWKOEv4DSmGav+W2NIEpzP63p4EUyPCW/yxT69V1mIM K3r4eOdDc2c41Npm3RvuNWTzmkVIAyTr/74VAGkwzXFqlv79YuXHNjVHur9rOQZeN7tB CVitFOewiPxlMhnidG5Ic3I8eiIvAm1bIxxBvrovqVwMzGCKtVugOTBD96xlv4GMBQ0h zq5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=MgIjZRbuceJlYBBj2Oi5NylWp3gt4Pd7+gEqfcOfo8g=; b=mq19aXpN5FZSWzads6fFbJczrFHXBA0v7csaF/12DLdEsU+7guEzAIGUlYtc+uYK9y b/5HxORdJvVsW0w1lcZWIsIF+G3VEmuw5ldS9LFFHAVIkhoMJuxzkIw6mUawSJX9UYXE zHinPu4DSrEC2HE5JGvtphodZAJOOFhzuZl4GvldNCDRtZa+4F7VjMzwOcfLvpbKgPet nzzv+PZyuxSe/uI17k5aWSA1zJ0FbaBXiOtlKEYNS8QarjmE51iD3LN2j9s8yMKwDExP vjBvIcKmVl6q3dUwOevXsypGV0QwxG/G4YbPtRJKxwv79TIYJaXF31pYzUsORCYuiFNB 9v7w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Clbd6XIL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id d13-v6si24929qvn.206.2018.06.19.08.58.28 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:58:28 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Clbd6XIL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43405 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ1Y-00015f-1l for patch@linaro.org; Tue, 19 Jun 2018 11:58:28 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35066) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoF-0006W2-PL for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoE-0006NC-HL for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:43 -0400 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:45068) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoE-0006Le-Ap for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:42 -0400 Received: by mail-wr0-x243.google.com with SMTP id o12-v6so124198wrm.12 for ; Tue, 19 Jun 2018 08:44:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MgIjZRbuceJlYBBj2Oi5NylWp3gt4Pd7+gEqfcOfo8g=; b=Clbd6XILyYCUso4ePovm6HJtVvKW76yJDwmmVGzSM2+ufL2SgJE0sBCHr547xqKljq tpu+UrraMYVaOxJPdAy0eB1HRhbSSCw6HL7POrOvaW3EkcRfG/WmoPOrEbeswgmLhtLI mQvVvE5XhLxGKv27ipq5sOoR7XqU9c4zYchR8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=MgIjZRbuceJlYBBj2Oi5NylWp3gt4Pd7+gEqfcOfo8g=; b=lGzLzOfyZCbygyb+qNxcItad6yVWeObN7MuuAVTYDUNxDfw9mOfZX8nSn+WXN7VUZ9 ra+rBI7mEZvevIH8rKUaxMSI/Q8f0WYQcFCo1NOZTMxNlgJ4DmuE/yaWEO/DU8QYfU2b nSgWKoXHumv7746yy2rWtPwJtw4ZrPs98+/SWvEeOiaNXoahJsNLAv4zXC9c8mj8dHaS NX3oRdvsy2ZnXsI2eEtmxD8ms5GNyRdgvM7zWPbhNqd5OR2gppKzndlct4ufiRLXH4Lp 5ea0Fdsk3ipXucW1Enpx0yOYI8F8QRm7Thpx7BskHAJ2UCjSDbG0nw3XhATjKvEgshX5 udJg== X-Gm-Message-State: APt69E0oKCyKNLVp6PnDXPLQ0CS1nH/vn1IsSIgcX4xS5FAQozu88d7m kyyeSnm5nnu35kG9D7J9l2VOTA== X-Received: by 2002:adf:8f23:: with SMTP id p32-v6mr14204498wrb.193.1529423081158; Tue, 19 Jun 2018 08:44:41 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id j4-v6sm3277wrr.47.2018.06.19.08.44.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:39 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id F13E33E08E8; Tue, 19 Jun 2018 16:44:35 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:45 +0100 Message-Id: <20180619154435.18898-7-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::243 Subject: [Qemu-devel] [PULL 06/56] docker: extend "cc" command to accept compiler X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" When calling our cross-compilation images we want to call something other than the default cc. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Fam Zheng --- v2 - use arg.cc default to simplify logic -- 2.17.1 diff --git a/tests/docker/docker.py b/tests/docker/docker.py index 4cd6f9b8ec..663dfcba4b 100755 --- a/tests/docker/docker.py +++ b/tests/docker/docker.py @@ -416,6 +416,8 @@ class CcCommand(SubCommand): def args(self, parser): parser.add_argument("--image", "-i", required=True, help="The docker image in which to run cc") + parser.add_argument("--cc", default="cc", + help="The compiler executable to call") parser.add_argument("--source-path", "-s", nargs="*", dest="paths", help="""Extra paths to (ro) mount into container for reading sources""") @@ -429,7 +431,7 @@ class CcCommand(SubCommand): if args.paths: for p in args.paths: cmd += ["-v", "%s:%s:ro,z" % (p, p)] - cmd += [args.image, "cc"] + cmd += [args.image, args.cc] cmd += argv return Docker().command("run", cmd, args.quiet) From patchwork Tue Jun 19 15:43:46 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139188 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5390552lji; Tue, 19 Jun 2018 09:07:28 -0700 (PDT) X-Google-Smtp-Source: ADUXVKK40JNKu51pnFmDYqLTehTrY1WVrz0Ypx8PlZXGt5aQOYQuSyG+U/Qa6agdRL4IhprnZ3Ut X-Received: by 2002:ac8:3854:: with SMTP id r20-v6mr15526227qtb.190.1529424448805; Tue, 19 Jun 2018 09:07:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424448; cv=none; d=google.com; s=arc-20160816; b=uHSCfMBM36Wqztprw438jRM4gy0DLzq/+Deb0uxMzhyNzTlouA4Bve/FfXlvBHiGZF jlLMTGKwyjGGB6qEFJFgc1hYbnJaI2X/cVKLDEDAHxUSS2xj2pWsoIu6nIfb//doHQBH k/vBtHTqxJEcrRTGDDQygKVDs0OwUEt7kSbw7ca0ZfKYwzDTOIgOvzRnHq9b7HJlmMgp ne6mnoB2IRL5Rp2IA1FFCT6aAKDrVA1kX1fSaFvVgv+OTSzK+9KUSkFmAQDU8176t34S +qMwLf9vxPQF6T2MF8EWAmxBUjWc+bUfCbV0KDG86CmeLvkjza+p+KR/1Q+yMzm+Hf2/ MBtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=rUJBNsqN+BLAkYlMMtVXgSc4BYUOwfQTxHgKY7PDYN4=; b=D0pGRWMopZkYW6f76de1BRzyt7e8fRSlYTjJTubs6+zkTPXwEKsktg69Vnv5xL/BbY 7XRAL8kqlWOWYbIq3NEdMyT8sCu58gCWYXlWat5Fke/KkjsV/WE2mMk2wWTHwruocnss u/Kw47qYbYbZATaC+fieZSH5mmfLkUdmYsdUQU1TqcvAKl5y1z2huMnGfEWYqXJAxFPA n64vsVCAeu0TlUe0uIQzQj8qMa771GC+iC+Hvt8xKArhYZywB1n/IubkSkhVsSNlgTIN EWAK7KUqbIlFqy+VuoJLT62aLPvHt5e9POGELk2HAFV8TQP/JtUQsaE+yWHjqEmHSGRW e7Rg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UAEC4bSc; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id o31-v6si36577qva.266.2018.06.19.09.07.28 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:07:28 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UAEC4bSc; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43473 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJAG-0000Tq-6c for patch@linaro.org; Tue, 19 Jun 2018 12:07:28 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35092) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoG-0006Wq-RF for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoG-0006OE-0E for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:44 -0400 Received: from mail-wm0-x229.google.com ([2a00:1450:400c:c09::229]:55772) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoF-0006Nc-Pu for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:43 -0400 Received: by mail-wm0-x229.google.com with SMTP id v16-v6so1146345wmh.5 for ; Tue, 19 Jun 2018 08:44:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=rUJBNsqN+BLAkYlMMtVXgSc4BYUOwfQTxHgKY7PDYN4=; b=UAEC4bSczI+aVdZS3g0xvezrh56cKzWsUjHqqjr65rLOTXzkyer/nGqJzJLg4AnyhD SbwUTEs/nDC1gYjQf/Mk8wTPExfmmo1QWRSmZF7eOAFATzrK++fjoxrC+EeZwzFZ3xMa Et8oYVufxBxzZvY9JV7WfDpwv2YBALtQZtcqg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=rUJBNsqN+BLAkYlMMtVXgSc4BYUOwfQTxHgKY7PDYN4=; b=AM78ox/WrZYKFEt+nTaNIKoOEpe+p7srmVV3X9H8bK96sAcaKB8ehezWrOuUdnQPgD 8fBl0RUYHYIv9C1+hsXFO6nsirv/YhXWDzYZLkZXp4kAwnzh9pxDwK3okZS1vl6qENF9 3zaO2t9huU68X4/TKspq3UBWO2lAFC0eoXeI16o2lqqt8FGACJTKsyv0oBDdcFX18/Wl CVMTDobtza/ms3GtwMb6pXbdTuVTC+T9Dz8DsuPFIdtyiYJKMTJLP8IgY/hDC8X6727a Z96nR9YqK4CZxZxhpUnous3BWJuE9AonGFT4g4+JhKRK5uSigw3BLsv5hdg/X8G+hiFz qBzQ== X-Gm-Message-State: APt69E2ovY8Mm/Q7Dhj4ktF4DIQi6OtrnHYSr231LzrS8rApSHZtqlT8 wi/vUl4V11iiP9hVSVgTGJYaxc+K4KE= X-Received: by 2002:a1c:c006:: with SMTP id q6-v6mr11968158wmf.107.1529423082677; Tue, 19 Jun 2018 08:44:42 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id n17-v6sm17715141wrs.96.2018.06.19.08.44.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:39 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 0FB033E08F8; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:46 +0100 Message-Id: <20180619154435.18898-8-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::229 Subject: [Qemu-devel] [PULL 07/56] docker: allow "cc" command to run in user context X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Alex Bennée Reviewed-by: Fam Zheng Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/docker/docker.py b/tests/docker/docker.py index 663dfcba4b..c83fd89985 100755 --- a/tests/docker/docker.py +++ b/tests/docker/docker.py @@ -418,6 +418,8 @@ class CcCommand(SubCommand): help="The docker image in which to run cc") parser.add_argument("--cc", default="cc", help="The compiler executable to call") + parser.add_argument("--user", + help="The user-id to run under") parser.add_argument("--source-path", "-s", nargs="*", dest="paths", help="""Extra paths to (ro) mount into container for reading sources""") @@ -431,6 +433,8 @@ class CcCommand(SubCommand): if args.paths: for p in args.paths: cmd += ["-v", "%s:%s:ro,z" % (p, p)] + if args.user: + cmd += ["-u", args.user] cmd += [args.image, args.cc] cmd += argv return Docker().command("run", cmd, args.quiet) From patchwork Tue Jun 19 15:43:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139155 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5368291lji; Tue, 19 Jun 2018 08:47:50 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIxAALaYMAMPPPyW2qLcpEmrcU7GESwldW2Bln0N+IjCWu3+2nkMS0Lfh6tbUAp0hmMod8f X-Received: by 2002:ac8:1978:: with SMTP id g53-v6mr15881350qtk.282.1529423270676; Tue, 19 Jun 2018 08:47:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423270; cv=none; d=google.com; s=arc-20160816; b=mP1d7ujE/Dsw6gm7NAyzegd/45hRqPC5On+cNy3J508XVY0EeyJPJzIuLjdrvhOlpc z8HsPRBlb2L7sefvVFn/OU+zikdOMGoxRlYxj+cFHOuwOxnToJhdSkJfe8AN/SZSj+FI SKs4H17f+qHGKJhiuCX9gUIbI4T43u0VmP72MlsOcQoZXUWZr7BuLkOz8u+pqhCIHeRX LWf8bPbMs5K9i6LCAG2xkzNFDlHZdF4gzQ3NQgvvVCXrfsitYQmTB3TgEUswqgzkeq4A iStJwUYsCaiursNOKXnd919hMOkgl8VkNd5vPCoufhahm/2mQFySyu1Cq2eQR1/XJZay vqNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=5VVTw0fG8m6UmpXcbRkfzfrP7U0XZ6514K5UBJebIwU=; b=S7ZBpAr8mc8Ia3XNH9FS7exB0DRu1X11utghi4li6Sm4fT4mwz/LWA2llpNqTrGBpG vBVasfIvX3BvOUXQaOYfKbDEHucsCEvgRmvwJ3RQ6ubDXizvfDyDhH5XN2zYwd+geLS5 K1IvyFL8tCALXh0P234LCM6Dno1RrGvUIfv++Na33Vjfz1/YkPOvA4r5KOunYcSw6Nyk mzDHCQnJKIuGi9WM9V1wsoiwyBuJD4B+aKr6HluSRKqD0djT2oghFpLGtHvuqgJJNvvr 5ticJT0CzecDcczczr96Twl4sFDJ9f2nSs5Xp8SIEekI4BnKKS/0cdu0w/zzYog6Yfrm DnXA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=DkCdA1qo; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id x74-v6si19890qkx.159.2018.06.19.08.47.50 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:47:50 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=DkCdA1qo; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43341 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIrG-0007sM-2P for patch@linaro.org; Tue, 19 Jun 2018 11:47:50 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35107) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoH-0006Xf-Tc for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoG-0006Ou-W0 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:45 -0400 Received: from mail-wr0-x235.google.com ([2a00:1450:400c:c0c::235]:38739) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoG-0006OK-PA for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:44 -0400 Received: by mail-wr0-x235.google.com with SMTP id e18-v6so154784wrs.5 for ; Tue, 19 Jun 2018 08:44:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5VVTw0fG8m6UmpXcbRkfzfrP7U0XZ6514K5UBJebIwU=; b=DkCdA1qo8qAblwK0vuuOp/4cxq7Pfm8ecogOlpPW5jRkfSVXR0z0j8VlU55DNJDxbT DBf97ixxiN/HBFXxk2mxa1wNR7/g2JAJf4DAsVEa45GGwH/vFKaC7RWtRoIOZNpUvitl zFWrlftuJDImtIP6yrpqhE7EoM2FDb/9LhhLw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=5VVTw0fG8m6UmpXcbRkfzfrP7U0XZ6514K5UBJebIwU=; b=hmFMV8nK6qbEJGpbk29vvevOdllUVPQoAkA7YD7IgPSJJKnPtJnAwcIf7tEbZzu8H/ Lkf1rqcpNIOFbIMqc2Cs5ebufZshMCVKSA+z2UZafiDPu4uTx3BdhCJZCAmFBZSlFXRb v/vbWeu2HT58nlD4SiHeP1eFqW8XzdlKZybuWQ+EvXawrctIexI0/uh/pcjGpQPYgH+4 a9zodPnPP9CzjC/gzeKE1XN3Vgiv4urV7Q6wQYVY0fAZ7z0qs3JDpQ2370od08iukgqn 23+y4ZKd6xCXDPQKmua7IQHdaRhyiMBa8fm92qEPXx6f/IpKIgp8xaoLFVLFS95TZoI9 Dk6A== X-Gm-Message-State: APt69E0XnfcjED/bnxOzO8roAyjPuTN1YKqgWKlGaQ52u0LQ/fJUVSAl WJGwdgYiV5IzONSm/tgBgcF3aQ== X-Received: by 2002:adf:fac6:: with SMTP id a6-v6mr13839723wrs.74.1529423083564; Tue, 19 Jun 2018 08:44:43 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id a14-v6sm198064wmb.44.2018.06.19.08.44.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:39 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 22B343E0930; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:47 +0100 Message-Id: <20180619154435.18898-9-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::235 Subject: [Qemu-devel] [PULL 08/56] docker: Makefile.include introduce DOCKER_SCRIPT X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Define this in one place to make it easy to re-use. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 74fd51c22c..8afb383478 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -15,6 +15,8 @@ DOCKER_TESTS := $(notdir $(shell \ DOCKER_TOOLS := travis +DOCKER_SCRIPT=$(SRC_PATH)/tests/docker/docker.py + TESTS ?= % IMAGES ?= % @@ -38,7 +40,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker echo WARNING: EXECUTABLE is not set, debootstrap may fail. 2>&1 ; \ fi $(call quiet-command,\ - $(SRC_PATH)/tests/docker/docker.py build qemu:$* $< \ + $(DOCKER_SCRIPT) build qemu:$* $< \ $(if $V,,--quiet) $(if $(NOCACHE),--no-cache) \ $(if $(NOUSER),,--add-current-user) \ $(if $(EXTRA_FILES),--extra-files $(EXTRA_FILES))\ @@ -133,11 +135,11 @@ docker-run: docker-qemu-src fi $(if $(EXECUTABLE), \ $(call quiet-command, \ - $(SRC_PATH)/tests/docker/docker.py update \ + $(DOCKER_SCRIPT) update \ $(IMAGE) $(EXECUTABLE), \ " COPYING $(EXECUTABLE) to $(IMAGE)")) $(call quiet-command, \ - $(SRC_PATH)/tests/docker/docker.py run \ + $(DOCKER_SCRIPT) run \ $(if $(NOUSER),,-u $(shell id -u)) \ --security-opt seccomp=unconfined \ $(if $V,,--rm) \ @@ -167,4 +169,4 @@ docker-run-%: @$(MAKE) docker-run TEST=$(CMD) IMAGE=qemu:$(IMAGE) docker-clean: - $(call quiet-command, $(SRC_PATH)/tests/docker/docker.py clean) + $(call quiet-command, $(DOCKER_SCRIPT) clean) From patchwork Tue Jun 19 15:43:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139160 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5372141lji; Tue, 19 Jun 2018 08:51:10 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIW2IimQR+U/tmwrNFGkotn963iyWd5W8totdUsRXC7CW/dUz0aS6Sj+UUTrkJ8xP7npavW X-Received: by 2002:aed:359d:: with SMTP id c29-v6mr14979287qte.240.1529423470213; Tue, 19 Jun 2018 08:51:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423470; cv=none; d=google.com; s=arc-20160816; b=fsAElkznjrc5/WLQC7FnbCUJ6P9ybatriwIR89muMNa8UVsYma6Dqp+TMHM8Bjj5Mn 4WZ2v791JaZii/NyEzr72C6bZH8LSarWXtr7cywQQuBBZ9098L7YjG8UKl5qGxswoP4M RiVfXJLxh8Xm6DWitnD5pH61oIBtG2ZyiqorTMuBvz8MBZOtpwPi7UTTi+6GlBcp2NCn rAk0c1nsjM44PHrK/3PLo3PjdQsK85BE2A2TN12IJfB17z6+64AoZi76l8SXBl+xEM4E LOEY+IDoB+OVVlSqbg2kJJ/t6F29xZfbJ/geCxBJ4vm9xH3eA5Ugl/mGFiVERjfC9xOe Ia0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=hErbWt5q9al5IFtBFAC2fgJX8odnAK2TffOAzZmM7vU=; b=htOzE53l2ScJxN++zEyFvJFZoftisHuCF9vWD8ygyQfbdiwugtqH4mbIRGkD2Yr5B5 HnLNYIFmrHVbFNEf/pVkFvGrhOmq3t6KYujP9D2S086YneLHqVHGItbEX6tYgPHYWmrl wuzLxHfu1fchbLruVeETlBRZo31hKQwWFYu218gbzNn8thKs+LUWO9Dq2Z630Cfc/0IQ U2MFYvIcrUJ3OHGIMV9oDtMY5pP6ZhIfZU1xMskHB2Fwn1a5/1pPXScL1p37as8bEdtn h1gWZikJAJx5eTRSyObMj1wL9Fb7uZiyrRjbdhpWmPozQEOKohY39Nenz179gCApVkGj zzCA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=kZghJuKY; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [208.118.235.17]) by mx.google.com with ESMTPS id j34-v6si13695qvc.201.2018.06.19.08.51.10 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:51:10 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=kZghJuKY; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43356 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIuT-00026h-Iq for patch@linaro.org; Tue, 19 Jun 2018 11:51:09 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35127) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoJ-0006ZM-I2 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoH-0006PP-Q1 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:47 -0400 Received: from mail-wr0-x233.google.com ([2a00:1450:400c:c0c::233]:34073) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoH-0006Of-GW for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:45 -0400 Received: by mail-wr0-x233.google.com with SMTP id a12-v6so168872wro.1 for ; Tue, 19 Jun 2018 08:44:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=hErbWt5q9al5IFtBFAC2fgJX8odnAK2TffOAzZmM7vU=; b=kZghJuKY9FfO8dfXWlnOGtsXiMM492IZZ5P/M/28/zUC4VQ9wCk2k6wnwYp7YNE+1J dsDiDyiXTYtNikzfPbQ+mqG6tG13QBM0OlpnGx2ya3wgTVOXH7ceBnX4xTxWPYBKI5kG H4DxVU0CPNhJamhAWNlt7BfUVislbdpmBKGdo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=hErbWt5q9al5IFtBFAC2fgJX8odnAK2TffOAzZmM7vU=; b=kvfs5FNOYvFH2wMX22i9Kld7BMTMTcUtmKntCb38EmhGwY4YRqki/GDwsYSXqOynAt JWq/JwDrguJWPmJOAB0aazGl6wifLZvl6wAElMiBYbuCf6epXAvIejhdgBJ6YKSClek0 kKUpeZoBi1l78fjuI9Xre3GtPkOHlRM7oZ91DTwdmXxHRKurQOziQfqFBq3+y8lx9K3j lBzIv++9bxFZiUFZrV1bSC9jCo77HrUOQiSIbziSayC3MQgxqNYF2Kfg1DQNnjsqgbPG TxL/HbVKNC04hVY6dHyBrkGL2vJnhmn+Tyj5wPm4A02f3v8c7xkfowEidlq2u+gstAa2 F/Yg== X-Gm-Message-State: APt69E2qNVBcQ1OmWqsUL5b0eOUHzvH23rl6gxx49iP5WoekLlKDx9sx TroQ0bheDO7PCFY2KHkwmNUPjQ== X-Received: by 2002:a5d:4141:: with SMTP id c1-v6mr13660225wrq.129.1529423084288; Tue, 19 Jun 2018 08:44:44 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id v68-v6sm586325wmd.12.2018.06.19.08.44.38 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:39 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 3D08C3E097F; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:48 +0100 Message-Id: <20180619154435.18898-10-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::233 Subject: [Qemu-devel] [PULL 09/56] tests/tcg: move architecture independent tests into subdir X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" We will want to build these for all supported guest architectures so lets move them all into one place. We also drop test_path at this point because it needs qemu utils and glib bits which is hard to support for cross compiling. Signed-off-by: Alex Bennée Reviewed-by: Thomas Huth Reviewed-by: Richard Henderson --- v2 - move VPATH and TESTs setup into multiarch/Makefile.target - remove moved bits from tests/tcg/Makefile v3 - use LDFLAGS+= for testthread linking v4 - make myself MAINTAINER for tests/tcg/multiarch v5 - split test-mmap into run-test-mmap and run-test-mmap-% -- 2.17.1 diff --git a/MAINTAINERS b/MAINTAINERS index 0fb5f38f9f..eccd81e8e7 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -303,6 +303,10 @@ F: target/tricore/ F: hw/tricore/ F: include/hw/tricore/ +Multiarch Linux User Tests +M: Alex Bennée +F: tests/tcg/multiarch/ + Guest CPU Cores (KVM): ---------------------- diff --git a/tests/tcg/Makefile b/tests/tcg/Makefile index 89e3342f3d..e12395117a 100644 --- a/tests/tcg/Makefile +++ b/tests/tcg/Makefile @@ -18,12 +18,9 @@ LDFLAGS= # also, pi_10.com runs indefinitely I386_TESTS=hello-i386 \ - linux-test \ - testthread \ sha1-i386 \ test-i386 \ test-i386-fprem \ - test-mmap \ # runcom # native i386 compilers sometimes are not biarch. assume cross-compilers are @@ -47,8 +44,6 @@ run-%: % -$(QEMU) ./$* run-hello-i386: hello-i386 -run-linux-test: linux-test -run-testthread: testthread run-sha1-i386: sha1-i386 run-test-i386: test-i386 @@ -66,11 +61,6 @@ run-test-x86_64: test-x86_64 -$(QEMU_X86_64) test-x86_64 > test-x86_64.out @if diff -u test-x86_64.ref test-x86_64.out ; then echo "Auto Test OK"; fi -run-test-mmap: test-mmap - -$(QEMU) ./test-mmap - -$(QEMU) -p 8192 ./test-mmap 8192 - -$(QEMU) -p 16384 ./test-mmap 16384 - -$(QEMU) -p 32768 ./test-mmap 32768 run-runcom: runcom -$(QEMU) ./runcom $(SRC_PATH)/tests/pi_10.com @@ -80,17 +70,10 @@ run-test_path: test_path # rules to compile tests -test_path: test_path.o - -test_path.o: test_path.c - hello-i386: hello-i386.c $(CC_I386) -nostdlib $(CFLAGS) -static $(LDFLAGS) -o $@ $< strip $@ -testthread: testthread.c - $(CC_I386) $(CFLAGS) $(LDFLAGS) -o $@ $< -lpthread - # i386/x86_64 emulation test (test various opcodes) */ test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S \ test-i386.h test-i386-shift.h test-i386-muldiv.h @@ -104,28 +87,14 @@ test-x86_64: test-i386.c \ test-i386.h test-i386-shift.h test-i386-muldiv.h $(CC_X86_64) $(QEMU_INCLUDES) $(CFLAGS) $(LDFLAGS) -o $@ $( test-mmap.out, "TEST", \ + "$< (default) on $(TARGET_NAME)") + +# additional page sizes (defined by each architecture adding to EXTRA_RUNS) +run-test-mmap-%: test-mmap + $(call quiet-command, $(QEMU) -p $* $< > test-mmap-$*.out, "TEST", \ + "$< ($* byte pages) on $(TARGET_NAME)") diff --git a/tests/tcg/multiarch/README b/tests/tcg/multiarch/README new file mode 100644 index 0000000000..522c9d2ea3 --- /dev/null +++ b/tests/tcg/multiarch/README @@ -0,0 +1 @@ +Multi-architecture linux-user tests diff --git a/tests/tcg/linux-test.c b/tests/tcg/multiarch/linux-test.c similarity index 100% rename from tests/tcg/linux-test.c rename to tests/tcg/multiarch/linux-test.c diff --git a/tests/tcg/sha1.c b/tests/tcg/multiarch/sha1.c similarity index 100% rename from tests/tcg/sha1.c rename to tests/tcg/multiarch/sha1.c diff --git a/tests/tcg/test-mmap.c b/tests/tcg/multiarch/test-mmap.c similarity index 100% rename from tests/tcg/test-mmap.c rename to tests/tcg/multiarch/test-mmap.c diff --git a/tests/tcg/testthread.c b/tests/tcg/multiarch/testthread.c similarity index 100% rename from tests/tcg/testthread.c rename to tests/tcg/multiarch/testthread.c diff --git a/tests/tcg/test_path.c b/tests/tcg/test_path.c deleted file mode 100644 index 1c29bce263..0000000000 --- a/tests/tcg/test_path.c +++ /dev/null @@ -1,157 +0,0 @@ -/* Test path override code */ -#include "config-host.h" -#include "util/cutils.c" -#include "util/hexdump.c" -#include "util/iov.c" -#include "util/path.c" -#include "util/qemu-timer-common.c" -#include -#include -#include - -void qemu_log(const char *fmt, ...); - -/* Any log message kills the test. */ -void qemu_log(const char *fmt, ...) -{ - va_list ap; - - fprintf(stderr, "FATAL: "); - va_start(ap, fmt); - vfprintf(stderr, fmt, ap); - va_end(ap); - exit(1); -} - -#define NO_CHANGE(_path) \ - do { \ - if (strcmp(path(_path), _path) != 0) return __LINE__; \ - } while(0) - -#define CHANGE_TO(_path, _newpath) \ - do { \ - if (strcmp(path(_path), _newpath) != 0) return __LINE__; \ - } while(0) - -static void cleanup(void) -{ - unlink("/tmp/qemu-test_path/DIR1/DIR2/FILE"); - unlink("/tmp/qemu-test_path/DIR1/DIR2/FILE2"); - unlink("/tmp/qemu-test_path/DIR1/DIR2/FILE3"); - unlink("/tmp/qemu-test_path/DIR1/DIR2/FILE4"); - unlink("/tmp/qemu-test_path/DIR1/DIR2/FILE5"); - rmdir("/tmp/qemu-test_path/DIR1/DIR2"); - rmdir("/tmp/qemu-test_path/DIR1/DIR3"); - rmdir("/tmp/qemu-test_path/DIR1"); - rmdir("/tmp/qemu-test_path"); -} - -static unsigned int do_test(void) -{ - if (mkdir("/tmp/qemu-test_path", 0700) != 0) - return __LINE__; - - if (mkdir("/tmp/qemu-test_path/DIR1", 0700) != 0) - return __LINE__; - - if (mkdir("/tmp/qemu-test_path/DIR1/DIR2", 0700) != 0) - return __LINE__; - - if (mkdir("/tmp/qemu-test_path/DIR1/DIR3", 0700) != 0) - return __LINE__; - - if (close(creat("/tmp/qemu-test_path/DIR1/DIR2/FILE", 0600)) != 0) - return __LINE__; - - if (close(creat("/tmp/qemu-test_path/DIR1/DIR2/FILE2", 0600)) != 0) - return __LINE__; - - if (close(creat("/tmp/qemu-test_path/DIR1/DIR2/FILE3", 0600)) != 0) - return __LINE__; - - if (close(creat("/tmp/qemu-test_path/DIR1/DIR2/FILE4", 0600)) != 0) - return __LINE__; - - if (close(creat("/tmp/qemu-test_path/DIR1/DIR2/FILE5", 0600)) != 0) - return __LINE__; - - init_paths("/tmp/qemu-test_path"); - - NO_CHANGE("/tmp"); - NO_CHANGE("/tmp/"); - NO_CHANGE("/tmp/qemu-test_path"); - NO_CHANGE("/tmp/qemu-test_path/"); - NO_CHANGE("/tmp/qemu-test_path/D"); - NO_CHANGE("/tmp/qemu-test_path/DI"); - NO_CHANGE("/tmp/qemu-test_path/DIR"); - NO_CHANGE("/tmp/qemu-test_path/DIR1"); - NO_CHANGE("/tmp/qemu-test_path/DIR1/"); - - NO_CHANGE("/D"); - NO_CHANGE("/DI"); - NO_CHANGE("/DIR"); - NO_CHANGE("/DIR2"); - NO_CHANGE("/DIR1."); - - CHANGE_TO("/DIR1", "/tmp/qemu-test_path/DIR1"); - CHANGE_TO("/DIR1/", "/tmp/qemu-test_path/DIR1"); - - NO_CHANGE("/DIR1/D"); - NO_CHANGE("/DIR1/DI"); - NO_CHANGE("/DIR1/DIR"); - NO_CHANGE("/DIR1/DIR1"); - - CHANGE_TO("/DIR1/DIR2", "/tmp/qemu-test_path/DIR1/DIR2"); - CHANGE_TO("/DIR1/DIR2/", "/tmp/qemu-test_path/DIR1/DIR2"); - - CHANGE_TO("/DIR1/DIR3", "/tmp/qemu-test_path/DIR1/DIR3"); - CHANGE_TO("/DIR1/DIR3/", "/tmp/qemu-test_path/DIR1/DIR3"); - - NO_CHANGE("/DIR1/DIR2/F"); - NO_CHANGE("/DIR1/DIR2/FI"); - NO_CHANGE("/DIR1/DIR2/FIL"); - NO_CHANGE("/DIR1/DIR2/FIL."); - - CHANGE_TO("/DIR1/DIR2/FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/DIR1/DIR2/FILE2", "/tmp/qemu-test_path/DIR1/DIR2/FILE2"); - CHANGE_TO("/DIR1/DIR2/FILE3", "/tmp/qemu-test_path/DIR1/DIR2/FILE3"); - CHANGE_TO("/DIR1/DIR2/FILE4", "/tmp/qemu-test_path/DIR1/DIR2/FILE4"); - CHANGE_TO("/DIR1/DIR2/FILE5", "/tmp/qemu-test_path/DIR1/DIR2/FILE5"); - - NO_CHANGE("/DIR1/DIR2/FILE6"); - NO_CHANGE("/DIR1/DIR2/FILE/X"); - - CHANGE_TO("/DIR1/../DIR1", "/tmp/qemu-test_path/DIR1"); - CHANGE_TO("/DIR1/../DIR1/", "/tmp/qemu-test_path/DIR1"); - CHANGE_TO("/../DIR1", "/tmp/qemu-test_path/DIR1"); - CHANGE_TO("/../DIR1/", "/tmp/qemu-test_path/DIR1"); - CHANGE_TO("/DIR1/DIR2/../DIR2", "/tmp/qemu-test_path/DIR1/DIR2"); - CHANGE_TO("/DIR1/DIR2/../DIR2/../../DIR1/DIR2/FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/DIR1/DIR2/../DIR2/FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - - NO_CHANGE("/DIR1/DIR2/../DIR1"); - NO_CHANGE("/DIR1/DIR2/../FILE"); - - CHANGE_TO("/./DIR1/DIR2/FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/././DIR1/DIR2/FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/DIR1/./DIR2/FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/DIR1/././DIR2/FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/DIR1/DIR2/./FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/DIR1/DIR2/././FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - CHANGE_TO("/./DIR1/./DIR2/./FILE", "/tmp/qemu-test_path/DIR1/DIR2/FILE"); - - return 0; -} - -int main(int argc, char *argv[]) -{ - int ret; - - ret = do_test(); - cleanup(); - if (ret) { - fprintf(stderr, "test_path: failed on line %i\n", ret); - return 1; - } - return 0; -} From patchwork Tue Jun 19 15:43:49 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139163 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5372724lji; Tue, 19 Jun 2018 08:51:43 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJg2xhywtWHEJrZvHzur0CPY7eNBdl3AEWRzZPdqcEyO7KAHaHaih/YCQ8JbQ7512k8F7EC X-Received: by 2002:ac8:7159:: with SMTP id h25-v6mr15608737qtp.41.1529423502991; Tue, 19 Jun 2018 08:51:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423502; cv=none; d=google.com; s=arc-20160816; b=tTsjh0/pNIJ+ZES/WBud8rDQStDgXSd7hZkdEM6/y08B0v/z9MfgDv7olHHXSE8aov g/JVzE4w/9YelvwN7R/2li25WPi3mNQiCEmFHOEiL92fy1bYGreoJcf2dYSlh9qVSGAq /tMZKjeiuF5MxIqelMURYg9GLzBeQTXZYE9XHAoAroj66LeFp7l+C0LzWrHeqAfOP96f zCs/xjUDwqHnkpWKHOIYv21ayiP1i1hZEJlkdzH4cc9i755RxjM/GtDX/bFMyDEPALpc OWTBMhANyZenSXm8RLqbMB4mmv9mrq+N2mzaoINqj3g40rdVDhrgOvVCgU9nMEIe7RbB tHIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=vsF4LAvVx6Lz8hAJ8S/JCD2guENt6wij/9sOELtWrQI=; b=Zui6zynNOUWvVWiQhTGlkj3DoRqJt/JoV/xEcNfOq9rMjmzkMGUxJ66Pefy4goKN/c 6obI1McOjxt2f2treerx0dhy2E1ad/+3M76QnMqGr0eyDb2JvEyv0fEUdU8zdMZG+MRh ynVvJnXQAi3HSM1H8olcIe8wTjJ5MOW922SEO1Xnp8SXbnl3uwGlfaOHv/4dAnHpUQ/u vu3+7y6G+bg/Zd1uQU14gqfkabOmMD5zvwbHfjwSoVEFS5HgCkjWeh4B50mpqBaugW9n 5yuXRua5i0lQWZE5r5rjZtCWHzaKtPQF4Cchsp+0nJYQSrxtjxaJf/bKPKTJA1jpK/1G XIcw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Cu7OzXIV; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [208.118.235.17]) by mx.google.com with ESMTPS id t74-v6si36916qkl.41.2018.06.19.08.51.42 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:51:42 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Cu7OzXIV; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43366 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIv0-0003SN-DR for patch@linaro.org; Tue, 19 Jun 2018 11:51:42 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35208) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoM-0006e8-Jo for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoJ-0006Q3-DZ for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:50 -0400 Received: from mail-wm0-x231.google.com ([2a00:1450:400c:c09::231]:55780) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoJ-0006Pm-2s for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:47 -0400 Received: by mail-wm0-x231.google.com with SMTP id v16-v6so1146625wmh.5 for ; Tue, 19 Jun 2018 08:44:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vsF4LAvVx6Lz8hAJ8S/JCD2guENt6wij/9sOELtWrQI=; b=Cu7OzXIV4zw1FTYRDbczUKdAvSjgK37yr6JOpZSH917neXpFKgl7ssMI6QTreRwwfa NtiyXTmuEflc3mpxH5dkvwr6/zVrI4vuRmtjNfnuqZR9B2oxZVoj4Y/pBjmCHuo6WSMF +frVYGhJRBWo/UyqbKW907ev6JOHKictLpJs4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=vsF4LAvVx6Lz8hAJ8S/JCD2guENt6wij/9sOELtWrQI=; b=ud1Qo99HVweJAezNWySSM+hxQ0QCiLadiW+51Y36U7iAa2j6F7EoBYTiwBjt3/GBwm +2zRpGRnSxDfwrlipyGPFj5aK6FW3R3sslfrdjXuZt0q5SG210xfi4YgM2j6OKsN1HbL LOT5kIh/AdBz58NzJFDsHtnjEjvUTK7LKYnZ2nkB9kINw5j0qbxfbOwLO7kYo/4ayEJu UBY+du8qxu1uZNuuVpRnD94KKY1xI8R1jVWUWG8f+HsmxL9cJe3mhgnZTYg6voz283lU zUd36TrVKqcRq63PvjX0pczwrBxYYjPcytBE+ezzRCP3JJuqMGXTk3V96nGocWCCVUn8 jRfg== X-Gm-Message-State: APt69E2cmYFVc+wffJ8Xx9w1wjIe//pkHUdR34d6GxWWlgvssbKM6Dmu eFxcx7ckcPBIoZz4Tj4mITg7/A== X-Received: by 2002:a1c:9b04:: with SMTP id d4-v6mr11860926wme.8.1529423085965; Tue, 19 Jun 2018 08:44:45 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id e188-v6sm718239wmf.21.2018.06.19.08.44.38 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:40 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 51EE73E0A25; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:49 +0100 Message-Id: <20180619154435.18898-11-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::231 Subject: [Qemu-devel] [PULL 10/56] tests/tcg/multiarch: Build fix for linux-test X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" From: Fam Zheng To keep the compiler happy, and to fit in our buildsys flags: - Make local functions "static" - #ifdef out unused functions - drop cutils/osdep dependencies Signed-off-by: Fam Zheng [AJB: drop cutils/osdep dependencies] Signed-off-by: Alex Bennée Reviewed-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson -- 2.17.1 diff --git a/tests/tcg/multiarch/linux-test.c b/tests/tcg/multiarch/linux-test.c index 5070d31446..4457bd04ba 100644 --- a/tests/tcg/multiarch/linux-test.c +++ b/tests/tcg/multiarch/linux-test.c @@ -16,7 +16,6 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ -#define _GNU_SOURCE #include #include #include @@ -31,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -39,13 +39,12 @@ #include #include #include -#include "qemu/cutils.h" #define TESTPATH "/tmp/linux-test.tmp" #define TESTPORT 7654 #define STACK_SIZE 16384 -void error1(const char *filename, int line, const char *fmt, ...) +static void error1(const char *filename, int line, const char *fmt, ...) { va_list ap; va_start(ap, fmt); @@ -56,7 +55,7 @@ void error1(const char *filename, int line, const char *fmt, ...) exit(1); } -int __chk_error(const char *filename, int line, int ret) +static int __chk_error(const char *filename, int line, int ret) { if (ret < 0) { error1(filename, line, "%m (ret=%d, errno=%d)", @@ -73,7 +72,7 @@ int __chk_error(const char *filename, int line, int ret) #define FILE_BUF_SIZE 300 -void test_file(void) +static void test_file(void) { int fd, i, len, ret; uint8_t buf[FILE_BUF_SIZE]; @@ -210,7 +209,7 @@ void test_file(void) chk_error(rmdir(TESTPATH)); } -void test_fork(void) +static void test_fork(void) { int pid, status; @@ -224,7 +223,7 @@ void test_fork(void) error("waitpid status=0x%x", status); } -void test_time(void) +static void test_time(void) { struct timeval tv, tv2; struct timespec ts, rem; @@ -251,34 +250,7 @@ void test_time(void) error("getrusage"); } -void pstrcpy(char *buf, int buf_size, const char *str) -{ - int c; - char *q = buf; - - if (buf_size <= 0) - return; - - for(;;) { - c = *str++; - if (c == 0 || q >= buf + buf_size - 1) - break; - *q++ = c; - } - *q = '\0'; -} - -/* strcat and truncate. */ -char *pstrcat(char *buf, int buf_size, const char *s) -{ - int len; - len = strlen(buf); - if (len < buf_size) - pstrcpy(buf + len, buf_size - len, s); - return buf; -} - -int server_socket(void) +static int server_socket(void) { int val, fd; struct sockaddr_in sockaddr; @@ -298,7 +270,7 @@ int server_socket(void) } -int client_socket(void) +static int client_socket(void) { int fd; struct sockaddr_in sockaddr; @@ -312,9 +284,9 @@ int client_socket(void) return fd; } -const char socket_msg[] = "hello socket\n"; +static const char socket_msg[] = "hello socket\n"; -void test_socket(void) +static void test_socket(void) { int server_fd, client_fd, fd, pid, ret, val; struct sockaddr_in sockaddr; @@ -348,9 +320,10 @@ void test_socket(void) chk_error(close(server_fd)); } +#if 0 #define WCOUNT_MAX 512 -void test_pipe(void) +static void test_pipe(void) { fd_set rfds, wfds; int fds[2], fd_max, ret; @@ -391,10 +364,10 @@ void test_pipe(void) chk_error(close(fds[1])); } -int thread1_res; -int thread2_res; +static int thread1_res; +static int thread2_res; -int thread1_func(void *arg) +static int thread1_func(void *arg) { int i; for(i=0;i<5;i++) { @@ -404,7 +377,7 @@ int thread1_func(void *arg) return 0; } -int thread2_func(void *arg) +static int thread2_func(void *arg) { int i; for(i=0;i<6;i++) { @@ -435,27 +408,28 @@ void test_clone(void) thread2_res != 6) error("clone"); } +#endif /***********************************/ volatile int alarm_count; jmp_buf jmp_env; -void sig_alarm(int sig) +static void sig_alarm(int sig) { if (sig != SIGALRM) error("signal"); alarm_count++; } -void sig_segv(int sig, siginfo_t *info, void *puc) +static void sig_segv(int sig, siginfo_t *info, void *puc) { if (sig != SIGSEGV) error("signal"); longjmp(jmp_env, 1); } -void test_signal(void) +static void test_signal(void) { struct sigaction act; struct itimerval it, oit; @@ -510,7 +484,7 @@ void test_signal(void) #define SHM_SIZE 32768 -void test_shm(void) +static void test_shm(void) { void *ptr; int shmid; From patchwork Tue Jun 19 15:43:50 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139231 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5430873lji; Tue, 19 Jun 2018 09:43:30 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJKEkk4YCngeLJjt1tOlLpcOzdho0zDLlON9GmH1+u5VnwtfKThrKBHGEFXXwpwCA3KDYkp X-Received: by 2002:ac8:32fa:: with SMTP id a55-v6mr16015239qtb.342.1529426609946; Tue, 19 Jun 2018 09:43:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426609; cv=none; d=google.com; s=arc-20160816; b=S6UHzHgtfUkX8M7uJBwyg/nEoU7bf+aMhkr+szb/BHoOEHwZUx67OUK+e7OZ84opjh VbLpXbOHNTvS1QG5kUs8mjiXC2trdQfitViFeEiQzbZYogM2PENIQxNkZfXWDuNCE9Y1 pu/gOroDIdbKjrU106ZqauVUyi8RO9Ao7cNOkGC11HPewti8jLdZYPKXUS6o/gHcnnKF mIXB0igP5wMi7EPkNDZxPnnqK9wwLt8oJeJtuxTYIUjaG0dDoPsM8y5EgeClGIdzvROA AdsIpQ8R8aS/BHuvwPKGs5ZMR+jJ0XnkhGXjwwLYPlk5KQcT+p0G7qJsoWbFR4ZGWhFl 5ltA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=gZiyT2VjOkpq5sgxHHEJi98NXSG86xo2rIHJvQ5uoec=; b=fRWDKakJ1ltCR4/pvhUcUVTDZUL9XnXY2x6H7jJp56KtHcxYcFKahocZSMriciQAn3 3oFQakYEdvZqGDADWwYzjGb0p1DEESFI8dLth5IPIewN64FxUi36ro2vSzGqaF259Zfr 28rToatHIzNTM5m3kG4Hd8/TlAz/d0hy/YbTiQVSiO2ceOhhs1Dwm+Dbmcb7K8j16Zgb Rc/Hw0PfBgpsqUCz+Arc+698BzAMqygk3j9Bh4QFOmNjRWqSe79CjAz6AG/n9g4ugjD2 j1e6kskpuKQSDFEUnznJd3nztirq8V+Ow1YVqY2gaeLM5U5Vx8P0+4QmVWsBOxUt8VWl J2xg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=hU8KUjAr; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id t22-v6si139699qtj.175.2018.06.19.09.43.29 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:43:29 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=hU8KUjAr; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43765 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJj7-0003mB-CN for patch@linaro.org; Tue, 19 Jun 2018 12:43:29 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46060) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ50-0004fj-TN for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4x-0007eX-0e for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:02 -0400 Received: from mail-wm0-x22c.google.com ([2a00:1450:400c:c09::22c]:50616) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4w-0007eA-NM for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:58 -0400 Received: by mail-wm0-x22c.google.com with SMTP id e16-v6so1285070wmd.0 for ; Tue, 19 Jun 2018 09:01:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gZiyT2VjOkpq5sgxHHEJi98NXSG86xo2rIHJvQ5uoec=; b=hU8KUjArFLzAMK5jKqnFHMM1l/UyNvQTySG5kOfUF4lgrj9Ei2ArM0/T67f+gW6pAv JEyCl0Ix8gtC0xPRaiRqBo9RhI6wDFf9XwauW7lWxz6c1ENhaQEm+p26nsBSfIYWTcrf 4G2nfUCDM4NYTUaejprOxrdEQqIfabLQKxDQs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gZiyT2VjOkpq5sgxHHEJi98NXSG86xo2rIHJvQ5uoec=; b=dWB0u/J6JgH5URXieT0znzC4zn5YIURdNeAOOOMe973SeB9axZSzzqmFEg9PuO1XTP /MAAhh7FPAslYBEy198qMWvUkvEd554bm5+2oEUs9YDJz12YWKpgp9NRB3aE9Nt6TYVp 1AJ6p2y12Uyk8bYCdgPtdX2xrxirtr4uWkPFrJYcU98BAgV+MQ7R+Olhl/AlXfErljSR 4FQolE6SZ3e0Bm5WxFgt1cF7rMbts9wh6MsuUs334qT2CdG2xNm9pqGZdYO15mFJZEHc mRSisitf7NTd/IOJ+rujbjbjbEIGoKMt+Fs9yoaDTXhKsIu22bpYAyl/8l3DA2yxM1Ow 1exA== X-Gm-Message-State: APt69E3IPPH7LR5jAcSBRq5rp8OzayYRkbLu8mZ+8Z4lra6SLbaEmX0e 5jxmqToPPIfE1jXcSodeZNdidA== X-Received: by 2002:a1c:e546:: with SMTP id c67-v6mr10219703wmh.108.1529424117499; Tue, 19 Jun 2018 09:01:57 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id k36-v6sm74740wrc.20.2018.06.19.09.01.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:55 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 64C913E0A3C; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:50 +0100 Message-Id: <20180619154435.18898-12-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::22c Subject: [Qemu-devel] [PULL 11/56] tests/tcg/multiarch: enable additional linux-test tests X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Un-comment the remaining tests. I removed the itimer value tests because I'm fairly sure a re-arming timer will always have a different value in it when you grab it. I've also fixed up the clone thread flags as QEMU will only allow a clone to use flags which match glibc. However the test is still racey so it remains disabled by default - it can be run by passing any additional parameters on the command line. Signed-off-by: Alex Bennée Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- v3 - make clone flags match CLONE_THREAD_FLAGS v4 - disable test_clone for default case -- 2.17.1 diff --git a/tests/tcg/multiarch/linux-test.c b/tests/tcg/multiarch/linux-test.c index 4457bd04ba..6f2c531474 100644 --- a/tests/tcg/multiarch/linux-test.c +++ b/tests/tcg/multiarch/linux-test.c @@ -16,6 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ +#define _GNU_SOURCE #include #include #include @@ -58,8 +59,8 @@ static void error1(const char *filename, int line, const char *fmt, ...) static int __chk_error(const char *filename, int line, int ret) { if (ret < 0) { - error1(filename, line, "%m (ret=%d, errno=%d)", - ret, errno); + error1(filename, line, "%m (ret=%d, errno=%d/%s)", + ret, errno, strerror(errno)); } return ret; } @@ -216,6 +217,7 @@ static void test_fork(void) pid = chk_error(fork()); if (pid == 0) { /* child */ + sleep(2); exit(2); } chk_error(waitpid(pid, &status, 0)); @@ -320,7 +322,6 @@ static void test_socket(void) chk_error(close(server_fd)); } -#if 0 #define WCOUNT_MAX 512 static void test_pipe(void) @@ -355,7 +356,7 @@ static void test_pipe(void) } if (FD_ISSET(fds[1], &wfds)) { ch = 'a'; - chk_error(write(fds[0], &ch, 1)); + chk_error(write(fds[1], &ch, 1)); wcount++; } } @@ -387,28 +388,41 @@ static int thread2_func(void *arg) return 0; } -void test_clone(void) +static void wait_for_child(pid_t pid) +{ + int status; + chk_error(waitpid(pid, &status, 0)); +} + +/* For test_clone we must match the clone flags used by glibc, see + * CLONE_THREAD_FLAGS in the QEMU source code. + */ +static void test_clone(void) { uint8_t *stack1, *stack2; - int pid1, pid2, status1, status2; + pid_t pid1, pid2; stack1 = malloc(STACK_SIZE); pid1 = chk_error(clone(thread1_func, stack1 + STACK_SIZE, - CLONE_VM | CLONE_FS | CLONE_FILES | SIGCHLD, "hello1")); + CLONE_VM | CLONE_FS | CLONE_FILES | + CLONE_SIGHAND | CLONE_THREAD | CLONE_SYSVSEM, + "hello1")); stack2 = malloc(STACK_SIZE); pid2 = chk_error(clone(thread2_func, stack2 + STACK_SIZE, - CLONE_VM | CLONE_FS | CLONE_FILES | SIGCHLD, "hello2")); + CLONE_VM | CLONE_FS | CLONE_FILES | + CLONE_SIGHAND | CLONE_THREAD | CLONE_SYSVSEM, + "hello2")); - while (waitpid(pid1, &status1, 0) != pid1); + wait_for_child(pid1); free(stack1); - while (waitpid(pid2, &status2, 0) != pid2); + wait_for_child(pid2); free(stack2); + if (thread1_res != 5 || thread2_res != 6) error("clone"); } -#endif /***********************************/ @@ -449,12 +463,10 @@ static void test_signal(void) it.it_value.tv_usec = 10 * 1000; chk_error(setitimer(ITIMER_REAL, &it, NULL)); chk_error(getitimer(ITIMER_REAL, &oit)); - if (oit.it_value.tv_sec != it.it_value.tv_sec || - oit.it_value.tv_usec != it.it_value.tv_usec) - error("itimer"); while (alarm_count < 5) { usleep(10 * 1000); + getitimer(ITIMER_REAL, &oit); } it.it_interval.tv_sec = 0; @@ -463,9 +475,6 @@ static void test_signal(void) it.it_value.tv_usec = 0; memset(&oit, 0xff, sizeof(oit)); chk_error(setitimer(ITIMER_REAL, &it, &oit)); - if (oit.it_value.tv_sec != 0 || - oit.it_value.tv_usec != 10 * 1000) - error("setitimer"); /* SIGSEGV test */ act.sa_sigaction = sig_segv; @@ -503,10 +512,16 @@ static void test_shm(void) int main(int argc, char **argv) { test_file(); + test_pipe(); test_fork(); test_time(); test_socket(); - // test_clone(); + + if (argc > 1) { + printf("test_clone still considered buggy\n"); + test_clone(); + } + test_signal(); test_shm(); return 0; From patchwork Tue Jun 19 15:43:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139217 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5416077lji; Tue, 19 Jun 2018 09:30:33 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJlxkb6oya/9ihv10B6VmPJYlLUa6WsPt6neTJ7T/LgJp4EFW+Af/MzKd3frdpXbbAb8zmn X-Received: by 2002:a37:5a43:: with SMTP id o64-v6mr14946348qkb.211.1529425833017; Tue, 19 Jun 2018 09:30:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425833; cv=none; d=google.com; s=arc-20160816; b=kduCuXj9FeRZuvsY4+J/30VaoCm86JROJ5eXUjpjE/TEVhvstNkkhzK3BXFeA7KnrD 1abiSFDDI5odZV2hvGvhZziYPSrlZ1WPqYdRX4RKvOZgNc1/IH6sQRchdId2Lz5Bm3d2 SgLdQKNJb7KxuGzpagquN8ZS3XNU90Z4fKuurKh+k04lNQftwRqN7+TRswNZyVp/jRWX ExK5RCvZShG9fwTSRY3DRR+wqOCdfDGVCMsa+eS0uVD5NgsLZD2GCwg2wPF5OOr+Z07h pT5BBZArkUj+RH8+V5Ibg4keCMGZ/VcsiYY3vsimEwdgI6qjwIqBQIpklf2yEMMzU9/a pAZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=wMR4o6UA5ueo9j52GN2061/BJYxJY8qHO0RuFBTKZTs=; b=e09B6KvsnF134FV17Xddvd0D2/222MUHZ2u0Nlnf/IZ0g7Jm8Cz8cyJwJvoNOmS0hf m6xe3Fux9Ra72vDT+CzRTlQkNPbV8YbkuYdBRqOGzI4khTM2uVgCD8c/DANeoPx0F3Wh EHaoTRfNTGY8DPhy6i1TAH35dM72WKWEhNFezWx8krP7XNgpKefygA/vGSgwhNzLHE7+ 8Eibxqoc9EydDy/tWUZOBW8V2tPwGao3kN7kNrmNn25yH9yqdOXeuQAScwFw2jbF+Bnm Zf+BPOUniaxiFPtZILaqKtnShIW16nkQkaJ+Hq7dL7Ze6EgPj/4KMibQq0wSAdH+Sgfx HvrQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Mv72R5Z0; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id p33-v6si126583qtk.62.2018.06.19.09.30.32 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:30:33 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Mv72R5Z0; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43659 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJWa-0002j5-9S for patch@linaro.org; Tue, 19 Jun 2018 12:30:32 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46033) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4z-0004dr-8n for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4v-0007dm-3u for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:01 -0400 Received: from mail-wm0-x242.google.com ([2a00:1450:400c:c09::242]:53463) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4u-0007dO-Pf for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:57 -0400 Received: by mail-wm0-x242.google.com with SMTP id x6-v6so1257002wmc.3 for ; Tue, 19 Jun 2018 09:01:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=wMR4o6UA5ueo9j52GN2061/BJYxJY8qHO0RuFBTKZTs=; b=Mv72R5Z0JZQ2Pf7AfQavlywU4Zsgs/QMG+o7e6hAm+jb3k2Q7cVnshYfSVah1ZVCqE yA5H5BJIjdr6V/WwpjhWVonYUd8W5EdoUhnrF7sXs/w7TGsUzypq3oLVFJUyTeYbBoRU ZpNQVTA+Z4CjYtEAsOR8ogFZ7KTxzuG+9Zjkg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=wMR4o6UA5ueo9j52GN2061/BJYxJY8qHO0RuFBTKZTs=; b=omPis3PRlr3pvvZLFuhWue3H9Ae1abTVoCaQ+HtLlJ9hl1ASthcqIr8+1n/uDZBV1e xKfTU6oEEtoK3eLYRk5RkLUwlHWW+Df++9lsgmFyygRL8+32cFyLAlihvfQGQYTsJ72P EEiVoK+UZkptca7EWpZTnhNVkEx1ZibW7oDQ2D9a/iJtaxoxgPr2GkwMyuvYFVd18D1q JGOH9aXHJ6FJ4GwYmHQrlaDs/9z5hyBICJKleBoLFsVwD1DCqwH7rHAo5GtMn8fCLaeR Jb+3JkEMBiao2f/1/jwc7JgftcaohE3Fj4Hx0r0MuS6UQSsveu+vJ1WiFzawKjXJka7s TOUQ== X-Gm-Message-State: APt69E0H8pVbQdzN2WnpWML2XTTCYynCfIby/7J5p1FcvHsezxWxBy0t ehfkgGEf1cOelFW6cD/di8E/9A== X-Received: by 2002:a1c:4787:: with SMTP id m7-v6mr13005385wmi.92.1529424115571; Tue, 19 Jun 2018 09:01:55 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id v13-v6sm40256wrq.43.2018.06.19.09.01.48 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 7948A3E0A51; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:51 +0100 Message-Id: <20180619154435.18898-13-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::242 Subject: [Qemu-devel] [PULL 12/56] tests/tcg/multiarch: don't hard code paths/ports for linux-test X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The fixed path and ports get in the way of running our tests and builds in parallel. Instead of using TESTPATH we use mkdtemp() and instead of a fixed port we allow the kernel to assign one and query it afterwards. Ideally test directory creation should be common functionally across all TCG tests but this could complicate an already huge patch series so we mark it as a TODO for next time. Signed-off-by: Alex Bennée --- v7 - chk_error(strlen(tmpdir)) -> assert(tmpdir) - mark common tempdir as a TODO -- 2.17.1 diff --git a/tests/tcg/multiarch/linux-test.c b/tests/tcg/multiarch/linux-test.c index 6f2c531474..e80eccc0ce 100644 --- a/tests/tcg/multiarch/linux-test.c +++ b/tests/tcg/multiarch/linux-test.c @@ -40,9 +40,8 @@ #include #include #include +#include -#define TESTPATH "/tmp/linux-test.tmp" -#define TESTPORT 7654 #define STACK_SIZE 16384 static void error1(const char *filename, int line, const char *fmt, ...) @@ -85,19 +84,16 @@ static void test_file(void) struct iovec vecs[2]; DIR *dir; struct dirent *de; + /* TODO: make common tempdir creation for tcg tests */ + char template[] = "/tmp/linux-test-XXXXXX"; + char *tmpdir = mkdtemp(template); - /* clean up, just in case */ - unlink(TESTPATH "/file1"); - unlink(TESTPATH "/file2"); - unlink(TESTPATH "/file3"); - rmdir(TESTPATH); + assert(tmpdir); if (getcwd(cur_dir, sizeof(cur_dir)) == NULL) error("getcwd"); - chk_error(mkdir(TESTPATH, 0755)); - - chk_error(chdir(TESTPATH)); + chk_error(chdir(tmpdir)); /* open/read/write/close/readv/writev/lseek */ @@ -163,7 +159,7 @@ static void test_file(void) st.st_mtime != 1000) error("stat time"); - chk_error(stat(TESTPATH, &st)); + chk_error(stat(tmpdir, &st)); if (!S_ISDIR(st.st_mode)) error("stat mode"); @@ -185,7 +181,7 @@ static void test_file(void) error("stat mode"); /* getdents */ - dir = opendir(TESTPATH); + dir = opendir(tmpdir); if (!dir) error("opendir"); len = 0; @@ -207,7 +203,7 @@ static void test_file(void) chk_error(unlink("file3")); chk_error(unlink("file2")); chk_error(chdir(cur_dir)); - chk_error(rmdir(TESTPATH)); + chk_error(rmdir(tmpdir)); } static void test_fork(void) @@ -264,7 +260,7 @@ static int server_socket(void) chk_error(setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &val, sizeof(val))); sockaddr.sin_family = AF_INET; - sockaddr.sin_port = htons(TESTPORT); + sockaddr.sin_port = htons(0); /* choose random ephemeral port) */ sockaddr.sin_addr.s_addr = 0; chk_error(bind(fd, (struct sockaddr *)&sockaddr, sizeof(sockaddr))); chk_error(listen(fd, 0)); @@ -272,7 +268,7 @@ static int server_socket(void) } -static int client_socket(void) +static int client_socket(uint16_t port) { int fd; struct sockaddr_in sockaddr; @@ -280,7 +276,7 @@ static int client_socket(void) /* server socket */ fd = chk_error(socket(PF_INET, SOCK_STREAM, 0)); sockaddr.sin_family = AF_INET; - sockaddr.sin_port = htons(TESTPORT); + sockaddr.sin_port = htons(port); inet_aton("127.0.0.1", &sockaddr.sin_addr); chk_error(connect(fd, (struct sockaddr *)&sockaddr, sizeof(sockaddr))); return fd; @@ -292,10 +288,17 @@ static void test_socket(void) { int server_fd, client_fd, fd, pid, ret, val; struct sockaddr_in sockaddr; - socklen_t len; + struct sockaddr_in server_addr; + socklen_t len, socklen; + uint16_t server_port; char buf[512]; server_fd = server_socket(); + /* find out what port we got */ + socklen = sizeof(server_addr); + ret = getsockname(server_fd, &server_addr, &socklen); + chk_error(ret); + server_port = ntohs(server_addr.sin_port); /* test a few socket options */ len = sizeof(val); @@ -305,7 +308,7 @@ static void test_socket(void) pid = chk_error(fork()); if (pid == 0) { - client_fd = client_socket(); + client_fd = client_socket(server_port); send(client_fd, socket_msg, sizeof(socket_msg), 0); close(client_fd); exit(0); From patchwork Tue Jun 19 15:43:52 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139170 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5378303lji; Tue, 19 Jun 2018 08:57:08 -0700 (PDT) X-Google-Smtp-Source: ADUXVKInETEDSFSdUEqFXr3eYWsGxtUYbKJARc6HjTl+xeWn+G4VWHMj8IkoBr9GtOLwQhpFcyMN X-Received: by 2002:ac8:fdb:: with SMTP id f27-v6mr15849836qtk.293.1529423828876; Tue, 19 Jun 2018 08:57:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423828; cv=none; d=google.com; s=arc-20160816; b=NTxTwGFKJcCR6e9MH1/UyZZwrwnM/QcKsAgdjZpw+Ketj9S4r20+XFEtlWXuS3Nd2M oaprGQPEhON3x+AJQFj1cZ8ofxGP3SzNItx/3vgf1X/VzecdsFFSbeO+BARZwv182naN Dg3vs4h18zdBwmaJzrRas5swPXiJffWFPZlf7Pf3bOQ/GD0oZ/fiuigAKds/y6/0Z802 Lc9RFPVClEfo4ndCYgH3LPJFwfb382tST7QnZ2d9OSHkujmUAhw/4SueU/4dVHWUan3u F/VSdQrVNfVkNy5ggis/vK508x3JGDa12vsK8Qku/XJPuWq4HnyWRJ5BFwegpc5ka/qe 0GyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=/nkM0or5+Du/RsMIFS1xlzwsRoxsnYz5QSMfDbOvg2I=; b=B1gaLebMYFYd67gF/t89/aO9pXegqzHZQWf60WPSk8qGV2HAXVEVPGyGon3sdJgw5k v0hDykG9D0VbIewF+wmemZnkAKYp494mrMTC8ZqfsiNb2z3hGCD1CC3xmMr6qzBhtjpe 8bILGAsGaiE2PMVnddgAF6Ni7R7HjtRbOGs0G5QROkMRn1FaDrsKeEq+0L4/nHag7Wer FCJQyOPlFQUeec+MF/Hht9Fzztt+D/gjk5KyTU5ysVGbRqn8EKxU9G7CKQnC9AGEJZyl TGkTmNDpp5dbghZk8FS4qxqacl+R8dF+/nBPMUYyXFp+hdZBDBONLvbJwcd3L0VQKeNI OSjw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=CnFubEAD; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id n32-v6si51379qtf.69.2018.06.19.08.57.08 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:57:08 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=CnFubEAD; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43400 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ0G-0000J0-89 for patch@linaro.org; Tue, 19 Jun 2018 11:57:08 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35218) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoN-0006ez-4H for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoL-0006Rx-ID for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:51 -0400 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:54241) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoL-0006R2-8F for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:49 -0400 Received: by mail-wm0-x236.google.com with SMTP id x6-v6so1164578wmc.3 for ; Tue, 19 Jun 2018 08:44:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=/nkM0or5+Du/RsMIFS1xlzwsRoxsnYz5QSMfDbOvg2I=; b=CnFubEADkBLNzrU7qksmPrFiXRqqMrViwHxLSSuE/U/qIXr/zlO4OB0PYu4D4wvhTt Yu/bZVjSiq1oXaIXtlmvyH9vfnrgdv1RyeBkHd3qV4GeCgaRyE/++OgBfXGsEOZRBrAo s7YR+30lMWgLiC3+gg2BrfCD8Exk1yubQCpFg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=/nkM0or5+Du/RsMIFS1xlzwsRoxsnYz5QSMfDbOvg2I=; b=AtzglT+ccz9ynpSCXwe3LFW/x3P+TyPQssWUtekKawggucoS28CJuvgqMwtFYP8uWI iwBYfquuhIOsg4fjrvV/ijFxhpmFdjwCTGc9MnYFvYde88tEu//8uXxuKyuBm0P29DS+ ZWFqyN4aFEjobrBdflaYWWtnTrNH5iIZ1/YfR1+aPS3U8HVItSgd6jnJCBFkc1EGtZBO n2QwcLOzJnGRY3O1dpKHs2G5BK2bRY+cZt4PgtHI5gbSNt/Au+rkDuwrgkKXI/MddC+u nD3/GbhP2518mtG0qPsYuGRzmrH/qrtHQKD5LuLBwvE2MSB4yRnpBnubkWng4SaMT7G2 tyFg== X-Gm-Message-State: APt69E1/NTGgN2pPE9G3EM/y2/vPe4D+uTlSxJbTCK45G5pdYVnQAk3S +iylAM0GpSWv3gtGO0X0o1/iww== X-Received: by 2002:a1c:7a06:: with SMTP id v6-v6mr12494589wmc.90.1529423088088; Tue, 19 Jun 2018 08:44:48 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id m185-v6sm298769wma.36.2018.06.19.08.44.40 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:44 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 8C3ED3E0AC0; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:52 +0100 Message-Id: <20180619154435.18898-14-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::236 Subject: [Qemu-devel] [PULL 13/56] tests/tcg/multiarch: move most output to stdout X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The default test run outputs to stdout so it can be re-directed. Errors are still reported to stderr. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Reviewed-by: Thomas Huth --- v4 - remove space in fprintf () to keep checkpatch happy -- 2.17.1 diff --git a/tests/tcg/multiarch/test-mmap.c b/tests/tcg/multiarch/test-mmap.c index cdefadfa4c..5c0afe6e49 100644 --- a/tests/tcg/multiarch/test-mmap.c +++ b/tests/tcg/multiarch/test-mmap.c @@ -36,7 +36,7 @@ do \ { \ if (!(x)) { \ - fprintf (stderr, "FAILED at %s:%d\n", __FILE__, __LINE__); \ + fprintf(stderr, "FAILED at %s:%d\n", __FILE__, __LINE__); \ exit (EXIT_FAILURE); \ } \ } while (0) @@ -57,7 +57,7 @@ void check_aligned_anonymous_unfixed_mmaps(void) uintptr_t p; int i; - fprintf (stderr, "%s", __func__); + fprintf(stdout, "%s", __func__); for (i = 0; i < 0x1fff; i++) { size_t len; @@ -106,7 +106,7 @@ void check_aligned_anonymous_unfixed_mmaps(void) munmap (p4, len); munmap (p5, len); } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_large_anonymous_unfixed_mmap(void) @@ -115,7 +115,7 @@ void check_large_anonymous_unfixed_mmap(void) uintptr_t p; size_t len; - fprintf (stderr, "%s", __func__); + fprintf(stdout, "%s", __func__); len = 0x02000000; p1 = mmap(NULL, len, PROT_READ, @@ -130,7 +130,7 @@ void check_large_anonymous_unfixed_mmap(void) /* Make sure we can read from the entire area. */ memcpy (dummybuf, p1, pagesize); munmap (p1, len); - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_aligned_anonymous_unfixed_colliding_mmaps(void) @@ -141,7 +141,7 @@ void check_aligned_anonymous_unfixed_colliding_mmaps(void) uintptr_t p; int i; - fprintf (stderr, "%s", __func__); + fprintf(stdout, "%s", __func__); for (i = 0; i < 0x2fff; i++) { int nlen; @@ -180,7 +180,7 @@ void check_aligned_anonymous_unfixed_colliding_mmaps(void) munmap (p2, pagesize); munmap (p3, nlen); } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_aligned_anonymous_fixed_mmaps(void) @@ -194,7 +194,7 @@ void check_aligned_anonymous_fixed_mmaps(void) addr = mmap(NULL, pagesize * 40, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); - fprintf (stderr, "%s addr=%p", __func__, addr); + fprintf(stdout, "%s addr=%p", __func__, addr); fail_unless (addr != MAP_FAILED); for (i = 0; i < 40; i++) @@ -212,7 +212,7 @@ void check_aligned_anonymous_fixed_mmaps(void) munmap (p1, pagesize); addr += pagesize; } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_aligned_anonymous_fixed_mmaps_collide_with_host(void) @@ -225,8 +225,8 @@ void check_aligned_anonymous_fixed_mmaps_collide_with_host(void) /* Find a suitable address to start with. Right were the x86 hosts stack is. */ addr = ((void *)0x80000000); - fprintf (stderr, "%s addr=%p", __func__, addr); - fprintf (stderr, "FIXME: QEMU fails to track pages used by the host."); + fprintf(stdout, "%s addr=%p", __func__, addr); + fprintf(stdout, "FIXME: QEMU fails to track pages used by the host."); for (i = 0; i < 20; i++) { @@ -243,7 +243,7 @@ void check_aligned_anonymous_fixed_mmaps_collide_with_host(void) munmap (p1, pagesize); addr += pagesize; } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_file_unfixed_mmaps(void) @@ -252,7 +252,7 @@ void check_file_unfixed_mmaps(void) uintptr_t p; int i; - fprintf (stderr, "%s", __func__); + fprintf(stdout, "%s", __func__); for (i = 0; i < 0x10; i++) { size_t len; @@ -294,7 +294,7 @@ void check_file_unfixed_mmaps(void) munmap (p2, len); munmap (p3, len); } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_file_unfixed_eof_mmaps(void) @@ -304,7 +304,7 @@ void check_file_unfixed_eof_mmaps(void) uintptr_t p; int i; - fprintf (stderr, "%s", __func__); + fprintf(stdout, "%s", __func__); for (i = 0; i < 0x10; i++) { p1 = mmap(NULL, pagesize, PROT_READ, @@ -327,7 +327,7 @@ void check_file_unfixed_eof_mmaps(void) fail_unless (cp[pagesize - 4] == 0); munmap (p1, pagesize); } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_file_fixed_eof_mmaps(void) @@ -343,7 +343,7 @@ void check_file_fixed_eof_mmaps(void) MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); - fprintf (stderr, "%s addr=%p", __func__, (void *)addr); + fprintf(stdout, "%s addr=%p", __func__, (void *)addr); fail_unless (addr != MAP_FAILED); for (i = 0; i < 0x10; i++) @@ -371,7 +371,7 @@ void check_file_fixed_eof_mmaps(void) munmap (p1, pagesize); addr += pagesize; } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void check_file_fixed_mmaps(void) @@ -384,7 +384,7 @@ void check_file_fixed_mmaps(void) addr = mmap(NULL, pagesize * 40 * 4, PROT_READ, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); - fprintf (stderr, "%s addr=%p", __func__, (void *)addr); + fprintf(stdout, "%s addr=%p", __func__, (void *)addr); fail_unless (addr != MAP_FAILED); for (i = 0; i < 40; i++) @@ -426,7 +426,7 @@ void check_file_fixed_mmaps(void) munmap (p4, pagesize); addr += pagesize * 4; } - fprintf (stderr, " passed\n"); + fprintf(stdout, " passed\n"); } void checked_write(int fd, const void *buf, size_t count) From patchwork Tue Jun 19 15:43:53 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139189 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5391174lji; Tue, 19 Jun 2018 09:08:02 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKom4PWLp5NZwKUutFZ3HAzsZSzuXjptaOubCS+W0a9UEBn0kXL2YSjabua9w3j/XmWwRfW X-Received: by 2002:ac8:2351:: with SMTP id b17-v6mr15115508qtb.304.1529424482609; Tue, 19 Jun 2018 09:08:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424482; cv=none; d=google.com; s=arc-20160816; b=SNn8WI67FPRt1iqQ7atxgXOKbJf6fNTkSZf3ezpe7otGlG5IVyyLqa29V4yeahiz2B j+hHJFEUC1duPZn7jST762wjzFPIgmBNmiPlCthAGlEnCsvngYI8YQpaRyEQY4gk3MsS jp6K4T1aYQPc3zqoBq0rsgO4+6o0Ocap7qZdsA+OUlQl+65G7IaRImhxTU61WMMzFpDT 4AXKJkeu7C1UDROrx23xIXGwzRghWhtyNKVSTj2xvPGmQfGMDsovVzJgw3mR/vojl6X0 mJmCBFndqHlRugggFyDpc8ms73vFUEo+AUziLyZnKOb7Uyy1sp9Bk+Y3IFSku3Z1C+i5 NOYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=RhFPZ/u3O+Kw3+px62qvwZhN2hQPpKILbjRd8hXQLnM=; b=z2IDYAeuN1+AnpYM7iMHaNbdDiZwb1aphK/JrkLcrhUV3peEXAzvaE6r80ptfBMfFy avw6DI0zxmp+r6LDlepbHwxuuEp3SNjm0zDEf8tFR+Cb6VCAPQARDV20vHCm/k/i4Rv2 TGGMZOEXnrSbod+3xh1+vbjVpYn5xM7O3SvdwZUHzMweArG/QZE1N+Et73xgKA1tRcoH Au0Ej8PiXHq1LDHvLHQMXTVN421MeVMhh37OGX2UQiwTHi3e3k8gSZighJ003BX+4Adt PtR0pyH4hVLgqGqqP/NltvtYf/lHWAz+/tVilmthvu/y1sAO7aA/2RLzusJQ0JMpuz/R rbBA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=X8ezNiwk; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id y50-v6si38534qth.396.2018.06.19.09.08.02 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:08:02 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=X8ezNiwk; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43474 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJAo-0000Xn-1d for patch@linaro.org; Tue, 19 Jun 2018 12:08:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35204) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoM-0006e0-J1 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoK-0006Qr-5o for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:50 -0400 Received: from mail-wm0-x243.google.com ([2a00:1450:400c:c09::243]:54901) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoJ-0006Pw-Rs for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:48 -0400 Received: by mail-wm0-x243.google.com with SMTP id o13-v6so1148029wmf.4 for ; Tue, 19 Jun 2018 08:44:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=RhFPZ/u3O+Kw3+px62qvwZhN2hQPpKILbjRd8hXQLnM=; b=X8ezNiwkL1l27J/A0qzpvOxgcEQVzvI7l4QCgeZC9+SUc6G7S4HjWgacgPK52K+L4d jff7U7C4DTQ3Qgf6kdsUsADuRnLHFUvrXI5G1YojlYh9N86zftcBtbO7TDFy2lmu9lBo 957/YQ/ROrpADFb/mQkMoKTaNQIghRoHoIbU4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RhFPZ/u3O+Kw3+px62qvwZhN2hQPpKILbjRd8hXQLnM=; b=Lq+gRiiO+/x5qfOGNvjjMa4jcgzhXUtkE+3wL/Dj8+v74rl21+lBl3y9foDjFJZyxI LrREuRmOU+q5eAmENVuNDrVxUyC+EzCZvZ3i9mWzWTW3kaU2lwexAynpz4Cd8pWTNaxp AsKx71wqCW3ngGiGmRyv/KaQR5JYUmVHWrWaAwkFnDbnuLWw9p+5TDTrd+LbVH6legna JJV5lbflKQq2j3M9pRMlw5rAvXS88yQe/5EDb4mn4MYAtLjw/dDJCjIcCvf0juFKVLnm XwBoTkHP4+v53I5IJXM9GBcr61X6off27NSrly86eMFR7noALgiYBFrmiuWnSIFX0ju+ nLkQ== X-Gm-Message-State: APt69E3+TLCUKtqCGZh8Ef+8E7rT5id8ZvQpMqa7OiJJl2J6GuJoLnbh xXVIvlA28CoSZenMdmVFMm4RdLtMNxw= X-Received: by 2002:a1c:a006:: with SMTP id j6-v6mr12876125wme.61.1529423086698; Tue, 19 Jun 2018 08:44:46 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id t9-v6sm186360wmh.41.2018.06.19.08.44.40 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:44 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id A36693E0B02; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:53 +0100 Message-Id: <20180619154435.18898-15-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::243 Subject: [Qemu-devel] [PULL 14/56] tests/tcg: move i386 specific tests into subdir X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" These only need to be built for i386 guests. This includes a stub tests/tcg/i386/Makfile.target which absorbs some of what was in tests/tcg/Makefile. Signed-off-by: Alex Bennée Reviewed-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- v2 - move VPATH and TESTs setup into i386/Makefile.target - set CFLAGS+=-m32 for cross building v4 - update MAINATINERS -- 2.17.1 diff --git a/MAINTAINERS b/MAINTAINERS index eccd81e8e7..ea298cc910 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -283,6 +283,7 @@ M: Richard Henderson M: Eduardo Habkost S: Maintained F: target/i386/ +F: tests/tcg/i386/ F: hw/i386/ F: disas/i386.c T: git git://github.com/ehabkost/qemu.git x86-next diff --git a/tests/tcg/README b/tests/tcg/README index 0890044cf0..469504c4cb 100644 --- a/tests/tcg/README +++ b/tests/tcg/README @@ -3,45 +3,6 @@ regression testing. Tests are either multi-arch, meaning they can be built for all guest architectures that support linux-user executable, or they are architecture specific. -i386 -==== - -test-i386 ---------- - -This program executes most of the 16 bit and 32 bit x86 instructions and -generates a text output, for comparison with the output obtained with -a real CPU or another emulator. - -The Linux system call modify_ldt() is used to create x86 selectors -to test some 16 bit addressing and 32 bit with segmentation cases. - -The Linux system call vm86() is used to test vm86 emulation. - -Various exceptions are raised to test most of the x86 user space -exception reporting. - -linux-test ----------- - -This program tests various Linux system calls. It is used to verify -that the system call parameters are correctly converted between target -and host CPUs. - -test-i386-fprem ---------------- - -runcom ------- - -test-mmap ---------- - -sha1 ----- - -hello-i386 ----------- ARM diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target new file mode 100644 index 0000000000..2f27b65e2d --- /dev/null +++ b/tests/tcg/i386/Makefile.target @@ -0,0 +1,30 @@ +# i386 cross compile notes + +I386_SRC=$(SRC_PATH)/tests/tcg/i386 + +# Set search path for all sources +VPATH += $(I386_SRC) + +I386_SRCS=$(notdir $(wildcard $(I386_SRC)/*.c)) +I386_TESTS=$(I386_SRCS:.c=) + +# Update TESTS +TESTS+=$(I386_TESTS) + +ifneq ($(TARGET_NAME),x86_64) +CFLAGS+=-m32 +endif + +# +# hello-i386 is a barebones app +# +hello-i386: CFLAGS+=-ffreestanding +hello-i386: LDFLAGS+=-nostdlib + +# +# test-386 includes a couple of additional objects that need to be linked together +# + +test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S test-i386.h test-i386-shift.h test-i386-muldiv.h + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $( X-Patchwork-Id: 139209 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5408531lji; Tue, 19 Jun 2018 09:23:27 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJD1HhfDvTmL21fY1MiOl4TAotZiAVnpWOL1VBcpz2olf7uvhW9mhgWkRkocjMLNlVHYP1N X-Received: by 2002:a0c:9361:: with SMTP id e30-v6mr15121618qve.92.1529425407806; Tue, 19 Jun 2018 09:23:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425407; cv=none; d=google.com; s=arc-20160816; b=Wm1uNRfJA8pFvyZi6O83/rzSwn+JpVBA2wHFwVqhCGfJMoJZl8NggtxpghwV0zN7fa kvwiFnsYA/W2vTSOG0sdOR6hLN+SX/6xxDv2cNTqIgf0wbWbm9SFBgjM1U4bflb059rT C7FbMSpQEz9FCZCyF0UtHyqtnAJyHdOr/gMPdbtmoCl6HTm8ZXDdW5LC5aNwzOlSxl0R yVPbCKcSyOwaoaefEwny6geZk6H9wKziqOwYqjZCbsYyTRRb6FJWt6O2XJ4ifEeRqZ19 hN1OFvjcA2I7ivSPhCzik4n1C76Cw9IjYmI30uVK1zeXCSNq3ko+o8dtjgsDEOVyNZFP eBdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=8wZc01J+UfyQf8ZaxL+5hwRZd8+sH4XCnZBrfj+Q3uM=; b=NSqjdnEvRM/sQ4B4o+qpdsUsETsKVfTkvJp+Xng/e3tnVuxp6vlofGqa+EKvNq/JZk JQIyt42tJCDqZFXuQFfMX0MbzNpOAi9HYeRntwEtJG3EDHxFZYQZCDuD6bpk/OPpyPB2 yrYTbSJVg113+Mhz6WgWnGSZK51lG04q9f2nz0+dJMbjix27VLJN8/nnEXgbgvdr+QVy 73Q9fjSnqeR2mB675/FFbjr4lQhrXF1fPFP++oN6AvvHl68gasl4EN1i9t5E5J5CBJ0e XiDjPFbjbSyLuzOk0L72vfiJJpR6MA8QAvzAQOSew8Yvz5ukQKyPYk/06HZDAXVb8/N/ HaqQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=eOa0u9RA; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id y13-v6si89511qve.161.2018.06.19.09.23.27 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:23:27 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=eOa0u9RA; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43596 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJPj-000574-7V for patch@linaro.org; Tue, 19 Jun 2018 12:23:27 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39266) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvb-0004Mw-V2 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvK-0001vg-Rd for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:19 -0400 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:37870) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvK-0001tz-Br for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:02 -0400 Received: by mail-wr0-x243.google.com with SMTP id d8-v6so179493wro.4 for ; Tue, 19 Jun 2018 08:52:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=8wZc01J+UfyQf8ZaxL+5hwRZd8+sH4XCnZBrfj+Q3uM=; b=eOa0u9RA2l9Wg3pxPviGzs5BT4fM8ZbduPHa34xPOJ97dUC5bJABOxZouOSDt/KojE 0G1PANTfaUSeS1pgEVulCyF0i290O0GoTzoAKuLZ0B3wQ7oNxVeH5WiDTc10JDyj6cTr z0UX/bpyGCVCAmS3Wfx5bqAQMDfiC/wuNfTjk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=8wZc01J+UfyQf8ZaxL+5hwRZd8+sH4XCnZBrfj+Q3uM=; b=jj+7X0m7YLaTRy+TzFo7gUXWczIwyUmxa272rQ5iA8ojYOnY6R3PSWzoRagQXtMCjT 1keH9eHX0s27f5SZBAMGvDuo8/S2onXoBglLHMK5ry1S5WYZEuPt3hkxw+xw8qP0wi1x Pyez1yMApfj06WnXftOKaUvv9CJda+Tftx656XJOeEDfGNibMH7vGmd79r5+tc+KNSaZ zO0KeXgzO1m9BFMCwYldS/KXLdfca6/OtR2CETYloFOI+qyV57cPPBY78ThfZOGNFg4A BFVaEr3ZmdZ5ofprELD2wdRFxIm0dxtgo1fgGWcDHa+aspP6tbXXOsiHjl4Usfd4dTyn u+DA== X-Gm-Message-State: APt69E0eRoE0DOYZzrUi+9ZqOHRxeWUpQTT5dZUPX/nBn2+KgfIlg134 8cQ2z68ZrnKGjIsPyieqAzkbqQ== X-Received: by 2002:adf:8361:: with SMTP id 88-v6mr14033900wrd.17.1529423521135; Tue, 19 Jun 2018 08:52:01 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id l142-v6sm628512wmd.16.2018.06.19.08.51.50 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:56 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id B8B6F3E0B49; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:54 +0100 Message-Id: <20180619154435.18898-16-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::243 Subject: [Qemu-devel] [PULL 15/56] tests/tcg: enable building for i386 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" While you can construct a compile command that does work using the x86_64 host compiler that most people use this is flakey. Different distros handle this is different ways so we default to using a known good i386 compiler via docker. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v3 - add runner for runcom v4 - runcom pi10.com directly from SRC_DIR v5 - define extra test-mmap runs -- 2.17.1 diff --git a/tests/tcg/i386/Makefile.include b/tests/tcg/i386/Makefile.include new file mode 100644 index 0000000000..be1c3008dd --- /dev/null +++ b/tests/tcg/i386/Makefile.include @@ -0,0 +1,9 @@ +# +# Makefile.include for all i386 +# +# There is enough brokeness in x86_64 compilers that we don't default +# to using the x86_64 system compiler for i386 binaries. +# + +DOCKER_IMAGE=fedora-i386-cross +DOCKER_CROSS_COMPILER=gcc diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target index 2f27b65e2d..8b46cc021e 100644 --- a/tests/tcg/i386/Makefile.target +++ b/tests/tcg/i386/Makefile.target @@ -28,3 +28,10 @@ hello-i386: LDFLAGS+=-nostdlib test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S test-i386.h test-i386-shift.h test-i386-muldiv.h $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ $( runcom.out, "TEST", "$< on $(TARGET_NAME)") + +# On i386 and x86_64 Linux only supports 4k pages (large pages are a different hack) +EXTRA_RUNS+=run-test-mmap-4096 From patchwork Tue Jun 19 15:43:55 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139165 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5373250lji; Tue, 19 Jun 2018 08:52:12 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKuXYcuE7qFDXZw8X2ubA/0eqHiKbh5nWEHFPTEDi5O2IsnbBx5EWiHhY3caiy5O3Ms60By X-Received: by 2002:aed:3e06:: with SMTP id l6-v6mr15721980qtf.299.1529423532333; Tue, 19 Jun 2018 08:52:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423532; cv=none; d=google.com; s=arc-20160816; b=t4zII6VWaPMNf13L3vpJf1sYt7NEFHwJMqa0XVKHDIXxkwmpJ+0lSSPVcBuaxrc/fj ENA4nb8l5H89rZ2lVluJ5jzyYDxhfRbM2LRMVWZNNN9nRDuk0U3opWnWdRd/QbvtpzKe LSxoasFAgHYPLsRQdS+CS8eyr3RzuReXLoqI8j5Iw5LXMQx/WuhqizYRkj2S86SoLS8y bLFBq/NdCnGYUk6owiSTWGZoksMQ3UDl18mptbX3J+GFfmaJjkMfznvKK3UFqsbwFhbw f/az/W36Aug9mW+ys35yZeUPFAVwUCAlT2WW6Xn98FvNI4nP3OuQjmSMCEZLwC1LmaEf 5NMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=SwUfkuDg/WkhAuVOLCyn02chfnZ6W2qakKGNko8Vugo=; b=K52G/NqCMDfNx6bsdpmxamI/j4NGSx9eesoVCrruB9asIyd1XAG2DPnMSU/ePdfT6a 2QgIf+6A5jp7wMmCJ9xZloOTM8+bgDPmpaFSP0o1Q88ndJXyOWddDmX8EtJksmBOKAtG TOkMdaTYGlY1O8DvK22hxknpT1X500yCWBTNpKy/nqQTg4av51eUhakXDy3Wyag/kHtp UJdYV5zwWMBMAmT6XnA0ws9uxUYOFJtd0TCxUq5Glfy4AegglVN3UyXaW9MbAu/Uzs18 OZMXox0G9tNqHlpKvCscMAkbNuNZSvvXwfBh9/urSwoj2KlRdboks5+VktPNM76gx+Hv qi6w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Sn4fcb0v; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [208.118.235.17]) by mx.google.com with ESMTPS id z14-v6si24225qvn.132.2018.06.19.08.52.12 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:52:12 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Sn4fcb0v; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43363 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvT-00033U-QB for patch@linaro.org; Tue, 19 Jun 2018 11:52:11 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35207) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoM-0006e4-Jd for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoK-0006RL-UR for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:50 -0400 Received: from mail-wr0-x230.google.com ([2a00:1450:400c:c0c::230]:43446) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoK-0006Qn-O6 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:48 -0400 Received: by mail-wr0-x230.google.com with SMTP id d2-v6so132294wrm.10 for ; Tue, 19 Jun 2018 08:44:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=SwUfkuDg/WkhAuVOLCyn02chfnZ6W2qakKGNko8Vugo=; b=Sn4fcb0vkzYvYk30tMaRwLuQpKR5fXOakzJQQ17U4mm1z4Bf5ZLKuFH3xp/w7EEXsw i3n7FH0CDN64Y5uWqsK+B8e/+0YEfebUEqVXrL2UPh+V8xSBW+MnbpBFr2bQPJI+KjSu o/CzpJqwu5bfGDlxcHKOtrXEkt3yIttn1LdlM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=SwUfkuDg/WkhAuVOLCyn02chfnZ6W2qakKGNko8Vugo=; b=qsNrmHWfW+M4saDNB8LBEIk1pSMXfVZBFDviFODOAD0jiYQ1sPrQqGNQqAIpxag3DF oIkwTRlVIFO4ofgLeMDUwFUCFIzDfFLNQGBydYbodxAhtUYKKfuNXoEzZPHUZGIGCmzt Z/OFFbvEAqOS3U9Mp6ex+VJ/6njcaFpxgsph8JHgWQ37Fp5BmMKR0fOIPDooWnJ+T4T4 beVsEBW+Wwo2H+eEFG2FU8HN7R+OkWC0Ly7PgHwcxxpg9SC78tFKs1o/seEC9CT1NmNf EM1fvss/Mzw9vC8vNNqg1PLbhwlqNffKkUeHRXoi+c3RWdDaiiWupN41WdWa+iM3fEVX /e9g== X-Gm-Message-State: APt69E01NoNBHVvf3RgbvMpQme5m1xMwkNCaqL9KrCyw3FqxVdxFgWWs IUaM40TxtRHCcdiCr+JWI0qJoA== X-Received: by 2002:adf:efcf:: with SMTP id i15-v6mr15589198wrp.195.1529423087598; Tue, 19 Jun 2018 08:44:47 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id n7-v6sm4737wrr.39.2018.06.19.08.44.40 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:44 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id CBD743E0B62; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:55 +0100 Message-Id: <20180619154435.18898-17-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::230 Subject: [Qemu-devel] [PULL 16/56] tests/tcg/i386: Build fix for hello-i386 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" From: Fam Zheng We have -Werror=missing-prototype, add a dummy prototype to avoid that warning. Signed-off-by: Fam Zheng Reviewed-by: Thomas Huth Reviewed-by: Richard Henderson Signed-off-by: Alex Bennée -- 2.17.1 diff --git a/tests/tcg/i386/hello-i386.c b/tests/tcg/i386/hello-i386.c index fa00380de2..cfeb24b2f5 100644 --- a/tests/tcg/i386/hello-i386.c +++ b/tests/tcg/i386/hello-i386.c @@ -20,6 +20,7 @@ static inline int write(int fd, const char * buf, int len) return status; } +void _start(void); void _start(void) { write(1, "Hello World\n", 12); From patchwork Tue Jun 19 15:43:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139168 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5376198lji; Tue, 19 Jun 2018 08:55:12 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKHvJK3bVNFXxDRerVaxH+I/BjjLKF5uFjLL6l/nVnsMQO+v/9RRwtHvwrkpICFKtAPpXkH X-Received: by 2002:a0c:e84d:: with SMTP id l13-v6mr15071895qvo.55.1529423712506; Tue, 19 Jun 2018 08:55:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423712; cv=none; d=google.com; s=arc-20160816; b=iuaWHvX/bamPJaeADuwokHlbFODOFVImfXLf8fsUHGgAB65YyFQC6WSMf2M+/3fBJI rZEvfCz5xCpyrXO2JpSEE43aRrR27ZTpvfIkD9fqdBMnJl6ee15Zu4DDTW0VMOZjqyij UO1otIlCNsZMhHwC1JIAqrS5+CnuioWsFKocTx2XKPmcuSbHqeIDCJqOA0WvegC29u8m L2DQSsue/VCAH0ncvphr96/7ihEMO3V701RFssMF4Z8XFj0yX1ALPzUqza8rjvRgRCWU QunxMdQBCd4KDhM4dR6l5+816n9VmHaGa9ClOZaAkOUMQok2iiihNoz5qVDx4BSOOQeW 6VAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=AxElwLoXf1Hhgik2mkH9ZK24VmHj4oGM5/ABwCAzMug=; b=BoTr7jGAevvUbiJrKYJ2EF2AJFuXPlaljluBd7Pi72r+6uzaDJRX8nIJdsH2uMflJw q4/MPgOGYcSvmce7iTC1pvXGxEsgJjE9yxV2R5LgjQlOCiGuNkEaxRuGfcqRBxU+I1JV NS2Nqv+jH33hWFX9G4P4aQh3fL9gS8ehqIqI8sWRXj9kWt/icOS0wX6DgmiBA4dXMt9F rsA6VwqTmEIrzXvP9nuKvcdyp9TIUJ0WGVIu0nimHyfgo9gjDt5SST96KXFvK5Kxv3Sz kbCRa/dFzhPVT2WTVn1C3L8YV2/5FJkkpzPPnIBVBEVFmkHRb5Z6Oyf806wERyJi7JJO ViZg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="dIxIZJ7/"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id k1-v6si8530qtk.400.2018.06.19.08.55.12 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:55:12 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="dIxIZJ7/"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43377 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIyN-0005WI-V7 for patch@linaro.org; Tue, 19 Jun 2018 11:55:11 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35242) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoN-0006ft-SY for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoM-0006SR-K0 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:51 -0400 Received: from mail-wm0-x242.google.com ([2a00:1450:400c:c09::242]:52050) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoM-0006S5-CG for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:50 -0400 Received: by mail-wm0-x242.google.com with SMTP id r15-v6so1178788wmc.1 for ; Tue, 19 Jun 2018 08:44:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=AxElwLoXf1Hhgik2mkH9ZK24VmHj4oGM5/ABwCAzMug=; b=dIxIZJ7/gp+wSCINExharwahHSMLNqEInCr509abezO4icP+xkA8/EwgL/j8wU+SpT UTsHsMZGj81m2WWfl0PfOY8YUEDL7Sw9lO8R6Q0wP/YLNuzRm71OuCFX3KlYRTlWkqwf 1Dd75iMIBzKi/88dJ0MxVqB+KGyUXArh32j6Q= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=AxElwLoXf1Hhgik2mkH9ZK24VmHj4oGM5/ABwCAzMug=; b=MX3uLYHZSCuGHnIpA8fVJCmR8X3k4b7YDLukba1w2fFfZDMJqe4yGF9yfmvvm7ZfpY UNYmP7iKjtn33ILZim0oHPx0l4gw1Rm9O9Fbi5xmO6uxab4Rb7RHVhXAIjBrp12tiIbu dV1t7zsn/hVkTHM69dnFOeHBOIUDG9fXXAE95o/0eX0qWQXHi6+fyvKiXpdL9zhTsSDH k7C2hoZElHB6T+Yaq9YydZW8X4f8PbYa1GbXhn7WfXT3gpuU0Meiu3diUwgvtXZV9PPs tXqKStFU/LTy+8iVEc+e5GqABG/dgLOzhCAeqsRcxvI/3pSwNIZibLwE2pl46pfE5C0j oung== X-Gm-Message-State: APt69E2CkIuFb6P3KOCjDzycsVveTzsZTXg03ASI2GtutWS6AmvU3QsD Y5uKzFvgZLN7G9PDmTKrN4brYA== X-Received: by 2002:a1c:b60a:: with SMTP id g10-v6mr11369117wmf.18.1529423089215; Tue, 19 Jun 2018 08:44:49 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id t9-v6sm186372wmh.41.2018.06.19.08.44.40 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:48 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id DEF503E085B; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:56 +0100 Message-Id: <20180619154435.18898-18-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::242 Subject: [Qemu-devel] [PULL 17/56] tests/tcg/i386: fix test-i386 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" We don't include anything from qemu itself for the build. Signed-off-by: Alex Bennée Reviewed-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- v4 - reword commit message to be more accurate -- 2.17.1 diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c index 9599204895..cae6a7773a 100644 --- a/tests/tcg/i386/test-i386.c +++ b/tests/tcg/i386/test-i386.c @@ -17,7 +17,6 @@ * along with this program; if not, see . */ #define _GNU_SOURCE -#include "qemu/compiler.h" #include #include #include From patchwork Tue Jun 19 15:43:57 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139171 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5378853lji; Tue, 19 Jun 2018 08:57:40 -0700 (PDT) X-Google-Smtp-Source: ADUXVKILADbErJGa6xhr2xPFQwP0oL42+A/oqWC1DIhZm99hmCqtyAyeQFSGAGsE9B0cop6OStub X-Received: by 2002:aed:3fc8:: with SMTP id w8-v6mr15479457qth.262.1529423860732; Tue, 19 Jun 2018 08:57:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423860; cv=none; d=google.com; s=arc-20160816; b=NrPmdgODPWRG9M6Xy05rcw0x5Un8ugYGBaEhO0mQtJODvVQfWiKif4u0ZWb1Y5Bxpg K3G8LPJlHgNGFfyxOmSdfg0huXLBEnvwVxy49oapfnEoB3nXTQ6ZRbKZVCtq63F6//I3 ikRZbnCHC3WnYLV/syLY6hd2Uy6KhinEQ6j841g3rMXhNLDyrc3zzEZ2yq0xMC0OZUox aRixP7/37itxlVGnNYI5GINHWJgRd8/b6RTa1eSoMO7WDKASv/uk8U/8L0u+fLaZBLzq pj6OCsyGMKGT9ckx5WtlIyD23haEgJg4mMpKxFGJorf+37nllB7Ghe7MVaoBm8v0fFTh 3ePg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=IaTqRfOb4P7cqlBWHljxQDEUSYW1YT4Pg98hjHTwvdY=; b=0UziLdMXv/7KEj1MpvEfe+wHIVObmi/HLj0zP3V6/OQTc0hVCc3w9QG3AQNl8Rlerz j93HJIfBuPOAxnP8N18Vot8YEZREDGbN2ZkZgW968QEEXxkb2qI7c5TOJmIAQiUsflud aPL2E8/y8MwiDwUDDrSQkN7fkATDps9pifz/doRQjdoiYG0Dhv68CID75VHGu+KkoQCD Y+aZdkj4uTeY4sBknY9bQXQpuzeKs2uzWqLgjqoHNTLfnzlGNQ9D8wZ+Jndc9NjrBvby YNDi4AYT2qvZP+QKuEbIN/qQzsepjPJIdmT/mSQRiSG2jbWzzHBq+5Oc73XBPPad7hfY vfbw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="Ta/+tkAl"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id s8-v6si54250qta.56.2018.06.19.08.57.40 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:57:40 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="Ta/+tkAl"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43402 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ0m-0000PE-5U for patch@linaro.org; Tue, 19 Jun 2018 11:57:40 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35317) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoR-0006jN-1M for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoP-0006V5-Qi for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:55 -0400 Received: from mail-wr0-x241.google.com ([2a00:1450:400c:c0c::241]:40414) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoP-0006Ue-Jc for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:53 -0400 Received: by mail-wr0-x241.google.com with SMTP id l41-v6so144470wre.7 for ; Tue, 19 Jun 2018 08:44:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=IaTqRfOb4P7cqlBWHljxQDEUSYW1YT4Pg98hjHTwvdY=; b=Ta/+tkAli+SgN4xwItxtmU/0DVw5oJsxiZRLPtmsleCUtKjFNOJVtur0pzLYEsSI30 XgWqAqfQLTWyAa9oVtO+rnaHyPPDFsFVuK1bsfj8XoNhIEeMB3R7t1i/cnE/mGshuyqt h3BpBDLbHdMvPmeMOmtQ2JUE1bWPWihIr0ERA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=IaTqRfOb4P7cqlBWHljxQDEUSYW1YT4Pg98hjHTwvdY=; b=mSWsdW8AYEZC1wt92ztz35HCCwfhUQj85hCdBjbqnC6i3Dzn1v4gpx4F/JjrJtgYd4 aYqtb/FU09Rgq2d+Ladan/oukgHzY5qEuIN8tXQhl/e2Dp0SaSfYj+25M4Q8HvylYgWu kEsCJcMJ12aYP3sCryBxvJRD0J1R/cadkhix5XVeQYElNVUvci+mZjxmTzcab33878Ov wLxMO9LydIzR+TFmNmuQILxMl5odVBzn8ru45VJxjKgyd36brMYqIDfoC5/n2i+QrwDq HBZ3vfcU0lzAcau2zFgrQVHkCeIXOycmkXWStSpMOc28mS54SZwk2SU96D/MeLUt+cPl WWfg== X-Gm-Message-State: APt69E2k/aPLXKsof/fYweEADYcIr+r/ZpyolSHUB/HqTecxJbigXwUL TO0qaBuB3JwhqgwaWVD9ieonJQ== X-Received: by 2002:adf:86ae:: with SMTP id 43-v6mr13371613wrx.281.1529423092507; Tue, 19 Jun 2018 08:44:52 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id q70-v6sm447696wmd.45.2018.06.19.08.44.40 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:48 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id F31C43E0B71; Tue, 19 Jun 2018 16:44:36 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:57 +0100 Message-Id: <20180619154435.18898-19-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::241 Subject: [Qemu-devel] [PULL 18/56] tests/tcg/i386: add runner for test-i386-fprem X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The runner needs to compare against a reference run. We also only run this test when SPEED=slow as it takes a while. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - include test-i386-fprem.ref v5.1 - remove the 69Mb test-i386-fprem.ref - generate test-i386-fprem.ref on developers machine - add TIMEOUT=60 -- 2.17.1 diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target index 8b46cc021e..64d241cfdf 100644 --- a/tests/tcg/i386/Makefile.target +++ b/tests/tcg/i386/Makefile.target @@ -33,5 +33,21 @@ test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S test-i386.h test-i386 run-runcom: runcom pi_10.com $(call quiet-command, $(QEMU) ./runcom $(I386_SRC)/pi_10.com > runcom.out, "TEST", "$< on $(TARGET_NAME)") +ifeq ($(SPEED), slow) + +test-i386-fprem.ref: test-i386-fprem + $(call quiet-command, ./$< > $@,"GENREF","generating $@") + +run-test-i386-fprem: TIMEOUT=60 +run-test-i386-fprem: test-i386-fprem + $(call quiet-command, \ + $(QEMU) $< > $<.out && \ + diff -u $(I386_SRC)/$<.ref $<.out, \ + "TEST", "$< (default) on $(TARGET_NAME)") +else +run-test-i386-fprem: test-i386-fprem + $(call quiet-command, /bin/true, "SLOW TEST", "$< SKIPPED on $(TARGET_NAME)") +endif + # On i386 and x86_64 Linux only supports 4k pages (large pages are a different hack) EXTRA_RUNS+=run-test-mmap-4096 diff --git a/tests/tcg/i386/test-i386-fprem.c b/tests/tcg/i386/test-i386-fprem.c index 1a71623204..66f5a9657d 100644 --- a/tests/tcg/i386/test-i386-fprem.c +++ b/tests/tcg/i386/test-i386-fprem.c @@ -23,7 +23,10 @@ * along with this program; if not, see . */ -#include "qemu/osdep.h" +#include +#include + +#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) /* * Inspired by 's union ieee854_long_double, but with single @@ -39,7 +42,7 @@ union float80u { unsigned int exponent:15; unsigned int negative:1; unsigned int empty:16; - } QEMU_PACKED ieee; + } __attribute__((packed)) ieee; /* This is for NaNs in the IEEE 854 double-extended-precision format. */ struct { @@ -49,7 +52,7 @@ union float80u { unsigned int exponent:15; unsigned int negative:1; unsigned int empty:16; - } QEMU_PACKED ieee_nan; + } __attribute__((packed)) ieee_nan; }; #define IEEE854_LONG_DOUBLE_BIAS 0x3fff @@ -229,6 +232,7 @@ static void test_fprem_cases(void) do_fprem_stack_underflow(); printf("= invalid operation =\n"); + do_fprem(q_nan.d, 1.0); do_fprem(s_nan.d, 1.0); do_fprem(1.0, 0.0); do_fprem(pos_inf.d, 1.0); @@ -238,6 +242,8 @@ static void test_fprem_cases(void) do_fprem(pos_denorm.d, 1.0); do_fprem(1.0, pos_denorm.d); + do_fprem(smallest_positive_norm.d, smallest_positive_norm.d); + /* printf("= underflow =\n"); */ /* TODO: Is there a case where FPREM raises underflow? */ } From patchwork Tue Jun 19 15:43:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139221 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5427383lji; Tue, 19 Jun 2018 09:40:21 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIQf6t03XYY57wBjwQg6y4p31N0Zd7ydpGOMY9ii0XIRAHuaFMSAFoaf+4mqh/DmBRCORQf X-Received: by 2002:a37:2150:: with SMTP id h77-v6mr14949685qkh.424.1529426420966; Tue, 19 Jun 2018 09:40:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426420; cv=none; d=google.com; s=arc-20160816; b=qAh3G+iIhlbK84sF0hAmVZOR6+vVBSb108Tjum4wSUe6KfE3bcQUhJDllUz3TIWJDG sA+55/7urriREw8nC3Y1Yfg7NXn2vKIJ+nMVuyZxmZb8Nmz6GlEIdaN/RFECr3C009JB OIkeFjQAllaIUHuPZLnoxkdYj/LcpxWZBGrLf7T9/81x+qE822jCFj9/f/BYRf0nqnnt DFO10Mug4GjWVU1Vxq+r3dJM+sJFsrNvvCmU2KhoLvBsCGZuG4DB959S8zHg+wewUMEo 3mSTJ8qRDI4/J7D8w74QacOSsPDhTlvlW0LFfI8U/gPQk+4c+zIbW8i99AgbXsNUvbHh ujfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=sne9Xo1jNejjawySnCbDfbqgOz2Sdg2bMObbr732IZo=; b=t8CIXI/DvPDUwmkmQe24JxBCVbYxYqZ7AOCoeVCkpNZRJC3knZbwfdGTPNwwe7ssBl tnXqbnG17/iucdVGAHUfMy9/iMWhL87KjTbh8KZX0zVrGtFpbmNcgWGP483XNyd3RqR3 Udrn5jccfxy/bnQwH7O4jfxscLGKc/nUsdbOnH0KXC+2MZrnWfivv2UbCr1zWePs/9Rg A2dgDW8QcvbVky7Ua2usLdzk4PmoLrPy6CAwgUYTX/8d8RuMY4m4D1PnvrXtHhLw4Ozv 2HrgvoS0zKnI6gVgoyurCfs/mfVlk4cHXWBKo4TEV9Bn4fYD4wk5rzU0R3cP+9JM4byB dQUQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=DlQAUsX3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id r68-v6si132477qki.213.2018.06.19.09.40.20 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:40:20 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=DlQAUsX3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43743 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJg4-00012n-Dj for patch@linaro.org; Tue, 19 Jun 2018 12:40:20 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45934) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4r-0004Xw-VO for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4m-0007ZT-8Y for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:54 -0400 Received: from mail-wm0-x22f.google.com ([2a00:1450:400c:c09::22f]:39453) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4m-0007Z3-1J for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:48 -0400 Received: by mail-wm0-x22f.google.com with SMTP id p11-v6so1407498wmc.4 for ; Tue, 19 Jun 2018 09:01:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=sne9Xo1jNejjawySnCbDfbqgOz2Sdg2bMObbr732IZo=; b=DlQAUsX3wg3hoOm0eg/vlnvUK5ZEhsCu9l2O7/Bu6zdMxU1V+CGJXsNilCC2nk+S5m Y1TBoRkDsMhvyk7OgAyrE1gMXniRZ5AgWOYM8wwWIIv+C6IDNTmDa/p0EVxQkmPncEjH lQ4/ijo5LNa/1e8kPf2t/CXuMJpg7G49+LwlQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=sne9Xo1jNejjawySnCbDfbqgOz2Sdg2bMObbr732IZo=; b=efVskwtaSxaPX/htheFMpPZRR6yuMznp9SGUjIx96wvhHxSCFByeh/GWPGz+59fhQq B0wPN6I3qu5VvBLkmpZ1sk7Gz85Lsvx3D6e/FVgD6jT2NavAcLZLBk+yw8Bom9Yz1CKH 5VPjdyyzvk7dCOKpIIBu+RXPFCFkqq2RNv/Vm1YMo0Z7LtWkXvU+0FYG59uXL8lsaeYv aA1zAGV06HijbVy7+IMvjIiuu00iH2UJcl7rwE2t0ehKQ3NU08pigrjyeSRxxOHsXQJM +zQPaxpAygf7NbtTOl/WJF9gVYp/gdfM7AJNlOdZMwlojLTMOavxUhsGFlO8zMkF1i/y DsNQ== X-Gm-Message-State: APt69E3oEWw5N7xLdxkWjmexB/sOHv+KwcdYd0OLwXFb91AVYFdb29Df ioa1wDzuVbDb+GioRYiYxfaWAA== X-Received: by 2002:a1c:3fd1:: with SMTP id m200-v6mr13364984wma.88.1529424106827; Tue, 19 Jun 2018 09:01:46 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id n7-v6sm39234wrr.39.2018.06.19.09.01.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 17A853E0BB0; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:58 +0100 Message-Id: <20180619154435.18898-20-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::22f Subject: [Qemu-devel] [PULL 19/56] tests/tcg/x86_64: add Makefile.target X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The sources for x86_64 are shared in the i386 directory which will be included thanks to TARGET_BASE_ARCH. However not all sources build so we need to filter out the ones we can't build in the 64 bit world and those that can't be built for 32 bit. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v4 - update MAINTAINERS v5 - merge with disable i386 version of test-i386-ssse -- 2.17.1 diff --git a/MAINTAINERS b/MAINTAINERS index ea298cc910..57c828644f 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -284,6 +284,7 @@ M: Eduardo Habkost S: Maintained F: target/i386/ F: tests/tcg/i386/ +F: tests/tcg/x86_64/ F: hw/i386/ F: disas/i386.c T: git git://github.com/ehabkost/qemu.git x86-next diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target index 64d241cfdf..cd173363ee 100644 --- a/tests/tcg/i386/Makefile.target +++ b/tests/tcg/i386/Makefile.target @@ -7,9 +7,9 @@ VPATH += $(I386_SRC) I386_SRCS=$(notdir $(wildcard $(I386_SRC)/*.c)) I386_TESTS=$(I386_SRCS:.c=) - +I386_ONLY_TESTS=$(filter-out test-i386-ssse3, $(I386_TESTS)) # Update TESTS -TESTS+=$(I386_TESTS) +TESTS+=$(I386_ONLY_TESTS) ifneq ($(TARGET_NAME),x86_64) CFLAGS+=-m32 diff --git a/tests/tcg/x86_64/Makefile.target b/tests/tcg/x86_64/Makefile.target new file mode 100644 index 0000000000..74f170b9ed --- /dev/null +++ b/tests/tcg/x86_64/Makefile.target @@ -0,0 +1,15 @@ +# -*- Mode: makefile -*- +# +# x86_64 tests - included from tests/tcg/Makefile.target +# +# Currently we only build test-x86_64 and test-i386-ssse3 from +# $(SRC)/tests/tcg/i386/ +# + +X86_64_TESTS=$(filter-out $(I386_ONLY_TESTS), $(TESTS)) +X86_64_TESTS+=test-x86_64 +TESTS:=$(X86_64_TESTS) + +test-x86_64: LDFLAGS+=-lm -lc +test-x86_64: test-i386.c test-i386.h test-i386-shift.h test-i386-muldiv.h + $(CC) $(CFLAGS) $< -o $@ $(LDFLAGS) From patchwork Tue Jun 19 15:43:59 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139185 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5387285lji; Tue, 19 Jun 2018 09:04:53 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKnVZBBECMDBTOE2od7ogzZhKlmLb7Q4eao4cNPXyWqy+GFG9aIeLRcrP2y3xco4TDJQ+DW X-Received: by 2002:ac8:1a94:: with SMTP id x20-v6mr16093233qtj.60.1529424292906; Tue, 19 Jun 2018 09:04:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424292; cv=none; d=google.com; s=arc-20160816; b=LIWIDf+1TBCzfFOtSLE6P/mKLX48dPiuTdAZjNQPr4kFTOXdbZGerS6g2f/0RmLdvM xT29hY+28wipWEWoMyhQQywlBPF+7Y1tJnlGJzrd4IeHvFI0ZawGPPEymGAWBZcEADAV tJI2fDjYOgCn1Tt8vWrenXtYn2H4kJpv8A8fH/mgsZjALZg0MIvcM/ZWEhoj1o8ZSJYQ 5Ak61Mjb66seoZSQEghdcR7uCqjNYO2reXUUoJgqWi9H4YAp0i8M4yYVzFmXIvDFuazk GXH2/XurDnK0rdZXhKZraAo1dqf/+4XdTkM1Rfw1sY0WxMBzTji+3Qs3CKHa54/P95Ux eSng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=yTYP5DSvD3EdRIz4J6P7Vl2PsQ2Jlwu0wLRAkoFUnLM=; b=QtOTP4NF2v1QdzlTYh9vL5+/vvKrHzRDfJzoRolLQLP/kZe+rdob/zcPcwI2/ZLPso uFofGkiVYhC/2mm4XPudeKzC6JIytjZPy/dEiOK6+VFOr1tETcUM2AKo7/PA1U2hFoMK h4JgESu5YLxuMIcfEvm6VnRzyBLQVRnjJd9KXFHtpBO6Zmjzwrpsrz19d0jPgCBj10Ek /qEK4GlGTvbP8Fsm5Mb9BBUdm2eWXbEKKhcUJ47r6NplK5smOTMd9lQgviK7Kjn+penM SL2wtT9xZYtHFzdGxzSyH/Ox2M7jDGHBf1eKg4uRlTrzflRmz1tyH26suICfKHO2hWtV GO2w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=NbJ8X0om; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id n69-v6si66011qka.44.2018.06.19.09.04.52 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:04:52 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=NbJ8X0om; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43439 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ7k-0005Vj-9Q for patch@linaro.org; Tue, 19 Jun 2018 12:04:52 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38689) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvF-00044V-2p for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvA-0001h1-JA for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:56 -0400 Received: from mail-wr0-x22f.google.com ([2a00:1450:400c:c0c::22f]:41705) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIv8-0001de-R7 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:52 -0400 Received: by mail-wr0-x22f.google.com with SMTP id h10-v6so162464wrq.8 for ; Tue, 19 Jun 2018 08:51:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=yTYP5DSvD3EdRIz4J6P7Vl2PsQ2Jlwu0wLRAkoFUnLM=; b=NbJ8X0omtPnnXBve2vpzc8NzchbiF6nwQfF2TmNyem1ZtBZHgcRlr9NAoctD7XMqIr ZQONVMfxWP5bn8SkgUKTFJMADMPS83x9/ooUB/Fgv7QCh0gp7V9eg4C1wFmueSrPCGV8 iefsSGrAa3XYla7HrMSbTN0RM0vynpKKmei1U= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=yTYP5DSvD3EdRIz4J6P7Vl2PsQ2Jlwu0wLRAkoFUnLM=; b=E1MxkUXXTjtWjr+wmLI8H+v+rYSfkLugnd730p4hee7rs2nWD5rNXzDMF0or/KNxIN P9uKXWkB32ZvA6aIXFfTuabE9Zyo1gbi/+WBIiNs9y8DrF53Xff7GEJ6sW3yLrrXUclG vjFjYl/h5TTTynoR4FH8Z3P2smtW/lRy7uTGDqmTw6zf4G3rHLNCq14EHMp8OBNjW6if 7hVw394KK5VoQ6jLVU440eYeb0LLzH7QTg6VXIcyUrnFxPU4dA+I6xy8MaR+mjHcV5w6 Bk6NatXG6tbJekKhFlfRazMLDTfqesmZ4CcGMrUdFqsh2HMKYPRZjAQH7HfPkEYTeQQe SRhw== X-Gm-Message-State: APt69E1KLuuSIh6jmRUzKlngs+xokALCjOzi2Wa7tS47dB0nv78sO3MF sTk31RlnCwjOAhzzeC/rgFlVLQ== X-Received: by 2002:adf:bd89:: with SMTP id l9-v6mr14834273wrh.266.1529423509676; Tue, 19 Jun 2018 08:51:49 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id b124-v6sm643635wmf.11.2018.06.19.08.51.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:46 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 2B64F3E0BC6; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:43:59 +0100 Message-Id: <20180619154435.18898-21-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::22f Subject: [Qemu-devel] [PULL 20/56] tests/tcg/i386/test-i386: use modern vector_size attributes X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The compiler complains about the old __mode__ style attributes. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c index cae6a7773a..caef4da176 100644 --- a/tests/tcg/i386/test-i386.c +++ b/tests/tcg/i386/test-i386.c @@ -2106,8 +2106,8 @@ static void test_enter(void) #ifdef TEST_SSE -typedef int __m64 __attribute__ ((__mode__ (__V2SI__))); -typedef float __m128 __attribute__ ((__mode__(__V4SF__))); +typedef int __m64 __attribute__ ((vector_size(8))); +typedef float __m128 __attribute__ ((vector_size(16))); typedef union { double d[2]; From patchwork Tue Jun 19 15:44:00 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139203 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5402847lji; Tue, 19 Jun 2018 09:18:19 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKS/Xch7EdTHaysDgPXEXgn4EnByi+iJusyiiDUbr4blXDBOghHAedAHJNe8iN4rfGU+ELt X-Received: by 2002:a37:2194:: with SMTP id f20-v6mr14597085qki.397.1529425099838; Tue, 19 Jun 2018 09:18:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425099; cv=none; d=google.com; s=arc-20160816; b=DED3wpTgEg2bAkr9Ba2LkLWssyPJsi78WdU1S/nek73g0luGuyfFyhO/A2PY8HiK2K el65SJMH5JvWuLyHCfeT1ynmgPNU+FgdiD2UktR6SOvjEdaZs+AHjMNAonJwhGxyf3Se tUEmGE4MszmFtYVqH/LtbeuZXw3XPK5zQPefh7VKo5obra6YYy7p2+4IaS0zXOZ3YAup BTtIs+ADVeHr7vZcSmdYTdPoJRBjOVIJRfplYHxpp3YJjm2imWCKPHtu4q++cO5jGaSu +wEQRSLqL79H6RmMLH+RVWdN8SQR3uNlCyFtb6FTrh6G/LHd0se7pjJIglE2BKlBChu/ VxtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=KfQ6TB4cmK86LnGUsgQ4Gf9Cd3HgXRKdeT4njAVYuno=; b=RB1uAXq3wcc7eBf/9armsAIlLEWTMwUupEQvW5qrnsd3p+e2XthWx3XLgU/l/LHsvK mkuCxN+2xlXEtFeRgS5xDUCksDBeYNcB+3/hQpgtdPdeKcg9osqBYrSe07+nLW5mMOH4 j7deZipv2+3WzA2yRjWnYd2qvQAho+YPji4m/flkqBSqioM8YA5nP54d/YeMqIeJ/erJ MhNwB0xfXR5Cd/9WYg6QLTLp3SATEto5lhzREq9Kr+jACgMSt9iQOGFtGy3q+LL99lT2 btwIb05B6jFRoMtVJXDAuR67dumBuaVWMfHQT8rWGFtKTGWIZy2YM14MZj8uwXHWOOZq TpjQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=dyB+jkZx; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id f12-v6si67042qtc.343.2018.06.19.09.18.19 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:18:19 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=dyB+jkZx; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43555 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJKl-0000xy-6z for patch@linaro.org; Tue, 19 Jun 2018 12:18:19 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4q-0004X5-Em for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4n-0007a5-Km for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:52 -0400 Received: from mail-wr0-x231.google.com ([2a00:1450:400c:c0c::231]:44946) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4n-0007Zh-DK for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:49 -0400 Received: by mail-wr0-x231.google.com with SMTP id x4-v6so187987wro.11 for ; Tue, 19 Jun 2018 09:01:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=KfQ6TB4cmK86LnGUsgQ4Gf9Cd3HgXRKdeT4njAVYuno=; b=dyB+jkZxYlsDoc/VBjmvq/q5hkT2Nj1cRKhEr9G3eekxOf/cIbugoOtqXYtHySclHd TFteS5iqonkEyAhksH8nxsnd5gVsSi/ZFgRSs5aVlct0DMYgvjxdMfcteI3CWkj4Vl6/ ceqPmLJ+A56aFLw3xGcnj+zddDo1W6Jy9idJ0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=KfQ6TB4cmK86LnGUsgQ4Gf9Cd3HgXRKdeT4njAVYuno=; b=NxnhUWPgunc9OcoYW90wJ3EdpC2F8JptSfWfT0lDKRuLSmJJKMF1bbC3apUH3M2f/E v9Vg1r11+dbbNveY262VRh0Zq4qKQaHiQVleUTCaEDR+DE2TLIH7ud3RujtwgMPOIYa2 QrVYDYRzaGne5Ja8RgSEr8FUSF941mP2OnIwsJu0gtWgZOCzxTIplJDP3bQ2uzMFq9Ha PlMEmdS2oyI98kYfG6PmwTtlIFfSaSy7Q0qmUMidFpMvYVhyCUSwzV9rD0aRkNZKrcWZ 6le8NRBpmyunbSLX+N/gAcnRrRsjWAsFHSjARG41Onw3g7Ewz/o82X+e4VHWUkCmKswi Z+7Q== X-Gm-Message-State: APt69E0SGIt7rKIlTfvlclLPTPBEWplhv1zxMm84Q4EcBBf6GUvje9wh P9zxruGJjisrS+3htp4HGwq5VQ== X-Received: by 2002:adf:fb92:: with SMTP id a18-v6mr13978696wrr.278.1529424108256; Tue, 19 Jun 2018 09:01:48 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id j18-v6sm230728wmh.15.2018.06.19.09.01.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:46 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 3EE193E0BF4; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:00 +0100 Message-Id: <20180619154435.18898-22-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::231 Subject: [Qemu-devel] [PULL 21/56] tests/tcg/i386/test-i386: fix printf format X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c index caef4da176..a29b41e764 100644 --- a/tests/tcg/i386/test-i386.c +++ b/tests/tcg/i386/test-i386.c @@ -2258,7 +2258,7 @@ SSE_OP(a ## sd); "pop %0\n"\ : "=rm" (eflags)\ : "x" (a.dq), "x" (b.dq));\ - printf("%-9s: a=%f b=%f cc=%04x\n",\ + printf("%-9s: a=%f b=%f cc=%04lx\n",\ #op, a1, b1,\ eflags & (CC_C | CC_P | CC_Z | CC_S | CC_O | CC_A));\ } From patchwork Tue Jun 19 15:44:01 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139201 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5398601lji; Tue, 19 Jun 2018 09:14:33 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLuAqz9JnFTHjZv6dj4qugjP71uDPqZNjysPp20LKgXzlNiPWhgZGBEbxi90Z1xKzima6CD X-Received: by 2002:a37:1a1d:: with SMTP id a29-v6mr14456324qka.426.1529424873739; Tue, 19 Jun 2018 09:14:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424873; cv=none; d=google.com; s=arc-20160816; b=mTTq190Cv6tDzRDcHG3yqJXIR43mlERvP/b1HSMf2LEINC5rSlZ+E5mpp6cwxjuUSN ymAxGYLGguRhSOJMfMt6Y3Csp1hbBLAGio7xiM5tNEFhdx46sULNMGML0HMIJZYEy0nb 8rX0nhYGfVumHkFb3Wy3jXpJySdclFpX+q8cGuVDGgW25za77GFuawRWR3ncTyxm9oFf vouu370OY3OWBssVrtTBusdL/uss6HQkFQBbXNXgd83ZQT3rUcwkWCBxxvS9L4fmXJex /RhwS2E6ixxAb9Tbi8SuLHM56nvG8l0QyOcONrbtufgU9puIIIfZuDWDr40uE2WQPZEw X8zg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=jGyUD6T6phK/XXMVn1waW06W3JXghTvaJ/RqcBAX9u4=; b=PfktWH6dVOa8o5YijZh+elRZzGbe6P88Vn1nXbACRi/3NlPGcN86tOxttEFnNz3OO0 lVqvNz1KGd9dBgItVYRTZCQOnpISPTHGxEg04QhJ96TJGi9ZVM3CMVeyb/YysF+QwVWh NARDPSt8OElLt/Cl9g8Xo78fuhWw2UACbKTtoWgWEbJ8f7tstM2/AAQGKvJu5Ghc+/rJ YwkYfHASaZJk4zWaA5VUA/pE8zNOK5qRfbu7S8mKXWF8kHBYLI2M8sJdl7UhsAAOpPzt 876NTxCLQAElJ+X6lux5ShTZWpgppM3qvtgpdnwueccSs6vJGh1cq2JEQEbTFkIKH/Yt 5Ycg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=RbYvm1sh; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id l201-v6si51796qke.371.2018.06.19.09.14.33 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:14:33 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=RbYvm1sh; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43526 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJH7-0006a0-4d for patch@linaro.org; Tue, 19 Jun 2018 12:14:33 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35286) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoP-0006hz-Vu for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoO-0006UM-I3 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:53 -0400 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:38632) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoO-0006Ta-7E for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:52 -0400 Received: by mail-wr0-x243.google.com with SMTP id e18-v6so155163wrs.5 for ; Tue, 19 Jun 2018 08:44:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jGyUD6T6phK/XXMVn1waW06W3JXghTvaJ/RqcBAX9u4=; b=RbYvm1shSX9CiouzYlqH8nQhQmxAzcqlFcTTyyFlF4UdLwfgmsfrJIrtqTig8LXdbz L0Cy1801ZSULaJSHr3W5Mvwf8yfASXFgn7E2JG3LVJ4KY7NOs1axCXJHVO+UH54wAluo ATmcUwFE+xROusnYuPFsBRC3kkEplzG5c/Joc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=jGyUD6T6phK/XXMVn1waW06W3JXghTvaJ/RqcBAX9u4=; b=F2gV1H+vYvzurMSZa2q4qQmq5q0sx4CVgIcQqMLhATisGgYkGyA4/aujyqxwy5dFJm 651R7mPtiLIR4BBiWp7a7cO4gwRSba9+7LHsXcR6C6v2YceAF2Ce33jVr3VA87MJzodp vXDj8ep2AEOHX2T7Rl3qSu2+20rGRd778L2b1iXTNFBlDUZxBZbfE1AupLaMh3Yhzf1J zrnku3raNHiHLGDH45G261HeJ+mVO/CUYxV8E0pux1qtdqNAtNYu9yBhWckxUrc8dTwk 4vPBo4LJOD1qo1zssn6j85vxyo86weCMA2jWEbHKFeTwxytHK05S2nY4q4TKzbibxl9X dH2g== X-Gm-Message-State: APt69E2gk87bfRDGmsGMtmNMdw6Ls6LXvg8limfU2H3Fqt57e55khiLT fCfN9CNdiF/oEvk5qACQAVZaoQ== X-Received: by 2002:adf:bd89:: with SMTP id l9-v6mr14807567wrh.266.1529423091114; Tue, 19 Jun 2018 08:44:51 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id j4-v6sm3366wrr.47.2018.06.19.08.44.41 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:48 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 55F443E0C0F; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:01 +0100 Message-Id: <20180619154435.18898-23-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::243 Subject: [Qemu-devel] [PULL 22/56] tests/tcg: move ARM specific tests into subdir X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, "open list:ARM" , famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" These only need to be built for ARM guests. Signed-off-by: Alex Bennée Reviewed-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- v2 - do VPATH manipulation in tests/tcg/arm/Makefile.target - merge with fix hello-arm test v4 - update MAINTAINERS -- 2.17.1 diff --git a/MAINTAINERS b/MAINTAINERS index 57c828644f..75a163f557 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -135,6 +135,7 @@ M: Peter Maydell L: qemu-arm@nongnu.org S: Maintained F: target/arm/ +F: tests/tcg/arm/ F: hw/arm/ F: hw/cpu/a*mpcore.c F: include/hw/cpu/a*mpcore.h diff --git a/tests/tcg/README b/tests/tcg/README index 469504c4cb..625f2326e6 100644 --- a/tests/tcg/README +++ b/tests/tcg/README @@ -5,15 +5,6 @@ or they are architecture specific. -ARM -=== - -hello-arm ---------- - -test-arm-iwmmxt ---------------- - MIPS ==== diff --git a/tests/tcg/arm/Makefile.target b/tests/tcg/arm/Makefile.target new file mode 100644 index 0000000000..bc6962ecc6 --- /dev/null +++ b/tests/tcg/arm/Makefile.target @@ -0,0 +1,13 @@ +# -*- Mode: makefile -*- +# +# ARM - included from tests/tcg/Makefile.target +# + +ARM_SRC=$(SRC_PATH)/tests/tcg/arm + +# Set search path for all sources +VPATH += $(ARM_SRC) + + +hello-arm: CFLAGS+=-marm -ffreestanding +hello-arm: LDFLAGS+=-nostdlib diff --git a/tests/tcg/arm/README b/tests/tcg/arm/README new file mode 100644 index 0000000000..e6307116e2 --- /dev/null +++ b/tests/tcg/arm/README @@ -0,0 +1,11 @@ +These are ARM specific guest programs + +hello-arm +--------- + +A very simple inline assembly, write syscall based hello world + +test-arm-iwmmxt +--------------- + +A simple test case for older iwmmxt extended ARMs diff --git a/tests/tcg/hello-arm.c b/tests/tcg/arm/hello-arm.c similarity index 100% rename from tests/tcg/hello-arm.c rename to tests/tcg/arm/hello-arm.c diff --git a/tests/tcg/test-arm-iwmmxt.s b/tests/tcg/arm/test-arm-iwmmxt.s similarity index 100% rename from tests/tcg/test-arm-iwmmxt.s rename to tests/tcg/arm/test-arm-iwmmxt.s From patchwork Tue Jun 19 15:44:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139233 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5433646lji; Tue, 19 Jun 2018 09:46:00 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKDwoiPe4Tzop4A13Kd4Q1uzs8MYPeVLKE7JxRxIr+bdyfU83Brlj54jVe25JrJiALAvVFl X-Received: by 2002:ac8:2d2e:: with SMTP id n43-v6mr15847881qta.106.1529426760747; Tue, 19 Jun 2018 09:46:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426760; cv=none; d=google.com; s=arc-20160816; b=LkUA6V/Y/vqFyS4Ly6O8usCNOFoKYP/esCN3UfbFxB6f6+EFZvi3u3eQC5FYj2UEI0 t79RGhFIv4krXcr/fmfXF5l9joS2ZKYrBs3gdcO7w5Ssv9IRfZ5reuNOTK9FcyH9WaWW yluLdAz3S09FCmGKaO/VT962uNPocKZpcgNoXWLeMmK1b1L+0mTnZPgq33nazxL4q98x mSuzpUt1MNq7vmsCAwwnh65Or7e4c0QAtPdvw+sXwKkk6gIfXjrA4XDItDD7bL3DD8z6 HfBJyvt3SazMvke4M8Gf8WF5HVpPnFfCyHNQqCSj+RCroPtNBv+nXCjaUGODw1cYWK3S uPTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=lVAQS6Ls6IneOMO04PMLr1PTYzsT3FMnaYbiwbgASA4=; b=XsoQI0jIxIXL3sSvvdyaFpORZBzNRFvMSWeFbH3cDyvzw98R+5nULZlpUyX18bIBaj lyV/yr1+JMrnvdQni8KC7ZZNp2sDfs6RwQw4h6xbtD2Y3J1V7tRPiVp7uPdOX2KG3GHi y4khi8R6IuiB6qyzMvZEa5aIFTOKiO4QVdMHcrjQ16b1cacbQRDP0DFzXnvyj/b/v5hl ycHt2Tu2le7nFelIZXyLacVOtn02KJlWe0U+cMIyT0YW6RHtGGojPn9PWWoSsXNvQdnu z9Ft2D8fU/9ZR1wm5Bg/R010MCtWoHfE3bvo9xp7NhzY/VGWBJOsbuorq2ZuOas9Vl+A NOYg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=g1nltamY; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id h37-v6si161230qtb.153.2018.06.19.09.46.00 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:46:00 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=g1nltamY; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43793 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJlY-0005up-6l for patch@linaro.org; Tue, 19 Jun 2018 12:46:00 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51331) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJOB-0003rH-G8 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJO9-0007Gw-6M for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:51 -0400 Received: from mail-wr0-x241.google.com ([2a00:1450:400c:c0c::241]:36990) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJO8-0007FI-Vt for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:49 -0400 Received: by mail-wr0-x241.google.com with SMTP id d8-v6so279120wro.4 for ; Tue, 19 Jun 2018 09:21:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=lVAQS6Ls6IneOMO04PMLr1PTYzsT3FMnaYbiwbgASA4=; b=g1nltamYwWlUkrm9x5iWEp5s0+Rph90MwCAbJIpEyuuiic0KIIz0gQ8pNpRInd8+4K ZUU8m9vGrzoLhS0cFV5du7NcOAOaCddagGr0xRtnC1sjZ4V9sTqiGT/98yUjpJ/+QNls lXoPZ11xBbMxjwsawXImVR8hDtUQcNR4W978o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=lVAQS6Ls6IneOMO04PMLr1PTYzsT3FMnaYbiwbgASA4=; b=P++cqTdXR8nmfnr0LNszfYdtOEsTxZTkG9KJ/EM+xDKeGuajPopqEv6rWLTRm0RhR+ TwMLoLDgBANJju25Ts2nTB5W+sDBCJlcVwkRNLuxTL+eCKbJ78gmNiYBs3FHa7mgGN5G wC6eYYWXFb7rbPmUuAVJUPgHfn+CBrN0k9ZbXfBUT4TK48AsCSndZnYOsW+kXaiVmmns VRAOyHnMCwZBJCsKW1Nu8nyGuVoynbNGOhcarWv6FD4tQirc2kNFQy1gc+Mi+Z6hrjix b2oc10yLFMX68F1pOPV54K3LLpSOfE2jjWG1gKjg7zyNrobytZ+XKfmOTkc8I3U8s2PG LtgQ== X-Gm-Message-State: APt69E3dh2aRypWcxNNeafjXfma6F9QmksxcJY8e5y7J2bl5ynDerRRl lSjf9iqYfHOCf5kQg6Ss3fghodlldoY= X-Received: by 2002:a5d:4906:: with SMTP id x6-v6mr14688061wrq.66.1529425307943; Tue, 19 Jun 2018 09:21:47 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id l5-v6sm30361wrn.92.2018.06.19.09.21.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:21:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 6B1B23E0C1C; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:02 +0100 Message-Id: <20180619154435.18898-24-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::241 Subject: [Qemu-devel] [PULL 23/56] tests/tcg: enable building for ARM X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, "open list:ARM" , famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This allows us to use the docker cross compiler image to build these tests. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - add EXTRA_RUNS for mmap tests -- 2.17.1 diff --git a/tests/tcg/arm/Makefile.include b/tests/tcg/arm/Makefile.include new file mode 100644 index 0000000000..8e7eac008f --- /dev/null +++ b/tests/tcg/arm/Makefile.include @@ -0,0 +1,8 @@ +# Makefile.include for all ARM targets +# +# We don't have any bigendian build tools so we only use this for armhf + +ifeq ($(TARGET_NAME),arm) +DOCKER_IMAGE=debian-armhf-cross +DOCKER_CROSS_COMPILER=arm-linux-gnueabihf-gcc +endif diff --git a/tests/tcg/arm/Makefile.target b/tests/tcg/arm/Makefile.target index bc6962ecc6..0312293dca 100644 --- a/tests/tcg/arm/Makefile.target +++ b/tests/tcg/arm/Makefile.target @@ -1,6 +1,6 @@ # -*- Mode: makefile -*- # -# ARM - included from tests/tcg/Makefile.target +# ARM - included from tests/tcg/Makefile # ARM_SRC=$(SRC_PATH)/tests/tcg/arm @@ -11,3 +11,6 @@ VPATH += $(ARM_SRC) hello-arm: CFLAGS+=-marm -ffreestanding hello-arm: LDFLAGS+=-nostdlib + +# On ARM Linux only supports 4k pages +EXTRA_RUNS+=run-test-mmap-4096 From patchwork Tue Jun 19 15:44:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139232 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5430924lji; Tue, 19 Jun 2018 09:43:32 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLM4Tz2MFpBtSBJ1hO25pxozDJKoavHbLY5TG71M3CT24kXGJH+nA3utkFwVJwDMmuI/SbN X-Received: by 2002:a0c:f24e:: with SMTP id z14-v6mr15025242qvl.208.1529426612805; Tue, 19 Jun 2018 09:43:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426612; cv=none; d=google.com; s=arc-20160816; b=0k6UAnHZvgNK96sWWNvmkRF6JrdJwdo2y+5N2wgarStrSiXRQIhczjkMr9N//icWbs o1M+kWYusufj3uCXbH1Z5OxQgCEBxmneVq//cIMsCNPiTXeWpAl88IMRN4PdkYqYnPiQ peRlMj+W2pXsI0ebwF0WSWf2Q2qUsKrHbMAgPqToTvfJZ6z4RI9QXTGa/fHESBq8SPAj oIweFK3Xef7rbd8bcoeILFyFpXEdkvqd7TrSlhBSv4xxfqgc59K+E1QeVB4Ce1vFpNzu 0J3ru1+5ODlgHAe6nwM7VDszJNX0lQQUnB+uXAXjWQ4VUTcEOb56iSIOhbwiKx2XCAMZ aZ0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=HwE7AVsWuSL68owxqUnMhTSpB9Pt8qThrjUwhEz0EcY=; b=JW7gs2pS2Fq3pS8Ct/dHM23zfhseqrAw6kGpUrbdH56ecBs0mpuUkZhJy96BgMA9UM fex4vKR4ST2AKmQLp4WEuaS36EfaqbvmHhXfk3XPkGN8xUug04Z3GF9B7JgSpwSzsCiK p76+VZ7r0ZiwrTZFp+fc1DlCiwgzd6aR7D24jKiO0JusK/+nxeLmbXO/1Cr6xIn7QCVa h/6zKDdBF7KFwr1yykJ4CRgUmpxm7FPLWNGTkArFF9O3JtnOo8SqS7c/2Vg03iG+SA3C avweb/sUJ2WqGbKVTrcQcWDdr0E+l632lCfNK2mltZP7l5O19dF2HP6UcIpgwnkJfTgY S/wQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=FXGNX7zd; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id p43-v6si10651qta.379.2018.06.19.09.43.32 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:43:32 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=FXGNX7zd; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43766 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJjA-0003oV-3p for patch@linaro.org; Tue, 19 Jun 2018 12:43:32 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45994) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4w-0004bU-Ea for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4q-0007bb-RW for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:58 -0400 Received: from mail-wr0-x242.google.com ([2a00:1450:400c:c0c::242]:35861) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4q-0007aq-KF for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:52 -0400 Received: by mail-wr0-x242.google.com with SMTP id f16-v6so219732wrm.3 for ; Tue, 19 Jun 2018 09:01:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=HwE7AVsWuSL68owxqUnMhTSpB9Pt8qThrjUwhEz0EcY=; b=FXGNX7zdiT2Q6tFG8d8KAep/KG6rIl8Pp4MWNsfKU5hC5sk8Gum5JKTKASgc67aGQ8 X0z2AWjzED6AHzsG4kTH2SNNvuU6lDNStJKBmwueDaFQSSj8vn4zkv6FubAd+SBtVOUx U5zdRJUlivL7pGn+eblJyeToxAjM8JcOwvtu4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=HwE7AVsWuSL68owxqUnMhTSpB9Pt8qThrjUwhEz0EcY=; b=Ev+qF6YWzSG3SXRKGYO3u1Eb5JHiiEso6sQ1Q9eIa7p7rQTdLn0aGub8ezybziTPYb 567VMqon9BKzJtR3e9gQ3NozWbAdbwYpJkGFgRQG2Eu3whhB6RaRmUsTLEy/4PshPp0s kfXtnC3mpA+UrD3h6iKvsfFYNtk1ix9k1f/Rwh9BYeBMWylEVdvWVsJ6KY6/29xP9WoZ F7mkoxzKCw9xmQMLUvJCr3pAnMzsTMtzbV/n7YRwLTyvBnx/XHMk0aySCWdE7YFH3gDG cNC3fcFFBiELVoqu60gDbZfVAV6kEUaLXhvC/FZZde+zU7moMH2v2RDnbWMKtS+4kXpV bzaQ== X-Gm-Message-State: APt69E3Gji4QrIZNslf2gkXTNtXoTt7es3zE7FK5bhKSm2C6aiqaSEAn Xs42kfQISCILIRbOCdOLT8wcZg== X-Received: by 2002:adf:b86b:: with SMTP id u40-v6mr14612024wrf.162.1529424111464; Tue, 19 Jun 2018 09:01:51 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id 84-v6sm606727wme.16.2018.06.19.09.01.47 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 7F69A3E0C4D; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:03 +0100 Message-Id: <20180619154435.18898-25-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::242 Subject: [Qemu-devel] [PULL 24/56] tests/tcg/arm: fix up test-arm-iwmmxt test X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, "open list:ARM" , famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" We need to rename the source file to a .S so we can do a single-line assemble and link invocation. We also specify the additional CFLAGS for the compile as it's a non-standard ARM binary. Signed-off-by: Alex Bennée [rth: force fpu configuration] Signed-off-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- v4 - include rth's -mfpu=fpv4-sp-d16 v5 - merge fixes -- 2.17.1 diff --git a/tests/tcg/arm/Makefile.target b/tests/tcg/arm/Makefile.target index 0312293dca..cadb385890 100644 --- a/tests/tcg/arm/Makefile.target +++ b/tests/tcg/arm/Makefile.target @@ -8,9 +8,14 @@ ARM_SRC=$(SRC_PATH)/tests/tcg/arm # Set search path for all sources VPATH += $(ARM_SRC) +TESTS += hello-arm test-arm-iwmmxt hello-arm: CFLAGS+=-marm -ffreestanding hello-arm: LDFLAGS+=-nostdlib +test-arm-iwmmxt: CFLAGS+=-marm -march=iwmmxt -mabi=aapcs -mfpu=fpv4-sp-d16 +test-arm-iwmmxt: test-arm-iwmmxt.S + $(CC) $(CFLAGS) $< -o $@ $(LDFLAGS) + # On ARM Linux only supports 4k pages EXTRA_RUNS+=run-test-mmap-4096 diff --git a/tests/tcg/arm/test-arm-iwmmxt.s b/tests/tcg/arm/test-arm-iwmmxt.S similarity index 100% rename from tests/tcg/arm/test-arm-iwmmxt.s rename to tests/tcg/arm/test-arm-iwmmxt.S From patchwork Tue Jun 19 15:44:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139235 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5438877lji; Tue, 19 Jun 2018 09:51:03 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLj5WwHJWMA1g/C0l1VSna0iVrtEgJCZ0Uceg6V7EAlHgTOf+DerjvOkbTr9EXSKOQjnmmn X-Received: by 2002:aed:3b3b:: with SMTP id p56-v6mr15706235qte.372.1529427063420; Tue, 19 Jun 2018 09:51:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529427063; cv=none; d=google.com; s=arc-20160816; b=je0smq9Wc2O4e4ndbyAQCH8vjt1hhG6ZgvMCcyQjXeUeP9CFd4lgodiX9siY6nZh5j 2ihwBVxxspWsJ7vjVMfqFSgqNz/R5+jKGDpJABdxjB1rZafkFAhpkVMlVvymOxiFBckA RiMwS7gn/PZwLMCNwZe+GvffFUISoEoNPrZA3dq6t1gXBhfQov9WFUPAIRqNL3Rbx1ac TjjANW6XUAgqVZTCJMVvdFM0GbN+kG53BWNSQs3RyhPK0WLXdAnyBcJnlXO02JKTv5aN Bg8q1Eyh88okftBy7CyiJQn0TlwVfkpaaWsjoP1yYK0l/gxwAgwT0MjNmjGFi97/TU67 Kiug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=him+ORcFF12CQc5y5vLRBYkSKmRQkzQ48iX66j/ivG8=; b=f89thUcoiyIUISuhqs7vO6NMuk6n62eOv2N535+h29C8y/oltlMp++Fga86we9/8Uf HN0fztLotMJXThlMog6cOzqVcg+0IyAGobIk9QoBrqtG/GqzbG1RKcVkQBS6r7x+tw8V T1eLfpEO1NBMJzxZT8m2dXoXUY9JiFdNeFoqqnqjEUBAwsHMY0boyp0fl5bvdbi4P8AH LxCY/SZ09Xo1REma4uP0W18HIp17w7cO+aiZo3FllCBPDXDJLk4hyhDySe4D2+Gdjba2 w3ShqcCZfLrzk/uuDkFudeFYaxzm58HkRibxRDdLJL3gr7NAB/jqT0NPHrDOd9Mz+v8T 2pyQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UiZZynWf; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id w140-v6si150507qkw.211.2018.06.19.09.51.03 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:51:03 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UiZZynWf; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43829 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJqQ-0000pm-Sh for patch@linaro.org; Tue, 19 Jun 2018 12:51:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51302) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJO8-0003nc-AW for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJO7-0007Dy-FC for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:48 -0400 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:36991) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJO7-0007D8-8e for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:47 -0400 Received: by mail-wr0-x243.google.com with SMTP id d8-v6so279027wro.4 for ; Tue, 19 Jun 2018 09:21:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=him+ORcFF12CQc5y5vLRBYkSKmRQkzQ48iX66j/ivG8=; b=UiZZynWfmwQaOb1LIezVc0MqzYVop1R3GRLGpvOI3/72Oy3JHyk3Ykg1k1F9cNUWSm Tk7hlZh8SV9fC8Kpkwfby3A83AiGMTOU+EKwcV3V5M/kWrCz6yLxjGACFkI2Kjm3Waiq qebNPLGrQWZovdqDY3qs05snZMTbPHrzn3cFI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=him+ORcFF12CQc5y5vLRBYkSKmRQkzQ48iX66j/ivG8=; b=GkT8XhNX34Jb0vIL05xbxvzmZwh8/D6C9rmNxacdUymxi3D5fIZxEhBq5XZ4HO+SGs NzANaUUGp5WjHj0JdfR5/l5NSWVggtygba+EoNJ0wqFSJX93c2cLRld/S2GpY5xVC5pl pHyuGiwrZdNwCGX1YP/V89xpYQYeewehx2FrhhtJe4VQU68t4iv4ajjh3G0LSnBox55e dGtG00mUSoe+mZLEXft1/J8nev2LKYAjRsDIAeMhnRgaS6FMNx+Blzs3xnNNZutQQuBi sT9T0kenGjMvH8NUMJPB9iKn3T9hn5t/SNdJ+2+gYISnTx/KbXSD5FsIPxU4haaVF1Yv FB/Q== X-Gm-Message-State: APt69E1nXLeqalrgsjkuzANZTZwmLQPhl05PAvrlE0I+iIWSl+tfv7dD EuHsh7gNnGFp1orjN1hcWhmvjQ== X-Received: by 2002:adf:9a4c:: with SMTP id z70-v6mr15422066wrb.118.1529425306139; Tue, 19 Jun 2018 09:21:46 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id l5-v6sm30360wrn.92.2018.06.19.09.21.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:21:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 948333E0865; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:04 +0100 Message-Id: <20180619154435.18898-26-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::243 Subject: [Qemu-devel] [PULL 25/56] tests/tcg: enable building for AArch64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, "open list:ARM" , famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" We only have compilers for the (default) little endian variants. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v4 - update MAINTAINERS -- 2.17.1 diff --git a/MAINTAINERS b/MAINTAINERS index 75a163f557..c4fc6fa357 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -136,6 +136,7 @@ L: qemu-arm@nongnu.org S: Maintained F: target/arm/ F: tests/tcg/arm/ +F: tests/tcg/aarch64/ F: hw/arm/ F: hw/cpu/a*mpcore.c F: include/hw/cpu/a*mpcore.h diff --git a/tests/tcg/aarch64/Makefile.include b/tests/tcg/aarch64/Makefile.include new file mode 100644 index 0000000000..de32c91235 --- /dev/null +++ b/tests/tcg/aarch64/Makefile.include @@ -0,0 +1,8 @@ +# Makefile.include for AArch64 targets +# +# We don't have any bigendian build tools so we only use this for AArch64 + +ifeq ($(TARGET_NAME),aarch64) +DOCKER_IMAGE=debian-arm64-cross +DOCKER_CROSS_COMPILER=aarch64-linux-gnu-gcc +endif From patchwork Tue Jun 19 15:44:05 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139211 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5409217lji; Tue, 19 Jun 2018 09:24:03 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIsH8FJ+HxlOBoolztRNOtLEbt5UNI6236cdAsAsRiWX1c5ONrGG8AJxWtYyw56V/+KX58r X-Received: by 2002:a37:aa88:: with SMTP id t130-v6mr14695288qke.270.1529425443499; Tue, 19 Jun 2018 09:24:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425443; cv=none; d=google.com; s=arc-20160816; b=esqv2VXKF0Kv5WvbCUVk+E9JrBtWGH0aGWeMqXdfzdgHbG+W31QGR7TLwkSsUE1dr5 dPOPrq5o9NU8X+WpCgHdaf5UjQQ8v+J+tAbTiWsOQCmpMV//CCeRc5mwZJ1mQECLF8p0 KEwJer9O4suv62ERyA1QfashbIj2WmdvTddxi2SXrCjEftEARrCxers5nuaFMOdfrpr6 nwhYnOCnWxMa2zhWvS6yMbQxZ5/qKMcpNMewk+vg6Mh4WMI3Cx47Yq8wPJANWzQmwlqY xUWWat13W0Sj2HzD86WclaorIE6W5xOjYCVxtYp+9/Sbm9tTGFxjJXUzX/1JZCi0Wui3 6Q8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=u4jnnQxA4rBjTzDaPxSGeBbu+sFTFoMeu3ONd7Mp95w=; b=cp/5C+m9FAhYaiXA2yCDU+XM0Fmojt0RtQUKrA6FvM/VkHwiOy0uB5dfAwo/6tlRBm llMKhpAjOlaPNPs8G4M91vBewHh4/bFi1N3q8DKzX75IZLe6wKhxfeJ+D7EhBLtiLlmJ Iqd4JdH234bGv2Ox4qWqorKCL+QbkO4Sk9zRmtX0oCA3pzNw1/j3Cr7oJrNim0rSqcFn EJJX64dD3n14h1hqXq0G7NaLFD72WyD1T8U9PYOkzXHvlGFLIZ9a4Bb+thDWZTM54bOi D1nF/eQ1e8yLf5V0JP6ag3lrqHkq1YcPjCwkf12Iiu5s5jUZMQErGiFlMgmZQjfIWu0K B6kA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=IRXMsRga; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id y18-v6si93078qva.42.2018.06.19.09.24.03 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:24:03 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=IRXMsRga; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43598 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJQI-0005Ak-Kn for patch@linaro.org; Tue, 19 Jun 2018 12:24:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41652) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIxc-00064o-G1 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:55:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvE-0001mm-Ct for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:54:24 -0400 Received: from mail-wm0-x233.google.com ([2a00:1450:400c:c09::233]:52956) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvC-0001jC-BW for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:56 -0400 Received: by mail-wm0-x233.google.com with SMTP id p126-v6so1222460wmb.2 for ; Tue, 19 Jun 2018 08:51:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=u4jnnQxA4rBjTzDaPxSGeBbu+sFTFoMeu3ONd7Mp95w=; b=IRXMsRgaY3Mw81ZxmEtolaTkyxroADtc0Pu0LcdO7dK+I+ez8uPR8ThDvNxONKHLAr j5d6+TyG4G0sk88V9n1+y/5yMv4JUG87HApjyxCdhnih0GtHJdGOcK2dv2lCaXSvWK2W vJPrmudrtMQbPldHr9AKR5wTBVq52U0hoISK8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=u4jnnQxA4rBjTzDaPxSGeBbu+sFTFoMeu3ONd7Mp95w=; b=IOJq4PAsDk6V3OEHev8vdYHVZwRGijW6rnwF0k3zaPuR0Pu/Tye9O89ewmYjzKfvXa r7Zmv3TA4mgchmtpakKHu4TDszxsZ9YzRBKSpqgvzpWmkLLR+WIadEIFdVvkByZkTnsS orJRhgxw2DgfFrpxjHg+NiGMRxY7QIHCldXhmjJh5wpFsVs4fWsY144rGqC1M1203Jqq kbCY0RlR2i7DIftqa4D3IgXg2qoN3N/1DfsStpqT86P4agkLJ//ndNtYDZYXyIeKtHTw vrAVyZixRoWK0qqY7NPYfkspCpqXT67M7fqupG8MQa5YVa45Qw4ynLAMNK1+UEO7VPbN FFPw== X-Gm-Message-State: APt69E0ywTiV850Ad42DOaWDWDdUjPAwtuGzqb2WIIkVrw2Pnyc5fQsg whyqtb6eYom9MxUugrkkmS0z5w== X-Received: by 2002:a1c:5f82:: with SMTP id t124-v6mr11508429wmb.147.1529423512139; Tue, 19 Jun 2018 08:51:52 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id u7-v6sm15269wrp.44.2018.06.19.08.51.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:51 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id BDD563E0C65; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:05 +0100 Message-Id: <20180619154435.18898-27-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::233 Subject: [Qemu-devel] [PULL 26/56] tests/tcg/arm: add fcvt test cases for AArch32/64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, "open list:ARM" , famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This runs through the usual float to float conversions and crucially also runs with ARM Alternative Half Precision Format. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v4 - add fcvt.ref and check results against it - fix single_to_half, single_to_double conversions - properly toggle AHP mode (fpsr->fpcr) - more values around the AHP margins - add INF/NAN/SNAN inputs - build for ARM and AArch64 - fix bug for hex literals - add float-to-int - checkpatch fix v5 - merge with tests/tcg/aarch64: add Makefile.target -- 2.17.1 diff --git a/tests/tcg/aarch64/Makefile.target b/tests/tcg/aarch64/Makefile.target new file mode 100644 index 0000000000..7dba32138d --- /dev/null +++ b/tests/tcg/aarch64/Makefile.target @@ -0,0 +1,19 @@ +# -*- Mode: makefile -*- +# +# AArch64 specific tweaks + +AARCH64_SRC=$(SRC_PATH)/tests/tcg/aarch64 +VPATH += $(AARCH64_SRC) + +# we don't build any of the ARM tests +AARCH64_TESTS=$(filter-out $(ARM_TESTS), $(TESTS)) +AARCH64_TESTS+=fcvt +TESTS:=$(AARCH64_TESTS) + +fcvt: LDFLAGS+=-lm + +run-fcvt: fcvt + $(call quiet-command, \ + $(QEMU) $< > fcvt.out && \ + diff -u $(AARCH64_SRC)/fcvt.ref fcvt.out, \ + "TEST", "$< (default) on $(TARGET_NAME)") diff --git a/tests/tcg/aarch64/fcvt.ref b/tests/tcg/aarch64/fcvt.ref new file mode 100644 index 0000000000..e7af24dc58 --- /dev/null +++ b/tests/tcg/aarch64/fcvt.ref @@ -0,0 +1,3268 @@ +#### Enabling IEEE Half Precision +### Rounding to nearest +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0x7f00 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x400 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x4170 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4248 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bff (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7bff (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7c00 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0x7e00 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0x7e00 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0x7f00 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -nan / 0x00fffffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -nan / 0x00fffbfc0000000000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -nan / 0x00fff8040000000000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: nan / 0x007ff8040000000000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: nan / 0x007ffbfc0000000000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: nan / 0x007ffffc0000000000 (0 => OK) +### Rounding upwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x400 (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x401 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4249 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0x7f00 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x400 (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x401 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x4170 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4249 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bff (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7c00 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0x7e00 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0x7e00 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0x7f00 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766502400000000000e+09 / 0x4f730c3b (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962457600000000000e+09 / 0x4f71605e (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638080000000000000e+08 / 0x4e4c0001 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896384000000000000e+08 / 0x4e61ff01 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912768000000000000e+08 / 0x4e620001 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -nan / 0x00fffffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -nan / 0x00fffbfc0000000000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -nan / 0x00fff8040000000000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: nan / 0x007ff8040000000000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: nan / 0x007ffbfc0000000000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: nan / 0x007ffffc0000000000 (0 => OK) +### Rounding downwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730512e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0x7f00 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x400 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x416f (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4248 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bfe (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7bff (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7c00 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0x7e00 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0x7e00 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0x7f00 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -nan / 0x00fffffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -nan / 0x00fffbfc0000000000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -nan / 0x00fff8040000000000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: nan / 0x007ff8040000000000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: nan / 0x007ffbfc0000000000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: nan / 0x007ffffc0000000000 (0 => OK) +### Rounding to zero +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0x7f00 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x400 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x416f (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4248 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bfe (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7bff (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7c00 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0x7e00 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0x7e00 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0x7f00 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -nan / 0x00fffffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -nan / 0x00fffbfc0000000000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -nan / 0x00fff8040000000000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: nan / 0x007ff8040000000000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: nan / 0x007ffbfc0000000000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: nan / 0x007ffffc0000000000 (0 => OK) +Converting single-precision to integer +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 INT64: 1/0x000000000000000001 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 INT64: 2/0x000000000000000002 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 INT64: 65503/0x00000000000000ffdf (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 INT64: 65504/0x00000000000000ffe0 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 INT64: 65505/0x00000000000000ffe1 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 INT64: 131007/0x00000000000001ffbf (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 INT64: 131008/0x00000000000001ffc0 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 INT64: 131009/0x00000000000001ffc1 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 INT64: 0/00000000000000000000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting double-precision to integer +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 INT64: -2/0x00fffffffffffffffe (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 INT64: -1/0x00ffffffffffffffff (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 INT64: 0/00000000000000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 INT64: 1/0x000000000000000001 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 INT64: 1/0x000000000000000001 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 INT64: 2/0x000000000000000002 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 INT64: 65503/0x00000000000000ffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 INT64: 65504/0x00000000000000ffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 INT64: 65505/0x00000000000000ffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 INT64: 131007/0x00000000000001ffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 INT64: 131008/0x00000000000001ffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 INT64: 131009/0x00000000000001ffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 INT64: 2147483647/0x00000000007fffffff (0 => OK) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 INT64: 0/00000000000000000000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 INT64: 0/00000000000000000000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting half-precision to integer +00 HALF: 0xffff (0 => OK) +00 INT64: 4294959104/0x0000000000ffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 INT64: 4292861952/0x0000000000ffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 INT64: 4290781184/0x0000000000ffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 INT64: 4286578688/0x0000000000ff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 INT64: 3347046400/0x0000000000c77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 INT64: 3221225472/0x0000000000c0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 INT64: 3212836864/0x0000000000bf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 INT64: 3011510272/0x0000000000b3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 INT64: 2147483648/0x000000000080000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 INT64: 864026624/0x000000000033800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 INT64: 1065353216/0x00000000003f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 INT64: 1199562752/0x0000000000477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 INT64: 2139095040/0x00000000007f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 INT64: 2143297536/0x00000000007fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 INT64: 2145378304/0x00000000007fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 INT64: 2147475456/0x00000000007fffe000 (0 => OK) +#### Enabling ARM Alternative Half Precision +### Rounding to nearest +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7fff (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xffff (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xffff (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x400 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x4170 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4248 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bff (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7bff (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7fff (0x10 => INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7fff (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7fff (0x10 => INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7fff (0x1 => INVALID) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7fff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7fff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7fff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7fff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -1.31008000000000000000e+05 / 0x00c0fffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -8.18560000000000000000e+04 / 0x00c0f3fc0000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -6.56000000000000000000e+04 / 0x00c0f0040000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -6.55360000000000000000e+04 / 0x00c0f0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 6.55360000000000000000e+04 / 0x0040f0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 6.56000000000000000000e+04 / 0x0040f0040000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 8.18560000000000000000e+04 / 0x0040f3fc0000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +### Rounding upwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x400 (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x401 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4249 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7c00 (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7fff (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x1 => INVALID) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xffff (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xffff (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x400 (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x401 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x4170 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4249 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bff (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7c00 (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7fff (0x10 => INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7fff (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7fff (0x1 => INVALID) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7fff (0x1 => INVALID) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7fff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7fff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7fff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7fff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766502400000000000e+09 / 0x4f730c3b (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962457600000000000e+09 / 0x4f71605e (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638080000000000000e+08 / 0x4e4c0001 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896384000000000000e+08 / 0x4e61ff01 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912768000000000000e+08 / 0x4e620001 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -1.31008000000000000000e+05 / 0x00c0fffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -8.18560000000000000000e+04 / 0x00c0f3fc0000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -6.56000000000000000000e+04 / 0x00c0f0040000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -6.55360000000000000000e+04 / 0x00c0f0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 6.55360000000000000000e+04 / 0x0040f0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 6.56000000000000000000e+04 / 0x0040f0040000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 8.18560000000000000000e+04 / 0x0040f3fc0000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +### Rounding downwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7ffe (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730512e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xffff (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xffff (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x400 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x416f (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4248 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bfe (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7bff (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7ffe (0x10 => INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7fff (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7fff (0x10 => INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7fff (0x1 => INVALID) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7fff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7fff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7fff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7fff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -1.31008000000000000000e+05 / 0x00c0fffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -8.18560000000000000000e+04 / 0x00c0f3fc0000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -6.56000000000000000000e+04 / 0x00c0f0040000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -6.55360000000000000000e+04 / 0x00c0f0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 6.55360000000000000000e+04 / 0x0040f0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 6.56000000000000000000e+04 / 0x0040f0040000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 8.18560000000000000000e+04 / 0x0040f3fc0000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +### Rounding to zero +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7ffe (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0xffff (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0xffff (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0xc000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0xbc00 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0x400 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x3c00 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x3c01 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x3c00 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x4000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x416f (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x4248 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0x7bfe (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0x7bff (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0x7bff (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0x7ffe (0x10 => INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0x7fff (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0x7fff (0x10 => INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0x7fff (0x1 => INVALID) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0x7fff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0x7fff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0x7fff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0x7fff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: -1.31008000000000000000e+05 / 0x00c0fffc0000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: -8.18560000000000000000e+04 / 0x00c0f3fc0000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: -6.56000000000000000000e+04 / 0x00c0f0040000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: -6.55360000000000000000e+04 / 0x00c0f0000000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: -6.55040000000000000000e+04 / 0x00c0effc0000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: -5.96046447753906250000e-08 / 0x00be70000000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: -0.00000000000000000000e+00 / 0x008000000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 5.96046447753906250000e-08 / 0x003e70000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 6.55360000000000000000e+04 / 0x0040f0000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 6.56000000000000000000e+04 / 0x0040f0040000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 8.18560000000000000000e+04 / 0x0040f3fc0000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +Converting single-precision to integer +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 INT64: 1/0x000000000000000001 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 INT64: 2/0x000000000000000002 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 INT64: 65503/0x00000000000000ffdf (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 INT64: 65504/0x00000000000000ffe0 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 INT64: 65505/0x00000000000000ffe1 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 INT64: 131007/0x00000000000001ffbf (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 INT64: 131008/0x00000000000001ffc0 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 INT64: 131009/0x00000000000001ffc1 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 INT64: 0/00000000000000000000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting double-precision to integer +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 INT64: -9223372036854775808/0x008000000000000000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 INT64: -2/0x00fffffffffffffffe (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 INT64: -1/0x00ffffffffffffffff (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 INT64: 0/00000000000000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 INT64: 1/0x000000000000000001 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 INT64: 1/0x000000000000000001 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 INT64: 2/0x000000000000000002 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 INT64: 65503/0x00000000000000ffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 INT64: 65504/0x00000000000000ffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 INT64: 65505/0x00000000000000ffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 INT64: 131007/0x00000000000001ffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 INT64: 131008/0x00000000000001ffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 INT64: 131009/0x00000000000001ffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 INT64: 2147483647/0x00000000007fffffff (0 => OK) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 INT64: 9223372036854775807/0x007fffffffffffffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 INT64: 0/00000000000000000000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 INT64: 0/00000000000000000000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting half-precision to integer +00 HALF: 0xffff (0 => OK) +00 INT64: 3355435008/0x0000000000c7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 INT64: 3349143552/0x0000000000c79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 INT64: 3347062784/0x0000000000c7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 INT64: 3347054592/0x0000000000c7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 INT64: 3347046400/0x0000000000c77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 INT64: 3221225472/0x0000000000c0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 INT64: 3212836864/0x0000000000bf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 INT64: 3011510272/0x0000000000b3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 INT64: 2147483648/0x000000000080000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 INT64: 864026624/0x000000000033800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 INT64: 1065353216/0x00000000003f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 INT64: 1199562752/0x0000000000477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 INT64: 1199570944/0x000000000047800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 INT64: 1199579136/0x000000000047802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 INT64: 1201659904/0x0000000000479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 INT64: 1207951360/0x000000000047ffe000 (0 => OK) diff --git a/tests/tcg/arm/Makefile.target b/tests/tcg/arm/Makefile.target index cadb385890..14b5435fc6 100644 --- a/tests/tcg/arm/Makefile.target +++ b/tests/tcg/arm/Makefile.target @@ -8,7 +8,9 @@ ARM_SRC=$(SRC_PATH)/tests/tcg/arm # Set search path for all sources VPATH += $(ARM_SRC) -TESTS += hello-arm test-arm-iwmmxt +ARM_TESTS=hello-arm test-arm-iwmmxt + +TESTS += $(ARM_TESTS) fcvt hello-arm: CFLAGS+=-marm -ffreestanding hello-arm: LDFLAGS+=-nostdlib @@ -17,5 +19,16 @@ test-arm-iwmmxt: CFLAGS+=-marm -march=iwmmxt -mabi=aapcs -mfpu=fpv4-sp-d16 test-arm-iwmmxt: test-arm-iwmmxt.S $(CC) $(CFLAGS) $< -o $@ $(LDFLAGS) +ifeq ($(TARGET_NAME), arm) +fcvt: LDFLAGS+=-lm +# fcvt: CFLAGS+=-march=armv8.2-a+fp16 -mfpu=neon-fp-armv8 + +run-fcvt: fcvt + $(call quiet-command, \ + $(QEMU) $< > fcvt.out && \ + diff -u $(ARM_SRC)/fcvt.ref fcvt.out, \ + "TEST", "$< (default) on $(TARGET_NAME)") +endif + # On ARM Linux only supports 4k pages EXTRA_RUNS+=run-test-mmap-4096 diff --git a/tests/tcg/arm/fcvt.c b/tests/tcg/arm/fcvt.c new file mode 100644 index 0000000000..617626bc63 --- /dev/null +++ b/tests/tcg/arm/fcvt.c @@ -0,0 +1,458 @@ +/* + * Test Floating Point Conversion + */ + +/* we want additional float type definitions */ +#define __STDC_WANT_IEC_60559_BFP_EXT__ +#define __STDC_WANT_IEC_60559_TYPES_EXT__ + +#include +#include +#include +#include +#include + +#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) + +static char flag_str[256]; + +static char *get_flag_state(int flags) +{ + if (flags) { + snprintf(flag_str, sizeof(flag_str), "%s %s %s %s %s", + flags & FE_OVERFLOW ? "OVERFLOW" : "", + flags & FE_UNDERFLOW ? "UNDERFLOW" : "", + flags & FE_DIVBYZERO ? "DIV0" : "", + flags & FE_INEXACT ? "INEXACT" : "", + flags & FE_INVALID ? "INVALID" : ""); + } else { + snprintf(flag_str, sizeof(flag_str), "OK"); + } + + return flag_str; +} + +static void print_double_number(int i, double num) +{ + uint64_t double_as_hex = *(uint64_t *) # + int flags = fetestexcept(FE_ALL_EXCEPT); + char *fstr = get_flag_state(flags); + + printf("%02d DOUBLE: %02.20e / %#020" PRIx64 " (%#x => %s)\n", + i, num, double_as_hex, flags, fstr); +} + +static void print_single_number(int i, float num) +{ + uint32_t single_as_hex = *(uint32_t *) # + int flags = fetestexcept(FE_ALL_EXCEPT); + char *fstr = get_flag_state(flags); + + printf("%02d SINGLE: %02.20e / %#010x (%#x => %s)\n", + i, num, single_as_hex, flags, fstr); +} + +static void print_half_number(int i, uint16_t num) +{ + int flags = fetestexcept(FE_ALL_EXCEPT); + char *fstr = get_flag_state(flags); + + printf("%02d HALF: %#04x (%#x => %s)\n", + i, num, flags, fstr); +} + +static void print_int64(int i, int64_t num) +{ + uint64_t int64_as_hex = *(uint64_t *) # + int flags = fetestexcept(FE_ALL_EXCEPT); + char *fstr = get_flag_state(flags); + + printf("%02d INT64: %20" PRId64 "/%#020" PRIx64 " (%#x => %s)\n", + i, num, int64_as_hex, flags, fstr); +} + +#ifndef SNANF +/* Signaling NaN macros, if supported. */ +# if __GNUC_PREREQ(3, 3) +# define SNANF (__builtin_nansf ("")) +# define SNAN (__builtin_nans ("")) +# define SNANL (__builtin_nansl ("")) +# endif +#endif + +float single_numbers[] = { -SNANF, + -NAN, + -INFINITY, + -FLT_MAX, + -1.111E+31, + -1.111E+30, + -1.08700982e-12, + -1.78051176e-20, + -FLT_MIN, + 0.0, + FLT_MIN, + 2.98023224e-08, + 5.96046E-8, /* min positive FP16 subnormal */ + 6.09756E-5, /* max subnormal FP16 */ + 6.10352E-5, /* min positive normal FP16 */ + 1.0, + 1.0009765625, /* smallest float after 1.0 FP16 */ + 2.0, + M_E, M_PI, + 65503.0, + 65504.0, /* max FP16 */ + 65505.0, + 131007.0, + 131008.0, /* max AFP */ + 131009.0, + 1.111E+30, + FLT_MAX, + INFINITY, + NAN, + SNANF }; + +static void convert_single_to_half(void) +{ + int i; + + printf("Converting single-precision to half-precision\n"); + + for (i = 0; i < ARRAY_SIZE(single_numbers); ++i) { + float input = single_numbers[i]; + + feclearexcept(FE_ALL_EXCEPT); + + print_single_number(i, input); +#if defined(__arm__) + uint32_t output; + asm("vcvtb.f16.f32 %0, %1" : "=t" (output) : "x" (input)); +#else + uint16_t output; + asm("fcvt %h0, %s1" : "=w" (output) : "x" (input)); +#endif + print_half_number(i, output); + } +} + +static void convert_single_to_double(void) +{ + int i; + + printf("Converting single-precision to double-precision\n"); + + for (i = 0; i < ARRAY_SIZE(single_numbers); ++i) { + float input = single_numbers[i]; + /* uint64_t output; */ + double output; + + feclearexcept(FE_ALL_EXCEPT); + + print_single_number(i, input); +#if defined(__arm__) + asm("vcvt.f64.f32 %P0, %1" : "=w" (output) : "t" (input)); +#else + asm("fcvt %d0, %s1" : "=w" (output) : "x" (input)); +#endif + print_double_number(i, output); + } +} + +static void convert_single_to_integer(void) +{ + int i; + + printf("Converting single-precision to integer\n"); + + for (i = 0; i < ARRAY_SIZE(single_numbers); ++i) { + float input = single_numbers[i]; + int64_t output; + + feclearexcept(FE_ALL_EXCEPT); + + print_single_number(i, input); +#if defined(__arm__) + /* asm("vcvt.s32.f32 %s0, %s1" : "=t" (output) : "t" (input)); */ + output = input; +#else + asm("fcvtzs %0, %s1" : "=r" (output) : "w" (input)); +#endif + print_int64(i, output); + } +} + +/* This allows us to initialise some doubles as pure hex */ +typedef union { + double d; + uint64_t h; +} test_doubles; + +test_doubles double_numbers[] = { + {SNAN}, + {-NAN}, + {-INFINITY}, + {-DBL_MAX}, + {-FLT_MAX-1.0}, + {-FLT_MAX}, + {-1.111E+31}, + {-1.111E+30}, /* half prec */ + {-2.0}, {-1.0}, + {-DBL_MIN}, + {-FLT_MIN}, + {0.0}, + {FLT_MIN}, + {2.98023224e-08}, + {5.96046E-8}, /* min positive FP16 subnormal */ + {6.09756E-5}, /* max subnormal FP16 */ + {6.10352E-5}, /* min positive normal FP16 */ + {1.0}, + {1.0009765625}, /* smallest float after 1.0 FP16 */ + {DBL_MIN}, + {1.3789972848607228e-308}, + {1.4914738736681624e-308}, + {1.0}, {2.0}, + {M_E}, {M_PI}, + {65503.0}, + {65504.0}, /* max FP16 */ + {65505.0}, + {131007.0}, + {131008.0}, /* max AFP */ + {131009.0}, + {.h = 0x41dfffffffc00000 }, /* to int = 0x7fffffff */ + {FLT_MAX}, + {FLT_MAX + 1.0}, + {DBL_MAX}, + {INFINITY}, + {NAN}, + {.h = 0x7ff0000000000001}, /* SNAN */ + {SNAN}, +}; + +static void convert_double_to_half(void) +{ + int i; + + printf("Converting double-precision to half-precision\n"); + + for (i = 0; i < ARRAY_SIZE(double_numbers); ++i) { + double input = double_numbers[i].d; + uint16_t output; + + feclearexcept(FE_ALL_EXCEPT); + + print_double_number(i, input); + + /* as we don't have _Float16 support */ +#if defined(__arm__) + /* asm("vcvtb.f16.f64 %0, %P1" : "=t" (output) : "x" (input)); */ + output = input; +#else + asm("fcvt %h0, %d1" : "=w" (output) : "x" (input)); +#endif + print_half_number(i, output); + } +} + +static void convert_double_to_single(void) +{ + int i; + + printf("Converting double-precision to single-precision\n"); + + for (i = 0; i < ARRAY_SIZE(double_numbers); ++i) { + double input = double_numbers[i].d; + uint32_t output; + + feclearexcept(FE_ALL_EXCEPT); + + print_double_number(i, input); + +#if defined(__arm__) + asm("vcvt.f32.f64 %0, %P1" : "=w" (output) : "x" (input)); +#else + asm("fcvt %s0, %d1" : "=w" (output) : "x" (input)); +#endif + + print_single_number(i, output); + } +} + +static void convert_double_to_integer(void) +{ + int i; + + printf("Converting double-precision to integer\n"); + + for (i = 0; i < ARRAY_SIZE(double_numbers); ++i) { + double input = double_numbers[i].d; + int64_t output; + + feclearexcept(FE_ALL_EXCEPT); + + print_double_number(i, input); +#if defined(__arm__) + /* asm("vcvt.s32.f32 %s0, %s1" : "=t" (output) : "t" (input)); */ + output = input; +#else + asm("fcvtzs %0, %d1" : "=r" (output) : "w" (input)); +#endif + print_int64(i, output); + } +} + +/* no handy defines for these numbers */ +uint16_t half_numbers[] = { + 0xffff, /* -NaN / AHP -Max */ + 0xfcff, /* -NaN / AHP */ + 0xfc01, /* -NaN / AHP */ + 0xfc00, /* -Inf */ + 0xfbff, /* -Max */ + 0xc000, /* -2 */ + 0xbc00, /* -1 */ + 0x8001, /* -MIN subnormal */ + 0x8000, /* -0 */ + 0x0000, /* +0 */ + 0x0001, /* MIN subnormal */ + 0x3c00, /* 1 */ + 0x7bff, /* Max */ + 0x7c00, /* Inf */ + 0x7c01, /* NaN / AHP */ + 0x7cff, /* NaN / AHP */ + 0x7fff, /* NaN / AHP +Max*/ +}; + +static void convert_half_to_double(void) +{ + int i; + + printf("Converting half-precision to double-precision\n"); + + for (i = 0; i < ARRAY_SIZE(half_numbers); ++i) { + uint16_t input = half_numbers[i]; + double output; + + feclearexcept(FE_ALL_EXCEPT); + + print_half_number(i, input); +#if defined(__arm__) + /* asm("vcvtb.f64.f16 %P0, %1" : "=w" (output) : "t" (input)); */ + output = input; +#else + asm("fcvt %d0, %h1" : "=w" (output) : "x" (input)); +#endif + print_double_number(i, output); + } +} + +static void convert_half_to_single(void) +{ + int i; + + printf("Converting half-precision to single-precision\n"); + + for (i = 0; i < ARRAY_SIZE(half_numbers); ++i) { + uint16_t input = half_numbers[i]; + float output; + + feclearexcept(FE_ALL_EXCEPT); + + print_half_number(i, input); +#if defined(__arm__) + asm("vcvtb.f32.f16 %0, %1" : "=w" (output) : "x" ((uint32_t)input)); +#else + asm("fcvt %s0, %h1" : "=w" (output) : "x" (input)); +#endif + print_single_number(i, output); + } +} + +static void convert_half_to_integer(void) +{ + int i; + + printf("Converting half-precision to integer\n"); + + for (i = 0; i < ARRAY_SIZE(half_numbers); ++i) { + uint16_t input = half_numbers[i]; + int64_t output; + + feclearexcept(FE_ALL_EXCEPT); + + print_half_number(i, input); +#if defined(__arm__) + /* asm("vcvt.s32.f16 %0, %1" : "=t" (output) : "t" (input)); v8.2*/ + output = input; +#else + asm("fcvt %s0, %h1" : "=w" (output) : "x" (input)); +#endif + print_int64(i, output); + } +} + +typedef struct { + int flag; + char *desc; +} float_mapping; + +float_mapping round_flags[] = { + { FE_TONEAREST, "to nearest" }, + { FE_UPWARD, "upwards" }, + { FE_DOWNWARD, "downwards" }, + { FE_TOWARDZERO, "to zero" } +}; + +int main(int argc, char *argv[argc]) +{ + int i; + + printf("#### Enabling IEEE Half Precision\n"); + + for (i = 0; i < ARRAY_SIZE(round_flags); ++i) { + fesetround(round_flags[i].flag); + printf("### Rounding %s\n", round_flags[i].desc); + convert_single_to_half(); + convert_single_to_double(); + convert_double_to_half(); + convert_double_to_single(); + convert_half_to_single(); + convert_half_to_double(); + } + + /* convert to integer */ + convert_single_to_integer(); + convert_double_to_integer(); + convert_half_to_integer(); + + /* And now with ARM alternative FP16 */ +#if defined(__arm__) + /* See glibc sysdeps/arm/fpu_control.h */ + asm("mrc p10, 7, r1, cr1, cr0, 0\n\t" + "orr r1, r1, %[flags]\n\t" + "mcr p10, 7, r1, cr1, cr0, 0\n\t" + : /* no output */ : [flags] "n" (1 << 26) : "r1" ); +#else + asm("mrs x1, fpcr\n\t" + "orr x1, x1, %[flags]\n\t" + "msr fpcr, x1\n\t" + : /* no output */ : [flags] "n" (1 << 26) : "x1" ); +#endif + + printf("#### Enabling ARM Alternative Half Precision\n"); + + for (i = 0; i < ARRAY_SIZE(round_flags); ++i) { + fesetround(round_flags[i].flag); + printf("### Rounding %s\n", round_flags[i].desc); + convert_single_to_half(); + convert_single_to_double(); + convert_double_to_half(); + convert_double_to_single(); + convert_half_to_single(); + convert_half_to_double(); + } + + /* convert to integer */ + convert_single_to_integer(); + convert_double_to_integer(); + convert_half_to_integer(); + + return 0; +} diff --git a/tests/tcg/arm/fcvt.ref b/tests/tcg/arm/fcvt.ref new file mode 100644 index 0000000000..f052b6d7e5 --- /dev/null +++ b/tests/tcg/arm/fcvt.ref @@ -0,0 +1,3268 @@ +#### Enabling IEEE Half Precision +### Rounding to nearest +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +### Rounding upwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x400 (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x401 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4249 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7c00 (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766502400000000000e+09 / 0x4f730c3b (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962457600000000000e+09 / 0x4f71605e (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638080000000000000e+08 / 0x4e4c0001 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896384000000000000e+08 / 0x4e61ff01 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912768000000000000e+08 / 0x4e620001 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +### Rounding downwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfc00 (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730512e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +### Rounding to zero +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0xff00 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0xfe00 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xfc00 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xfbff (0x14 => OVERFLOW INEXACT ) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7bff (0x14 => OVERFLOW INEXACT ) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7c00 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0x7e00 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0x7f00 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -nan / 0xffffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -nan / 0xffdfe000 (0x1 => INVALID) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -nan / 0xffc02000 (0x1 => INVALID) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -inf / 0xff800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: inf / 0x7f800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: nan / 0x7fc02000 (0x1 => INVALID) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: nan / 0x7fdfe000 (0x1 => INVALID) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: nan / 0x7fffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +Converting single-precision to integer +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 INT64: 1/0x000000000000000001 (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 INT64: 65503/0x00000000000000ffdf (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 INT64: 65504/0x00000000000000ffe0 (0x10 => INEXACT ) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 INT64: 65505/0x00000000000000ffe1 (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 INT64: 131007/0x00000000000001ffbf (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 INT64: 131008/0x00000000000001ffc0 (0x10 => INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 INT64: 131009/0x00000000000001ffc1 (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 INT64: -1/0x00ffffffffffffffff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 INT64: 0/00000000000000000000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting double-precision to integer +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 INT64: 1/0x000000000000000001 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 INT64: -2/0x00fffffffffffffffe (0x10 => INEXACT ) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 INT64: -1/0x00ffffffffffffffff (0x10 => INEXACT ) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 INT64: 0/00000000000000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 INT64: 0/00000000000000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 INT64: 0/00000000000000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 INT64: 65503/0x00000000000000ffdf (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 INT64: 65504/0x00000000000000ffe0 (0x10 => INEXACT ) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 INT64: 65505/0x00000000000000ffe1 (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 INT64: 131007/0x00000000000001ffbf (0x10 => INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 INT64: 131008/0x00000000000001ffc0 (0x10 => INEXACT ) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 INT64: 131009/0x00000000000001ffc1 (0x10 => INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 INT64: 2147483647/0x00000000007fffffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 INT64: -1/0x00ffffffffffffffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 INT64: 0/00000000000000000000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 INT64: 0/00000000000000000000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting half-precision to integer +00 HALF: 0xffff (0 => OK) +00 INT64: 65535/0x00000000000000ffff (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 INT64: 64767/0x00000000000000fcff (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 INT64: 64513/0x00000000000000fc01 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 INT64: 64512/0x00000000000000fc00 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 INT64: 64511/0x00000000000000fbff (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 INT64: 49152/0x00000000000000c000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 INT64: 48128/0x00000000000000bc00 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 INT64: 32769/0x000000000000008001 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 INT64: 32768/0x000000000000008000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 INT64: 1/0x000000000000000001 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 INT64: 15360/0x000000000000003c00 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 INT64: 31743/0x000000000000007bff (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 INT64: 31744/0x000000000000007c00 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 INT64: 31745/0x000000000000007c01 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 INT64: 31999/0x000000000000007cff (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 INT64: 32767/0x000000000000007fff (0 => OK) +#### Enabling ARM Alternative Half Precision +### Rounding to nearest +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7fff (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +### Rounding upwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0x01 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x400 (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 HALF: 0x401 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x4170 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4249 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bff (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7c00 (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7fff (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x1 => INVALID) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750797e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005935e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005935e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015673e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015673e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851006e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851006e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324219e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324219e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635273e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635273e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859812e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766502400000000000e+09 / 0x4f730c3b (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962457600000000000e+09 / 0x4f71605e (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750797e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013061e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638080000000000000e+08 / 0x4e4c0001 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015662e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026624000000000000e+08 / 0x4e4e0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994299e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896384000000000000e+08 / 0x4e61ff01 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013665e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912768000000000000e+08 / 0x4e620001 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138310e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282844e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238764e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509080e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675456000000000000e+09 / 0x4e805bf1 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311600e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07853004800000000000e+09 / 0x4e809220 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32540006400000000000e+09 / 0x4e9e0000 (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859812e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570815e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +### Rounding downwards +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8001 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7ffe (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859812e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909791e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909791e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635273e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635273e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289629e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289629e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730512e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730512e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750797e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570815e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859812e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007530e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999085e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138310e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750797e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +### Rounding to zero +Converting single-precision to half-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 HALF: 0x8000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 HALF: 0x8000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 HALF: 0xffff (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 HALF: 0xffff (0x1 => INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 HALF: 0xffff (0x1 => INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 HALF: 0xffff (0x1 => INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 HALF: 0x8000 (0x18 => UNDERFLOW INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 HALF: 0000 (0x18 => UNDERFLOW INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 HALF: 0x3ff (0x18 => UNDERFLOW INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 HALF: 0x400 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 HALF: 0x3c00 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 HALF: 0x3c01 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 HALF: 0x4000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 HALF: 0x416f (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 HALF: 0x4248 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 HALF: 0x7bfe (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 HALF: 0x7bff (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 HALF: 0x7bff (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 HALF: 0x7ffe (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 HALF: 0x7fff (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 HALF: 0x7fff (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 HALF: 0x7fff (0x1 => INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 HALF: 0x7fff (0x1 => INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 HALF: 0x7fff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 HALF: 0000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 HALF: 0000 (0x1 => INVALID) +Converting single-precision to double-precision +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 DOUBLE: -nan / 0x00fffc000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 DOUBLE: -1.11100004769645909790e+31 / 0x00c661874b20000000 (0 => OK) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 DOUBLE: -1.11100003258488635272e+30 / 0x00c62c0bab60000000 (0 => OK) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 DOUBLE: -1.08700982243137289628e-12 / 0x00bd731f7500000000 (0 => OK) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 DOUBLE: -1.78051176151664730511e-20 / 0x00bbd5054440000000 (0 => OK) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 DOUBLE: 2.98023223876953125000e-08 / 0x003e60000000000000 (0 => OK) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 DOUBLE: 5.96045985901128005934e-08 / 0x003e6ffffe60000000 (0 => OK) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 DOUBLE: 6.09755988989491015672e-05 / 0x003f0ff801a0000000 (0 => OK) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 DOUBLE: 6.10351999057456851005e-05 / 0x003f100000c0000000 (0 => OK) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 DOUBLE: 2.71828174591064453125e+00 / 0x004005bf0a80000000 (0 => OK) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 DOUBLE: 3.14159274101257324218e+00 / 0x00400921fb60000000 (0 => OK) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 DOUBLE: 1.11100003258488635272e+30 / 0x00462c0bab60000000 (0 => OK) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 DOUBLE: nan / 0x007ffc000000000000 (0x1 => INVALID) +Converting double-precision to half-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 HALF: 0000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 HALF: 0000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 HALF: 0000 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 HALF: 0000 (0x1 => INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 HALF: 0000 (0x1 => INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 HALF: 0000 (0x1 => INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 HALF: 0000 (0x1 => INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 HALF: 0000 (0x1 => INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 HALF: 0000 (0x1 => INVALID) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 HALF: 0000 (0x1 => INVALID) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 HALF: 0000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 HALF: 0000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 HALF: 0000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 HALF: 0000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 HALF: 0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 HALF: 0000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 HALF: 0000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 HALF: 0000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 HALF: 0x01 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 HALF: 0x01 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 HALF: 0000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 HALF: 0000 (0x10 => INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 HALF: 0000 (0x10 => INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 HALF: 0x01 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 HALF: 0x02 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 HALF: 0x02 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 HALF: 0x03 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 HALF: 0xffdf (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 HALF: 0xffe0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 HALF: 0xffe1 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 HALF: 0xffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 HALF: 0xffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 HALF: 0xffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 HALF: 0xffff (0 => OK) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 HALF: 0xffff (0x1 => INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 HALF: 0xffff (0x1 => INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 HALF: 0xffff (0x1 => INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 HALF: 0xffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 HALF: 0000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 HALF: 0000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 HALF: 0000 (0x1 => INVALID) +Converting double-precision to single-precision +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 SINGLE: 4.29077299200000000000e+09 / 0x4f7fc000 (0 => OK) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 SINGLE: 4.28657868800000000000e+09 / 0x4f7f8000 (0 => OK) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x14 => OVERFLOW INEXACT ) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 SINGLE: 4.28657843200000000000e+09 / 0x4f7f7fff (0x10 => INEXACT ) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 SINGLE: 4.07766476800000000000e+09 / 0x4f730c3a (0x10 => INEXACT ) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 SINGLE: 4.04962432000000000000e+09 / 0x4f71605d (0x10 => INEXACT ) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 SINGLE: 3.22122547200000000000e+09 / 0x4f400000 (0 => OK) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 SINGLE: 3.21283686400000000000e+09 / 0x4f3f8000 (0 => OK) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 SINGLE: 2.14748364800000000000e+09 / 0x4f000000 (0x18 => UNDERFLOW INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 SINGLE: 2.15587225600000000000e+09 / 0x4f008000 (0 => OK) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 SINGLE: 8.38860800000000000000e+06 / 0x4b000000 (0 => OK) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 SINGLE: 8.55638016000000000000e+08 / 0x4e4c0000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 SINGLE: 8.64026560000000000000e+08 / 0x4e4dffff (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 SINGLE: 9.47896320000000000000e+08 / 0x4e61ff00 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 SINGLE: 9.47912704000000000000e+08 / 0x4e620000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 SINGLE: 1.06536140800000000000e+09 / 0x4e7e0080 (0 => OK) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 SINGLE: 1.06535321600000000000e+09 / 0x4e7e0000 (0 => OK) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 SINGLE: 1.07374182400000000000e+09 / 0x4e800000 (0 => OK) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 SINGLE: 1.07675443200000000000e+09 / 0x4e805bf0 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 SINGLE: 1.07852992000000000000e+09 / 0x4e80921f (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 SINGLE: 1.19956249600000000000e+09 / 0x4e8effbe (0 => OK) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 SINGLE: 1.19956275200000000000e+09 / 0x4e8effc0 (0 => OK) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 SINGLE: 1.19956300800000000000e+09 / 0x4e8effc2 (0 => OK) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 SINGLE: 1.20795123200000000000e+09 / 0x4e8fffbf (0 => OK) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 SINGLE: 1.20795136000000000000e+09 / 0x4e8fffc0 (0 => OK) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 SINGLE: 1.20795148800000000000e+09 / 0x4e8fffc1 (0 => OK) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 SINGLE: 1.32539993600000000000e+09 / 0x4e9dffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x10 => INEXACT ) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 SINGLE: 2.13909491200000000000e+09 / 0x4efeffff (0x14 => OVERFLOW INEXACT ) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 SINGLE: 2.13909504000000000000e+09 / 0x4eff0000 (0 => OK) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0 => OK) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 SINGLE: 2.14328934400000000000e+09 / 0x4eff8000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 SINGLE: 2.14538649600000000000e+09 / 0x4effc000 (0x1 => INVALID) +Converting half-precision to single-precision +00 HALF: 0xffff (0 => OK) +00 SINGLE: -1.31008000000000000000e+05 / 0xc7ffe000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 SINGLE: -8.18560000000000000000e+04 / 0xc79fe000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 SINGLE: -6.56000000000000000000e+04 / 0xc7802000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 SINGLE: -6.55360000000000000000e+04 / 0xc7800000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 SINGLE: -6.55040000000000000000e+04 / 0xc77fe000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 SINGLE: -2.00000000000000000000e+00 / 0xc0000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 SINGLE: -1.00000000000000000000e+00 / 0xbf800000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 SINGLE: -5.96046447753906250000e-08 / 0xb3800000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 SINGLE: -0.00000000000000000000e+00 / 0x80000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 SINGLE: 5.96046447753906250000e-08 / 0x33800000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 SINGLE: 6.55360000000000000000e+04 / 0x47800000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 SINGLE: 6.56000000000000000000e+04 / 0x47802000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 SINGLE: 8.18560000000000000000e+04 / 0x479fe000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +Converting half-precision to double-precision +00 HALF: 0xffff (0 => OK) +00 DOUBLE: 6.55350000000000000000e+04 / 0x0040efffe000000000 (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 DOUBLE: 6.47670000000000000000e+04 / 0x0040ef9fe000000000 (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 DOUBLE: 6.45130000000000000000e+04 / 0x0040ef802000000000 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 DOUBLE: 6.45120000000000000000e+04 / 0x0040ef800000000000 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 DOUBLE: 6.45110000000000000000e+04 / 0x0040ef7fe000000000 (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 DOUBLE: 4.91520000000000000000e+04 / 0x0040e8000000000000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 DOUBLE: 4.81280000000000000000e+04 / 0x0040e7800000000000 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 DOUBLE: 3.27690000000000000000e+04 / 0x0040e0002000000000 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 DOUBLE: 3.27680000000000000000e+04 / 0x0040e0000000000000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 DOUBLE: 1.53600000000000000000e+04 / 0x0040ce000000000000 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 DOUBLE: 3.17430000000000000000e+04 / 0x0040deffc000000000 (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 DOUBLE: 3.17440000000000000000e+04 / 0x0040df000000000000 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 DOUBLE: 3.17450000000000000000e+04 / 0x0040df004000000000 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 DOUBLE: 3.19990000000000000000e+04 / 0x0040df3fc000000000 (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 DOUBLE: 3.27670000000000000000e+04 / 0x0040dfffc000000000 (0 => OK) +Converting single-precision to integer +00 SINGLE: -nan / 0xffa00000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 SINGLE: -nan / 0xffc00000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 SINGLE: -inf / 0xff800000 (0 => OK) +02 INT64: 1/0x000000000000000001 (0x1 => INVALID) +03 SINGLE: -3.40282346638528859811e+38 / 0xff7fffff (0 => OK) +03 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +04 SINGLE: -1.11100004769645909790e+31 / 0xf30c3a59 (0 => OK) +04 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +05 SINGLE: -1.11100003258488635272e+30 / 0xf1605d5b (0 => OK) +05 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +06 SINGLE: -1.08700982243137289628e-12 / 0xab98fba8 (0 => OK) +06 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +07 SINGLE: -1.78051176151664730511e-20 / 0x9ea82a22 (0 => OK) +07 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +08 SINGLE: -1.17549435082228750796e-38 / 0x80800000 (0 => OK) +08 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +09 SINGLE: 0.00000000000000000000e+00 / 0000000000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 SINGLE: 1.17549435082228750796e-38 / 0x00800000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 SINGLE: 2.98023223876953125000e-08 / 0x33000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 SINGLE: 5.96045985901128005934e-08 / 0x337ffff3 (0 => OK) +12 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +13 SINGLE: 6.09755988989491015672e-05 / 0x387fc00d (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 SINGLE: 6.10351999057456851005e-05 / 0x38800006 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 SINGLE: 1.00000000000000000000e+00 / 0x3f800000 (0 => OK) +15 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +16 SINGLE: 1.00097656250000000000e+00 / 0x3f802000 (0 => OK) +16 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +17 SINGLE: 2.00000000000000000000e+00 / 0x40000000 (0 => OK) +17 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +18 SINGLE: 2.71828174591064453125e+00 / 0x402df854 (0 => OK) +18 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +19 SINGLE: 3.14159274101257324218e+00 / 0x40490fdb (0 => OK) +19 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +20 SINGLE: 6.55030000000000000000e+04 / 0x477fdf00 (0 => OK) +20 INT64: 65503/0x00000000000000ffdf (0x10 => INEXACT ) +21 SINGLE: 6.55040000000000000000e+04 / 0x477fe000 (0 => OK) +21 INT64: 65504/0x00000000000000ffe0 (0x10 => INEXACT ) +22 SINGLE: 6.55050000000000000000e+04 / 0x477fe100 (0 => OK) +22 INT64: 65505/0x00000000000000ffe1 (0x10 => INEXACT ) +23 SINGLE: 1.31007000000000000000e+05 / 0x47ffdf80 (0 => OK) +23 INT64: 131007/0x00000000000001ffbf (0x10 => INEXACT ) +24 SINGLE: 1.31008000000000000000e+05 / 0x47ffe000 (0 => OK) +24 INT64: 131008/0x00000000000001ffc0 (0x10 => INEXACT ) +25 SINGLE: 1.31009000000000000000e+05 / 0x47ffe080 (0 => OK) +25 INT64: 131009/0x00000000000001ffc1 (0x10 => INEXACT ) +26 SINGLE: 1.11100003258488635272e+30 / 0x71605d5b (0 => OK) +26 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +27 SINGLE: 3.40282346638528859811e+38 / 0x7f7fffff (0 => OK) +27 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +28 SINGLE: inf / 0x7f800000 (0 => OK) +28 INT64: -1/0x00ffffffffffffffff (0x1 => INVALID) +29 SINGLE: nan / 0x7fc00000 (0 => OK) +29 INT64: 0/00000000000000000000 (0x1 => INVALID) +30 SINGLE: nan / 0x7fa00000 (0 => OK) +30 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting double-precision to integer +00 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +00 INT64: 0/00000000000000000000 (0x1 => INVALID) +01 DOUBLE: -nan / 0x00fff8000000000000 (0 => OK) +01 INT64: 0/00000000000000000000 (0x1 => INVALID) +02 DOUBLE: -inf / 0x00fff0000000000000 (0 => OK) +02 INT64: 1/0x000000000000000001 (0x1 => INVALID) +03 DOUBLE: -1.79769313486231570814e+308 / 0x00ffefffffffffffff (0 => OK) +03 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +04 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +04 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +05 DOUBLE: -3.40282346638528859811e+38 / 0x00c7efffffe0000000 (0 => OK) +05 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +06 DOUBLE: -1.11100000000000007529e+31 / 0x00c661874b135ff654 (0 => OK) +06 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +07 DOUBLE: -1.11099999999999999084e+30 / 0x00c62c0bab523323b9 (0 => OK) +07 INT64: 1/0x000000000000000001 (0x11 => INEXACT INVALID) +08 DOUBLE: -2.00000000000000000000e+00 / 0x00c000000000000000 (0 => OK) +08 INT64: -2/0x00fffffffffffffffe (0x10 => INEXACT ) +09 DOUBLE: -1.00000000000000000000e+00 / 0x00bff0000000000000 (0 => OK) +09 INT64: -1/0x00ffffffffffffffff (0x10 => INEXACT ) +10 DOUBLE: -2.22507385850720138309e-308 / 0x008010000000000000 (0 => OK) +10 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +11 DOUBLE: -1.17549435082228750796e-38 / 0x00b810000000000000 (0 => OK) +11 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +12 DOUBLE: 0.00000000000000000000e+00 / 00000000000000000000 (0 => OK) +12 INT64: 0/00000000000000000000 (0 => OK) +13 DOUBLE: 1.17549435082228750796e-38 / 0x003810000000000000 (0 => OK) +13 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +14 DOUBLE: 2.98023224000000013060e-08 / 0x003e600000001c5f68 (0 => OK) +14 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +15 DOUBLE: 5.96046000000000015661e-08 / 0x003e6ffffe6cb2fa82 (0 => OK) +15 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +16 DOUBLE: 6.09755999999999994298e-05 / 0x003f0ff801a9af58a1 (0 => OK) +16 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +17 DOUBLE: 6.10352000000000013664e-05 / 0x003f100000c06a1ef5 (0 => OK) +17 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +18 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +18 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +19 DOUBLE: 1.00097656250000000000e+00 / 0x003ff0040000000000 (0 => OK) +19 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +20 DOUBLE: 2.22507385850720138309e-308 / 0x000010000000000000 (0 => OK) +20 INT64: 0/00000000000000000000 (0x10 => INEXACT ) +21 DOUBLE: 1.37899728486072282843e-308 / 0x000009ea82a2287680 (0 => OK) +21 INT64: 0/00000000000000000000 (0x18 => UNDERFLOW INEXACT ) +22 DOUBLE: 1.49147387366816238763e-308 / 0x00000ab98fba843210 (0 => OK) +22 INT64: 0/00000000000000000000 (0x18 => UNDERFLOW INEXACT ) +23 DOUBLE: 1.00000000000000000000e+00 / 0x003ff0000000000000 (0 => OK) +23 INT64: 1/0x000000000000000001 (0x10 => INEXACT ) +24 DOUBLE: 2.00000000000000000000e+00 / 0x004000000000000000 (0 => OK) +24 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +25 DOUBLE: 2.71828182845904509079e+00 / 0x004005bf0a8b145769 (0 => OK) +25 INT64: 2/0x000000000000000002 (0x10 => INEXACT ) +26 DOUBLE: 3.14159265358979311599e+00 / 0x00400921fb54442d18 (0 => OK) +26 INT64: 3/0x000000000000000003 (0x10 => INEXACT ) +27 DOUBLE: 6.55030000000000000000e+04 / 0x0040effbe000000000 (0 => OK) +27 INT64: 65503/0x00000000000000ffdf (0x10 => INEXACT ) +28 DOUBLE: 6.55040000000000000000e+04 / 0x0040effc0000000000 (0 => OK) +28 INT64: 65504/0x00000000000000ffe0 (0x10 => INEXACT ) +29 DOUBLE: 6.55050000000000000000e+04 / 0x0040effc2000000000 (0 => OK) +29 INT64: 65505/0x00000000000000ffe1 (0x10 => INEXACT ) +30 DOUBLE: 1.31007000000000000000e+05 / 0x0040fffbf000000000 (0 => OK) +30 INT64: 131007/0x00000000000001ffbf (0x10 => INEXACT ) +31 DOUBLE: 1.31008000000000000000e+05 / 0x0040fffc0000000000 (0 => OK) +31 INT64: 131008/0x00000000000001ffc0 (0x10 => INEXACT ) +32 DOUBLE: 1.31009000000000000000e+05 / 0x0040fffc1000000000 (0 => OK) +32 INT64: 131009/0x00000000000001ffc1 (0x10 => INEXACT ) +33 DOUBLE: 2.14748364700000000000e+09 / 0x0041dfffffffc00000 (0 => OK) +33 INT64: 2147483647/0x00000000007fffffff (0x10 => INEXACT ) +34 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +34 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +35 DOUBLE: 3.40282346638528859811e+38 / 0x0047efffffe0000000 (0 => OK) +35 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +36 DOUBLE: 1.79769313486231570814e+308 / 0x007fefffffffffffff (0 => OK) +36 INT64: -1/0x00ffffffffffffffff (0x11 => INEXACT INVALID) +37 DOUBLE: inf / 0x007ff0000000000000 (0 => OK) +37 INT64: -1/0x00ffffffffffffffff (0x1 => INVALID) +38 DOUBLE: nan / 0x007ff8000000000000 (0 => OK) +38 INT64: 0/00000000000000000000 (0x1 => INVALID) +39 DOUBLE: nan / 0x007ff0000000000001 (0 => OK) +39 INT64: 0/00000000000000000000 (0x1 => INVALID) +40 DOUBLE: nan / 0x007ff4000000000000 (0 => OK) +40 INT64: 0/00000000000000000000 (0x1 => INVALID) +Converting half-precision to integer +00 HALF: 0xffff (0 => OK) +00 INT64: 65535/0x00000000000000ffff (0 => OK) +01 HALF: 0xfcff (0 => OK) +01 INT64: 64767/0x00000000000000fcff (0 => OK) +02 HALF: 0xfc01 (0 => OK) +02 INT64: 64513/0x00000000000000fc01 (0 => OK) +03 HALF: 0xfc00 (0 => OK) +03 INT64: 64512/0x00000000000000fc00 (0 => OK) +04 HALF: 0xfbff (0 => OK) +04 INT64: 64511/0x00000000000000fbff (0 => OK) +05 HALF: 0xc000 (0 => OK) +05 INT64: 49152/0x00000000000000c000 (0 => OK) +06 HALF: 0xbc00 (0 => OK) +06 INT64: 48128/0x00000000000000bc00 (0 => OK) +07 HALF: 0x8001 (0 => OK) +07 INT64: 32769/0x000000000000008001 (0 => OK) +08 HALF: 0x8000 (0 => OK) +08 INT64: 32768/0x000000000000008000 (0 => OK) +09 HALF: 0000 (0 => OK) +09 INT64: 0/00000000000000000000 (0 => OK) +10 HALF: 0x01 (0 => OK) +10 INT64: 1/0x000000000000000001 (0 => OK) +11 HALF: 0x3c00 (0 => OK) +11 INT64: 15360/0x000000000000003c00 (0 => OK) +12 HALF: 0x7bff (0 => OK) +12 INT64: 31743/0x000000000000007bff (0 => OK) +13 HALF: 0x7c00 (0 => OK) +13 INT64: 31744/0x000000000000007c00 (0 => OK) +14 HALF: 0x7c01 (0 => OK) +14 INT64: 31745/0x000000000000007c01 (0 => OK) +15 HALF: 0x7cff (0 => OK) +15 INT64: 31999/0x000000000000007cff (0 => OK) +16 HALF: 0x7fff (0 => OK) +16 INT64: 32767/0x000000000000007fff (0 => OK) From patchwork Tue Jun 19 15:44:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139166 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5373604lji; Tue, 19 Jun 2018 08:52:31 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKOOum2ht+IF3aOqDPgpUCnjuP4ms8mD3JpVa6dLW7Q5jWnygZYbcbUk5G/mmePExOtJs6E X-Received: by 2002:a0c:e7cf:: with SMTP id c15-v6mr15081219qvo.109.1529423551187; Tue, 19 Jun 2018 08:52:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423551; cv=none; d=google.com; s=arc-20160816; b=phroJlk2f1UPeBx6vGZbxFTnydWRaafkYGYLLIbZ+cy1ECiRa5Fh3lVT+5DHaba3so vNDCpZNON8lSfxZno3Pe8aeO/7RK/tQG9QOequ5P4bZkgcQx0tU3XO9RiIUwflcnKrhW vZrwtqjqmk0RZF+KSoDwHBoispbt4R7LPKtW7fNF+/XhB24bR+j3u/MbKZXmRnMbHHC9 5zupbTORBmq038JFdyGLvbx47mgcBhf5tUeTnt1zG7X3xuSXNGs/uJmWDKshSwFQ9IuD Ogtd6eYuhWTg2rLnua2+pa8ciSKjjJlu3Nf77TgHjHVsljlgIuWVOAEU6SF1SkhLabWN iFqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=aP6zAL0v9NX98LOssDyR2X5KdgOqh6WAcUtKLQWrxbA=; b=XzEvOr1wjS98yJlSkpSc8n6/aQTI1aQBudrhKfZTqplbP72PXlnmkiiqr270NS3GrV apQBaLOuXX2SC/F+PKlxYZC/qUmgDLmGlLGCMb1ZKe2T1WzdZQQGr7/sv6uvE9NOsW9D Ql6Ee0+5xsCziED9SkS7snltOvhSndjwDUkxWgPccF459EUTjrelr05LNrtJbwSnJXoO 8Q1IaZKw2f/NJ4X3gcn/JZsJNZXCInUHIqonuwGxjWHE0dhpJHnh04DVBKR9UnZLQ+45 zFXoSZbTWQDCScnAESZv4NSJyLXhpEvrWdW+qcLQAt9U2a2zACmey5EUxWcN5Wzfvn4W oOfQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UF5GGtSf; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id u8-v6si49509qvh.5.2018.06.19.08.52.31 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:52:31 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UF5GGtSf; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43364 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvm-0003LM-Lo for patch@linaro.org; Tue, 19 Jun 2018 11:52:30 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35287) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoP-0006i0-Vs for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoP-0006Um-4E for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:54 -0400 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:45069) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoO-0006UC-Si for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:53 -0400 Received: by mail-wr0-x243.google.com with SMTP id o12-v6so124774wrm.12 for ; Tue, 19 Jun 2018 08:44:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=aP6zAL0v9NX98LOssDyR2X5KdgOqh6WAcUtKLQWrxbA=; b=UF5GGtSfIIhaL/C+iYVoj0RnDdbWypeljIRS8Kbl+YASelwGrdiYyt3q+Kb+VNtMLj OV2RRhxwwTIm3N7Qcpju25iTX0EWKgkFiHtFt5w1fXsjNCO91PVshXfTsH0mzltl1Y/S HvaFQ0dfyo+ump/jRLxWPa6DCKrSpIyiYD0Vg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=aP6zAL0v9NX98LOssDyR2X5KdgOqh6WAcUtKLQWrxbA=; b=c7rL0MhsZxveCrqCdVsVSTC4oyP9TH1zAlRaAbYl7ZnU8CZeYQzJhWTU1ZefY7Csyd AZKpmdNHU7MN7S1XDgX6ShFIXtEl4gMztW4xW0giKtj9SrdvKFsvCOPcDi5TkxoT4lsh xQStSXakJzXKxAnAh3wcsI5jyoUQIUhf5DAaqNYDTqjKEwSwESzpIm29eGXLP1ss7j8j /zEZJqTMpLbNKlSsx6clvSu5EklzdWP1HgSoDr1bQQvGFrsQYtY3VA/EmN2TNmxr725w zhFwpU/5x54v7WLqpsaSmTtylBw8e1yl7lQgJEz6DwYPpBaHrx6q6abgJaYO00zAez8B CU5Q== X-Gm-Message-State: APt69E3o1Cag4BcXMYW3gMswNkTlt93eLt5Hc0RjN6gtyRVG4DqoZgc7 IZhNMTIwrGl6CWrMRF4g+QBmYw== X-Received: by 2002:adf:af6b:: with SMTP id z98-v6mr14728774wrc.250.1529423091774; Tue, 19 Jun 2018 08:44:51 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id p6-v6sm12444wrq.19.2018.06.19.08.44.41 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:48 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id E27463E0C8C; Tue, 19 Jun 2018 16:44:37 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:06 +0100 Message-Id: <20180619154435.18898-28-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::243 Subject: [Qemu-devel] [PULL 27/56] tests/tcg: move MIPS specific tests into subdir X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, Yongbok Kim , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" These only need to be built for MIPS guests. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/tcg/README b/tests/tcg/README index 625f2326e6..a5643d33e7 100644 --- a/tests/tcg/README +++ b/tests/tcg/README @@ -3,17 +3,6 @@ regression testing. Tests are either multi-arch, meaning they can be built for all guest architectures that support linux-user executable, or they are architecture specific. - - -MIPS -==== - -hello-mips ----------- - -hello-mipsel ------------- - CRIS ==== The testsuite for CRIS is in tests/tcg/cris. You can run it diff --git a/tests/tcg/mips/README b/tests/tcg/mips/README new file mode 100644 index 0000000000..e5bbc58ec5 --- /dev/null +++ b/tests/tcg/mips/README @@ -0,0 +1,7 @@ +MIPS +==== + +hello-mips +---------- + +A very simple inline assembly, write syscall based hello world diff --git a/tests/tcg/hello-mips.c b/tests/tcg/mips/hello-mips.c similarity index 100% rename from tests/tcg/hello-mips.c rename to tests/tcg/mips/hello-mips.c From patchwork Tue Jun 19 15:44:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139173 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5379660lji; Tue, 19 Jun 2018 08:58:29 -0700 (PDT) X-Google-Smtp-Source: ADUXVKINDw0h47XgS4Ka/33wYyGaNWy22Xc1mvyRbgrEHtmuBrdPj5DaRevgsIFG6w3sN1nhARWL X-Received: by 2002:a0c:b52c:: with SMTP id d44-v6mr15034809qve.34.1529423909892; Tue, 19 Jun 2018 08:58:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423909; cv=none; d=google.com; s=arc-20160816; b=sex1hQjx1IwI1hHmJKogRHmb8qt5TL+BB++13ZfeY9YVR1aXDexeYp6RfI82gtmWbP fYEOsl//6ivFfNSuBByAmhTVKpTcK8Cr8MnAM2YpdgONPO/LgE3mzeuwPxBKpAmMPn4Y Pc3fPt7A+F2Q1XObIOUb2wcJu1OymqLyfPPoqHqqWuDAx730RZf1z4H0QUeiHsad+OQ3 FrzGWZh+zRs7CtHEIMjBvmp61NfDE2sTUlYPc4mDiPRqMRTUwQ4FnayfGm0IH8HhfDWO or8cV1FIRZhOaDIuj9qjSv2G8u1n8XbEnnj+0rAu22I5JFvqnM3/bw/QCK8miMCIlqio 5NqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=hovLwbXoelp2Q0LlumHIKv2D9bfMgHuSE79F6pxdJyQ=; b=qNBGOLi9U55tBe/5sWicq/Vi5E5fz4RubCcH+RbX9Yfn6sjlmdUJI1dDUAK/aD6Yl/ ZuZc2e/1iu5ijd0jAuNghvoR8Zn0joSNu/DrF04EYGzVg2BacJC/fz3+xA7xqHPiw8+z lUrMFt+JAhO1xKZA2NsnE/JCK9US9vQnoaWgK/FZMr4ZebdZ52zqRJu4MpQ5O4xqSjiK 7SLu2qJzw7/INX8FL9sxgEL/sosg5RIxD7Cm+999dndvBbA9aX3k5tV2FY8q4u77I+/O Bc5GFiGszopyrsryxR2DUjvQ61zO0j3xsyW5+ydSKRSp1c7PsK8r5xES7H64OlZbNEId srdg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=NnffFBXO; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id 3-v6si36140qvc.142.2018.06.19.08.58.29 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:58:29 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=NnffFBXO; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43399 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ1Z-0000I0-8P for patch@linaro.org; Tue, 19 Jun 2018 11:58:29 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38635) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvD-00042j-6y for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvA-0001gI-EB for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:55 -0400 Received: from mail-wm0-x243.google.com ([2a00:1450:400c:c09::243]:32918) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIv5-0001cR-PW for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:52 -0400 Received: by mail-wm0-x243.google.com with SMTP id z6-v6so19402098wma.0 for ; Tue, 19 Jun 2018 08:51:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=hovLwbXoelp2Q0LlumHIKv2D9bfMgHuSE79F6pxdJyQ=; b=NnffFBXOopfizeaFLOsotwenyJ5k1c3R4fAg9HxX47v2/DqISFfEz/OvquAtdPsEoE STrNPcp5l9Y/A0dXjZbD1IbJUaPmm+K+LRsH2o9FGN5HMEoyqQVGHRYTq28M5S6I69fm apejl06pNsVdwo1epltjkydcPSSSfbC8ygIPA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=hovLwbXoelp2Q0LlumHIKv2D9bfMgHuSE79F6pxdJyQ=; b=k/KpDkKMz/dqdal5ycTtdi77BkKgKAr0AIBYSWVQEDE31EUR1iWLAJzf+piBhRveGX FvWPkcVCUxkT8SiavKMQoYxnMHZsxgZ2CYVVK8SGzl6aybA/dsAUYuLPbttEGOGtIrPq +jIS+2O73KXJwVMcMZhnprfxxKedrGQTREEEcL+t7qEYY6AjGxxJhbKfYnhcK3pRyGp8 OQAm4++WWOLv21F8WYussL+aoZ6deUp40v/5k98Pfpk5ixpLyCBGoIr8A/Gb7JQQwZFf egktHvJXcBkg3J2qwl5Ke9ByMEVGZSYKEPzwUSbdjaJShuyaD8orGEVAceuTpf0ucRi/ b9aQ== X-Gm-Message-State: APt69E3HSOoZcTXSBAlngLzHacD1r27t7CNtNplr3CMBjDBzr0r1Fqwv /67bwiI9ITxdz0+xXhbBStG2aw== X-Received: by 2002:a1c:108b:: with SMTP id 133-v6mr7048127wmq.136.1529423506638; Tue, 19 Jun 2018 08:51:46 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id y8-v6sm44667wrs.0.2018.06.19.08.51.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 015233E0C98; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:07 +0100 Message-Id: <20180619154435.18898-29-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::243 Subject: [Qemu-devel] [PULL 28/56] tests/tcg: enable building for MIPS X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, Yongbok Kim , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This doesn't add any additional tests but enables building the multiarch tests for MIPS using docker cross compilers. We don't have a cross compiler for mips64 big endian though. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/tcg/mips/Makefile.include b/tests/tcg/mips/Makefile.include new file mode 100644 index 0000000000..a9beceb623 --- /dev/null +++ b/tests/tcg/mips/Makefile.include @@ -0,0 +1,17 @@ +# +# Makefile.include for all MIPs targets +# +# As Debian doesn't support mip64 in big endian mode the only way to +# build BE is to pass a working cross compiler to ./configure +# + +ifeq ($(TARGET_NAME),mips64el) +DOCKER_IMAGE=debian-mips64el-cross +DOCKER_CROSS_COMPILER=mips64el-linux-gnuabi64-gcc +else ifeq ($(TARGET_NAME),mipsel) +DOCKER_IMAGE=debian-mipsel-cross +DOCKER_CROSS_COMPILER=mipsel-linux-gnu-gcc +else ifeq ($(TARGET_NAME),mips) +DOCKER_IMAGE=debian-mips-cross +DOCKER_CROSS_COMPILER=mips-linux-gnu-gcc +endif From patchwork Tue Jun 19 15:44:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139219 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5423372lji; Tue, 19 Jun 2018 09:36:46 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKelDH31VRf7LBjII7CZ29U94rlIb6NHT/r0VbA/OPdePXNiDQrEV8HqIU99WVqIIrjxZuK X-Received: by 2002:a37:4cd5:: with SMTP id z204-v6mr14965809qka.302.1529426206518; Tue, 19 Jun 2018 09:36:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426206; cv=none; d=google.com; s=arc-20160816; b=NZgcf2BeM0V9Gd6aCBxKEPNIgmGAltJBC8Ov21mg9M8jnd8syPQG16mc9FFAbhrG5Y 9B/3HAhCsfJsMfuJVorTP8UyX8HY0TBXm3lRkXy0df3zkDYu+htasrQyL9dl5dAOTcSH O5cErJNmN2Q58o7rpmcTDH1vepWXhDimunoTwEF1uIc6lJ7Rcf8QyHwZFenygwJC4KFZ XG9ToRcZaLUNSzkwi5qv/tr0MuLIme0sIw6ts+NrNTzdd0sXd17xROar1dsE+BQPwHoz IaF+tpDrMBE1D2UQjIyDRASqEtofpzVf60wGWUyCNvppZppSTxsyHbMK/qfvLonehiUs 4lHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=8ZnxRf2dP+qVTUngVMjYKZiTBOy5UGhY/K3huYrTgtI=; b=wqlQRwCSzVg7rDD2zD3SD74Mn7zE6ZPngCJdtO9JxjUNAYhNl/gZXoDubCoA0ExoRx XiEZ864nUzPa77mpyuryyXpXM7f5/I5dnc88cegNEUuMTDfdzlm+sZoYZoiwGMJCfTwr 12EWcgKIF0k2P25tszpZnX3yAGPUwhFGKYxHzI3r/0tcBL7gBvEJ13kM1amfFTfAtLnS sH/ht1mAMUaxYnT201Y3u5o3yePKIYFP+4o9AUzdBeZpiTLF1vY3Zbq9hNwFOmCZcIC/ GI+5ylCHsT8A9pCkDmLaZcMtZ/OyQtobABvCcEoZ8zTONMLEiUEAjaEjA6w2ya7QUDwJ y6ZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="YqxWP/y+"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id b27-v6si123881qtk.191.2018.06.19.09.36.46 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:36:46 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="YqxWP/y+"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43703 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJcc-0005sY-09 for patch@linaro.org; Tue, 19 Jun 2018 12:36:46 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45904) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4q-0004X6-KC for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4m-0007Zm-Tt for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:52 -0400 Received: from mail-wm0-x243.google.com ([2a00:1450:400c:c09::243]:40636) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4m-0007ZP-Mm for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:48 -0400 Received: by mail-wm0-x243.google.com with SMTP id n5-v6so1401584wmc.5 for ; Tue, 19 Jun 2018 09:01:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=8ZnxRf2dP+qVTUngVMjYKZiTBOy5UGhY/K3huYrTgtI=; b=YqxWP/y+odVAcWVvEdw8s+rrEFErLTFBfD+8P70AEMMXQUtXqil2WJyj3wwgv8unLq 9v9h7057VpCmSCp6k75PlGcQLiT+RjrKI2gGBUmn+aIm9vuRJtNu6q5EZftGNxvjpldR 3VeHXxeQryDzoB5+GiHXJj3Ksl+QOywUooiFo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=8ZnxRf2dP+qVTUngVMjYKZiTBOy5UGhY/K3huYrTgtI=; b=WO7hOa/c+oTbxsnYt0xycq8ul5u4sSR9kJfjHLY1z6U7cbRwX4/dM51nT3CWkMfM+D 2ys1q7CaYxiFM/YoJ0WQ3oGQ2Jh4Dg9P9YZAH7WNFM1McGqnofiFcKefBR3krDW06ZVu oWCMXtUtJs1BJg+sCmxi7ONR5our4pyUhgxAVB6KIWS7F7F2c+/fz3jJmp9uvhasgkbg O28SyL2H7FZlHOB7eYhjIGZxt2cBRmddX6bLGyzmdDJILVmPqdKaVWexQUItlZWPxCi7 ozOIBlR76I4ekRwKXyBkh8XL3gNWWNoPxJ5VRsjVkcZodTrlWxRXnPio6QCs1iucGgNg wNmA== X-Gm-Message-State: APt69E15KGYrH88tJun93PNaCQPGpJjL0zaGa4xJq5a7VPqd/WxG5Tyj TfKo2jlY5Ib2Um4glxoGvOuMeA== X-Received: by 2002:a1c:9f06:: with SMTP id i6-v6mr11473753wme.73.1529424107509; Tue, 19 Jun 2018 09:01:47 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id h71-v6sm491691wme.47.2018.06.19.09.01.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 15B323E0CA2; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:08 +0100 Message-Id: <20180619154435.18898-30-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::243 Subject: [Qemu-devel] [PULL 29/56] tests/docker/Makefile.include: fix mipsel-cross dependancy X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This got broken in commit 4319db7 but generally only shows up when you try and do massive parallel builds on fresh machines. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 8afb383478..4a2b028a3b 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -57,6 +57,7 @@ docker-image-debian-armel-cross: docker-image-debian9 docker-image-debian-armhf-cross: docker-image-debian9 docker-image-debian-arm64-cross: docker-image-debian9 docker-image-debian-mips-cross: docker-image-debian9 +docker-image-debian-mipsel-cross: docker-image-debian9 docker-image-debian-mips64el-cross: docker-image-debian9 docker-image-debian-powerpc-cross: docker-image-debian8 docker-image-debian-ppc64el-cross: docker-image-debian9 From patchwork Tue Jun 19 15:44:09 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139187 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5390180lji; Tue, 19 Jun 2018 09:07:09 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKGa5l2QxYmoHE4llMARBcfXU0GuGqcHUkYzz5NiiUYbJGLqZCl7XpcbMN5RVxxDfQ+7Drd X-Received: by 2002:a37:4848:: with SMTP id v69-v6mr14144141qka.128.1529424429724; Tue, 19 Jun 2018 09:07:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424429; cv=none; d=google.com; s=arc-20160816; b=J4udoFR6Zy4gfw0GOYQYARMaeYG/B6diPJn5ije6uwpa9+DuKVcOL9EekXfA1Xik09 NEjcdR6kX3nn8yli8yLI/pN0MUMoQ6DPQ9KmVFYZuuF3W7/ZQhzTTZ1NNYhg0KHmujTz baiebnocCEDCQZ/CHyEodnx3JL4AxT08bNASsEWIulj+lH+Nl/tgTjrtJDQS89sSU3xw nV8MW+R27WnoBnPUvIsWN0f8ZW6eRC7JRS1NdYh0P/KjjDPxRUuXZ0ncg2zR4rdX6Be7 j6t1I0TBGiWaebbi1NNZFOLH7nFw3IRuOVOiIjKIewlYLcCewVz8cddXBQXyuJMcZO5j IBhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=ZE+ggAeSsW6r+CieJ6gVY3vK9lsa0HkNnTQN/FfBER4=; b=BaR3VgRrmMSCWry7y4nd3NvW+eiDcQ1tVZ8z0rLuFekhySNWlf/GsVieL9wMww7Jqu nFjW433KrSi4qgwnbgMaelSNS1DYFeDeLxsiIiLL9qmVdN+IIssqTIFh2U+4jJuFCDMN NOgkWUpYQyDBgBWJuOxSxPBli0qsJ93/LhfsCmBjfhuw8+Qsc3mwnOrReVxaUg8apm8k 0+97IpKKXowPIH8qg7fEJkFVBpi+yO9u4xDNMfR913qFZF+WFIuSnYB2ibAUAQO29Mcn hXAniNeZ2hmxABESNNT1jCO1GExQOOACF2CJjmhs8Y8m4HXDgLEANUMI7yS43Qgt9foo FcvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=cmrs86N+; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id j5-v6si41765qkm.342.2018.06.19.09.07.09 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:07:09 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=cmrs86N+; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43455 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ9x-0007an-2y for patch@linaro.org; Tue, 19 Jun 2018 12:07:09 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38721) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvF-00045F-Tk for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvA-0001hK-KI for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:57 -0400 Received: from mail-wr0-x242.google.com ([2a00:1450:400c:c0c::242]:46164) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIv7-0001d6-W8 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:52 -0400 Received: by mail-wr0-x242.google.com with SMTP id v13-v6so147228wrp.13 for ; Tue, 19 Jun 2018 08:51:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZE+ggAeSsW6r+CieJ6gVY3vK9lsa0HkNnTQN/FfBER4=; b=cmrs86N+XUuFdZklz8QkjSGIKnvgy4s7uglnA+tU//0UXv2+0xQAXl4VqDEVyhDTJk cq6Z0kQFeyM/Un4wEe1GYkT++EOGspoF/Yqf6ncC0vpazxRu1OlwfIv7GEY/2d3CjenQ oXT5F/HA0hmZX9ikfT7tDk+U9lQO9GUDx14fE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ZE+ggAeSsW6r+CieJ6gVY3vK9lsa0HkNnTQN/FfBER4=; b=QFzxardt5ZjvZKNWnaGSEy+ynW90BIrM5Dl+rBimn/G6BRqKelXGDNizkLY36uPt/k KuIFyjzfAjg+2g/qP3n3o3VT7vlswkrNPDEsUX3LFw/hhZjjTq10EjDZk9zJf6nFLGYC jw24dzMhq4A9WF4b3Y/oK8e+GleZI5FtPun3o4r7dkm21EZVYZRnuai1YnfWdfx0DaoK 0SnkCtSttcsRDKpnCis1HH79bheQF0y9/8EjROTaw5hqYu5Aup3GRElfyAQ2F5Db2Cr8 9QmWPCr2edCbJxdxa39SSNskPlOZKyU3KuicnspzkK7cI/9Ys2ImrNy24MinKu4vWIFF 03RA== X-Gm-Message-State: APt69E0tTP7F7jC74fDGRoBDjamlXK0CktyLsyubXE4WwrHE4T4rCBIZ btpPohOsYxuNZq+i8XTcOwMFiw== X-Received: by 2002:adf:9302:: with SMTP id 2-v6mr14360499wro.175.1529423508870; Tue, 19 Jun 2018 08:51:48 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id l5-v6sm885wrn.92.2018.06.19.08.51.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 27F283E0CE0; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:09 +0100 Message-Id: <20180619154435.18898-31-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::242 Subject: [Qemu-devel] [PULL 30/56] tests/tcg/mips: include common mips hello-mips X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, Yongbok Kim , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/tcg/mips/Makefile.target b/tests/tcg/mips/Makefile.target new file mode 100644 index 0000000000..71f0c2dd53 --- /dev/null +++ b/tests/tcg/mips/Makefile.target @@ -0,0 +1,19 @@ +# -*- Mode: makefile -*- +# +# MIPS - included from tests/tcg/Makefile.target +# + +MIPS_SRC=$(SRC_PATH)/tests/tcg/mips + +# Set search path for all sources +VPATH += $(MIPS_SRC) + +MIPS_TESTS=hello-mips + +TESTS += $(MIPS_TESTS) + +hello-mips: CFLAGS+=-ffreestanding +hello-mips: LDFLAGS+=-nostdlib + +# For MIPS32 and 64 we have a bunch of extra tests in sub-directories +# however they are intended for system tests. From patchwork Tue Jun 19 15:44:10 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139220 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5426888lji; Tue, 19 Jun 2018 09:39:51 -0700 (PDT) X-Google-Smtp-Source: ADUXVKI68LlVk6zawQNDkPoWCexricaqjVTIgTHObEqL0XarFy+6BAbIgUS3AEvANgDLiv/fcQzk X-Received: by 2002:ac8:26c3:: with SMTP id 3-v6mr15797529qtp.151.1529426391015; Tue, 19 Jun 2018 09:39:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426391; cv=none; d=google.com; s=arc-20160816; b=TS/v5/o2O5buEyJekJPcG6OFwyvGtBSm9GwNblKvl+L07OipeaAmyFxoXFRtRbm5NL ++io9xhrCCXMLvo+qlqlJuc5r301r7ySOBDls1OdfeWG/R5efP2irYZlzLZWHzK1D2MU u0uYFql2z7kXu5fVTSHWxPDB9lxTtBhgflRGM8xPCFSnL7C11NxjY2ypKHszMt4ARK6Z 5VtT2vLTLEytmubEMLmDSXaXVY20yzPRF8SAX8S2O9vjFtVY2b4sQOqiWT7eDFq7ZrQa ANsrBdHFshILkvgtu84xy4ybxUUuVou9wozVwSQHExSvTXweb6q2eD0rp0TWNiggfLw/ BjZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=xDYtaNCoEtlm85u6PXZitlzcQ226LhU02n6mfNZ6bng=; b=M3ljyvPg0yjMN3zhKFQ5niLgxSYbrYFaa+Ew3CpGjTZUACZNQwaR8osXFEOlgm54R+ QHP08JgZeXXzkFi55HpaQz8dYsRkehLX+dFZj95AiINozEiTSGoE9nNk9XpQgUoCfYAP WCnnm9KZTJ37oBKWm9ZWd8w/XoOsi40LMYXC268xM91gfO4hzL/HB1chiMBhbzzadWUs Ch0px7qbk+zkF6Mf5tzGfZ8x8avyuZ/QJHsRABAzNwEYuAdxt1xeIZgpsK9+wjo0wsDk ++jbetTSiJX1vOnk2gzNig0nOGjz0ZwWbdQ5jY7etzuqkUwBOs9Mp35mk94V3eHdcT3z VLKA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=QBIrsjcu; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id l5-v6si132819qvc.98.2018.06.19.09.39.50 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:39:51 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=QBIrsjcu; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43733 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJfa-0008H9-GW for patch@linaro.org; Tue, 19 Jun 2018 12:39:50 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45965) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4t-0004Zp-Vx for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4o-0007aM-Bh for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:56 -0400 Received: from mail-wr0-x244.google.com ([2a00:1450:400c:c0c::244]:35862) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4o-0007Zz-4p for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:50 -0400 Received: by mail-wr0-x244.google.com with SMTP id f16-v6so219610wrm.3 for ; Tue, 19 Jun 2018 09:01:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=xDYtaNCoEtlm85u6PXZitlzcQ226LhU02n6mfNZ6bng=; b=QBIrsjcu8pjlEESKnccjrSZI5sBBwsr9FO+MAXcshOQbbMAATgBbHdM3386ELTz02R aNHYWUc+Q7/Sesxp+karqeeE0z2xnBMTKbH7TB8IbjXaarlNC61O/bf3b/+WjK/jm4Io HYNrvai8aXtv9re0lqN52IB1X4+wzAk8QJVXk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=xDYtaNCoEtlm85u6PXZitlzcQ226LhU02n6mfNZ6bng=; b=YWGhkjZjOUZdLv9K/u9oceOBeBN7/ZSGQej0cKYORBSzIbZNuKuLd8rYTR2sMqnaSW aCs148vaXpLHDmMNBRk2+MVtBH9gkEwC4lKNA5s6LCKxFbvosD/ipdTNs/ypn0Jb+ar8 Zv+8nfU5czpWDczAOITiUDioEKJhI6aZ5wBXMhUB/RPfDl6GxMju5mbjj2Y7D8zl6idL T/YcqBPeALVHyyvhwdW9v9Rae7g6/12F0eBMxokNiIcNhWP6WzjHAQHE4kBaEzQrZmPi 1125X7yTBfVKlWaG1vVV8uiDNYlQlY+yDTE7FeZngg5DikPXhA5nLrDKd1G2PeIvpfhP 6HBA== X-Gm-Message-State: APt69E3tSJwlJWJeH94T2xKpf4Ye+YqA8HlNA0k/jMJvmFyAiZAuJ1p1 AOj3u6G33lIwa3lsptEFEkJaww== X-Received: by 2002:adf:b60d:: with SMTP id f13-v6mr14047942wre.186.1529424109003; Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id a184-v6sm525550wmf.30.2018.06.19.09.01.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:46 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 3B2EF3E0CEF; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:10 +0100 Message-Id: <20180619154435.18898-32-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::244 Subject: [Qemu-devel] [PULL 31/56] tests/tcg: enable building for s390x X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , Cornelia Huck , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, "open list:S390" , cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This doesn't add any additional tests but enables building the multiarch tests for s390x. Signed-off-by: Alex Bennée Acked-by: Cornelia Huck Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Reviewed-by: David Hildenbrand -- 2.17.1 diff --git a/tests/tcg/s390x/Makefile.include b/tests/tcg/s390x/Makefile.include new file mode 100644 index 0000000000..1f58115d96 --- /dev/null +++ b/tests/tcg/s390x/Makefile.include @@ -0,0 +1,2 @@ +DOCKER_IMAGE=debian-s390x-cross +DOCKER_CROSS_COMPILER=s390x-linux-gnu-gcc From patchwork Tue Jun 19 15:44:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139206 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5404277lji; Tue, 19 Jun 2018 09:19:36 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLYC5IOycImcKNrP6COulgFTho2STdggdH4pdz+Hds4l8/lBKGoaCx4AuF4Ktc40lkI82sR X-Received: by 2002:ac8:190c:: with SMTP id t12-v6mr16102226qtj.278.1529425176217; Tue, 19 Jun 2018 09:19:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425176; cv=none; d=google.com; s=arc-20160816; b=j9yumPFzfprCBcYkKnJR1QGErOCfDAzJdZBJ7R/eV1CM78wSO8i+wJ+KkjND8FL6Wz DWqfBf6FvsEsFWZRZaVsO6Aaa8vciPNBDbc0tSXwbVnHROOacpt4Glw6l79z6NPLIFw+ Kd45kJOeXU2q7xqJ0IwSr667bpbaTTaD1/z9eiRqoKS0RVeNCncjHr3ajgHWWIq4Sg49 HsG009CL9GC+wlRwcPsTm2q6MAUGeHHjdZ7V/eOw/pdQCQmLEOQIfd2+8FkQ1oq/vTrw hybKBsdWHHAs3zqtgh+DwgKwZ8dfpgV2hFWjYqkQPxvbIKGcG0UgJ+FfwQveF+F7WDCE 5tRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=6NKwfIwmDEnqiaa9SoPUOFr+oSH7bWYt/bf9ou++rXA=; b=oJJprbvlFsIwUssdz4upBstsdbydVv6Pahax3Op4Vll4E2t5/mq9Ds5OIdOai8Atta /mE70swgjhQnvTHDDhmqZRN/85+Q4MzjrCq/Vejb2pwDTP9rUWDn2N6lbs9/9hd1jlfJ 7QBRQLtdRpNR9MCnEmMPxXO4R2K+gWqYUUckutmDZVt9ifkt0Xudz119cjCIK9PPm6hh XV77DigI11mhkE88IS2liMDdIw/4qVgfu7Zv4iKFjgxeEkGpcmY8E3Xq9MS9RdAndm33 fWrOhGRig78xYVInmehVzGuFL0SuTBolpfmY2ZqbWwaqvxu8vhwTLot9BU/TLgxb/aMO 46IA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=WLIwLYWz; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id w46-v6si68336qtb.346.2018.06.19.09.19.36 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:19:36 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=WLIwLYWz; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43572 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJLz-0001Yg-IP for patch@linaro.org; Tue, 19 Jun 2018 12:19:35 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46012) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4x-0004ca-Qz for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4s-0007cS-Br for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:59 -0400 Received: from mail-wr0-x22c.google.com ([2a00:1450:400c:c0c::22c]:38837) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4s-0007c4-4r for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:54 -0400 Received: by mail-wr0-x22c.google.com with SMTP id e18-v6so213875wrs.5 for ; Tue, 19 Jun 2018 09:01:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=6NKwfIwmDEnqiaa9SoPUOFr+oSH7bWYt/bf9ou++rXA=; b=WLIwLYWzPQKyOVkTXQNnMvND6TYFT9leKBJWWuLmBHjgV88a3G0YrZM3qaKkRo0DTN XeAs2jHU8xkNNZsMhks660rdXA1YN5dn1sNkE3mBX1ZNYosuK7oSi7gi8sA5tkbLTgfZ y5YVFstYSQ52YBv8AJdEYfmKX9hMNh9hFlK44= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=6NKwfIwmDEnqiaa9SoPUOFr+oSH7bWYt/bf9ou++rXA=; b=HtoXJ/66uF/uo8IEFP6AHpiSNh0lrOkIRwcyWhjTMBKBXGUO1FUisbwASB6hSuf0mM uCPMTOXCC7DrWNPpG6QyLHtP/sjB3iFDzJJNflIiciCaS8YQ1XPDxy4kh8MLA1syWrG0 Sg6LHVdpeU42/0UFTNQePvu7qR4fcFiveZI7iwq0ZHzDXcFO/kvGy8NdPHWWxpt+UPLn E/1qYYHQFTuc64emiNiEIX6nyakE+C8tMcJDTXrdzXMNgaCGGqBiZPfZX2yCk1lOVqZm a841HRHuC/GdcDFus/eUMvdM8fJIZZRCYo4OOLRFvqbALgniJ0zVoL5b8d20FXpkTXmL 4/Pg== X-Gm-Message-State: APt69E2yw04+onlQHAUwNhzj4Bu1upv3jD7iplWBkK0lrlNY0vx1i3Bc qYgyokY2N/7LegnlI7IIoBtEKg== X-Received: by 2002:adf:ca03:: with SMTP id o3-v6mr14486934wrh.148.1529424113024; Tue, 19 Jun 2018 09:01:53 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id a8-v6sm67867wrc.18.2018.06.19.09.01.46 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 4E2943E0866; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:11 +0100 Message-Id: <20180619154435.18898-33-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::22c Subject: [Qemu-devel] [PULL 32/56] tests/tcg: enable building for ppc64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Currently this just enables building the multiarch tests. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/tcg/ppc64le/Makefile.include b/tests/tcg/ppc64le/Makefile.include new file mode 100644 index 0000000000..d71cfc9aa7 --- /dev/null +++ b/tests/tcg/ppc64le/Makefile.include @@ -0,0 +1,2 @@ +DOCKER_IMAGE=debian-ppc64el-cross +DOCKER_CROSS_COMPILER=powerpc64le-linux-gnu-gcc From patchwork Tue Jun 19 15:44:12 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139215 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5413009lji; Tue, 19 Jun 2018 09:27:40 -0700 (PDT) X-Google-Smtp-Source: ADUXVKI9djtVextaBcpHUVeNnRdnKIgwZraSNmYNMUF/ZwDMBcTupGS2xQ8mWF6KCXlRjzojFI/V X-Received: by 2002:ac8:44d3:: with SMTP id b19-v6mr14938414qto.167.1529425659963; Tue, 19 Jun 2018 09:27:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425659; cv=none; d=google.com; s=arc-20160816; b=PvIKVRvI3ozOcqYIkE0EWvqiywfkSeKueXmN5w12hFhwbPDIlaJoy8tM6DlI+PCxon nd/fZZJwUY3UpBGjBjSXvoG0JTo2LtlqSPtNd3ZJiGg2IXLTb4F8YuaTnqOfuw0YoEJM mZB+8AuRVRoJnN3hxnYFLUn6QO7kbyqI9F4uafgC+cqDyT5c2Znt0qYo1L8+NFcEYoHM QrJXOJmyARzi2NRGMNdpovYa/BiO2rxNOFlegPrWcKO7eS7Po9n7tQ8nxv0J9NCYw/E4 x2wYNg/j9Wrj4Ov5P0lvbe2X7iinQM8Jh9QK8EOKpxUO3jVozgNA5/xArwUqIaHO5anP /3qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=6+AMn1W2v9hYqhazUSto0ta42DWgae2M+2eCBXNiI2o=; b=jmQP3v/cxK6Qe6RvFsXY2GKb96VA2LqQQldBMevn65yq6Ej2WRsRXUz0U4+UXnX7D+ UMCfVNygmY7518NrylBijS2jvBn0WFfS7syk2FjCrH79GEPiHtR24hdGXOheO0OSmShL CikPy7mVsHaDpWXUNmdpa71qhanz9CtqugpTFUy/+PUmFWnQLC0EzGRP71RW/zWyylFs UV1SQ3NrxG0zgY/351/XU3Zcm58DE+ZvsF5HVPuu/+0qCEN45ZdATsDKpbANHuXBr8Be YjaXXab5SyHN2TirZoeftVLOP7NVNaLl2uPWMN94sE0qkIofp+XrEFmWO83fDtoPTQhX A0KQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=e0DJoKd4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id l5-v6si106215qvc.98.2018.06.19.09.27.39 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:27:39 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=e0DJoKd4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43628 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJTn-000086-9g for patch@linaro.org; Tue, 19 Jun 2018 12:27:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46082) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ51-0004gr-Uk for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4v-0007e2-U0 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:04 -0400 Received: from mail-wm0-x230.google.com ([2a00:1450:400c:c09::230]:54423) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4v-0007de-KS for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:57 -0400 Received: by mail-wm0-x230.google.com with SMTP id o13-v6so1241853wmf.4 for ; Tue, 19 Jun 2018 09:01:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=6+AMn1W2v9hYqhazUSto0ta42DWgae2M+2eCBXNiI2o=; b=e0DJoKd4y6kdHWN4cAk5cYZJavDe5lFh2RZBQZbW3zcXqJDbyMecdzguhL5GJks5AR w4qyR03TWNPcsoOvmto8lvsPshPpJA0utOL9OnLNR+IbbfraIhQ3kU9wXLdzPbj71Cl8 32brvKfAtjBc6YOc5nyhctMNHFgI2UsnvG34E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=6+AMn1W2v9hYqhazUSto0ta42DWgae2M+2eCBXNiI2o=; b=pHXSfjUj57KFlCkeGIrrb2pfY872EbesNZ68IStDnsRgeXeY7lpzajVSYADtpd3aYC vwQFDT4czfVV7Sk53Tji8vlSjQ/NBUhdWznIGCkzWIA2Lj7CHeAHT7fbAb6mUYniOoou SO8cc1V1xeWInzlZK496fzKl262tLY4LRQnmg5hmLq+ZtDK1QI3H9FMuWeXqb0Mku7Bh qnnIdsFGUU5xgr2sMPMvhbDjqYYTQ2mwPKj8Pq/QdmkmpY/hBLzAIwSKv1DTK6dWFr7J clkHjNlsndb6+qMTZepUoYLGDKhLVXzjSIA5dFxkPC8Ua2zDWy/2jnZRLtH11/ivgoow 8h/g== X-Gm-Message-State: APt69E2HKR0qe5c6OKC+FmGka6X9aU0iwCc0d76qEn5BWlZo5vU39Foj w30zvjdfGIfq2Dl3mnfTARv5Fg== X-Received: by 2002:a1c:9c4c:: with SMTP id f73-v6mr11732216wme.141.1529424116409; Tue, 19 Jun 2018 09:01:56 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id b15-v6sm90917wri.14.2018.06.19.09.01.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:53 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 65FD23E0D45; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:12 +0100 Message-Id: <20180619154435.18898-34-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::230 Subject: [Qemu-devel] [PULL 33/56] tests/tcg: enable building for Alpha X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" We can't use our normal Debian based compilers as Alpha isn't an officially supported architecture. However it is available as a port and fortunately cross compilers for all these targets are included in Debian Sid, the perpetual rolling/unstable/testing version of Debian. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - drop the unused debian-cross-build docker image - add note to debian-sid docker image - echo reference to notes on build failure - include EXTRA_RUNS for mmap tests v6 - use NOCACHE=1 for docker-image-debian-sid to force re-builds - this seems a little hacky -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 4a2b028a3b..8c24f8807e 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -64,6 +64,13 @@ docker-image-debian-ppc64el-cross: docker-image-debian9 docker-image-debian-s390x-cross: docker-image-debian9 docker-image-debian-win32-cross: docker-image-debian8-mxe docker-image-debian-win64-cross: docker-image-debian8-mxe + +# Debian SID images - we are tracking a rolling distro so we want to +# force a re-build of the base image if we ever need to build one of +# its children. +docker-image-debian-sid: NOCACHE=1 + +docker-image-debian-alpha-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-alpha-cross.docker b/tests/docker/dockerfiles/debian-alpha-cross.docker new file mode 100644 index 0000000000..29a25d0dfd --- /dev/null +++ b/tests/docker/dockerfiles/debian-alpha-cross.docker @@ -0,0 +1,12 @@ +# +# Docker cross-compiler target +# +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. +# +FROM qemu:debian-sid + +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt-get install -y --no-install-recommends \ + gcc-alpha-linux-gnu \ + libc6.1-dev-alpha-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; } diff --git a/tests/docker/dockerfiles/debian-sid.docker b/tests/docker/dockerfiles/debian-sid.docker new file mode 100644 index 0000000000..9a3d168705 --- /dev/null +++ b/tests/docker/dockerfiles/debian-sid.docker @@ -0,0 +1,32 @@ +# +# Debian Sid Base +# +# A number of our guests exist as ports only. We can either use the +# ports repo or get everything from Sid. However Sid is a rolling +# distro which may be broken at any particular time. If you are +# unlucky and try and build your images while gcc is in the process of +# being uploaded this can fail. Your only recourse is to try again in +# a few hours when the repos have re-synced. Once built however you +# won't be affected by repo changes unless the docker recipies are +# updated and trigger a re-build. +# + +FROM debian:sid-slim + +# Duplicate deb line as deb-src +RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list + +# Install common build utilities +RUN apt update +RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt install -y --no-install-recommends \ + bison \ + build-essential \ + ca-certificates \ + flex \ + git \ + pkg-config \ + psmisc \ + python \ + texinfo || { echo "Failed to build - see debian-sid.docker notes"; exit 1; } diff --git a/tests/tcg/alpha/Makefile.include b/tests/tcg/alpha/Makefile.include new file mode 100644 index 0000000000..c7dc48eadb --- /dev/null +++ b/tests/tcg/alpha/Makefile.include @@ -0,0 +1,2 @@ +DOCKER_IMAGE=debian-alpha-cross +DOCKER_CROSS_COMPILER=alpha-linux-gnu-gcc diff --git a/tests/tcg/alpha/Makefile.target b/tests/tcg/alpha/Makefile.target new file mode 100644 index 0000000000..bedf1b6444 --- /dev/null +++ b/tests/tcg/alpha/Makefile.target @@ -0,0 +1,6 @@ +# -*- Mode: makefile -*- +# +# Alpha specific tweaks + +# On Alpha Linux only supports 8k pages +EXTRA_RUNS+=run-test-mmap-8192 From patchwork Tue Jun 19 15:44:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139212 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5409830lji; Tue, 19 Jun 2018 09:24:39 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLfL4bQ1iDhUS0wBVi8W4shnjjQuVvlsiLcpv2JNquDxlZsdas8CkXApaoyDclJ8/qAGOCZ X-Received: by 2002:ae9:efd8:: with SMTP id d207-v6mr13574657qkg.191.1529425479574; Tue, 19 Jun 2018 09:24:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425479; cv=none; d=google.com; s=arc-20160816; b=kLvJps0O1MHFdDMDlh1zeEK8LGKb4pVCuzllze4UcLTp8R2Hrp0ZWD2tTByLrFQ5nS EOXOT4Izs+NonnMBE2AmJaxLT+X1sWpztjBQsnnXB7QE5O/PNAmqGRMH2GLwJCNtT31I fjiBm/ei5+1xVyRzgFT+gQ9pjLQT9UfqhP7jXm/0Uu3H0r2UvJkZjXu29VYp2qm6wdyw IJs7XzfjWGtpb1s7RHDGegaVTOxLErccXq0+ZxxaWsNYq3dT6ie1XncUAU+FTRwrUuJ+ dgI7apxpTLgGHsD6dfCQpwG3Il/P+RGEz3J/W6361VFTEFAA9v48mAOCalMTD8s+wqTv A/7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=m/iFfQYQo9T3IrAZZ9yOvMXVE8M4+kxH/inoLofQGG4=; b=NXvE9bwCYOL6tVIAvcS2Aa/D6IqnWrpuG4xM0bz3K5KsEZeNDKaLojc9Pb4Z3JG1Bp GwEsgtxCPe8Z92BPewDsX+RtjX4DTZvCZnigzQvBidVV387zsbaIyQ5zSxhdcxgDeSsa +I8dFrudeiLE2kQSDPDSNvwrZXU2aJMCfpx61NttX4+u3cdD4S1r8L/J7y0Y8xmA4sha mbvo4K4SBxhh7SU88MrAO3Tv1dFwTfGc8hHrmDmXV4kGJ3Wcva2hJ/xO2B5MjKAPEeh1 YNnRDC2ja0xDliQH+RUXwxr/oJcns3vsW1Fbfw8LtcF7Xiqpv0GQez6zmwn3Xzu0xr5N ozvQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=PJov64Tu; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id u7-v6si91683qvm.118.2018.06.19.09.24.39 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:24:39 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=PJov64Tu; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43602 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJQs-0005k9-Uv for patch@linaro.org; Tue, 19 Jun 2018 12:24:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45949) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4s-0004YZ-JG for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4r-0007by-Ed for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:54 -0400 Received: from mail-wr0-x244.google.com ([2a00:1450:400c:c0c::244]:35059) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4r-0007bL-8K for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:53 -0400 Received: by mail-wr0-x244.google.com with SMTP id l10-v6so219572wrn.2 for ; Tue, 19 Jun 2018 09:01:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=m/iFfQYQo9T3IrAZZ9yOvMXVE8M4+kxH/inoLofQGG4=; b=PJov64TuJr/tcgyBEh1ub28lfho9/waubBpQxIvs5DF2tGlAQLMbHP8uhbBnJBus5X Xq2TpfSdQmIhP6xWkzNOenJ+4T5CngVXhrvckJFTS6VRaJ/smBud5toYRLSR7sX0Wih3 6AZCWWooKbEubMDX8ZCGWFDk86qwryOJoEt2w= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=m/iFfQYQo9T3IrAZZ9yOvMXVE8M4+kxH/inoLofQGG4=; b=mJHdD6Spu3g+/nua7NVjlYT0Db5/oKOg2jLdZx0gzda9D8oiSJ1BlEWkkIbPXVp62n aHqmvTbX4uTqLGsi5X3W8VByeQ9DKiOKnjRlSm3dY8N43wYG6ZRZnEjZIJvS4FsOBR7o Yc54ePzw8Or92vaDoKw57jb+mecjTQ7WNOBKSpxooD1L9S/yPdssVn/7P4nidHpAn2y7 ApXmGPmQPaAmJu4M1iXyAhGJMvIZg1VJiT02UsgeAdSRqG8yxAqp9jWK0vFiCgeYkdj+ 9HZAV2H+yCx6+A2hPxecCM/VCdIMXrVx+QajJ7sJvg0jWEemFqc2K+ajPB9gmghB5F5v eY3A== X-Gm-Message-State: APt69E2hCRMhL8CPVurnpHITl03K4L8UVo+hTsxpwKqy1SYHmdH/2smA 1gLx2i4VaABr7VE9xy9plLRDvw== X-Received: by 2002:adf:b86b:: with SMTP id u40-v6mr14612072wrf.162.1529424112150; Tue, 19 Jun 2018 09:01:52 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id s132-v6sm599204wmf.5.2018.06.19.09.01.47 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 7EBDA3E0D7F; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:13 +0100 Message-Id: <20180619154435.18898-35-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::244 Subject: [Qemu-devel] [PULL 34/56] tests/tcg/alpha: add Alpha specific tests X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" These tests did use their own crt.o stub however that is a little stone age so we drop crt.S and just statically link to the cross compilers libraries. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v4 - drop crt.s - drop skipping of threadtest - drop write() hack, include unistd.h v5 - merge fixes -- 2.17.1 diff --git a/tests/tcg/alpha/Makefile b/tests/tcg/alpha/Makefile deleted file mode 100644 index 2b1f03d048..0000000000 --- a/tests/tcg/alpha/Makefile +++ /dev/null @@ -1,35 +0,0 @@ -CROSS=alpha-linux-gnu- -CC=$(CROSS)gcc -AS=$(CROSS)as - -SIM=../../alpha-linux-user/qemu-alpha - -CFLAGS=-O -LINK=$(CC) -o $@ crt.o $< -nostdlib - -TESTS=test-cond test-cmov - -all: hello-alpha $(TESTS) - -hello-alpha: hello-alpha.o crt.o - $(LINK) - -test-cond: test-cond.o crt.o - $(LINK) - -test-cmov.o: test-cond.c - $(CC) -c $(CFLAGS) -DTEST_CMOV -o $@ $< - -test-cmov: test-cmov.o crt.o - $(LINK) - -test-ovf: test-ovf.o crt.o - $(LINK) - -check: $(TESTS) - for f in $(TESTS); do $(SIM) $$f || exit 1; done - -clean: - $(RM) *.o *~ hello-alpha $(TESTS) - -.PHONY: clean all check diff --git a/tests/tcg/alpha/Makefile.target b/tests/tcg/alpha/Makefile.target index bedf1b6444..a585080328 100644 --- a/tests/tcg/alpha/Makefile.target +++ b/tests/tcg/alpha/Makefile.target @@ -2,5 +2,17 @@ # # Alpha specific tweaks +ALPHA_SRC=$(SRC_PATH)/tests/tcg/alpha +VPATH+=$(ALPHA_SRC) + +ALPHA_TESTS=hello-alpha test-cond test-cmov test-ovf +TESTS+=$(ALPHA_TESTS) + +test-cmov: EXTRA_CFLAGS=-DTEST_CMOV +test-cmov: test-cond.c + $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS) + +run-test-cmov: test-cmov + # On Alpha Linux only supports 8k pages EXTRA_RUNS+=run-test-mmap-8192 diff --git a/tests/tcg/alpha/crt.s b/tests/tcg/alpha/crt.s deleted file mode 100644 index 31af8825bc..0000000000 --- a/tests/tcg/alpha/crt.s +++ /dev/null @@ -1,26 +0,0 @@ - .text - - .globl _start - .ent _start,0 -_start: - .frame $15,0,$15 - br $29,1f -1: ldgp $29, 0($29) - .prologue 0 - ldq $27,main($29) !literal!1 - jsr $26,($27) - or $0,$0,$16 - .end _start - - .globl _exit -_exit: - lda $0,1 - callsys - - call_pal 0 - - .globl write -write: - lda $0,4 - callsys - ret diff --git a/tests/tcg/alpha/hello-alpha.c b/tests/tcg/alpha/hello-alpha.c index 79892e6522..84e43b2fc4 100644 --- a/tests/tcg/alpha/hello-alpha.c +++ b/tests/tcg/alpha/hello-alpha.c @@ -1,3 +1,5 @@ +#include + int main (void) { write (1, "hello\n", 6); diff --git a/tests/tcg/alpha/test-cond.c b/tests/tcg/alpha/test-cond.c index 74adffaa69..e625313b3e 100644 --- a/tests/tcg/alpha/test-cond.c +++ b/tests/tcg/alpha/test-cond.c @@ -1,3 +1,4 @@ +#include #ifdef TEST_CMOV diff --git a/tests/tcg/alpha/test-ovf.c b/tests/tcg/alpha/test-ovf.c index 01c80e7525..17892f1e89 100644 --- a/tests/tcg/alpha/test-ovf.c +++ b/tests/tcg/alpha/test-ovf.c @@ -1,3 +1,5 @@ +#include + static long test_subqv (long a, long b) { long res; From patchwork Tue Jun 19 15:44:14 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139186 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5387471lji; Tue, 19 Jun 2018 09:05:03 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIE+pw8hlauzHWdjpK7M7JLyQTX1NvYJB4h4A3uY88SBqpQIMbAts/lrw57VpzwvjdHtgEj X-Received: by 2002:a37:670c:: with SMTP id b12-v6mr14093777qkc.108.1529424302951; Tue, 19 Jun 2018 09:05:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424302; cv=none; d=google.com; s=arc-20160816; b=NUiQDWmDtnbQhEgotnCuBu9NMz+EedbKWSBJhoOCgNABJXArK4SEXA74rl5zArLN9w aDZJnke19RTWLKzRthq9JicDkd4ENLuxTI+qWpJFyRsy9ZZOxVKOt6remNXs7TJWNSzz OA3wLzGmnzHg0If9qfuoMzxy1w1Y2qG9BGCTdvMREzjPhOHoBiyRWgd2HCqMfIN3nybJ ZmGhk3UEXZrxr8W5mcBdCrDos/TwkEXVQibSOsbmkihh8rcv2TPa6DMn9+U/ZplXEpou sqsGIqkMIBscb7zcfkew1e5XXGgu85T3f3JCYCPBDX34ZEpcxvEWewWx0Fr7sKfB+ohY i05Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=PKR2hM0SeEZFZg8IAaaF11ylImD/LFOeEu+JAjYmvQU=; b=AiWWqZ0EBLFmPl7DcgrQDYwp+I1byfAU0kFSUWM+L4StG0krDw1/7BbLpeDkd8jbKG 3eFsHFZLrmPRoqgiupLg8USuVzODmaNM7DHMx3LtujWVxF3ch7it+SalAQJmJNOUcJr3 Im9tYJl4G8CG1wEYX7Te6InnRwq7Vm5yibDUNbgHH9yCYKnlqpzk1zzAMJ3oaAmRfxkx LWsQ1wz2CVEmyVepbIepA4iZJkXfF44+qXi9r3aEWAshupno6L42MiphQNOupAQRtOAt cb+Vae4b/cEYEC1vQqGdhBQTtvZdhMd1a76Vpsfl5xHu11jojCWGC5+I/+5xAgwRqfuF lPTA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=CTYD3lty; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id a19-v6si28513qvm.282.2018.06.19.09.05.02 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:05:02 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=CTYD3lty; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43440 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ7u-0005dn-E7 for patch@linaro.org; Tue, 19 Jun 2018 12:05:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39282) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvc-0004Mx-G0 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvL-0001wg-Re for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:20 -0400 Received: from mail-wm0-x22f.google.com ([2a00:1450:400c:c09::22f]:52954) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvL-0001vl-Fx for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:03 -0400 Received: by mail-wm0-x22f.google.com with SMTP id p126-v6so1223244wmb.2 for ; Tue, 19 Jun 2018 08:52:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=PKR2hM0SeEZFZg8IAaaF11ylImD/LFOeEu+JAjYmvQU=; b=CTYD3ltyEQtR+rJaC2k5I7a4gTDn6kELYkxMMCTGSzx8LuB+rLjtjgwXiX7TY4wXuX LCuQVCcMJqm6B2lN5wiewQcmlYo/uuGsenVFc3VLg0E4HJ7iKEvscbo8UnVfm+YFhGDr wcJtPimM3QJnj9xoPyR8LAR8ybM/tCN9/tC/o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=PKR2hM0SeEZFZg8IAaaF11ylImD/LFOeEu+JAjYmvQU=; b=sakfLlZCMsgzvF+GsiMi2NAy9qUuwiLweU/rb/kkezUAv0mtB96v3/R3yVnYPMmFlu znZgRwo9UcWopt5hWILPx6KNW1XTp56y9GU9GNz6xc3VXWb2/Si419lX/iFIV30JP9Q4 XHh57X8fyfyRY022AlwRs64cZcPBOTniC/ds0opk1sBh/sCLvEAAh5RVTkLisOmc42ON YLcybzLj+miGfB+hykpK5oQf+qntzFrdagpgKMsZcg9HRZ6GlBdSCrB6FTTh+u5O8rNs YgGNubGJ5kJ2Uz7B63ecze8SkC8CvVhwdGz6Y97VUltBtyN/q63Q3CmmMVLGki686yJx SEew== X-Gm-Message-State: APt69E0tYA7/nTlNee+vMzKYnfX+hcxj3Xd/MhpDIb2D3F3xwi6HsSGD oCwnlAMtaPKztdtThdO9/MSWXA== X-Received: by 2002:a1c:8301:: with SMTP id f1-v6mr13411593wmd.17.1529423522241; Tue, 19 Jun 2018 08:52:02 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id b190-v6sm597944wma.24.2018.06.19.08.51.51 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:57 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 95F923E0D8C; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:14 +0100 Message-Id: <20180619154435.18898-36-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::22f Subject: [Qemu-devel] [PULL 35/56] tests/tcg: enable building for HPPA X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - add EXTRA_RUNS for mmap tests -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 8c24f8807e..65e3dee741 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -71,6 +71,7 @@ docker-image-debian-win64-cross: docker-image-debian8-mxe docker-image-debian-sid: NOCACHE=1 docker-image-debian-alpha-cross: docker-image-debian-sid +docker-image-debian-hppa-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-hppa-cross.docker b/tests/docker/dockerfiles/debian-hppa-cross.docker new file mode 100644 index 0000000000..ad443defac --- /dev/null +++ b/tests/docker/dockerfiles/debian-hppa-cross.docker @@ -0,0 +1,12 @@ +# +# Docker cross-compiler target +# +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. +# +FROM qemu:debian-sid + +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt-get install -y --no-install-recommends \ + gcc-hppa-linux-gnu \ + libc6-dev-hppa-cross diff --git a/tests/tcg/hppa/Makefile.include b/tests/tcg/hppa/Makefile.include new file mode 100644 index 0000000000..da2353430e --- /dev/null +++ b/tests/tcg/hppa/Makefile.include @@ -0,0 +1,2 @@ +DOCKER_IMAGE=debian-hppa-cross +DOCKER_CROSS_COMPILER=hppa-linux-gnu-gcc diff --git a/tests/tcg/hppa/Makefile.target b/tests/tcg/hppa/Makefile.target new file mode 100644 index 0000000000..8bf01966bd --- /dev/null +++ b/tests/tcg/hppa/Makefile.target @@ -0,0 +1,6 @@ +# -*- Mode: makefile -*- +# +# HPPA specific tweaks - specifically masking out broken tests + +# On parisc Linux supports 4K/16K/64K (but currently only 4k works) +EXTRA_RUNS+=run-test-mmap-4096 # run-test-mmap-16384 run-test-mmap-65536 From patchwork Tue Jun 19 15:44:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139174 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5379895lji; Tue, 19 Jun 2018 08:58:42 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKRRCfPd2LWvM+j1dq53bdEiDiwTGHzE9x1NDJDyp5L7KMGitBdF2TqGTmG0XbpS9+CEnsr X-Received: by 2002:a37:8e87:: with SMTP id q129-v6mr14479101qkd.76.1529423922682; Tue, 19 Jun 2018 08:58:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423922; cv=none; d=google.com; s=arc-20160816; b=alIaSXeVmTvoKlYyFbASkePiKKo8uk+b2fMyvOQvIACai1Cw2DTQKrs6xtudHEdmzv Fx4A4W/6macjxVit+GvfZJ2VXkmYpHad08jSNF7MUGLVCmuddH32HWhaOmfQnmX/HHZk pC4YX1zTHizLiRyiff9MbrSt3ZPnpwvFIxFXwxVl+mg3c466n2uFbtNBbSsSn7HWEP3c ac9iShR1O62MzOQVYc6bld5kMe7FWuguap1Iyy02KUSxTISsVvtuRywlyED8TEGrF5AE rU1LsvX1S6ccfxatKhg+NUolXAGA8ZEIK3hPVVZL8yauFVF+lFGoDpZs3O3+4tru1hZO Wgvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=S/KoTgZgKwzp5ehxf+V6bfdC1iGHnTXylKGHzzwN0Gc=; b=guBalobJfhOSJ6eFgOMPEjYn2I30psMTbojB4NxBg0FCrcWnOFaJeIIzw3Wn+hmzBo qMyMRJ8qAWscKBOh6X/iq5MyzDEiNx3Vj1Lb7uEM1hoa32Fo21wI81/E5WpYZdYpM1s2 o0y3bGLkyVnIKUtOGa2PoA9oM5CL5BVNSKLyHy28FdKIKcNLK+FCd5x6x6g42Xl3dtAU 5F8P4W9jySHtWEyrCDoBLwzbzSXQr7++dS4vRRHAllNY1rG2MhbEZDmOKTsPUCHiEkNG cIh+2z5/sO+uxBoFEeyIBpdJK7HZlQBJxqeyvOYqjH7YCIPKJYNvadTRu5CiqnNeQH3H 9H5A== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Q+3e4x9J; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id a9-v6si57070qvh.29.2018.06.19.08.58.42 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:58:42 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=Q+3e4x9J; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43409 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ1m-0001a8-3m for patch@linaro.org; Tue, 19 Jun 2018 11:58:42 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38745) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvG-00045m-Fo for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvA-0001i1-Q3 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:58 -0400 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:54320) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvA-0001eR-3k for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:52 -0400 Received: by mail-wm0-x236.google.com with SMTP id o13-v6so1185158wmf.4 for ; Tue, 19 Jun 2018 08:51:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=S/KoTgZgKwzp5ehxf+V6bfdC1iGHnTXylKGHzzwN0Gc=; b=Q+3e4x9JWgOKS0JygJswHLqnuGutdEFDh+IX3aHM4KnNznhoKMMeezEfhEyiQNNepR mZxk3RSklyqpRNdc0bhREWTLPIjaV2fn62q9tEyr5FDsTNtBvPdtulIqLUuKHt4ArwNP Q+Q7u+WQTNCzchYM21PLFhVUheYiNd/Sx4LBs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=S/KoTgZgKwzp5ehxf+V6bfdC1iGHnTXylKGHzzwN0Gc=; b=eU/tXNDsbHZ7ouwVQqJZEGSn1RzQnJF9rv4u8dIU20pt9UPCoT8X2aRIhLDLRLkmyS +4VWENKi/ZmzK83l0/UgMp3eAOLqjaZm2j9uzbPiZS71KHmd3/2/sxzQmTba8w6FzarR 85nuMG/vG9KIcpVnNbock1KAD5ywHYc3zdc3d9k37vbx4R2y7vAF24ghYMc8mHobs0OI ut1B5MZ2fybLsbNYW3ve7YRNr7Xlh5uE83cJmN5Hex/UwbpR760GSzoT+n2ztRK3u+Fw +soOZUpMCoiPLiFfnmBS1V0tETGlFc9+FvIkUgQdxH3GTqXDgKfUyne0nGeju+dvS2IE 5meA== X-Gm-Message-State: APt69E3gd/7G1EwBGu5ea430V7Lg107nlBl5FJ1lqkjgaHNpwQyiQ9GG gpFqfjLHRG5WKkHcaD8zhoEVSQ== X-Received: by 2002:a1c:d287:: with SMTP id j129-v6mr11476540wmg.106.1529423510975; Tue, 19 Jun 2018 08:51:50 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id l142-v6sm628365wmd.16.2018.06.19.08.51.46 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id ACE7D3E0E68; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:15 +0100 Message-Id: <20180619154435.18898-37-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::236 Subject: [Qemu-devel] [PULL 36/56] tests/tcg: enable building for m68k X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As before, using Debian SID compilers. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - add EXTRA_RUNS for mmap tests -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 65e3dee741..59dd8e314d 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -72,6 +72,7 @@ docker-image-debian-sid: NOCACHE=1 docker-image-debian-alpha-cross: docker-image-debian-sid docker-image-debian-hppa-cross: docker-image-debian-sid +docker-image-debian-m68k-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-m68k-cross.docker b/tests/docker/dockerfiles/debian-m68k-cross.docker new file mode 100644 index 0000000000..21ba3b0132 --- /dev/null +++ b/tests/docker/dockerfiles/debian-m68k-cross.docker @@ -0,0 +1,12 @@ +# +# Docker cross-compiler target +# +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. +# +FROM qemu:debian-sid + +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt-get install -y --no-install-recommends \ + gcc-m68k-linux-gnu \ + libc6-dev-m68k-cross diff --git a/tests/tcg/m68k/Makefile.include b/tests/tcg/m68k/Makefile.include new file mode 100644 index 0000000000..cd7c6bf50d --- /dev/null +++ b/tests/tcg/m68k/Makefile.include @@ -0,0 +1,2 @@ +DOCKER_IMAGE=debian-m68k-cross +DOCKER_CROSS_COMPILER=m68k-linux-gnu-gcc diff --git a/tests/tcg/m68k/Makefile.target b/tests/tcg/m68k/Makefile.target new file mode 100644 index 0000000000..62f109eef4 --- /dev/null +++ b/tests/tcg/m68k/Makefile.target @@ -0,0 +1,7 @@ +# -*- Mode: makefile -*- +# +# m68k specific tweaks - specifically masking out broken tests +# + +# On m68k Linux supports 4k and 8k pages (but 8k is currently broken) +EXTRA_RUNS+=run-test-mmap-4096 # run-test-mmap-8192 From patchwork Tue Jun 19 15:44:16 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139156 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5368425lji; Tue, 19 Jun 2018 08:47:58 -0700 (PDT) X-Google-Smtp-Source: ADUXVKK7oRYoLQg9QeRuekO+BgynzgqoZeylRFJLghF4M8zxbPaFDxkKZkl2PPQzB1dCPMiWPqY2 X-Received: by 2002:a0c:9308:: with SMTP id d8-v6mr14976628qvd.191.1529423278886; Tue, 19 Jun 2018 08:47:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423278; cv=none; d=google.com; s=arc-20160816; b=T61/F2X7N+8LtB6cMzPJwSwMbxLRoukYIeLgC+PhBProaDOvIfvrlna6mfapORlAld IZxD4KuNDSXN8GX+WWsPou3cHEf29MMBL8RHq0KBwcSEuoeaaSqRnGGZRPXxPDIEp6Qr PKo1mtgO2meaSxWBeD4/HMCQMij4F1apCgXOtzsfPIiQNEO4j57yfhM8GtXswtVvDjxs HU+LH9ECUkzCLYhIGpJj7R3n8YSG+n72fGH5PEBX99S3qx3gmr+9BkBbI4h8TyzzkXGK W3uHhaTF8izK9c+jnTdFok9iq7sKhX0kwzp0p4OO+2yZNVpbpFEF7nnerO7zUU7eLF1k +XqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=jGpuf8Ryr7eiXo1AMGgzxAcVsOXMNjUNc4dpv5YPwVI=; b=Dr5C1+EIcnV5rHE6En06bKMY/AgcYvsBvtcTB6HU2suGQtb+eH6vj25rxtOAm7Q8PL 7/S2dIosv5/21L9+uyGOVYHF4ALbOrYdC1QRB0ECeQsiysw+Au3N+BnSYgocUuBOhRzP st5Y39ZJa+efqK7IiBEPqpXntr1GJiII9HoewsxuvkNj1JyWxfB5F76i1QXpB0YnBB6o swUiOKOLuhXPBWgewe7RJBa6xK/n7BuMAaSep8kkSed1kU+JlOiwiQZG7PQNE9TX3liZ FAZET7stdOeBHWcMudhUSSnjHCLQYsc+PUvBIAQaP2oLq76DLxqPQSezmAJNw6snsBzZ 6hAw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=GOMjYFXE; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id j26-v6si24426qtf.110.2018.06.19.08.47.58 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:47:58 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=GOMjYFXE; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43348 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIrO-0000fe-9M for patch@linaro.org; Tue, 19 Jun 2018 11:47:58 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35259) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIoO-0006gV-FG for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIoN-0006TP-BR for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:52 -0400 Received: from mail-wm0-x22c.google.com ([2a00:1450:400c:c09::22c]:55776) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIoN-0006SM-34 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:44:51 -0400 Received: by mail-wm0-x22c.google.com with SMTP id v16-v6so1146979wmh.5 for ; Tue, 19 Jun 2018 08:44:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jGpuf8Ryr7eiXo1AMGgzxAcVsOXMNjUNc4dpv5YPwVI=; b=GOMjYFXEeiAMyb94KLQ3WC1TQE80qicUMqc1rf6sR5dx5VrG0fe5MoiiKQ9KqJg3kh sm9BjH1jtG9Va+c752kSFzbY0dGQTuNkuHW/rhC7RAKFKoZK8mg6ccnvfCGoOuqIpaUw GJvSOGFiBoI9iJi+NIlyVih6sbtTD58iqHpDM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=jGpuf8Ryr7eiXo1AMGgzxAcVsOXMNjUNc4dpv5YPwVI=; b=Ph7MNxFuXtVRJduLt26N28ZD85eXoSyEbCE3P0XzNJjcI0oq76Vpie+NeV8dRw9obG o36vpi4RvbG9CmMs6idLFmaC2ZCqd39OoKRcvLSNGeukwO79c3gvgGanbqYV1VwlVbqd NQFBSu+bmEhGqRyNOBm/hCPq6Zd3U+0EgBMNT+1uG5alPl860Zg1g5NKoAbM35LnEnen F/RYc/XLqMXPFKANQ3VZDrzaM+aQXt5nzUqu/h48IY9vGVefmNRwqHynt19+9Me5Nf0g CnE7ZFT4Oq1MVmA3SeHatmDhdo0NO75tnlVE03pUBdPwqv0PyN+8EpnDEmysGPedAgfc YU7A== X-Gm-Message-State: APt69E3GTkXQaJaWpCQ9hayK4gCQRG92tbJXE1ConALeOouGpuSzXswB j3a2/KPttmGYSwYVIMY8FdXe8Q== X-Received: by 2002:a1c:e80f:: with SMTP id f15-v6mr11862768wmh.137.1529423089927; Tue, 19 Jun 2018 08:44:49 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id a8-v6sm12842wrc.18.2018.06.19.08.44.42 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:44:48 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id C3ADF3E0E74; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:16 +0100 Message-Id: <20180619154435.18898-38-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::22c Subject: [Qemu-devel] [PULL 37/56] tests/tcg: enable building for sh4 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As before, using Debian SID compilers. While the compiler can be coerced into generating big-endian code it seems the linker can't deal with it so we only enable the building for little endian SH4. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - add Makefile.target with EXTRA_RUNS for mmap tests -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 59dd8e314d..a2dd307a8e 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -73,6 +73,7 @@ docker-image-debian-sid: NOCACHE=1 docker-image-debian-alpha-cross: docker-image-debian-sid docker-image-debian-hppa-cross: docker-image-debian-sid docker-image-debian-m68k-cross: docker-image-debian-sid +docker-image-debian-sh4-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-sh4-cross.docker b/tests/docker/dockerfiles/debian-sh4-cross.docker new file mode 100644 index 0000000000..88a2423094 --- /dev/null +++ b/tests/docker/dockerfiles/debian-sh4-cross.docker @@ -0,0 +1,12 @@ +# +# Docker cross-compiler target +# +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. +# +FROM qemu:debian-sid + +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt-get install -y --no-install-recommends \ + gcc-sh4-linux-gnu \ + libc6-dev-sh4-cross diff --git a/tests/tcg/sh4/Makefile.include b/tests/tcg/sh4/Makefile.include new file mode 100644 index 0000000000..ad21594d9d --- /dev/null +++ b/tests/tcg/sh4/Makefile.include @@ -0,0 +1,4 @@ +ifneq ($(TARGET_NAME), sh4eb) +DOCKER_IMAGE=debian-sh4-cross +DOCKER_CROSS_COMPILER=sh4-linux-gnu-gcc +endif diff --git a/tests/tcg/sh4/Makefile.target b/tests/tcg/sh4/Makefile.target new file mode 100644 index 0000000000..9d18d44612 --- /dev/null +++ b/tests/tcg/sh4/Makefile.target @@ -0,0 +1,7 @@ +# -*- Mode: makefile -*- +# +# SuperH specific tweaks +# + +# On sh Linux supports 4k, 8k, 16k and 64k pages (but only 4k currently works) +EXTRA_RUNS+=run-test-mmap-4096 # run-test-mmap-8192 run-test-mmap-16384 run-test-mmap-65536 From patchwork Tue Jun 19 15:44:17 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139202 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5400279lji; Tue, 19 Jun 2018 09:16:04 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLEPi0bqCLLREUMqSja+DpbXeCwlMUbvJ6uTs6I3sL05eba7iHuFBnyVnAF/dIdw6HUwofx X-Received: by 2002:a37:1707:: with SMTP id i7-v6mr14461248qkh.433.1529424964542; Tue, 19 Jun 2018 09:16:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424964; cv=none; d=google.com; s=arc-20160816; b=FYxqho5R6raz2rjYW3pXDCFjrweW+lvFgtno/lAeWFugPqVP+NOAly8rdRMMziM9WP YX5RbKO4Vitn7wRWPtxz2AcPu6IGd+2vGljrb2Yv9BiRSn/Ku6TuacS5I4cyGxdtih27 L+eUGosmgVCHjIf2RPXlM66B20L8Rvv7pPT56ZYGKrPmoS1Yz8/5r0cw51MikH0gjZ3E Yfv5RafW2V71da2lDZjIaskBlimu3bqWElhX7VsNY8F3CqSxD99lCx69nfcFXNTyKPCL 7I1AFiXVVFHnZFz+qm7vXqgBYT7X3aoAaTxq9OrT6Qc9Y7us+dAZxO6K9wtzHH9LDOol jV2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=mgYiywWc+6/205HnB5Vr6MlHuhtWTQQxEj4zHDgE+MI=; b=wPMAWdJxRNBvRvuOHDuvTGOBNG5uLsg5p86LdJbnrvL7tx6QZKx5IGDdwjgCa7UzrE jP11KfaKoaxYU/QVS/Z0NbAjymRduLeZTkJz222YWlppIAtjsmewbXntIDN+jMuyMGan ngBRUWj/TyxVugy4vg9TNtJziNReWb+VKs8dsWCBTnBxjD6j5WhZHzjJoeqLO5m7FEVW 90XR/Mu6erf3elTZOEu1jQq7gECmLKzJAeywWcExuNWuUYTKw6HI7yYYOcD23DYSN2w4 r2fyvZRV5dSnjJA9wfCzig53kRyRW4NzEREBVtj8KtTbIY/6OmB918mbyVKPbhUtPI6f cNog== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=QZ0kENYG; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id f46-v6si77008qtc.204.2018.06.19.09.16.04 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:16:04 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=QZ0kENYG; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43537 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJIZ-0007xe-Tt for patch@linaro.org; Tue, 19 Jun 2018 12:16:03 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39158) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvV-0004Hk-7o for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvH-0001qt-C2 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:12 -0400 Received: from mail-wm0-x229.google.com ([2a00:1450:400c:c09::229]:33277) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvH-0001po-0n for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:59 -0400 Received: by mail-wm0-x229.google.com with SMTP id z6-v6so19402750wma.0 for ; Tue, 19 Jun 2018 08:51:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mgYiywWc+6/205HnB5Vr6MlHuhtWTQQxEj4zHDgE+MI=; b=QZ0kENYGs1L1Z53gOD3mvvJiRBgDOeeBDGX6oBF4XfsFF6IYZxviOZt1FXN7++wBMA 9x535e1c7IzP5H+ZZWGfZ26KYTBOKcCJGIn8kwWhR7+9GNZ68Tglqri5tiaA1L1JyBRy Y/Otp8y3JWzMhUZ9srsHa8u2lV2LzmNMRrhYw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=mgYiywWc+6/205HnB5Vr6MlHuhtWTQQxEj4zHDgE+MI=; b=IUH/fsv7X9Wp36uLyxFT7LSkf1VcrZ+YowDSFVnTJmDcwTXP0hA8btU8ghibZtmkaa TZl8DmWwImcBC5DL8gcopiNCHwVcUJecV00PsebWiN7qoZ49mwC9wqILLiPWfOKzOhwv C4+pwbnClhMNeTJkUCg05+5O/9FfY8q05xUllDK2n4em2tnpkB0QGyNviV0O4pAgVLr7 I2PRn2/u+ArCGkSnEM6nQIlEFJ+0ViU84dpdpRoG7qKtXH3MZLtt2j4gpPCYVC26rqMn OuTWjzozxNv18ESDaly3NcnqfOzoFcfQVORMpv0gE0l0GUv+JN0b5rXMMtOdvRRRNsNA vp+A== X-Gm-Message-State: APt69E3XxELCIXEKAS5sTb+BTqBV+N25kRSm6Tqn5aUpc1LV1U4IMtUx UYZxW888CnHQIOihrfuGpXk27w== X-Received: by 2002:a1c:4189:: with SMTP id o131-v6mr11595046wma.7.1529423517796; Tue, 19 Jun 2018 08:51:57 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id u108-v6sm29015wrc.40.2018.06.19.08.51.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:53 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id DA16E3E0E85; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:17 +0100 Message-Id: <20180619154435.18898-39-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::229 Subject: [Qemu-devel] [PULL 38/56] tests/tcg: enable building for sparc64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As before, using Debian SID compilers. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - add Makefile with EXTRA_RUNS for mmap tests -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index a2dd307a8e..fb465e729e 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -74,6 +74,7 @@ docker-image-debian-alpha-cross: docker-image-debian-sid docker-image-debian-hppa-cross: docker-image-debian-sid docker-image-debian-m68k-cross: docker-image-debian-sid docker-image-debian-sh4-cross: docker-image-debian-sid +docker-image-debian-sparc64-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-sparc64-cross.docker b/tests/docker/dockerfiles/debian-sparc64-cross.docker new file mode 100644 index 0000000000..1e2c809274 --- /dev/null +++ b/tests/docker/dockerfiles/debian-sparc64-cross.docker @@ -0,0 +1,12 @@ +# +# Docker cross-compiler target +# +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. +# +FROM qemu:debian-sid + +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt-get install -y --no-install-recommends \ + gcc-sparc64-linux-gnu \ + libc6-dev-sparc64-cross diff --git a/tests/tcg/sparc64/Makefile.include b/tests/tcg/sparc64/Makefile.include new file mode 100644 index 0000000000..95fc8dee9f --- /dev/null +++ b/tests/tcg/sparc64/Makefile.include @@ -0,0 +1,2 @@ +DOCKER_IMAGE=debian-sparc64-cross +DOCKER_CROSS_COMPILER=sparc64-linux-gnu-gcc diff --git a/tests/tcg/sparc64/Makefile.target b/tests/tcg/sparc64/Makefile.target new file mode 100644 index 0000000000..408dace783 --- /dev/null +++ b/tests/tcg/sparc64/Makefile.target @@ -0,0 +1,6 @@ +# -*- Mode: makefile -*- +# +# sparc specific tweaks + +# On Sparc64 Linux support 8k pages +EXTRA_RUNS+=run-test-mmap-8192 From patchwork Tue Jun 19 15:44:18 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139180 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5383291lji; Tue, 19 Jun 2018 09:01:40 -0700 (PDT) X-Google-Smtp-Source: ADUXVKINKzDiZ3N+/XWnxxqs/05f0G4thYLKj0hZbpF2ogS7+H914KiN4yFW5ql5CGmFRmU0I272 X-Received: by 2002:aed:22ae:: with SMTP id p43-v6mr15685334qtc.200.1529424100341; Tue, 19 Jun 2018 09:01:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424100; cv=none; d=google.com; s=arc-20160816; b=NoO5N1fXuKWt18sOu8OCtpzO8jBuGEDijQ4sYsLgItIJCyuPkepXb8g8kueCg2z+k5 kuy4ZHPRbcQYwIfh8+IxP2trUfBTahVW2JBuFKTCGRj11s29PpG+koffgJOMVNEPKY+5 kgAvA8JMaeuhxO8sKgSt6SHfvdGNZUCBJi9GhgR1NOlz/U2Ys8KWHKsI32TJ9/R3F1Hu ACrNcCO/7Xu8V9grA6Y4zO8TpISSV6jmKkP++lco5gREttmC18D/56CsPiPQVB5xEnQg 5zLsHc+Pw6qIY4PJpgcbigcC42GhtMg95ICWiGb8aSUOm2gP+pBQvyjucbk/FPqsMVUG Sg0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=DlKIoTliPcY2+7S46yeLnl8QqCaCHREGik0yTmcz1iA=; b=WBSkDQUsxZcrFM+ANoNen+p9C+ljccoASmSqYlmb1UaLpTI490dsooagYuI1fcZtQm Gns3OHeXNiHJD+XrFkhISTiQ1CJo7oshOk2DQY6BFdCSUafH21hiOLM0+HlISLtcdvUm v5HRX45sX4sEHjfNogo9/WnKOXoTITMAkyS+i65n+LIFsKC60m5ZF6dmDwgrZspBzj/o t5fGmZ3sNC5CBMiJudsjJxl6kbpjDpG6OylzGFmW+4sF0+XDKEB4vjhDjigR5Cq5DGcO gNAZZeSPbvWLJOJ1+tM6hNxCX9zyEfyM+6C382Yv/GBV+eH7ByJyKmzz8nqEIgiJrP0L 0VCQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=DOsij3zZ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id p17-v6si51331qvf.115.2018.06.19.09.01.40 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:01:40 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=DOsij3zZ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43418 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4d-00034c-QA for patch@linaro.org; Tue, 19 Jun 2018 12:01:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38858) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvJ-00048f-K3 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvC-0001kF-91 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:01 -0400 Received: from mail-wr0-x22c.google.com ([2a00:1450:400c:c0c::22c]:37132) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvC-0001ik-0x for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:54 -0400 Received: by mail-wr0-x22c.google.com with SMTP id d8-v6so179063wro.4 for ; Tue, 19 Jun 2018 08:51:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DlKIoTliPcY2+7S46yeLnl8QqCaCHREGik0yTmcz1iA=; b=DOsij3zZFtMnt10Ro437x5NXqcE4t7MeJ+w3PW/xhCXoSqc/oT3MBAHp1BXflOjXgf 3fEtAS+fpeynz5Q6W9my2XcVqNn+nqzDd5yxklv2+Fvex9/J9dJ0NjKxOJCXud8KLm5s weYPRmG1hxFczBwJOk7+v1OoPtM8eiI5cQrXg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=DlKIoTliPcY2+7S46yeLnl8QqCaCHREGik0yTmcz1iA=; b=Dz8J/J3FBXRD0J3Ru/OqpAoVLcxoh3h/lm55z93jw5THfVWgzgoJI4tKbSPmh52Rzf gstyMhklHn8y4wZSEOJVNOuJfJpyEfAhjyWnuPvNRSRLJi3GeAFfFN9p+p3SPe0BGKNa i87T8QS85X0OhEE2e1Ri/IZ/FXSnW5EY/NJGBuBsYeVA+5G1uaOgZzeIcravRSwhWJTS 81fhECSDgrVBLo9kTR5anetD92CFk9l89OQtzaTGf6YbY+JACcQTQVzWgEtBKfIEhPs/ rQmhCduBJQzVKL05lAuS8VD8AI/SHYvl6cid/aqA32X5Ne/I9tnSFRFFMFs3Kq4hVCc7 C7Ag== X-Gm-Message-State: APt69E1Bu8eRWvPBPiIbVIakgOW/7XPLa6bfksnYdQ932xXQlxUFODpG Gi70CZVOYPR5p4d9ftTESX9mDw== X-Received: by 2002:adf:84c2:: with SMTP id 60-v6mr15225189wrg.167.1529423512846; Tue, 19 Jun 2018 08:51:52 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id h11-v6sm2520wrs.85.2018.06.19.08.51.47 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id F0E743E0EC4; Tue, 19 Jun 2018 16:44:38 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:18 +0100 Message-Id: <20180619154435.18898-40-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::22c Subject: [Qemu-devel] [PULL 39/56] tests/tcg: enable building for mips64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, Yongbok Kim , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As before, using Debian SID compilers. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index fb465e729e..8fd4041716 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -75,6 +75,7 @@ docker-image-debian-hppa-cross: docker-image-debian-sid docker-image-debian-m68k-cross: docker-image-debian-sid docker-image-debian-sh4-cross: docker-image-debian-sid docker-image-debian-sparc64-cross: docker-image-debian-sid +docker-image-debian-mips64-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-mips64-cross.docker b/tests/docker/dockerfiles/debian-mips64-cross.docker new file mode 100644 index 0000000000..ed1ce0e919 --- /dev/null +++ b/tests/docker/dockerfiles/debian-mips64-cross.docker @@ -0,0 +1,12 @@ +# +# Docker cross-compiler target +# +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. +# +FROM qemu:debian-sid + +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt-get install -y --no-install-recommends \ + gcc-mips64-linux-gnuabi64 \ + libc6-dev-mips64-cross diff --git a/tests/tcg/mips/Makefile.include b/tests/tcg/mips/Makefile.include index a9beceb623..4a14fc078d 100644 --- a/tests/tcg/mips/Makefile.include +++ b/tests/tcg/mips/Makefile.include @@ -8,6 +8,9 @@ ifeq ($(TARGET_NAME),mips64el) DOCKER_IMAGE=debian-mips64el-cross DOCKER_CROSS_COMPILER=mips64el-linux-gnuabi64-gcc +else ifeq ($(TARGET_NAME),mips64) +DOCKER_IMAGE=debian-mips64-cross +DOCKER_CROSS_COMPILER=mips64-linux-gnuabi64-gcc else ifeq ($(TARGET_NAME),mipsel) DOCKER_IMAGE=debian-mipsel-cross DOCKER_CROSS_COMPILER=mipsel-linux-gnu-gcc From patchwork Tue Jun 19 15:44:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139192 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5394249lji; Tue, 19 Jun 2018 09:10:47 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKy9EXNVYtZoOm0RK16xWSTj7zp5nazigMmyRdoCJTKzKjXUdOdais2w2QPD/ztQfhu6xG0 X-Received: by 2002:aed:3c42:: with SMTP id u2-v6mr15667140qte.198.1529424647773; Tue, 19 Jun 2018 09:10:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424647; cv=none; d=google.com; s=arc-20160816; b=fCwcrStfymftuhr0u5lykDA6b8qmgJfo5OReW9Zi7cvzGdq6R9Uz0IXk06EJ3MQ++r F6gLyg8FHOZufWTiXEYK1rgYyDNahbb+LU47XgYz58YtSoQ0jWuWApMydUUzVYJAWz7r 2Bim2pK1TQPwr6Ju0e+u+k29rxFC2/4+IOB4ywBVl0SpUJbWr6hQN3FGBAip+WCAaPJ3 2TRn0KK7tvFiV3HGSu1TBDFf1IyZOPrlmctD613z10CC/T6UiHaDqTaq4O5VyVHRKBkQ VzViIdqRZcTdCTKKFEzSMF/Liim/08ZSqmB4ZaFCwOUf9U59oEpewSFulqOA7d88OcgS aSIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=FMaRKpZbxiupWBIPDH/+LH+3B3IIVv0+kaFyg9vGY9w=; b=YVGwC4EFprOrqGWSYjYay0NHv4R6oxxAUa5j1RRV61piifg0dYlX5urOMFsWLdQoRj GLS5n8NHUWGngkQzarifxwF19NAlO4V8mJUPNYBNKd0t/zU1eaVlK/0apUTFt0Vd3JsZ dghVAiVo02pOsaXxU3BN02mUBnmYhyyPG/T5WybpC/qxanijAKkIlGsrxNag7F9LtYHO 7st3QMCklLyfwdUm5KJ48zPjQSfTH8lhBbe+Br1oWtRBd9Z0wjGEmEgaksA2qvbc+WjZ 1I3wB2GK7zXC4oapOSwmVFB1mBl9mSLlK1SPrQ3eWxpr2YeRQqGrTsE/u4G/31vsG5XU AjHQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=ErajYPRg; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id e187-v6si43906qkb.358.2018.06.19.09.10.47 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:10:47 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=ErajYPRg; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43492 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJDT-0002x3-6L for patch@linaro.org; Tue, 19 Jun 2018 12:10:47 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39059) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvR-0004E7-GE for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvG-0001pj-9u for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:09 -0400 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:39348) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvF-0001oB-R1 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:58 -0400 Received: by mail-wm0-x236.google.com with SMTP id p11-v6so1346770wmc.4 for ; Tue, 19 Jun 2018 08:51:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FMaRKpZbxiupWBIPDH/+LH+3B3IIVv0+kaFyg9vGY9w=; b=ErajYPRgInNpLGTAcnk8FXJDSbp9Bj01MKLE6wggY0x4WfG/gCNAWsXAt5jfugKg11 2QH+53RtVRvyUojRWTVAkDyPEAI4Am4e/YBrG1ax7JkpGrjRalXZSL0Q39SKtNGducle nr7M83nnt4BXGVFU5/V1yISvx9jSg/xsovGqc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=FMaRKpZbxiupWBIPDH/+LH+3B3IIVv0+kaFyg9vGY9w=; b=Jy0CY6Ot6lwnYJjelhtFZBdyL6WqO6lnX6wu+L2tdbYoL1n0Z/pIzhHQuysu3KyMaL J5o3ybFaqvF7rWodVKlsbuEuxGhwLatuk2BD4gsufUtxeECLActsSTX8bi2PQVzoBedM F8ku9cnLX/NzwivaMiLBoxtwcV02vddxLnU2iK8N60qbsvYQ5OydSfNv7fOEmOnW5L/V 0TwNh2fYwF7iTgogToBy/UMkoTfmXRZajWBUeHZp4GjlUzVK4piOO87W5m4hFebo1OjP k76FT2A89gBJ7rWefhq7UatkTuVPMUId77m0dGq9cz8QhRnF7TmXaYMsiZwFsIJ5pAYF exvQ== X-Gm-Message-State: APt69E1Bh5fFTGzlQyEwm0MKlu0FV4o52kCnfaYVDauTTg4rvZ2DY4LH UPraXhMdvvMAUBFTdH+FqYC1TA== X-Received: by 2002:a1c:d2cb:: with SMTP id j194-v6mr11528653wmg.129.1529423516673; Tue, 19 Jun 2018 08:51:56 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id j131-v6sm517805wmb.35.2018.06.19.08.51.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:51 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 1314D3E08B3; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:19 +0100 Message-Id: <20180619154435.18898-41-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::236 Subject: [Qemu-devel] [PULL 40/56] tests/tcg: enable building for RISCV64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As before, using Debian SID compilers. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 8fd4041716..a680743ae8 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -76,6 +76,7 @@ docker-image-debian-m68k-cross: docker-image-debian-sid docker-image-debian-sh4-cross: docker-image-debian-sid docker-image-debian-sparc64-cross: docker-image-debian-sid docker-image-debian-mips64-cross: docker-image-debian-sid +docker-image-debian-riscv64-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-riscv64-cross.docker b/tests/docker/dockerfiles/debian-riscv64-cross.docker new file mode 100644 index 0000000000..2b2e64cee6 --- /dev/null +++ b/tests/docker/dockerfiles/debian-riscv64-cross.docker @@ -0,0 +1,12 @@ +# +# Docker cross-compiler target +# +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. +# +FROM qemu:debian-sid + +RUN DEBIAN_FRONTEND=noninteractive eatmydata \ + apt-get install -y --no-install-recommends \ + gcc-riscv64-linux-gnu \ + libc6-dev-riscv64-cross diff --git a/tests/tcg/riscv/Makefile.include b/tests/tcg/riscv/Makefile.include new file mode 100644 index 0000000000..d92ac6c89f --- /dev/null +++ b/tests/tcg/riscv/Makefile.include @@ -0,0 +1,10 @@ +# +# Makefile.include for all RISCV targets +# +# Debian only really cares about 64 bit going forward +# + +ifeq ($(TARGET_NAME),riscv64) +DOCKER_IMAGE=debian-riscv64-cross +DOCKER_CROSS_COMPILER=riscv64-linux-gnu-gcc +endif From patchwork Tue Jun 19 15:44:20 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139214 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5411982lji; Tue, 19 Jun 2018 09:26:41 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJuADLMyB9tEL7/r24yrFNrAMqM7RC9VhoUWziMAy04kAgpYGUK31/rfpQ2BhR76MoCwn/t X-Received: by 2002:a37:434c:: with SMTP id q73-v6mr14438511qka.339.1529425601326; Tue, 19 Jun 2018 09:26:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425601; cv=none; d=google.com; s=arc-20160816; b=drLCAt5Ap+zqauAU1nxmaVQobA/hhByKR/1tkM4t9A2zZihqZPuOKAMqdixYE21C1k QVnoq4BNJ6/t39jpRwvD6btF9VHo/1NS6iGkUMDk5pTrao10s+poGNG92EM1D+fN98b2 Lqp/bmhUcMXhKQ4ol//1zgHQ3IESQJcxwjnI6rpM+qLGXWaUWjOMqVU/C2lpH67jxI6d 4v5EcNxDtXk1Dit0lqQ+9gSwupK1cDAV1Yq0+eRGKbddm8KM193BJCDSHl1nj2vv1Xdo SpI0Xf3J/Ts4UCVSafJlJAesuL5Lk7Dr3tFNZpZicw6KuTE7x4jjwFdEJqbmOUhh0Y77 2XTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=lK3C7eefN/M5ARgLlVaJ1vI2dSg/CkCKjIFdrKykQNk=; b=s9c5gavF6guutmqV6HYb8hf+MKHdVCXJhKHDQUHtH7RnF/et0wGatT29ldCJuFZY8L rWVgF5qDAqpoi1X+VMPVjRb7k1cR/zJePQwh5BhbRkdqgilNlZ3IR2uuQOkDmk3ri3Km 8vMAWDXdbs6jjigOsRTOt/mkspWFG6mbXDBsUvAoLqU4KCSEOi+rTvWgXDFkDSweWz/y itJwFRf2GnyfosI+vn/t6TKOxuqpiKThg0WCoJxLvPer+KBV9k52JIofxQ8ue8u4ejdq /f8lH/Rpz4LT7DsNezXKyVqdVEI/4ASRPA1+6JyPq3sbhRDY528ef6BOZwrna641jKcr jA7Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="O/Xjqwc7"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id g7-v6si89770qvj.177.2018.06.19.09.26.41 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:26:41 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="O/Xjqwc7"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43615 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJSq-0007or-Ls for patch@linaro.org; Tue, 19 Jun 2018 12:26:40 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38921) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvM-0004Ai-0j for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvA-0001h3-KY for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:03 -0400 Received: from mail-wm0-x244.google.com ([2a00:1450:400c:c09::244]:37882) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIv7-0001cu-DH for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:52 -0400 Received: by mail-wm0-x244.google.com with SMTP id r125-v6so1376201wmg.2 for ; Tue, 19 Jun 2018 08:51:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=lK3C7eefN/M5ARgLlVaJ1vI2dSg/CkCKjIFdrKykQNk=; b=O/Xjqwc7FiurlWiL4oauMW10OG/8gQ6X4EVjMs78G7wc5TyJ/aR8wvIT6jGJxIhXO1 B/Ns4Xf+5CDG4VrpVBgaJAsYjcwKtsDKTUpLl1S/QOTaz0mS/g8N+CdG34+OieXPMagU H3IZiwJ8/cUHL4f1LlZM48yUG0Zb14NUiwOzM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=lK3C7eefN/M5ARgLlVaJ1vI2dSg/CkCKjIFdrKykQNk=; b=fKOPVUwuypuhA8Q+PAajBus2vdc3tgOI6/47e/VpGma0MxgK0aXRIextDLIfTG/VD2 glfD0nXaaPvsaQf7HXM4rLErDohLnz6S0g5UZ1Vm9ekBfUFdqHsHSN24/SC6nbNE1JmM NoFgBLAh36S77Q0EBvnDXfZwmnzXn5dp3PteiHatUJAEUoz4Oxvyb/8ULy98wqaa57Td QfLQu/AF/gmgLat4aZ8JSEmXpBdTjCuN/RxlxcOcVBPHIgR9mdB/hjfQBLAePIbCBPnH 3kyBe0eVLqQEMs/csIsTCQ3cUorKXbP4QL2WgJZoyhBIZRmMmZQU3jrI1YFgE7+lxFl3 AhLQ== X-Gm-Message-State: APt69E25RmkwEn43Yx4p4CVVrMR/+/orkANdafENSNSslkijuFpUYTxq P09Ty1c/iXeOLkFVHDlVwUuYemyv0Vw= X-Received: by 2002:a1c:f106:: with SMTP id p6-v6mr12206914wmh.68.1529423508182; Tue, 19 Jun 2018 08:51:48 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id i193-v6sm527885wmf.13.2018.06.19.08.51.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 2A9BF3E0EF2; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:20 +0100 Message-Id: <20180619154435.18898-42-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::244 Subject: [Qemu-devel] [PULL 41/56] docker: move debian-powerpc-cross to sid based build X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The original Jessie based cross builder hasn't worked for a while. The state of the libraries is still perilous for cross-building QEMU but we can use it for building TCG tests. The debian-apt-fake.sh script can also be dropped as it is no longer used. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index a680743ae8..87f449264f 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -47,8 +47,6 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker $(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\ "BUILD","$*") -docker-image-debian-powerpc-cross: EXTRA_FILES:=$(SRC_PATH)/tests/docker/dockerfiles/debian-apt-fake.sh - # Enforce dependencies for composite images docker-image-debian: docker-image-debian9 docker-image-debian8-mxe: docker-image-debian8 @@ -59,7 +57,6 @@ docker-image-debian-arm64-cross: docker-image-debian9 docker-image-debian-mips-cross: docker-image-debian9 docker-image-debian-mipsel-cross: docker-image-debian9 docker-image-debian-mips64el-cross: docker-image-debian9 -docker-image-debian-powerpc-cross: docker-image-debian8 docker-image-debian-ppc64el-cross: docker-image-debian9 docker-image-debian-s390x-cross: docker-image-debian9 docker-image-debian-win32-cross: docker-image-debian8-mxe @@ -77,6 +74,7 @@ docker-image-debian-sh4-cross: docker-image-debian-sid docker-image-debian-sparc64-cross: docker-image-debian-sid docker-image-debian-mips64-cross: docker-image-debian-sid docker-image-debian-riscv64-cross: docker-image-debian-sid +docker-image-debian-powerpc-cross: docker-image-debian-sid docker-image-travis: NOUSER=1 # Specialist build images, sometimes very limited tools diff --git a/tests/docker/dockerfiles/debian-apt-fake.sh b/tests/docker/dockerfiles/debian-apt-fake.sh deleted file mode 100755 index 2ec0fdf47a..0000000000 --- a/tests/docker/dockerfiles/debian-apt-fake.sh +++ /dev/null @@ -1,46 +0,0 @@ -#! /bin/sh -# -# Generate fake debian package to resolve unimportant unmet dependencies held -# by upstream multiarch broken packages. -# -# Copyright (c) 2017 Philippe Mathieu-Daudé -# -# This work is licensed under the terms of the GNU GPL, version 2 -# or (at your option) any later version. See the COPYING file in -# the top-level directory. - -test $1 = "install" && shift 1 - -fake_install() -{ - echo "Generating fake $2 $1 $3 ..." - (cd /var/cache/apt/archives - (cat << 'EOF' -Section: misc -Priority: optional -Standards-Version: 3.9.2 - -Package: NAME -Version: VERSION -Maintainer: qemu-devel@nongnu.org -Architecture: any -Multi-Arch: same -Description: fake NAME -EOF - ) | sed s/NAME/$2/g | sed s/VERSION/$3/g > $2.control - equivs-build -a $1 $2.control 1>/dev/null 2>/dev/null - dpkg -i --force-overwrite $2_$3_$1.deb - ) -} - -try_install() -{ - name=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\1/") - arch=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\2/") - vers=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\3/") - apt-get install -q -yy $1 || fake_install $arch $name $vers -} - -for package in $*; do - try_install $package -done diff --git a/tests/docker/dockerfiles/debian-powerpc-cross.docker b/tests/docker/dockerfiles/debian-powerpc-cross.docker index a5dd46b4ac..5e62ca0df1 100644 --- a/tests/docker/dockerfiles/debian-powerpc-cross.docker +++ b/tests/docker/dockerfiles/debian-powerpc-cross.docker @@ -1,40 +1,13 @@ # # Docker powerpc cross-compiler target # -# This docker target builds on the debian Jessie base image. +# This docker target builds on the debian sid base image which +# contains cross compilers for Debian "ports" targets. The original +# Jessie based no longer builds. # -FROM qemu:debian8 -MAINTAINER Philippe Mathieu-Daudé +FROM qemu:debian-sid -# Add the foreign architecture we want and install dependencies -RUN dpkg --add-architecture powerpc -RUN apt-get update RUN DEBIAN_FRONTEND=noninteractive eatmydata \ apt-get install -y --no-install-recommends \ - crossbuild-essential-powerpc - -# to fix "following packages have unmet dependencies" ... -ADD debian-apt-fake.sh /usr/local/bin/apt-fake -RUN apt-get install -y --no-install-recommends \ - equivs \ - pkg-config -RUN apt-fake install \ - pkg-config:powerpc=0.28-1.1-fake && \ - ln -s pkg-config /usr/bin/powerpc-linux-gnu-pkg-config -ENV PKG_CONFIG_PATH /usr/lib/powerpc-linux-gnu/pkgconfig -# - -# Specify the cross prefix for this image (see tests/docker/common.rc) -ENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc-linux-gnu- - -RUN DEBIAN_FRONTEND=noninteractive eatmydata \ - apt-get build-dep -yy -a powerpc qemu -RUN DEBIAN_FRONTEND=noninteractive \ - apt-get install -y --no-install-recommends \ - glusterfs-common:powerpc \ - libbz2-dev:powerpc \ - liblzo2-dev:powerpc \ - libncursesw5-dev:powerpc \ - libnfs-dev:powerpc \ - librdmacm-dev:powerpc \ - libsnappy-dev:powerpc + gcc-powerpc-linux-gnu \ + libc6-dev-powerpc-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; } diff --git a/tests/docker/dockerfiles/debian8.docker b/tests/docker/dockerfiles/debian8.docker index 1bcf2e3d2f..52945631cd 100644 --- a/tests/docker/dockerfiles/debian8.docker +++ b/tests/docker/dockerfiles/debian8.docker @@ -32,6 +32,3 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \ pkg-config \ python-minimal -# Setup Emdebian [emdebian-archive-keyring] -RUN echo "deb http://emdebian.org/tools/debian/ jessie main" > /etc/apt/sources.list.d/emdebian.list && \ - curl http://emdebian.org/tools/debian/emdebian-toolchain-archive.key | apt-key add - From patchwork Tue Jun 19 15:44:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139208 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5406823lji; Tue, 19 Jun 2018 09:21:51 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKRhJ42SzfJM4urk0LZA+/5TRjGjzStPD2Z/kIBfHXpJOO2Z3nspGWRen1n1bnmn/puIBYD X-Received: by 2002:a0c:8842:: with SMTP id 2-v6mr15063797qvm.117.1529425311583; Tue, 19 Jun 2018 09:21:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425311; cv=none; d=google.com; s=arc-20160816; b=s8svHugJ+nc6BV8QLrHnsKHPh3ecxWMMBg8ZBb9K8WLRMvEO4Wi2Rc0NwYobo8txYe NuxlV8IMRP52/wrwF1Q2MiHRTN79j2Up0AT0bVJHomWyeKoLGGmCFsymhKp8Jx/Otuf1 MwAx9v1ctt+KXUJIDUy42XlYin3Gsd4aEJm6QZF+fGftYZllk65SGxl/75Ad1xN2ugTR igVB4qoRGC3mS8ZghSM9UXCrhSRhRbInDMUcgn56NlIxSX63hGw8PS3u/q7uYNeypY7T LCtD/4XO4Qm2qaW05UPD3D+wc1IcPQ6rnv9cdWPiM7jXOzAhi7qkqEOqmMDxpP5VsqPD yISQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=bxImL4aXv+Koa6NopzgWaXK2ZsGPJGUjW6MUXzR3fTU=; b=R5OXIIZVATrZG48yxSzlr6JDZdCLtdg4j5fLe9MCLPADF9xy9DWo89ACVlG8Rz00Hn WK0Ourwk7xN8OwrpM4qAc0Ot7DGS7beolxcG6hs/2UWLpoUP/3R6AU3TuqLceHoIiMQQ l+wu721ni7u9gFedmKfQ74MM47Bp9t/i6JWIicECYF3AUzsaSiy0ep2hwksR78I8+vZY dYYesomwF6A0ybbpRJJhth3bK4jn/CUym6yr68Q+74P2oDoDW0BAU+LSXX+XJS/HF4Cy 8ixm7bUQUdVNenNzlah8PvAOsWtO910gTyvy1d/FMdqxSDBdBGFWvo74u8FqMNny4DEh lqHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=ComkUSDf; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id l32-v6si75855qte.317.2018.06.19.09.21.51 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:21:51 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=ComkUSDf; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43588 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJOA-0003UN-U2 for patch@linaro.org; Tue, 19 Jun 2018 12:21:50 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45959) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4t-0004Zi-SO for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4q-0007az-4j for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:55 -0400 Received: from mail-wm0-x243.google.com ([2a00:1450:400c:c09::243]:35063) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4p-0007af-UT for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:52 -0400 Received: by mail-wm0-x243.google.com with SMTP id j15-v6so1474829wme.0 for ; Tue, 19 Jun 2018 09:01:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=bxImL4aXv+Koa6NopzgWaXK2ZsGPJGUjW6MUXzR3fTU=; b=ComkUSDfR+QUHLu8+hOP+alMQO8Zn4a5FHSDoYV0shtSMxBVd+gLSX4O1V0ELY36w/ 7Di5epuF6iSApHZ1On5AICT+FDMMKVsE9VJ/gjF5bMo5DsPl5i5wOPLm0qHRAH+KTRhu VzOtDXG0h+MXCLjLoVihkmweJprt+eE42OKCw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=bxImL4aXv+Koa6NopzgWaXK2ZsGPJGUjW6MUXzR3fTU=; b=ZRLymR6qfeJf4IIt/c3Od8B6d1ddAYZIKji89RvOds935sCFlvX6eva5iVqiTnRVxX GYqUdfozP3NBPMsP0N2+FvlSREneEwqfEoDVcNuSpoVoC8CINiuicnGabwKcBjO7v6Fw vwkfqzuHC3P2vAIm6yj4NjzZZQclgdnKHtQs3/yhZMPmFvaVviyBt8kNztdKZXYxSnyZ jUKGndpH3/De1L0xCCc8M+0JUK0Hgwyxhdnfr/gG+Y7lC347OjSy8JXH/3gl+zpYTppq DIuwqoT4Q3BS0cZ2FBszMvUGyFRF78AdLere46L0/PWQ4ov/OrfhmVnHPJr2c466aSpx cxTQ== X-Gm-Message-State: APt69E0odoQi1eFu65AQB8KVhPDfNacmR7fNuhws8ssiDmYEVJAQZjdE vGzLA2z4pSR1uAP/HpA/Y8AQ8pUYbMA= X-Received: by 2002:a1c:448:: with SMTP id 69-v6mr13242041wme.31.1529424110793; Tue, 19 Jun 2018 09:01:50 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id p6-v6sm65921wrq.19.2018.06.19.09.01.46 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 4043A3E0F3C; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:21 +0100 Message-Id: <20180619154435.18898-43-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::243 Subject: [Qemu-devel] [PULL 42/56] tests/tcg: enable building for PowerPC X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Now we have restored debian-image-powerpc-cross using Debian SID compilers we can build for 32 bit powerpc. Although PPC32 supports a range of pages sizes currently only 4k works so the others are commented out for now. We can also merge the ppc64 support under the base architecture directory to avoid too much proliferation of directories. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - new for v5 -- 2.17.1 diff --git a/tests/tcg/ppc/Makefile.include b/tests/tcg/ppc/Makefile.include new file mode 100644 index 0000000000..b062c30dd3 --- /dev/null +++ b/tests/tcg/ppc/Makefile.include @@ -0,0 +1,7 @@ +ifeq ($(TARGET_NAME),ppc) +DOCKER_IMAGE=debian-powerpc-cross +DOCKER_CROSS_COMPILER=powerpc-linux-gnu-gcc +else ifeq ($(TARGET_NAME),ppc64le) +DOCKER_IMAGE=debian-ppc64el-cross +DOCKER_CROSS_COMPILER=powerpc64le-linux-gnu-gcc +endif diff --git a/tests/tcg/ppc/Makefile.target b/tests/tcg/ppc/Makefile.target new file mode 100644 index 0000000000..f5e08c7376 --- /dev/null +++ b/tests/tcg/ppc/Makefile.target @@ -0,0 +1,12 @@ +# -*- Mode: makefile -*- +# +# PPC - included from tests/tcg/Makefile +# + +ifneq (,$(findstring 64,$(TARGET_NAME))) +# On PPC64 Linux can be configured with 4k (default) or 64k pages (currently broken) +EXTRA_RUNS+=run-test-mmap-4096 #run-test-mmap-65536 +else +# On PPC32 Linux supports 4K/16K/64K/256K (but currently only 4k works) +EXTRA_RUNS+=run-test-mmap-4096 #run-test-mmap-16384 run-test-mmap-65536 run-test-mmap-262144 +endif diff --git a/tests/tcg/ppc64le/Makefile.include b/tests/tcg/ppc64le/Makefile.include deleted file mode 100644 index d71cfc9aa7..0000000000 --- a/tests/tcg/ppc64le/Makefile.include +++ /dev/null @@ -1,2 +0,0 @@ -DOCKER_IMAGE=debian-ppc64el-cross -DOCKER_CROSS_COMPILER=powerpc64le-linux-gnu-gcc From patchwork Tue Jun 19 15:44:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139193 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5394731lji; Tue, 19 Jun 2018 09:11:10 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJ9zYiA9fvPGGv3Yonqsnj51NyKtvnMoCevGHCII8TaCBmyyP0ulCVG3f8WJ6I8YJR9W3il X-Received: by 2002:a0c:e84d:: with SMTP id l13-v6mr15138373qvo.55.1529424670205; Tue, 19 Jun 2018 09:11:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424670; cv=none; d=google.com; s=arc-20160816; b=malx8Rk2nLymNGUz0jyvpDRqJcM3qOmBB5q2FjKRCq9xWDOUXes/xoHYcPt4rNdShb NFRRRiH93LXo1NbFtkCZ+LYzvNKNKhGtqM1Pt6+VKELyzvLpcPoY7ejZD2pho7cFuggI ajX70HRU0z6zPLP0I+H4jnqcM+xLAf2SMxIAsakf7cdK2KDLo+V7ZTqN8vy/RpDt3K2b jr1DnORfP9V+KHgtE63sRDJcrCHitSmWf0thBrT5f4RBfnjJa2uhPhbasUgo0H+wxTDu 0V7UXrCUwlEJq0Xofl1YxM/sP6a29kiX9/eqEwUQHw1s05eeWA1PO2zNGYuxNhhRzcAF 02Fw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=yx3yU74Gh4wQna8tUgTc+AoQS1s4fDXeI5WWQoHhLhQ=; b=jxkLEzTO66EqmX9AD/IbsExq4sWbRL8EElZ3aCduYZeY2lmilvYFC68huP1l38PLF/ TjY4TARUrxLmio6gWynjQchajvZntutIPVNY6rTQT+Tb/IZEIojcaeYrwWwJVqu5xq4q a6cJAdOE7KXGlEnHRLHjwIh/0E+doa2kwtCF/5b4V0Vu6ot10BfIi90plTcLW0g+JxbV PYR1rYm/fXVR7y4iuoYIKHt3wSfOYFlOH55MDbuFyuQmbu77A1yjTR3tKJsSTy81C7iw Qx/NR/4ZDr5R9DWlS49X658Jor3On4Tk1QmD6KKV+dnGwakn8zqFtuQJmKXmEOPUwEq1 aoIg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=eyi53e3A; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id m6-v6si41087qkb.400.2018.06.19.09.11.10 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:11:10 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=eyi53e3A; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43488 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJDp-0002JX-KU for patch@linaro.org; Tue, 19 Jun 2018 12:11:09 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38920) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvL-0004Ag-W8 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvA-0001hO-Jj for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:03 -0400 Received: from mail-wr0-x241.google.com ([2a00:1450:400c:c0c::241]:43776) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIv9-0001dt-3D for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:52 -0400 Received: by mail-wr0-x241.google.com with SMTP id d2-v6so156267wrm.10 for ; Tue, 19 Jun 2018 08:51:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=yx3yU74Gh4wQna8tUgTc+AoQS1s4fDXeI5WWQoHhLhQ=; b=eyi53e3Ainm3XUa+NsT+0ZG2BRcykkAJ8oiQf32HU6bn2rece8oeCjR4UHLdXI3ym1 t6IEf6DgNzQExmzjHjOUNjBENFWkoVHTNaEBkrkb2Uo3EKiZuIWLebvGkk2ednlQLqnl d9Q+jZXN9C4CO6xSmlfiW5wkOPQ+NA2lGDoLA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=yx3yU74Gh4wQna8tUgTc+AoQS1s4fDXeI5WWQoHhLhQ=; b=pWta0nWGfJkCHDH93q2NhrQzfsbZ3wQvh+2bwVzdUWfSE5Yebu3Z2yHMuDJ+CLFYt9 rf78NsKrA3/chalNGmPuHhqxQdF5oL2kf+69pwPO815biXC3IfY3MUq7V5EHu6fiUZvo TkJyVVNXgW74gLb2v+xJpB7MXOeboxNiYx1lcLU6jwpWhBNPjSWRWObtcbxGqfUpL7Cf INg5wibKSarvIh9vomvmRxLBfAJIGXaJzl3Uxq2pUe6n2w3DqtV4ddSZ2duaXbFW4Ica lIE3it1mbgFLmwRhdSLpZvl657pIjozjFnCQmvnvaZ1Q1k+o8f6zOv56j5uiLR75pYVr ZoTA== X-Gm-Message-State: APt69E3lXjqziRAsqZAg77VDxX/RzSjyGOpbifJm6ly9JkRTCEOb78j2 g+vniRqmSRsBp2kiaBb8X0gd7A== X-Received: by 2002:adf:8610:: with SMTP id 16-v6mr14353899wrv.255.1529423509958; Tue, 19 Jun 2018 08:51:49 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id j21-v6sm190950wme.36.2018.06.19.08.51.48 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 553D53E0F6C; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:22 +0100 Message-Id: <20180619154435.18898-44-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::241 Subject: [Qemu-devel] [PULL 43/56] tests/tcg/Makefile: update to be called from Makefile.target X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This make is now invoked from each individual target make with the appropriate CC and EXTRA_CFLAGS set for each guest. It then includes additional Makefile.targets from: - tests/tcg/multiarch (always) - tests/tcg/$(TARGET_BASE_ARCH) (if available) - tests/tcg/$(TARGET_NAME) The order is important as the later Makefile's may want to suppress TESTS from its base arch profile. Each included Makefile.target is responsible for adding TESTS as well as defining any special build instructions for individual tests. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v2 - cleaner approach to include sub makefiles - move TESTS/VPATH manipulation into sub-makefile - avoid double inclusion when TARGET_BASE_ARCH==TARGET_NAME v4 - add timeout to default runner - clean-up comments about build flags - update to handle BUILD_STATIC - add MAINTAINERS entry v5 - support EXTRA_RUNS for run variants v6 - extend timeout for DEBUG_TCG v7 - add f4bug to as a reviewer -- 2.17.1 diff --git a/MAINTAINERS b/MAINTAINERS index c4fc6fa357..aea5788c1d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2150,6 +2150,12 @@ W: https://travis-ci.org/qemu/qemu W: https://app.shippable.com/github/qemu/qemu W: http://patchew.org/QEMU/ +Guest Test Compilation Support +M: Alex Bennée +R: Philippe Mathieu-Daudé +F: tests/tcg/Makefile +L: qemu-devel@nongnu.org + Documentation ------------- Build system architecture diff --git a/tests/tcg/Makefile b/tests/tcg/Makefile index e12395117a..e7dbcdb5bf 100644 --- a/tests/tcg/Makefile +++ b/tests/tcg/Makefile @@ -1,125 +1,94 @@ +# -*- Mode: makefile -*- +# +# TCG tests +# +# These are complicated by the fact we want to build them for guest +# systems. This requires knowing what guests we are building and which +# ones we have cross-compilers for or docker images with +# cross-compilers. +# +# The tests themselves should be as minimal as possible as +# cross-compilers don't always have a large amount of libraries +# available. +# +# We only include the host build system for SRC_PATH and we don't +# bother with the common rules.mk. We expect the following: +# +# CC - the C compiler command +# EXTRA_CFLAGS - any extra CFLAGS +# BUILD_STATIC - are we building static binaries +# +# By default all tests are statically compiled but some host systems +# may not package static libraries by default. If an external +# cross-compiler can only build dynamic libraries the user might need +# to make extra efforts to ensure ld.so can link at runtime when the +# tests are run. +# +# We also accept SPEED=slow to enable slower running tests +# +# We also expect to be in the tests build dir for the FOO-linux-user. +# + -include ../../config-host.mak --include $(SRC_PATH)/rules.mak +-include ../config-target.mak -$(call set-vpath, $(SRC_PATH)/tests/tcg) +quiet-command = $(if $(V),$1,$(if $(2),@printf " %-7s %s\n" $2 $3 && $1, @$1)) -QEMU=../../i386-linux-user/qemu-i386 -QEMU_X86_64=../../x86_64-linux-user/qemu-x86_64 -CC_X86_64=$(CC_I386) -m64 +# Tests we are building +TESTS= -QEMU_INCLUDES += -I../.. -CFLAGS=-Wall -O2 -g -fno-strict-aliasing -#CFLAGS+=-msse2 +# Start with a blank slate, the build targets get to add stuff first +CFLAGS= +QEMU_CFLAGS= LDFLAGS= -# TODO: automatically detect ARM and MIPS compilers, and run those too - -# runcom maps page 0, so it requires root privileges -# also, pi_10.com runs indefinitely - -I386_TESTS=hello-i386 \ - sha1-i386 \ - test-i386 \ - test-i386-fprem \ - # runcom +# The QEMU for this TARGET +QEMU=../qemu-$(TARGET_NAME) -# native i386 compilers sometimes are not biarch. assume cross-compilers are -ifneq ($(ARCH),i386) -I386_TESTS+=run-test-x86_64 +# If TCG debugging is enabled things are a lot slower +ifeq ($(CONFIG_DEBUG_TCG),y) +TIMEOUT=45 +else +TIMEOUT=15 endif -TESTS = test_path -ifneq ($(call find-in-path, $(CC_I386)),) -TESTS += $(I386_TESTS) +# The order we include is important. We include multiarch, base arch +# and finally arch if it's not the same as base arch. +-include $(SRC_PATH)/tests/tcg/multiarch/Makefile.target +-include $(SRC_PATH)/tests/tcg/$(TARGET_BASE_ARCH)/Makefile.target +ifneq ($(TARGET_BASE_ARCH),$(TARGET_NAME)) +-include $(SRC_PATH)/tests/tcg/$(TARGET_NAME)/Makefile.target endif -all: $(patsubst %,run-%,$(TESTS)) -test: all - -# rules to run tests - -.PHONY: $(patsubst %,run-%,$(TESTS)) - -run-%: % - -$(QEMU) ./$* - -run-hello-i386: hello-i386 -run-sha1-i386: sha1-i386 - -run-test-i386: test-i386 - ./test-i386 > test-i386.ref - -$(QEMU) test-i386 > test-i386.out - @if diff -u test-i386.ref test-i386.out ; then echo "Auto Test OK"; fi - -run-test-i386-fprem: test-i386-fprem - ./test-i386-fprem > test-i386-fprem.ref - -$(QEMU) test-i386-fprem > test-i386-fprem.out - @if diff -u test-i386-fprem.ref test-i386-fprem.out ; then echo "Auto Test OK"; fi - -run-test-x86_64: test-x86_64 - ./test-x86_64 > test-x86_64.ref - -$(QEMU_X86_64) test-x86_64 > test-x86_64.out - @if diff -u test-x86_64.ref test-x86_64.out ; then echo "Auto Test OK"; fi - - -run-runcom: runcom - -$(QEMU) ./runcom $(SRC_PATH)/tests/pi_10.com - -run-test_path: test_path - ./test_path - -# rules to compile tests - -hello-i386: hello-i386.c - $(CC_I386) -nostdlib $(CFLAGS) -static $(LDFLAGS) -o $@ $< - strip $@ - -# i386/x86_64 emulation test (test various opcodes) */ -test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S \ - test-i386.h test-i386-shift.h test-i386-muldiv.h - $(CC_I386) $(QEMU_INCLUDES) $(CFLAGS) $(LDFLAGS) -o $@ \ - $( $<.out, \ + "TEST", "$< on $(TARGET_NAME)") -# testsuite for the LM32 port. -test-lm32: - $(MAKE) -C lm32 check +.PHONY: run +run: $(RUN_TESTS) -clean: - rm -f *~ *.o test-i386.out test-i386.ref \ - test-x86_64.log test-x86_64.ref qruncom $(TESTS) +# There is no clean target, the calling make just rm's the tests build dir From patchwork Tue Jun 19 15:44:23 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139218 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5421245lji; Tue, 19 Jun 2018 09:34:57 -0700 (PDT) X-Google-Smtp-Source: ADUXVKI+cvT6D+FPYTxeZNHJptveomZ6M26+FcINhr9cOln50dHIGRUUa70JfVFzNHyizYZvkBmY X-Received: by 2002:a0c:8842:: with SMTP id 2-v6mr15111188qvm.117.1529426097201; Tue, 19 Jun 2018 09:34:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426097; cv=none; d=google.com; s=arc-20160816; b=gAcbAEdcr/d0SbEEmCEXx5Ptdykjt9RpfPQ97xNpltJdTs8RoJ5wsI2zkOU1oOxmc6 I4f2suvs4xWhn2aCB5CKD8zfyJKIArHEv9cHMQ1yEi/FHbe4zhXvHhzWwJjVui35FdPW 5jix35BKPPXhCJ3BwXLhJqDZaAwCIBLbDaPbDFaRt02dqQwyj0PeE9jiePhWe5NCRI3u /GjALRETv1awomehDLdBoHeAGRPH6f4xA3HLWLm6lwDNiXS2zuRitssPTKdKSEAee8uu NOfPEL5NXqxeSFbFK3lbIqpnu2SmbEcjZzta5qE4CXBufHtovLgSdsSDqgAc49ETR98F SnLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=I8wfM/vHuXOzNmMIA7AsHbNeMhmiWzhCdMtbqSJIMp4=; b=bowpF4GO1jUUwe/l3Z9B7VKkVrExRL+Fm97AwC8r3VJq4gfa+6nuAsi39OEVLIzKxI W5wdAVreuz1rvNAtmUEIeMD46nfyV1ypF7D6rxIs82AHipfwkyKjtW7vuedE8u/DT2MX SvHfChxN9qqjUYkaZQZ5vMvOyL+lCru1bx7Em5/LHpVTQJ96qh+MfxFzX7iKIN1zGImT OD+/WymZ99G70zTQne7Rwc3Cn3dFjnOFsayeKDfQ80TMm0UIN6K248bxRGkDYEK9CSRE GpMYz92bCHJB0Ka8Qw5LBLTzGo0gH3HQfcOpsueB/z53APhGh6khWv232NDqt47zxkR+ wtYg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=R8tXkzm2; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id j23-v6si129048qta.117.2018.06.19.09.34.57 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:34:57 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=R8tXkzm2; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43681 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJaq-0004YP-Eg for patch@linaro.org; Tue, 19 Jun 2018 12:34:56 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51329) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJOB-0003rF-Fb for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJO8-0007FE-9h for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:51 -0400 Received: from mail-wm0-x243.google.com ([2a00:1450:400c:c09::243]:40829) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJO8-0007Dq-0q for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:21:48 -0400 Received: by mail-wm0-x243.google.com with SMTP id n5-v6so1519796wmc.5 for ; Tue, 19 Jun 2018 09:21:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=I8wfM/vHuXOzNmMIA7AsHbNeMhmiWzhCdMtbqSJIMp4=; b=R8tXkzm2pPair8qtOJWbHUt17yTLhHtH+J71ZdrpilZoyALoffRUf0HwsV46UqS32D p6pHHnIW20ivWDqIMdBtax2eaBMLg2Yx4hlB3t6fgRX5IWULZcl505/TVTdChYF1LD0P 4upx7SMgpjLuuIWvwvjIVnQ3XhmFeJZXvocSI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=I8wfM/vHuXOzNmMIA7AsHbNeMhmiWzhCdMtbqSJIMp4=; b=dP3orAdOc1WlUhoeIItlzqtRlcUFJIqCyZfRjG8zkGG113VAGITEvisZWOzEmcp7UT 54hD4nuJTLdUZB1CDy3MnOIQ5uyDjT6Ii7gEYbesU5iEi/LFplErOCmHUmGnXBLwsATh TBXAAi9ifJpFCRt6/QO3M9gjJVyIQHvV0Aio5sLar5EdJEyd33/HEr4ehMSDchJtuq8X ypSN2UtCZl0J7oT1kWnuU7s1g2PMbj5dFEZcHs3rdVuVwCTrY744M2/af48H+uq3CI+O RFrhP0XvT3YIZNRr6N+QMJ8cy5ad6i8Y4I5/m94+jV+5oF9UBBZAR56qlurH4u1pG6PC eBaA== X-Gm-Message-State: APt69E0/Iuaxk3xzeuLDNaX+C/m6qqLvDK2O3KWyVsJrWsj03ZuVHjU4 ioP39L15Bu1HQloqH4V+oeK8jw== X-Received: by 2002:a1c:6fce:: with SMTP id c75-v6mr12027833wmi.83.1529425306917; Tue, 19 Jun 2018 09:21:46 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id b8-v6sm99888wrp.50.2018.06.19.09.21.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:21:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 6B2083E0F8C; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:23 +0100 Message-Id: <20180619154435.18898-45-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::243 Subject: [Qemu-devel] [PULL 44/56] Makefile.target: add (clean-/build-)guest-tests targets X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Now all the build infrastructure is in place we can build tests for each guest that we support. That support mainly depends on having cross compilers installed or docker setup. To keep all the logic for that together we put the rules in tests/tcg/Makefile.include and include it from the main Makefile.target. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v4 - pulled Makefile.include bits from next patch - added qemu-$(TARGET_NAME) dependency for running tests - accept SPEED parameter to run slow tests - pass BUILD_STATIC - update MAINTAINERS v6 - bare make -> $(MAKE) for sub-makes v7 - fixed spelling - shorten CROSS-BUILD to BUILD and RUN-TESTS to RUN with additional info to the right. -- 2.17.1 diff --git a/MAINTAINERS b/MAINTAINERS index aea5788c1d..2a4a7e0e0e 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2154,6 +2154,7 @@ Guest Test Compilation Support M: Alex Bennée R: Philippe Mathieu-Daudé F: tests/tcg/Makefile +F: tests/tcg/Makefile.include L: qemu-devel@nongnu.org Documentation diff --git a/Makefile.target b/Makefile.target index dad2cf8778..a9d8928f96 100644 --- a/Makefile.target +++ b/Makefile.target @@ -36,6 +36,11 @@ endif PROGS=$(QEMU_PROG) $(QEMU_PROGW) STPFILES= +# Makefile Tests +ifdef CONFIG_USER_ONLY +include $(SRC_PATH)/tests/tcg/Makefile.include +endif + config-target.h: config-target.h-timestamp config-target.h-timestamp: config-target.mak diff --git a/tests/tcg/Makefile.include b/tests/tcg/Makefile.include new file mode 100644 index 0000000000..57470b2a2c --- /dev/null +++ b/tests/tcg/Makefile.include @@ -0,0 +1,88 @@ +# -*- Mode: makefile -*- +# +# TCG tests (per-target rules) +# +# This Makefile fragement is included from the per-target +# Makefile.target so will be invoked for each linux-user program we +# build. We have two options for compiling, either using a configured +# guest compiler or calling one of our docker images to do it for us. +# + +# The per ARCH makefile, if it exists, holds extra information about +# useful docker images or alternative compiler flags. + +-include $(SRC_PATH)/tests/tcg/$(TARGET_BASE_ARCH)/Makefile.include +-include $(SRC_PATH)/tests/tcg/$(TARGET_NAME)/Makefile.include + +GUEST_BUILD= +TCG_MAKE=$(SRC_PATH)/tests/tcg/Makefile +# Support installed Cross Compilers + +ifdef CROSS_CC_GUEST + +.PHONY: cross-build-guest-tests +cross-build-guest-tests: + $(call quiet-command, \ + (mkdir -p tests && cd tests && \ + $(MAKE) -f $(TCG_MAKE) CC=$(CROSS_CC_GUEST) \ + BUILD_STATIC=$(CROSS_CC_GUEST_STATIC) \ + EXTRA_CFLAGS=$(CROSS_CC_GUEST_CFLAGS)), \ + "BUILD","$(TARGET_NAME) guest-tests with $(CROSS_CC_GUEST)") + +GUEST_BUILD=cross-build-guest-tests + +endif + +# Support building with Docker + +ifeq ($(HAVE_USER_DOCKER)$(GUEST_BUILD),y) +ifneq ($(DOCKER_IMAGE),) + +# We also need the Docker make rules to depend on +include $(SRC_PATH)/tests/docker/Makefile.include + +DOCKER_COMPILE_CMD="$(DOCKER_SCRIPT) cc --user $(shell id -u) \ + --cc $(DOCKER_CROSS_COMPILER) \ + -i qemu:$(DOCKER_IMAGE) \ + -s $(SRC_PATH) -- " +DOCKER_PREREQ=docker-image-$(DOCKER_IMAGE) + +.PHONY: docker-build-guest-tests +docker-build-guest-tests: $(DOCKER_PREREQ) + $(call quiet-command, \ + (mkdir -p tests && cd tests && \ + $(MAKE) -f $(TCG_MAKE) CC=$(DOCKER_COMPILE_CMD) \ + BUILD_STATIC=y \ + EXTRA_CFLAGS=$(DOCKER_CROSS_COMPILER_CFLAGS)), \ + "BUILD","$(TARGET_NAME) guest-tests with docker qemu:$(DOCKER_IMAGE)") + +GUEST_BUILD=docker-build-guest-tests + +endif +endif + +# Final targets +.PHONY: guest-tests + +ifneq ($(GUEST_BUILD),) +guest-tests: $(GUEST_BUILD) + +run-guest-tests: guest-tests qemu-$(TARGET_NAME) + $(call quiet-command, \ + (cd tests && $(MAKE) -f $(TCG_MAKE) SPEED=$(SPEED) run), \ + "RUN", "tests for $(TARGET_NAME)") + +else +guest-tests: + $(call quiet-command, /bin/true, "BUILD", \ + "$(TARGET_NAME) guest-tests SKIPPED") + +run-guest-tests: + $(call quiet-command, /bin/true, "RUN", \ + "tests for $(TARGET_NAME) SKIPPED") +endif + +# It doesn't matter if these don't exits +.PHONY: clean-guest-tests +clean-guest-tests: + rm -rf tests || echo "no $(TARGET_NAME) tests to remove" From patchwork Tue Jun 19 15:44:24 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139234 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5435894lji; Tue, 19 Jun 2018 09:48:09 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJ2p5YqiUFuOsgbqeJDvJgFOcA8/nXZKjfuv4QTTk+Fxppmas6jn7mmFxkZVT6d1nakRQqD X-Received: by 2002:ac8:2351:: with SMTP id b17-v6mr15265959qtb.304.1529426888977; Tue, 19 Jun 2018 09:48:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426888; cv=none; d=google.com; s=arc-20160816; b=A/T/0wERLqeAk4QcB1ddA1Wp7XHCfdxdexiiVV9xplfuZd0YZEH0QJ60r4YfuwxTD6 0gHokusXCLrPexA+h2mzG3vdWT3yo5gs5aHVaDHJs4xyw9dg8WdmIjZCPOGw5hpNi6Mk e3ulr7zldhM0WA0jfuHG3Zd5g5CZ1lyrE1zGkAd3lstw179EQhF3yxEb6Vt0A7AMNOxk mzh1HZ2SxwwIHDBgYLByFTh8nUSKeMbmSbFWZrUZIbEwfzYfOJdoMz9Pi2bOoofExcGV 2t3FGB6feBBLYgFYzntb13vqTZy07a7VQOfktDcECvMUMmEFpr8ViEnM5B4X4mu7xBBV 6+lg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=1694YoLsGAyvd4o41Pu94nlGIy1DjzJN4c91JwOL9eo=; b=Zj0eMEIJCRQlLqO29LExUvxJpxT6y7AJVh6BLpdr37qnr1+0ozkrjROcjhHsx1MUg7 9k8Qr+U9NP5armqr0d6HQ5w+sAiEB/nuPmdyIn5wWURT0PCdpb86BwZo8g5ASEirQQdN DCbN1OILVye6kTvVGcd9BalJGw2wDQwH82KI0YtY3CZg8VSpBf84EQj8jZFgMgNzhc0j VJ4YgAI62dTPgtqxgXC7+CVDqFt7d33ZdLGlZPTQvxe+lSrjABcHACIPZvKyD7M0mJbI BY34eazv8O08qeVeEnESlEmBnOMJTMX6VgQAikQi15Iog0Fr11Bwmbvolyqx9G5KfNdX BVjA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=WeywwNzZ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id s8-v6si170095qta.56.2018.06.19.09.48.08 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:48:08 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=WeywwNzZ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43799 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJnc-0006pX-Gd for patch@linaro.org; Tue, 19 Jun 2018 12:48:08 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46030) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4z-0004dq-7r for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4t-0007cu-DC for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:01 -0400 Received: from mail-wr0-x22a.google.com ([2a00:1450:400c:c0c::22a]:42245) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4t-0007cZ-6D for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:55 -0400 Received: by mail-wr0-x22a.google.com with SMTP id w10-v6so197033wrk.9 for ; Tue, 19 Jun 2018 09:01:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1694YoLsGAyvd4o41Pu94nlGIy1DjzJN4c91JwOL9eo=; b=WeywwNzZCq1f4HhObDiq225TdaNiy3ER8+wjr1WL8V9MNJu17vyVa6/ADPgGKItr66 oeNKdSKvwUT/3JBOWS1ZRUy8vPmoq+wSyidU4aT6AkIUmPkyEYfi9pw8XJfGleKAzDJj SBAd8TuF/twvjamyJq6UUeJbsfVNVw7RnuLY4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=1694YoLsGAyvd4o41Pu94nlGIy1DjzJN4c91JwOL9eo=; b=PJgpDZWrtZa2UNY5RVDXPJDIK9s/IJte6V/98Ps8bZmdizSXHk6FB+8uo7FzA8hnl+ RZZuGEJY0/KiQrlGnY5dXBvsYVZsBOasTQ6brH6tHdFJ8d9a2ReR9AI1sU1TTrwY4g+t NSM0hB9zhYc39hyf7PiuaTPxDdy4JfA3V2A6wnfm7gSlDW71O7j2uepixB1yBm+sAvLc fQXcxMnM2P8tkYlsfw7ty7EypTeux9Mg9QBQPXBBKIG7Ufg5qZx2UYmzmSfXne3MwbuG L7MSunf7uPWr8CmqknszvPZJZKT8codd5vgOcmNjhz/woJaj8I+o/eA+UJRRjFI+krXy lqlQ== X-Gm-Message-State: APt69E3+pR7e4raqkmWVkpguRMUn0gIw+76Ro07cYLQK6zJviRjJG1ck m8V4YLj/bL1OkVzC0z2a1nZPMw== X-Received: by 2002:adf:9d02:: with SMTP id k2-v6mr14360030wre.213.1529424113989; Tue, 19 Jun 2018 09:01:53 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id p6-v6sm65972wrq.19.2018.06.19.09.01.47 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 7E0CB3E0FA9; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:24 +0100 Message-Id: <20180619154435.18898-46-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::22a Subject: [Qemu-devel] [PULL 45/56] tests/Makefile.include: add [build|clean|check]-tcg targets X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This will ensure all linux-user targets build their guest test programs and ensure check-tcg will run the respective tests. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v2 - use -include instead of complex macro stuff - also include TARGET_BASE_ARCH/Makefile v3 - add build-tcg, make check-tcg actually run tests -- 2.17.1 diff --git a/tests/Makefile.include b/tests/Makefile.include index ca91da26cb..c8faa01a33 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -10,6 +10,7 @@ check-help: @echo " $(MAKE) check-speed Run qobject speed tests" @echo " $(MAKE) check-qapi-schema Run QAPI schema tests" @echo " $(MAKE) check-block Run block tests" + @echo " $(MAKE) check-tcg Run TCG tests" @echo " $(MAKE) check-report.html Generates an HTML test report" @echo " $(MAKE) check-clean Clean the tests" @echo @@ -930,6 +931,30 @@ check-report.xml: $(patsubst %,check-report-qtest-%.xml, $(QTEST_TARGETS)) check check-report.html: check-report.xml $(call quiet-command,gtester-report $< > $@,"GEN","$@") +# Per guest TCG tests + +LINUX_USER_TARGETS=$(filter %-linux-user,$(TARGET_LIST)) +BUILD_TCG_TARGET_RULES=$(patsubst %,build-tcg-tests-%, $(LINUX_USER_TARGETS)) +CLEAN_TCG_TARGET_RULES=$(patsubst %,clean-tcg-tests-%, $(LINUX_USER_TARGETS)) +RUN_TCG_TARGET_RULES=$(patsubst %,run-tcg-tests-%, $(LINUX_USER_TARGETS)) + +build-tcg-tests-%: + $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" guest-tests,) + +run-tcg-tests-%: build-tcg-tests-% + $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" run-guest-tests,) + +clean-tcg-tests-%: + $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" clean-guest-tests,) + +.PHONY: build-tcg +build-tcg: $(BUILD_TCG_TARGET_RULES) + +.PHONY: check-tcg +check-tcg: $(RUN_TCG_TARGET_RULES) + +.PHONY: clean-tcg +clean-tcg: $(CLEAN_TCG_TARGET_RULES) # Other tests @@ -972,7 +997,6 @@ check-speed: $(patsubst %,check-%, $(check-speed-y)) check-block: $(patsubst %,check-%, $(check-block-y)) check: check-qapi-schema check-unit check-qtest check-decodetree check-clean: - $(MAKE) -C tests/tcg clean rm -rf $(check-unit-y) tests/*.o $(QEMU_IOTESTS_HELPERS-y) rm -rf $(sort $(foreach target,$(SYSEMU_TARGET_LIST), $(check-qtest-$(target)-y)) $(check-qtest-generic-y)) rm -f tests/test-qapi-gen-timestamp From patchwork Tue Jun 19 15:44:25 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139213 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5410026lji; Tue, 19 Jun 2018 09:24:50 -0700 (PDT) X-Google-Smtp-Source: ADUXVKL5Mnu/fRO/XLtJMPLi+Y8LgBEqyBwo6HrUt3PtO1IYBX62rzXhHZHBeoGHhnV1p2Fn/I4u X-Received: by 2002:ac8:281:: with SMTP id p1-v6mr15827010qtg.274.1529425490320; Tue, 19 Jun 2018 09:24:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425490; cv=none; d=google.com; s=arc-20160816; b=o4UCzJ+kuLEK0YvmllCj4VTEiWIcOcUad3OCevFzDmzNlB8wxAUD/+45M0F6Tc5UI9 3j9KPFLceOpDLzw3qjh5J+wg3zepzXiBlPvNJS2G0nL7zN0dNW4mD7TuoGuFRfFTD6K/ n1XyP56PnguxoHlU+gRSnL5Uul2YTFasCSej88agYWPMgLCwRG/PQzvZUtgqTwJPBUBa 0pb2QhN4McQIXrML3bHIC4ediemYAJKeS9PiVkv1tHx9BlAWGuVWvsxMOtUplaqFUk6j q6cJP1BEHz9aZNLd61yl45GUpclOjzcXJ3aYXnJ77u9djvZ6+rCUqEsH+XEnNfjWghkS ejEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=BJdJzDkjcl0zIXjcW2r0b/g6OgOf6EdG+dfqirQG5js=; b=QqFzMimXA6l1BvjT/8oHLXQb2enlMcmRKtejJDacle+YuBC+UQ1MDBp+DsGODD3Qq3 7DBbHUgbJWR61hhw4LnEQMCrI+Ow1tNo2E2OrixMgTyTFLzjuQvzrcu8BLHIevPZT5bk MKU9+HKZx+3IX2WXbEF/+UaYRhBJ+JFXdqxbyAhKgFa0AdXC+SItehwKWxqz5eaZNCw0 waExpp8SDzT9X941CnOvDKJs2bVzu5OkC29dWfhhXm5gXG52DfKaBZol33y2gtvabRMX AqSQy6iD6bRkdDZNtll2LOIhB9EirFV53DO821Y+sXL6McIGRxuC6Az1K2BH1Ph//O9E mgOQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=JPn1CntZ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id s124-v6si101058qkf.112.2018.06.19.09.24.49 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:24:50 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=JPn1CntZ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43597 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJR3-00059N-Ea for patch@linaro.org; Tue, 19 Jun 2018 12:24:49 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46058) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ50-0004fg-Sx for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4x-0007f7-Mq for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:02 -0400 Received: from mail-wm0-x22b.google.com ([2a00:1450:400c:c09::22b]:53386) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4x-0007eQ-DM for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:59 -0400 Received: by mail-wm0-x22b.google.com with SMTP id x6-v6so1257246wmc.3 for ; Tue, 19 Jun 2018 09:01:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=BJdJzDkjcl0zIXjcW2r0b/g6OgOf6EdG+dfqirQG5js=; b=JPn1CntZxeMuDZDe9oDUn/70Vm2y3rArqIj5MAl8qBsvIlsp2xznerjz3WUXLjb6Ko yNnXbpR5sByqqZeR5cAEZSKTLELav3MXLE8ChlAmTEfytfC5vKWKB9AwpArACSuZ6hLX WO6KuXAc2lv+KT/Ub5zVZXmzY8Iff19s6z2Z8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=BJdJzDkjcl0zIXjcW2r0b/g6OgOf6EdG+dfqirQG5js=; b=b6jt01Zx63EiTaNAxWBlzMFDMve3Xam7Z7xfRO4pV7B/GZVtYD1fhaCdLXk6+gGakd Szt0CeWBOp6RwdFaLLs8grorQXMSXRqv2kLMGsVuupyyhTuNF78bxLuikldVtPy9z5lF daO3Eth36lsU+KciUlKApfyrKaxwzWEsKm/hteLrhbuzZhNyhr/tMtV5LZeDvWUdm5hP mpZL1yKJnZQD6iAcQoVVzxioTPOKcXMsyDQmv1jH1iBqzE2fQ1S5HaPyz+ioCuJdGB8U 2h5TU1utHQrvnVyTVRUOVS0rrjNJMdcjeJZ5/hh4fsrEPfZ7a+NXruNUFRO39fMQI+im I0iA== X-Gm-Message-State: APt69E1ZDiP/+rkxdR9hUrPVWQFG9QQWxHaA1YkPiJwBnFvGO4SP+itd nN1Etdoslr3lRaaEulgU7mRoliQF8gA= X-Received: by 2002:a1c:8cc8:: with SMTP id o191-v6mr12464357wmd.75.1529424118222; Tue, 19 Jun 2018 09:01:58 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id z16-v6sm58140wro.41.2018.06.19.09.01.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:55 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 963273E0FC0; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:25 +0100 Message-Id: <20180619154435.18898-47-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::22b Subject: [Qemu-devel] [PULL 46/56] tests/tcg: add run, diff, and skip helper macros X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, "open list:ARM" , Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As we aren't using the default runners for all the test cases it is easy to miss out things like timeouts. To help with this we add some helpers and use them so we only need to make core changes in one place. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v5 - new for v5 v5.1 - diff-test->diff-out v7 - mention $(TARGET_NAME) when skipping -- 2.17.1 diff --git a/tests/tcg/Makefile b/tests/tcg/Makefile index e7dbcdb5bf..bf06415390 100644 --- a/tests/tcg/Makefile +++ b/tests/tcg/Makefile @@ -34,6 +34,15 @@ quiet-command = $(if $(V),$1,$(if $(2),@printf " %-7s %s\n" $2 $3 && $1, @$1)) +# $1 = test name, $2 = cmd, $3 = desc +run-test = $(call quiet-command, timeout $(TIMEOUT) $2 > $1.out,"TEST",$3) + +# $1 = test name, $2 = reference +diff-out = $(call quiet-command, diff -u $1.out $2 | head -n 10,"DIFF","$1.out with $2") + +# $1 = test name, $2 = reason +skip-test = @printf " SKIPPED %s on $(TARGET_NAME) because %s\n" $1 $2 + # Tests we are building TESTS= @@ -84,9 +93,7 @@ RUN_TESTS=$(patsubst %,run-%, $(TESTS)) RUN_TESTS+=$(EXTRA_RUNS) run-%: % - $(call quiet-command, \ - timeout $(TIMEOUT) $(QEMU) $< > $<.out, \ - "TEST", "$< on $(TARGET_NAME)") + $(call run-test, $<, $(QEMU) $<, "$< on $(TARGET_NAME)") .PHONY: run run: $(RUN_TESTS) diff --git a/tests/tcg/aarch64/Makefile.target b/tests/tcg/aarch64/Makefile.target index 7dba32138d..08c45b8470 100644 --- a/tests/tcg/aarch64/Makefile.target +++ b/tests/tcg/aarch64/Makefile.target @@ -13,7 +13,5 @@ TESTS:=$(AARCH64_TESTS) fcvt: LDFLAGS+=-lm run-fcvt: fcvt - $(call quiet-command, \ - $(QEMU) $< > fcvt.out && \ - diff -u $(AARCH64_SRC)/fcvt.ref fcvt.out, \ - "TEST", "$< (default) on $(TARGET_NAME)") + $(call run-test,$<,$(QEMU) $<, "$< on $(TARGET_NAME)") + $(call diff-out,$<,$(AARCH64_SRC)/fcvt.ref) diff --git a/tests/tcg/arm/Makefile.target b/tests/tcg/arm/Makefile.target index 14b5435fc6..aa4e4e3782 100644 --- a/tests/tcg/arm/Makefile.target +++ b/tests/tcg/arm/Makefile.target @@ -24,10 +24,8 @@ fcvt: LDFLAGS+=-lm # fcvt: CFLAGS+=-march=armv8.2-a+fp16 -mfpu=neon-fp-armv8 run-fcvt: fcvt - $(call quiet-command, \ - $(QEMU) $< > fcvt.out && \ - diff -u $(ARM_SRC)/fcvt.ref fcvt.out, \ - "TEST", "$< (default) on $(TARGET_NAME)") + $(call run-test,fcvt,$(QEMU) $<,"$< on $(TARGET_NAME)") + $(call diff-out,fcvt,$(ARM_SRC)/fcvt.ref) endif # On ARM Linux only supports 4k pages diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target index cd173363ee..97b7c23cf1 100644 --- a/tests/tcg/i386/Makefile.target +++ b/tests/tcg/i386/Makefile.target @@ -31,7 +31,7 @@ test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S test-i386.h test-i386 # Specialist test runners run-runcom: runcom pi_10.com - $(call quiet-command, $(QEMU) ./runcom $(I386_SRC)/pi_10.com > runcom.out, "TEST", "$< on $(TARGET_NAME)") + $(call run-test,$<,$(QEMU) ./runcom $(I386_SRC)/pi_10.com,"$< on $(TARGET_NAME)") ifeq ($(SPEED), slow) @@ -40,13 +40,11 @@ test-i386-fprem.ref: test-i386-fprem run-test-i386-fprem: TIMEOUT=60 run-test-i386-fprem: test-i386-fprem - $(call quiet-command, \ - $(QEMU) $< > $<.out && \ - diff -u $(I386_SRC)/$<.ref $<.out, \ - "TEST", "$< (default) on $(TARGET_NAME)") + $(call run-test,test-i386-fprem, $(QEMU) $<,"$< on $(TARGET_NAME)") + $(call diff-out,test-i386-fprem, $(I386_SRC)/$<.ref) else run-test-i386-fprem: test-i386-fprem - $(call quiet-command, /bin/true, "SLOW TEST", "$< SKIPPED on $(TARGET_NAME)") + $(call skip-test, $<, "SLOW") endif # On i386 and x86_64 Linux only supports 4k pages (large pages are a different hack) diff --git a/tests/tcg/multiarch/Makefile.target b/tests/tcg/multiarch/Makefile.target index 90e45a881e..b77084c146 100644 --- a/tests/tcg/multiarch/Makefile.target +++ b/tests/tcg/multiarch/Makefile.target @@ -27,10 +27,10 @@ testthread: LDFLAGS+=-lpthread # default case (host page size) run-test-mmap: test-mmap - $(call quiet-command, $(QEMU) $< > test-mmap.out, "TEST", \ + $(call run-test, test-mmap, $(QEMU) $<, \ "$< (default) on $(TARGET_NAME)") # additional page sizes (defined by each architecture adding to EXTRA_RUNS) run-test-mmap-%: test-mmap - $(call quiet-command, $(QEMU) -p $* $< > test-mmap-$*.out, "TEST", \ + $(call run-test, test-mmap-$*, $(QEMU) -p $* $<,\ "$< ($* byte pages) on $(TARGET_NAME)") From patchwork Tue Jun 19 15:44:26 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139204 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5403023lji; Tue, 19 Jun 2018 09:18:31 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKwZDoZvv39XRmIMP16hrSin1U5k+ZovsF8P+RVEwu4MQhkbk6uvbFXTnQ5YYnanjE4XdwD X-Received: by 2002:a0c:9621:: with SMTP id 30-v6mr14849749qvx.127.1529425111279; Tue, 19 Jun 2018 09:18:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425111; cv=none; d=google.com; s=arc-20160816; b=RhRk7amGd1IxBR3aO0jQxnsfKF9xt5O4ybNoStHvCTSvwpM0E3HY43OwLSaEyUjxis xF04LF7zcrGQKREiQa4pB3b/zJW4GMf1YiN5H5w7ty0+8XZ3c571W+8qMTe+YMVA94Vn qJ8e6uIjtnoQ1v5bXuu+romKj8yxehqnAx/z5m2n5gQny7+B1amV4SN1dycG/7PDG4zf bCRaMv8TuKG/1n65FTv/hCSiJ4UeJroEuwQj9oyq13zBcbS8tERCHCpias+rtgI4WRAo WaniyV3vvg1Mx8K2+p7NNdZGk17eh/oUKbqKrXR/Ao0OD/pLo3GtvN/yC26d6SXHS4nC towQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=cvl5cl0ehMGkxXNp+Y5f8Mwy6jNv92XxbRDE/l/Wdh4=; b=XqQcmLeC33h//0Zy7mo3OoqFnUAmdc3dNB4ka22ZxnlHQbJlcanIT091XCjguVidju +6VEhVv7fpf5Iq9axoZeetPURmE2mCe7R5iWDomodXyEj1cgs2pH+J1Wl2xmDNBpfHO7 KyQpzZF3OCQIO/IZRUMdwP4ThzJKFC1b/0S9XzWnQiSj9OfS6ss2V9LZcJh3GfXwC054 LGOx6M8xwqgqks6QMG/Nayafb2gzZKZihbaFGoxdrKqUlWpiPbGDZe3/HCa5dgMsYlJZ Z5Y+m/oARgMlKC8SqkPYZ2AF9MOqoa2YWRHoyCW99VtzWd/z4T+IM3u5FJi4dra2DtXp oJyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=IjFMwVfL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id q8-v6si81223qvo.99.2018.06.19.09.18.31 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:18:31 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=IjFMwVfL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43553 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJKw-0000lb-M7 for patch@linaro.org; Tue, 19 Jun 2018 12:18:30 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38773) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvH-00046c-BC for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvB-0001id-82 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:59 -0400 Received: from mail-wr0-x241.google.com ([2a00:1450:400c:c0c::241]:39311) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvA-0001fZ-Sy for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:53 -0400 Received: by mail-wr0-x241.google.com with SMTP id w7-v6so170583wrn.6 for ; Tue, 19 Jun 2018 08:51:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=cvl5cl0ehMGkxXNp+Y5f8Mwy6jNv92XxbRDE/l/Wdh4=; b=IjFMwVfLZExVaHOG+/GZQFh7DPq9fjlxrIXH8V2f7/aaunI4h9ApOfl5LqZjgmCY/i g+bEsIj7FV/XIhCc74Y6cEPOGtmDDaIRU0Fjb2HZjDVYU71Gy34wqcDMntsUP204tDBj qlqIo1XXctmVq125J8aC7lLKE88uHZM703nW4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=cvl5cl0ehMGkxXNp+Y5f8Mwy6jNv92XxbRDE/l/Wdh4=; b=ATI6Y+qDIvth9hReUcsllc2ErLeb47KVtEUIAEBscc+/7YJ5W+YZBqnVI9FPWS0QHd dZfXsk9OxZw6LuqzERa8p/9SgrHF2/m89bCt93U0S+xKvNxe3PuFGkYF/Xi4Vp/AsyRz UQkzaMTFNobtWRdwlvvDR7JedFSxRB3aXAvSjxaUEI+V0fSdjldWN2QiDkExxI7kvAeJ XRHw+yarJw6IizpFqPeQtYtCfqxiIgaBWzPIBHAleOW9rU/2g4Ug0aXDPGjOw9H9bt6B G7tGnZEm310gDhREejyy5qu68LVKXd6jLhPU7aykR7t4fQiZx7tN1Gn4NN8UJPBtPRBN vrcg== X-Gm-Message-State: APt69E3gWfNsKZrPYByDBMjJzVsxeWSx2yAJri1+Fw9mbi9j7H6Slfg5 Fv0EzRbxYWa0/Fqpa6q98N4tSA== X-Received: by 2002:adf:f712:: with SMTP id r18-v6mr15713215wrp.85.1529423511698; Tue, 19 Jun 2018 08:51:51 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id r123-v6sm570454wmb.21.2018.06.19.08.51.46 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id AAD593E0FE1; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:26 +0100 Message-Id: <20180619154435.18898-48-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::241 Subject: [Qemu-devel] [PULL 47/56] tests/tcg: override runners for broken tests X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, Yongbok Kim , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" To get a clean run of check-tcg these tests are currently skipped: - hello-mips for mips - linux-test for sparc Signed-off-by: Alex Bennée Tested-by: Philippe Mathieu-Daudé Reviewed-by: Philippe Mathieu-Daudé --- v4 - document broken tests in commit - temporarily demote fcvt while fixes percolate upstream v5 - reinstate fcvt - remove test-mmap overrides (done with EXTRA_RUNS now) v6 - move to after the skip-test helper v7 - rm personal path -- 2.17.1 diff --git a/tests/tcg/mips/Makefile.target b/tests/tcg/mips/Makefile.target index 71f0c2dd53..086625f533 100644 --- a/tests/tcg/mips/Makefile.target +++ b/tests/tcg/mips/Makefile.target @@ -17,3 +17,6 @@ hello-mips: LDFLAGS+=-nostdlib # For MIPS32 and 64 we have a bunch of extra tests in sub-directories # however they are intended for system tests. + +run-hello-mips: hello-mips + $(call skip-test, $<, "BROKEN") diff --git a/tests/tcg/sparc64/Makefile.target b/tests/tcg/sparc64/Makefile.target index 408dace783..5bd7f90583 100644 --- a/tests/tcg/sparc64/Makefile.target +++ b/tests/tcg/sparc64/Makefile.target @@ -1,6 +1,11 @@ # -*- Mode: makefile -*- # -# sparc specific tweaks +# sparc specific tweaks and masking out broken tests + +# different from the other hangs: +# tests/tcg/multiarch/linux-test.c:264: Value too large for defined data type (ret=-1, errno=92/Value too large for defined data type) +run-linux-test: linux-test + $(call skip-test, $<, "BROKEN") # On Sparc64 Linux support 8k pages EXTRA_RUNS+=run-test-mmap-8192 From patchwork Tue Jun 19 15:44:27 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139210 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5408981lji; Tue, 19 Jun 2018 09:23:50 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJk8na8xyHadcVEB6LxO+0apEHA0NQOBv5iKQr+FfldDlJK+u2dK6dg/eBCVzjcQZHtM53d X-Received: by 2002:a37:8f45:: with SMTP id r66-v6mr14256982qkd.47.1529425430715; Tue, 19 Jun 2018 09:23:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425430; cv=none; d=google.com; s=arc-20160816; b=fRYsKdO6OA1kFXoxD/6XJOFDJn/ka5o+hLBvCmLvo489iNmLfTF4zbTJeL2ESftrU+ sCzFJuSvAtB5XDayf0dsowsq7LCQ8tTh1kCQZL2Br02AsOED3Zc1KYqfqRUfCzqSkHJW g6A33jd+1tkzJOHCrfe1rOfwIP3roswFVC8fXgWCxBCjHG853QnU1CTXM1UZVMdwJF0B ivWbGfJF+Dy25Uu662EVGu5Jp+LlpG7cZrnF4pmyEm3hsLvHY3dyEbQ3ng91V7f/qZir e1E4hkReeEpSOWFrmHtUXKgbI2AeFG3iJMFF+VnwSbPRLbHfNKkplpcL91DvqvlbybTY rMkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=68Y9G1IjLxIcXOPLy4+qQmp0HZSjhgrpF1xCp4sb36E=; b=Cot+UOVG0aAqapn98uP++q0KxYklya9jweh1m5FOypmgxJRTV1wLeVVia1cWRpEVmR I4F3UYwM7+3JhfEcidujTN4Y/w8R0VDt9e1R924i01Gu1TPDSeIJCl4RREr41aw8Hboj d5jYs3OPuPww4O+XLGMRFnHbK/ZsMflWPkGYdGf+jWSyLDhZn1ca/N0OxS/CazRgraLL CA/7RMMdbEh7UvWY+t3j3eL2dS4Z0OL5x6i/BOzPh9UsyLPEvipEfRpLTFjQzRiZqgxS 8Fmlx/CXVTOo5aEG+qkdhx7N3pNeEPPZgwU5z3EPxnIonO157EUy1GfI8ouL7PzrWaB1 I1IA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=gJ6cyEYU; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id n11-v6si77508qtp.357.2018.06.19.09.23.50 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:23:50 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=gJ6cyEYU; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43592 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJQ5-0004LH-UX for patch@linaro.org; Tue, 19 Jun 2018 12:23:50 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38998) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvO-0004CL-PJ for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvF-0001oF-8w for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:06 -0400 Received: from mail-wr0-x233.google.com ([2a00:1450:400c:c0c::233]:37139) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvE-0001mc-TV for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:57 -0400 Received: by mail-wr0-x233.google.com with SMTP id d8-v6so179224wro.4 for ; Tue, 19 Jun 2018 08:51:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=68Y9G1IjLxIcXOPLy4+qQmp0HZSjhgrpF1xCp4sb36E=; b=gJ6cyEYUEa62Ps110apwLIaym/6lXhMclQlpRkfqmfmRa8fPQsrVOPClDJ1ab4nCGF EpVzYsZoa4Q7Ng5ZAUu7sSzh4UKHqtt0s6kP5wuC4VxNL0PIFnnYgcjRFtyfIsycjsPS Tn9DgCX0ImzYmKCVCddw0J9xzGPmbob/ryvzY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=68Y9G1IjLxIcXOPLy4+qQmp0HZSjhgrpF1xCp4sb36E=; b=D/PvX8ZTmHP5BcPaYFk4a4jXqYKjkZlcnd7gI1z0xU/Uk29srMGQvN6BlmdHcR1SjG ua10ycchVGe7X4wKAvzeG3JRx5654bf4olr/eyNQZzCzi2C78EqKHjdjseUc4+PXvYwe snZ9VThvZiJh6Hf+THbm8jcM2CKTqr7PExr+8B5Z/unewk8s6eKiAWzYIsvNXMMzpIDp gSG6Bm1mxasCv6A8RW81E1/2csjf23my+Ukw2pf03GJFGQubXaZmiv3FkNKuK6rXQbGG t7R+At3K7eNBYisxyTMtbmnPVd9jxfzCQFeZHwUaU18g7AUoCSla58GlED4cTmcw2FB8 Ocaw== X-Gm-Message-State: APt69E3sD7bDyH1IKjI8NPuLb/zuPL5rJ6BZNrMtLvb8OEgEMiNLQoMO o1TtdHb4y1lI/KeVqbO87jyvkg== X-Received: by 2002:adf:f18b:: with SMTP id h11-v6mr15602888wro.214.1529423515817; Tue, 19 Jun 2018 08:51:55 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id b80-v6sm655978wmf.2.2018.06.19.08.51.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:51 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id BEBEF3E0FEB; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:27 +0100 Message-Id: <20180619154435.18898-49-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::233 Subject: [Qemu-devel] [PULL 48/56] tests/tcg/i386: extend timeout for runcom test X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, Eduardo Habkost , =?utf-8?q?Alex_B?= =?utf-8?b?ZW5uw6ll?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, Paolo Bonzini , famz@redhat.com, aurelien@aurel32.net, Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The Travis hardware can be a little slow and the runcom test is fairly heavy in calculating pi. Lets double the timeout so we don't trip up during CI by mistake. Signed-off-by: Alex Bennée -- 2.17.1 diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target index 97b7c23cf1..c1997a1624 100644 --- a/tests/tcg/i386/Makefile.target +++ b/tests/tcg/i386/Makefile.target @@ -30,6 +30,7 @@ test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S test-i386.h test-i386 $( X-Patchwork-Id: 139200 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5397988lji; Tue, 19 Jun 2018 09:14:02 -0700 (PDT) X-Google-Smtp-Source: ADUXVKL16gcBFAQdatwr1CRCE00W49KOM3xkcEipaar389mfQYmehxpkYkeicc4DfBfb9GL03Eu/ X-Received: by 2002:ae9:c008:: with SMTP id u8-v6mr14979886qkk.85.1529424842542; Tue, 19 Jun 2018 09:14:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424842; cv=none; d=google.com; s=arc-20160816; b=b3VGANVIpSOfsLlzph/CocNlXU7fnaLgPgkIGAGZfsot1SL18qGIGllQLSQm200ZXj qQtcqWUjQ9VCQOzdCUJTIkaN27VtbtdvFaj61nBR5dMqJDN7IjBr8cSXK7CcTE+b5DNF 7E7qSD12yPtcATlmXbCpMknBR78iT+WTnm1GEMqcyZ7ep17QUwgBPyzh+p8lU2z/KFkT QUqplFoioKQFkipn1T/qiGyf4BtniQkNgJeuf0xyDpIwqhStTpx6cEzZnvOpLZcNxbUu zwiTplcmzMHiQO2q7wA2NYX4+u2MZbWBGIPB7ByfBCe6sK4wrTTaoOOayALeflBNEUiV mKnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=cL0F6K4Pm6zSiGW/ZhlmvqHwwS3kKdDmx2C4El+0ZSE=; b=Rn4EpYEssU+5ccxEN2Qc2gaT96I3W3qYuhzCXW2kdZ1c7W4l9kt/6guxYFoA6fNJGE EVuMRYY84Ay8qYvqnJYgDNaDQvXhlk626uOSzhbG3hmpNJ2YFjBrQNnGKDG9J5Gd5DBo dzR7CnzdirKw1rmLZ6mp98TmFvy6VLBG+Z6PkXqTnmrnKjolk2xLU3+ZW8uwVxs6y1a3 D5kIek6Xz09Xazjvv6G49JXFujRpGsRfehPpr0hzFOCXJQGnlIO+fowh+AYGsz2HB3fm AwGc0IJu2dpzhvkGgzl+Rl0KPxqTwOEw7rthYb71Mw/047xB9ZN9LWd7AJ5vOwBllnk+ 22ZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=aWsS9nZ3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id a189-v6si66922qkc.229.2018.06.19.09.14.02 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:14:02 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=aWsS9nZ3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43516 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJGb-0004o7-Up for patch@linaro.org; Tue, 19 Jun 2018 12:14:01 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39166) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvW-0004Ix-Bd for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvI-0001sV-Ef for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:14 -0400 Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:53355) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvH-0001qj-Qc for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:00 -0400 Received: by mail-wm0-x241.google.com with SMTP id x6-v6so1202017wmc.3 for ; Tue, 19 Jun 2018 08:51:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=cL0F6K4Pm6zSiGW/ZhlmvqHwwS3kKdDmx2C4El+0ZSE=; b=aWsS9nZ3rb0W6UPqjTWx+DoEb1+mfWhEZeaTrVQJuRt3pnhl7zucBhUGlnOLVnBsua HfI51/WrA+IWkvYgNZAiidMZVNpq2qDEQECmkCdE6PKEfY6PthpDmLdeq6JItov3zP3b gq1MII7d6EFUCfvHNsM47/ogRSYX3FS7P7VX8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=cL0F6K4Pm6zSiGW/ZhlmvqHwwS3kKdDmx2C4El+0ZSE=; b=jcvDx+EXh26m8EjWrAjJOulCxgPVbv5srQInPxFXMvbrJ4M3pNcfN3Ui9gqVnnJH+9 32f1ZRyRrI83syuTgRxaJjrx57n/G9FKMe+OtWqRhEUPMEh5addpHVnTrYSzuIzjb26K yH8Usj3Y9s9rSZ6n2+ZkS+N0XTJYN6UcA83zFRp8hvyavlsXHUfznrQczQ13V2cKwJAj 3vWJTr9mIY83tFypsTmES1HlCJX6sZj+yT81/Q6xJdb230HmY/u6APeE2fLRnaBi/jlz 57hDrQKwMwdO62O3ZIt9UhSdbwPapSpX8+ZxI31BW/1bwCWufqhZCDctaUdMkowOgCU5 uRJw== X-Gm-Message-State: APt69E3DwyMSgCdzc1dSmgaWC/ADN7qlUlNs+9K5NKrsBGrjeQHcFydl r0Z5vmWtu8b/oVuWnN2i7WETWw== X-Received: by 2002:a1c:938e:: with SMTP id v136-v6mr11626006wmd.32.1529423518642; Tue, 19 Jun 2018 08:51:58 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id d7-v6sm33445wrm.9.2018.06.19.08.51.50 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:56 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id D4CC73E1058; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:28 +0100 Message-Id: <20180619154435.18898-50-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::241 Subject: [Qemu-devel] [PULL 49/56] tests: add top-level make dependency for docker builds X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" One problem with satisfying your docker dependencies in a sub-make it you might end up trying to satisfy the dependency multiple times. This is especially a problem with debian-sid based cross compilers and CI setups. We solve this by doing a docker build pass at the top level before any sub-makes are called. We still need to satisfy dependencies in the Makefile.target call so people can run tests from individual target directories. We introduce a new Makefile.probe which gets called for each PROBE_TARGET and allows us to build up the list. It does require multiply including config-target.mak which shouldn't cause any issues as it shouldn't define anything that clashes with config-host.mak. However we undefine a few key variables each time around. Signed-off-by: Alex Bennée --- v7 - remove $(info) spam - just add the explicit docker dependency to each build target - include build-tcg-prereqs for CI tasks -- 2.17.1 diff --git a/tests/Makefile.include b/tests/Makefile.include index c8faa01a33..2dd0700a88 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -938,6 +938,14 @@ BUILD_TCG_TARGET_RULES=$(patsubst %,build-tcg-tests-%, $(LINUX_USER_TARGETS)) CLEAN_TCG_TARGET_RULES=$(patsubst %,clean-tcg-tests-%, $(LINUX_USER_TARGETS)) RUN_TCG_TARGET_RULES=$(patsubst %,run-tcg-tests-%, $(LINUX_USER_TARGETS)) +# Probe for the Docker Builds needed for each build +DOCKER_BUILD_TARGETS:= +$(foreach PROBE_TARGET,$(TARGET_LIST), \ + $(eval -include $(SRC_PATH)/tests/tcg/Makefile.probe) \ + $(if $(DOCKER_PREREQ), \ + $(eval DOCKER_BUILD_TARGETS+=$(DOCKER_PREREQ)) \ + $(eval build-tcg-tests-$(PROBE_TARGET): $(DOCKER_PREREQ)))) + build-tcg-tests-%: $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" guest-tests,) @@ -947,6 +955,9 @@ run-tcg-tests-%: build-tcg-tests-% clean-tcg-tests-%: $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" clean-guest-tests,) +.PHONY: build-tcg-prereqs +build-tcg-prereqs: $(DOCKER_BUILD_TARGETS) + .PHONY: build-tcg build-tcg: $(BUILD_TCG_TARGET_RULES) diff --git a/tests/tcg/Makefile.probe b/tests/tcg/Makefile.probe new file mode 100644 index 0000000000..15c0412657 --- /dev/null +++ b/tests/tcg/Makefile.probe @@ -0,0 +1,31 @@ +# -*- Mode: makefile -*- +# +# TCG Compiler Probe +# +# This Makefile fragement is included multiple times in the main make +# script to probe for available compilers. This is used to build up a +# selection of required docker targets before we invoke a sub-make for +# each target. + +# First we need the target makefile which tells us the target architecture +-include $(BUILD_DIR)/$(PROBE_TARGET)/config-target.mak + +# Then we load up the target architecture makefiles which tell us +# about the compilers +CROSS_CC_GUEST:= +DOCKER_IMAGE:= +DOCKER_PREREQ:= + +-include $(SRC_PATH)/tests/tcg/$(TARGET_BASE_ARCH)/Makefile.include +-include $(SRC_PATH)/tests/tcg/$(TARGET_NAME)/Makefile.include + +ifndef CROSS_CC_GUEST +ifneq ($(DOCKER_IMAGE),) +DOCKER_PREREQ:=docker-image-$(DOCKER_IMAGE) +endif +endif + +# Clean-up +# undefine TARGET_NAME +# undefine TARGET_BASE_ARCH +# undefine TARGET_ABI_DIR From patchwork Tue Jun 19 15:44:29 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139216 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5415007lji; Tue, 19 Jun 2018 09:29:34 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJoMopR2fUGxTECmdYaxyyb59+rq4aNS2Vddn63GT+FpoXKU+HrFXaKELxWgeu2h/6ZCCWK X-Received: by 2002:a37:5c01:: with SMTP id q1-v6mr13682917qkb.361.1529425774277; Tue, 19 Jun 2018 09:29:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425774; cv=none; d=google.com; s=arc-20160816; b=r0k/dZ0hBMojOTNkjjc0CQMkpq3rfwaI0kK3aXdqjmcq4CNxiMfbnA6a7+08EX9RXG 0VTlxIfUjsGS9K7jHYMwYJRy7KpLJ3tX1NAitvHhCCLAYKx1cTJL/9bhAo1s+2xN3yYv YNd3Q+HbGHgZU4RHNTr0YnO4Ry8yHUy5ZQRIEJz6asuCHVmYaHnWMDacy36kJYz0NZbw aeD3DJrHWFvr2aigLxHeLX70L3qhsKrSayd0Aj52fPf3/7hL6rVCHPlEtuf4ghl5+Lbw UH8F70m2+DvjCvlKI2JIgORFOBjK6i7mjR6nhu6OLJDcgCv9M1PBn9mSn48e+9RUBCNd F5Lg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=ET+CSKQxqjllrHu59h0vn/aj61cZ2KNVxA7OHOFNObg=; b=dmmx+6td3MnmeltOQosZOYUkWxfeqXLmwLeYOUTwyuazogRZci9hmqZt3ba5B+QGDf 14sOsNSXLuhl7OL724RFDW/SW5BaS+0FHN7+m/l6eqge9z/kQPgpMYV3x09iEhOViS32 5oHxYDPqOiDcxx6cxvlrtLWiPWFOKCGIi5trjt/bB7xrlStJlPAhMqrPGrnrdzH+B4ac KVaDybb4AGKUsvPek+gTygF8XY5NLnA0QVsUr6cn6JKzirJaFI1fsfVPadSu6PYy5Jtv TIeH9ZdYuvuAh9pcUbA+5V72MvY/hWWytDPiugsZ8tp+GVMVD+9KjB6N4HCDJOXRt29C 4PVQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=SSNw7HV4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id b45-v6si104438qtc.235.2018.06.19.09.29.34 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:29:34 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=SSNw7HV4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43632 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJVd-0000ZO-Kl for patch@linaro.org; Tue, 19 Jun 2018 12:29:33 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvW-0004JC-LX for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvJ-0001tF-6b for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:14 -0400 Received: from mail-wm0-x242.google.com ([2a00:1450:400c:c09::242]:50189) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvI-0001s3-S1 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:01 -0400 Received: by mail-wm0-x242.google.com with SMTP id e16-v6so1229584wmd.0 for ; Tue, 19 Jun 2018 08:52:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ET+CSKQxqjllrHu59h0vn/aj61cZ2KNVxA7OHOFNObg=; b=SSNw7HV44wbFwR4LVhw5lf51WshPh1gxRDZSVkVMhQ46g4SxOIk8M1mA7s1AhAXo/O 0p9Suf5DyXMeze7wzv03e6VdKHlM8E6CLotFWye3KBcbe0DIwhRz/6iij4rTBfIDlVWe XxS1jpp0JRTTG/XYUK9MdX97+WnTqfh8y3H+c= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ET+CSKQxqjllrHu59h0vn/aj61cZ2KNVxA7OHOFNObg=; b=nm5UOp3Tde6eq78rxA2GHGoJuCRWqSBD6YRJMq9h5/ubHOdbDrPFRl8wz4U937dbmk +UrJgB/ZiqB6rIDi3CPdRVFes4kZgqZcqE6GCVWrGfwSJ4AS+U19jCqOl/vgt9hTdWm+ RiuviVa1N8DOpLAoVZMBfW2/LW1LDiO0+XcLiVu9w24hs+J3rIULbISwWWfGcvfaye5w eaKNtO10yPjOKWV68oaYfv95njq68g2BaFDXyCcKsSVVRTJfhjwtpEg3xyTKqTyWzOkE cURBD2kZNddxLghG11pjwsKb3sKF1lypl08zpWEUvCJi0d3NriFXa9jKo293UXROvMJp 6ELg== X-Gm-Message-State: APt69E1NLJJhij4eV3o/fXXbI9qBt/Q1OLwRabFB2Q5xpfyn9UUwLnUZ I6SKn1HXUr9Fj49EX4YEaau/vw== X-Received: by 2002:a1c:78b:: with SMTP id 133-v6mr13214645wmh.59.1529423519468; Tue, 19 Jun 2018 08:51:59 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id h4-v6sm1689wre.89.2018.06.19.08.51.51 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:56 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id E9A2A3E08BB; Tue, 19 Jun 2018 16:44:39 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:29 +0100 Message-Id: <20180619154435.18898-51-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::242 Subject: [Qemu-devel] [PULL 50/56] docker: docker.py use "version" to probe usage X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The "images" command is a fairly heavyweight command to run as it involves searching the whole docker file-system inventory. On a machine with a lot of images this makes start-up fairly expensive. Signed-off-by: Alex Bennée --- v8 - use version instead of ps, add comment -- 2.17.1 diff --git a/tests/docker/docker.py b/tests/docker/docker.py index c83fd89985..e6685f6d81 100755 --- a/tests/docker/docker.py +++ b/tests/docker/docker.py @@ -49,7 +49,9 @@ def _guess_docker_command(): commands = [["docker"], ["sudo", "-n", "docker"]] for cmd in commands: try: - if subprocess.call(cmd + ["images"], + # docker version will return the client details in stdout + # but still report a status of 1 if it can't contact the daemon + if subprocess.call(cmd + ["version"], stdout=DEVNULL, stderr=DEVNULL) == 0: return cmd except OSError: From patchwork Tue Jun 19 15:44:30 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139175 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5380177lji; Tue, 19 Jun 2018 08:58:58 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLatZs3lZb6gDJ+8+Sd+734jNhGTue8YCt+373kauUkLYf4J2U7CMTSdwfG6zEIW5pnHQ20 X-Received: by 2002:a0c:fa02:: with SMTP id q2-v6mr14892856qvn.180.1529423938547; Tue, 19 Jun 2018 08:58:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529423938; cv=none; d=google.com; s=arc-20160816; b=D+Wo/6jav6bVTd4j0K7B0ozyKIxSdC6vjU+GVTP6CiMaP84mT0FlX0fWjyQstRj0pE CFxfQ6d4a7Pt7snEPam2bAtpPyy+g1iCvqKb4Dq7F5+/VUSh7PzSfCBIXAYJ11FQxUGk XehUb5PGBmwJP43Jedu6hR0/ldcsgBgfMoEYhJNpepfIRqFNuMzc3unsVQh/MpKPHva5 /FTRNRacP+SF93YwIKfl/iTdRmcUN/1unmK8GXaz3N4tHSibFTwJacBfX3NXmT3l/xeH D0Y91W51PlJcGP7kCcmeDVHGNVkVggFpkKGlI9rRjSMhKbJeOacz6L59uV9dT2iYMwbo QGkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=p/TLenLr5ng/OG2TI1YEW8pX1dn0HpWL/zzqhS4I8zY=; b=o8ahyR6SR7+ErYT5gWBJvMRb2nG5igZaFvvCN8D/7DgPmNMxalrTExH5D+UX1AibW4 BvkAaEUM0p4f/omfwZLuqP6sWEwjUf9ecN57nXwe09KoR94GW1SM9AQy1Kf9dY7wxyhy 8qJxYkMAn1OAGywh3jynYlvzOQDG9rKbTcLgI6Ir63kavxjEYp4kyi6ZK/1mbV4RoOzn r8i2bZzcXpKlq2F3nNeelYKh1t0ZIv/4LwMQYszs6kW4+tHQAKzEzROVSdbLxt2XUatC ZbzIUjBNSe3wYiA/Y+2ZvtwSOeCsna4LPb4RtiZ3KB+5ttUG6T3yfyjJxMErh1oK+xvv rBNQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=MF0pIfZ3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id z10-v6si56203qkf.2.2018.06.19.08.58.58 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 08:58:58 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=MF0pIfZ3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43407 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ22-0001UC-0l for patch@linaro.org; Tue, 19 Jun 2018 11:58:58 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38637) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvD-00042l-7t for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvA-0001gb-HO for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:55 -0400 Received: from mail-wr0-x244.google.com ([2a00:1450:400c:c0c::244]:32832) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIv6-0001cr-LJ for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:52 -0400 Received: by mail-wr0-x244.google.com with SMTP id k16-v6so193613wro.0 for ; Tue, 19 Jun 2018 08:51:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=p/TLenLr5ng/OG2TI1YEW8pX1dn0HpWL/zzqhS4I8zY=; b=MF0pIfZ3OQXexTRhQmBO/nUMOMEYLz6lV6mDLtrY5aFtSmAYO9Nf5N8LfLZxUVB1li iCe1g4H4OMh+EYJ41p8tlEa3/171ZNIZaJMyZDxHeJIjMLGQ+W4HRpDlqbI8zvQ/Sy4R 5tVPXYqWQ8CLuQxuY4cTCet4FnZXwYFDOlnY8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=p/TLenLr5ng/OG2TI1YEW8pX1dn0HpWL/zzqhS4I8zY=; b=Q4Ui9kFSaEXRo7GBdN+Yk+TF2BWKU4aPo5PsuFHilCz3+9ohY8xUViV/Y1+LFmOZCw xpjxy7WtFC6MEdttVpm3XVT8hwR3/op7VF2gs1IRYuwr9Lss2xoIvC2tQIlflpbOom+4 DViuZlq34I14k3EP/GNiydGYiFE7d25Gh/PeqZlVK0vkDGKSB+tYak+uAqPFJqTfzv4i JsDkeJmGN7s0ub7Q21D7EGAiF8IXvC3dwYa3mauhloDU1pCYmoqym6l+iFWN5YOApZHG HvkDToUicvJNxSmuopjo3vDHJxqJVd1UL0TINgFn1HbyzIWd7CTX2/3lfUHwsmXxCU5/ ec6A== X-Gm-Message-State: APt69E2M7misQdUWcRFAqfZmuqRyi0fzqZwoPsszuQ65REEL0L7zSil9 oLIczPUhJCoPqHcD1tBOcF4CuQ== X-Received: by 2002:adf:8bdb:: with SMTP id w27-v6mr14837424wra.169.1529423507473; Tue, 19 Jun 2018 08:51:47 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id c18-v6sm31425wrq.17.2018.06.19.08.51.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 0862F3E106A; Tue, 19 Jun 2018 16:44:40 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:30 +0100 Message-Id: <20180619154435.18898-52-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::244 Subject: [Qemu-devel] [PULL 51/56] docker: docker.py don't conflate checksums for extra_files X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This just gets confusing especially as the helper function doesn't even take into account any extra files (or the executable). Currently the actual check just ignores them and also passes the result through _dockerfile_preprocess so we fix that too. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé -- 2.17.1 diff --git a/tests/docker/docker.py b/tests/docker/docker.py index e6685f6d81..0a0155c941 100755 --- a/tests/docker/docker.py +++ b/tests/docker/docker.py @@ -203,8 +203,10 @@ class Docker(object): tmp_df.write("\n") tmp_df.write("LABEL com.qemu.dockerfile-checksum=%s" % - _text_checksum("\n".join([dockerfile] + - extra_files_cksum))) + _text_checksum(_dockerfile_preprocess(dockerfile))) + for f, c in extra_files_cksum: + tmp_df.write("LABEL com.qemu.%s-checksum=%s" % (f, c)) + tmp_df.flush() self._do_check(["build", "-t", tag, "-f", tmp_df.name] + argv + \ @@ -319,7 +321,7 @@ class BuildCommand(SubCommand): _copy_binary_with_libs(args.include_executable, docker_dir) for filename in args.extra_files or []: _copy_with_mkdir(filename, docker_dir) - cksum += [_file_checksum(filename)] + cksum += [(filename, _file_checksum(filename))] argv += ["--build-arg=" + k.lower() + "=" + v for k, v in os.environ.iteritems() From patchwork Tue Jun 19 15:44:31 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139190 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5391207lji; Tue, 19 Jun 2018 09:08:04 -0700 (PDT) X-Google-Smtp-Source: ADUXVKK8qVVY/jHZBS2i6mmEVjBVdrQv1Rjo1DZXWt8hnGvx63QfsrTvjNeZOzhC4xBg/U3hnMlY X-Received: by 2002:ac8:f2a:: with SMTP id e39-v6mr15545947qtk.88.1529424484558; Tue, 19 Jun 2018 09:08:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424484; cv=none; d=google.com; s=arc-20160816; b=LxES2CGXwLfFNHpV9ekdNFVeyauVp9y0aZHl9uovZxWkj6oaBr23rhfZQkT9R4Aj8q IJe3pc5hPsXS0W3VFBOaFMmEOpND5QSJcEN/A+g7IvQS2qIMppacbI3vt/ULstytZGCv 9J4RGkSW4J8HQ1I5EwkJewEnZP2UtkoEtT/UB/8eBRtPrX77cRj5DE8tq+B8r0PIwtJv bBCNjTTmGqgxo/XUruYOFnxYsznAbxv8bNinlCJXw69TyTs2oeV/f+bRbuBXX7iO1QEe v/bBhdtoDP8gkQ6O82uNWJSXzSARO6lxHFgYvZOHtI6J6tPVr0p8I+VZmyEdVDqulaBI WCdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=gmUYP4NWio58be30lOOjMYE5Li37ls87Zycph2WvLvQ=; b=Y97iX+YFrAe9dZdVymoIyjubZy6n8czb5V4C6ybczEt4Foge6nSdxxcOkf7MdbM/h7 18O6IeHl7Bppg1WqF+xjH1WcNLDMy7+Yh0Na5zC4iHL1OgasheGg0R0UStdbpc+Vt0jf wlPEpkvKq/W/SY8bmo3olnjTI1MbAt3UboxmSC6qEkG4IJfN2CLD7ZiNb4HtKJsNRM5W 3Q+YVuMNJ1SOJ8Rv6kXXVLyZeL2jML9T0KZVH/YXsdHfTsyTOH3kKzD/O9hXxOJCg5wv 6tjLyGyDk4IAnHEfX2ULR+PC32F9QoEnPNc7NOGQpgIBMpMmbc5h4WRGBK/akfgUo2F1 Vwzw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=jAh1TqVN; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id d30-v6si51812qtd.302.2018.06.19.09.08.04 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:08:04 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=jAh1TqVN; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43457 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJAp-0008EQ-W7 for patch@linaro.org; Tue, 19 Jun 2018 12:08:04 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38959) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvO-0004CK-1f for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvE-0001nN-S8 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:05 -0400 Received: from mail-wr0-x230.google.com ([2a00:1450:400c:c0c::230]:39235) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvE-0001ly-9E for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:56 -0400 Received: by mail-wr0-x230.google.com with SMTP id w7-v6so170761wrn.6 for ; Tue, 19 Jun 2018 08:51:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gmUYP4NWio58be30lOOjMYE5Li37ls87Zycph2WvLvQ=; b=jAh1TqVN22h1cTpyonEpS5Jj+Ui093Fv/CQTcUuduJKX0s5QZ7XeJR+SbjAqZERFhG al/aa5ZkbeLXgBZLImRoLJ1GwnjG0GCskV+BfPOu3+92890bNhCnXYVn9lEaZDFDubGN 69/UL7TVN8U+j8pyuh+jjqnrZLxKZ5xiCGpfc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gmUYP4NWio58be30lOOjMYE5Li37ls87Zycph2WvLvQ=; b=DjrmF+FBLa2Y3Iqxjmnpj7VA8MS9CP16YevoriVITXo2oiRIM71frI59GLRIRXfX54 asuEijuHwF2Evg8wfIjnBfeJwQhg6RAtnN+ZoMDm9vrSd4nGGDoEMddfRN1b2ZHUk1+m RHFVy5eievrM5/xy5oVaJtnJnAEPn38jOsqVA+3I/M30muu8aRxYE1R8brqMQ3oGMSyk Kdt5d1ulRuuL06g1MZwHwItLacA8PJxXOix8oM6MBjVC1zf+HRhwAa8Y6cVGSskIxq+C JfckHlVr9qneue9/OZblogrVyk6TAreHD1RaewqYBT3SIUWrqhq2RKAzMy77vmqY6agn Lqdg== X-Gm-Message-State: APt69E2qt/2XltQu5iP8TvUKvDJFLx75XYzkbrkut7bsw3YOIDgsWavu Pww6Zm4lb222R0H9eNokFHg0Dg== X-Received: by 2002:adf:f112:: with SMTP id r18-v6mr14160765wro.134.1529423515150; Tue, 19 Jun 2018 08:51:55 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id b14-v6sm11425wrn.57.2018.06.19.08.51.48 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:50 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 1EA873E1139; Tue, 19 Jun 2018 16:44:40 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:31 +0100 Message-Id: <20180619154435.18898-53-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::230 Subject: [Qemu-devel] [PULL 52/56] docker: docker.py add check sub-command X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This command allows you to check if we need to re-build a docker image. If the image isn't in the repository or the checksums don't match then we return false and some text (for processing in makefiles). Signed-off-by: Alex Bennée --- - fix prints to be "modern" - PEP8 fixes - split inspect into function -- 2.17.1 diff --git a/tests/docker/docker.py b/tests/docker/docker.py index 0a0155c941..770b22424b 100755 --- a/tests/docker/docker.py +++ b/tests/docker/docker.py @@ -181,8 +181,14 @@ class Docker(object): stderr=subprocess.STDOUT, **kwargs) + def inspect_tag(self, tag): + try: + return self._output(["inspect", tag]) + except subprocess.CalledProcessError: + return None + def get_image_dockerfile_checksum(self, tag): - resp = self._output(["inspect", tag]) + resp = self.inspect_tag(tag) labels = json.loads(resp)[0]["Config"].get("Labels", {}) return labels.get("com.qemu.dockerfile-checksum", "") @@ -444,6 +450,36 @@ class CcCommand(SubCommand): return Docker().command("run", cmd, args.quiet) +class CheckCommand(SubCommand): + """Check if we need to re-build a docker image out of a dockerfile. + Arguments: """ + name = "check" + + def args(self, parser): + parser.add_argument("tag", + help="Image Tag") + parser.add_argument("dockerfile", + help="Dockerfile name") + + def run(self, args, argv): + dockerfile = open(args.dockerfile, "rb").read() + tag = args.tag + + dkr = Docker() + info = dkr.inspect_tag(tag) + if info is None: + print("Image does not exist") + return 1 + + if dkr.image_matches_dockerfile(tag, dockerfile): + if not args.quiet: + print("Image is up to date") + return 0 + else: + print("Image needs updating") + return 1 + + def main(): parser = argparse.ArgumentParser(description="A Docker helper", usage="%s ..." % os.path.basename(sys.argv[0])) From patchwork Tue Jun 19 15:44:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139205 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5403484lji; Tue, 19 Jun 2018 09:18:55 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKm0EmKf1+3Y62C0gKMmAQyv/c05b96P6Su74fesg8gnOgyW8M2GYFePJqA7wb0nmfOwFSy X-Received: by 2002:ac8:678c:: with SMTP id b12-v6mr15038499qtp.314.1529425135560; Tue, 19 Jun 2018 09:18:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425135; cv=none; d=google.com; s=arc-20160816; b=xWQdrXT1sNAkbx4lZO48wGhMR1NT2/+hQFvhnmwTSJClhaDgXFZeyGy/XVF5I3XKZC +Hx4CIb5Z3o75+hMeQqhssiIVwtoq/0pW2pqH+3Udz3E4NH2HYKgx416+gEhmpfWTw2s ElFEXmO0rllMQH5OBbNW8/6MNHgVi7st4D+EnX2ZvzQ1AqdxYsF3f0BFfbQ/AMODA22O QNneEdVtwutxl4sqWdTCgiqDcYCGP0vhTl0RKvP8MfInAx2D96BWv0qgXONvhUF8+Jej gwbPbPMwlqEErObQAcZlBQApvj4fUqUwFUIGACMhVbhmLuIUSv34DblphsXZrp62eFKV yaeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=O3bd1kKQFTeHiwsVvraCHf6rIURCFJmZoZ8PpvjxNVM=; b=gBbVmK6urdmx0N2V1z3TA7mshpjsOUf3/BmSq76mGhx9LShu5tNFBPa3fDkQvF2ooy 1rAKUA0oQN+Do46kiyqg5sEg9shKzwNrf6Q/48/1X21Ji1rHhQSKYyUAwMw7aoCClGsL AOQgJSrTVXe9dGonzH6xQC5EwzqaGwKH6BdY4jFHs7Kt68P7EnQD3/Us4PZNNUIOZKpJ 1ZiJ6mN1dTZxRtbcwJfoLs21ThospifGAEwRyQCLYvlMLkPqE3QWfs0bXyfQhbywLkKQ EXdszJ/mnBr+yM1/mJ04DuQBLbjSO5XjfFSnT3NDCDVlMdY34fVkqXRpWiHiPqq4tc6W 6I7w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=cSIGORyD; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id u185-v6si63346qkc.234.2018.06.19.09.18.55 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:18:55 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=cSIGORyD; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43560 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJLL-00011j-1I for patch@linaro.org; Tue, 19 Jun 2018 12:18:55 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45897) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4q-0004X4-ET for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4l-0007Z9-Kl for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:52 -0400 Received: from mail-wm0-x231.google.com ([2a00:1450:400c:c09::231]:53058) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4l-0007Z1-F3 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:47 -0400 Received: by mail-wm0-x231.google.com with SMTP id p126-v6so1277816wmb.2 for ; Tue, 19 Jun 2018 09:01:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=O3bd1kKQFTeHiwsVvraCHf6rIURCFJmZoZ8PpvjxNVM=; b=cSIGORyDV1FcJ5dKc7tQgwwsKdb5JTxg4EFb61Hdg4u4ogO+PQbwPk5LZBVm0sB77s wc4Mr4XP//p8uAUcQia/Ah9aU2ZYuF5pJFr2YwedgZY+gBTWv44GQ2SpVrCnqUDQHs0n pQX34vcgBm2o2HtQBfuL2lJNakDfp5DonE/II= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=O3bd1kKQFTeHiwsVvraCHf6rIURCFJmZoZ8PpvjxNVM=; b=DfIR8N8eSpzmF7S2Tl0+iQk6rMnMDG+Bsu+81v7q8R/bD0GbCLrwL9+iDv5v1OwK6F vpLP1w3NZyhSB6hmdvrTwV9IDX9WXNM0V4lhX3DJ6kuzSsbNoekS7nkqneQfh5sq9qKK 0mhxntCosrXzMOVvGzCu3gEY+KkYrVgN/IcVCngcliH8A+RB8d8IhuUoCipB/cLrsXgm D/v1Q1pTRWEFEUt2jI8OX0ZtCJVrBuSwN3u2ftKNl+ny/C6PfCJcMAPdpEky9ZaGfkDG BPrMwjnXDy0vmHc6auMtylE4bOXdzg2h86gq3NGWcLtt/Pays+5k2O0yLVIdJAd0D5tP Uwgg== X-Gm-Message-State: APt69E0CQFpBevdRyveewOuqNL0+dDuMLNBCdOSSTLmTStXx6UBT5hE+ m6NxzRJCC7SR49jCagRupHEokw== X-Received: by 2002:a1c:4189:: with SMTP id o131-v6mr11623216wma.7.1529424106095; Tue, 19 Jun 2018 09:01:46 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id n7-v6sm39235wrr.39.2018.06.19.09.01.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:45 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 3628F3E11A6; Tue, 19 Jun 2018 16:44:40 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:32 +0100 Message-Id: <20180619154435.18898-54-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::231 Subject: [Qemu-devel] [PULL 53/56] tests/Makefile: call sub-makes with SKIP_DOCKER_BUILD=1 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" As we now ensure all the images we are going to use are built in the top level make file lets not over complicate things by running the full script again. We do run the check script just in case someone deletes the docker image while we are running. Signed-off-by: Alex Bennée -- 2.17.1 diff --git a/tests/Makefile.include b/tests/Makefile.include index 2dd0700a88..dad20e1b9b 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -947,10 +947,14 @@ $(foreach PROBE_TARGET,$(TARGET_LIST), \ $(eval build-tcg-tests-$(PROBE_TARGET): $(DOCKER_PREREQ)))) build-tcg-tests-%: - $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" guest-tests,) + $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" \ + SKIP_DOCKER_BUILD=1 TARGET_DIR="$*/" guest-tests, \ + "BUILD", "TCG tests for $*") run-tcg-tests-%: build-tcg-tests-% - $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" run-guest-tests,) + $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" \ + SKIP_DOCKER_BUILD=1 TARGET_DIR="$*/" run-guest-tests, \ + "RUN", "TCG tests for $*") clean-tcg-tests-%: $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" clean-guest-tests,) diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index 87f449264f..c0f09505bb 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -34,7 +34,15 @@ docker-qemu-src: $(DOCKER_SRC_COPY) docker-image: ${DOCKER_TARGETS} -# General rule for building docker images +# General rule for building docker images. If we are a sub-make +# invoked with SKIP_DOCKER_BUILD we still check the image is upto date +# though +ifdef SKIP_DOCKER_BUILD +docker-image-%: $(DOCKER_FILES_DIR)/%.docker + $(call quiet-command, \ + $(DOCKER_SCRIPT) check --quiet qemu:$* $<, \ + "CHECK", "$*") +else docker-image-%: $(DOCKER_FILES_DIR)/%.docker @if test "$@" = docker-image-debian-bootstrap -a -z "$(EXECUTABLE)"; then \ echo WARNING: EXECUTABLE is not set, debootstrap may fail. 2>&1 ; \ @@ -46,6 +54,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker $(if $(EXTRA_FILES),--extra-files $(EXTRA_FILES))\ $(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\ "BUILD","$*") +endif # Enforce dependencies for composite images docker-image-debian: docker-image-debian9 @@ -65,7 +74,9 @@ docker-image-debian-win64-cross: docker-image-debian8-mxe # Debian SID images - we are tracking a rolling distro so we want to # force a re-build of the base image if we ever need to build one of # its children. +ifndef SKIP_DOCKER_BUILD docker-image-debian-sid: NOCACHE=1 +endif docker-image-debian-alpha-cross: docker-image-debian-sid docker-image-debian-hppa-cross: docker-image-debian-sid From patchwork Tue Jun 19 15:44:33 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139207 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5405443lji; Tue, 19 Jun 2018 09:20:36 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKaaLVf48rMfOY+CM67nnGOT4iJ2F+Ej/+yR8NTsgvz9Ak2/IEBhKsSrwGKxRlyNn2WMdNK X-Received: by 2002:a37:bf43:: with SMTP id p64-v6mr14019403qkf.46.1529425236036; Tue, 19 Jun 2018 09:20:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529425236; cv=none; d=google.com; s=arc-20160816; b=mEPo47cvvnH/am6IDN0rioBv3hGSfOiwsXSuV16GcQdkwKSgaHNrCaOmcdVA+xpOrw VT7d9ddpUOQc64enL39l6DySdv666AM3Wz11zDTmA32TlZl7H9XFJKjtv1Hw3MfWMnOw 66NIYSwuVjJmDP7CctzFAinJB2N5gb/i8Iv4VgRFj0bgJJ7T4ElUvzPitKy/cpp72xfV hhKq17rG6LU6H3AbOJhV8Up/NqY2j3taUYcOa1R2wY/ho+OQPHzJVhoQRxubP0G4gIXQ o+nUL+7QDwjglfvAeReCjaZvptVr0lr7KFT3g0+aIaUExO0f0qg5QuakcgDUz5+EqwTs 9kwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=gUGvwPcoATAZINWWKrqT7NQM0xiew4DMZAClax1Ef2I=; b=mPmjtCRxzQ5kw4h0RkhE+tKpji0XqXOQvcX8oMXrd333l+09/GcR91EEHp8+GELrYP nB6lKNDPNmaF0M+uAdqGeamB+ikC9B52Qlc4KURSAczEJV61logZxLxUFjWy4BXQ6QXC nhnFJruX99RNqZ2cSkn9qLYiVroh992o5prSlDb7GkDWmvq3kISu8NvWI9q/WW8LB+QE 4etQRz7k5ZZ9Ll2ifqUbCQyMkLHUaQWKwgXMo38ivaZ4QrYCE5zON0DMujz+Qaxn8AMs A+pro+hEdcoARQbbgpyHdOuwsILihlEnDzniB58PxKiAN0S4NKGwpnjfO8XbqB4Y62pu Kv7Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=cFMl44S8; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id f6-v6si4370qkd.264.2018.06.19.09.20.35 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:20:36 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=cFMl44S8; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43573 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJMx-0001Zx-AM for patch@linaro.org; Tue, 19 Jun 2018 12:20:35 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39245) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIva-0004Mm-Ie for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvJ-0001uH-RL for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:18 -0400 Received: from mail-wm0-x22b.google.com ([2a00:1450:400c:c09::22b]:34715) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvJ-0001sq-GD for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:01 -0400 Received: by mail-wm0-x22b.google.com with SMTP id l15-v6so19348696wmc.1 for ; Tue, 19 Jun 2018 08:52:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gUGvwPcoATAZINWWKrqT7NQM0xiew4DMZAClax1Ef2I=; b=cFMl44S8TFl+aCxPyBjUO/6afEF27g9xao+mt1hIlgZqp3zIPjRSUw1wpsWwYXxQKY Hs7Bj8cn61kAltXgoQCLediEM+rPw2r5BdfUVTrEX4OUmIdfLvvq6oIyUJDm9FWUDlBp H3fBXVneVTgPpaMAOX6GZ1R2nD0DDh1OwiYC4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gUGvwPcoATAZINWWKrqT7NQM0xiew4DMZAClax1Ef2I=; b=Bd2fy865U0wUf7D4YsSkHs2ZLsguo5IP1Ca9fNE9fr/7YsecczIEqjyrk7CdtycQsj 8U/adGm2n/T743DYP0o9RlugwvsVoWQQFtUkp+r8G7MWW6O2+N/t4ZPFGLrQ7QpanIzW j3tUpN1OHSrbjOudIzneh4BgJnnXszVXeigX63p8j5pTJuX+tXecWV90FXukgSkVEJs+ x9rIJTI7mFnC/nDcKIV4Rg4JYwnqGbzdIr1ypB49B/5Udnhse9+YNZAhjh3IlEdzwx/m uevCQpzWyVfRFJK6suZ3wMpQj35+DMjou+P6i6gRCN/f3gZW62ue9F6X00egZRMFK2at P4Uw== X-Gm-Message-State: APt69E3R+MKRIh1vaWyh7kYPubZGO9noYqUauJWPMEo+jwYej/IJVXxe 5A1LlsKjB2ScfEtK8h/OaK+yyA== X-Received: by 2002:a1c:470b:: with SMTP id u11-v6mr11866067wma.49.1529423520285; Tue, 19 Jun 2018 08:52:00 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id s13-v6sm16734wrq.48.2018.06.19.08.51.50 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:56 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 4B10D3E11BE; Tue, 19 Jun 2018 16:44:40 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:33 +0100 Message-Id: <20180619154435.18898-55-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::22b Subject: [Qemu-devel] [PULL 54/56] docker: docker.py adding age check command X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This is useful for querying if an image is too old. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé --- v7 - use cached info -- 2.17.1 diff --git a/tests/docker/docker.py b/tests/docker/docker.py index 770b22424b..c748c457b9 100755 --- a/tests/docker/docker.py +++ b/tests/docker/docker.py @@ -29,6 +29,7 @@ from tarfile import TarFile, TarInfo from StringIO import StringIO from shutil import copy, rmtree from pwd import getpwuid +from datetime import datetime,timedelta FILTERED_ENV_NAMES = ['ftp_proxy', 'http_proxy', 'https_proxy'] @@ -187,6 +188,9 @@ class Docker(object): except subprocess.CalledProcessError: return None + def get_image_creation_time(self, info): + return json.loads(info)[0]["Created"] + def get_image_dockerfile_checksum(self, tag): resp = self.inspect_tag(tag) labels = json.loads(resp)[0]["Config"].get("Labels", {}) @@ -458,11 +462,14 @@ class CheckCommand(SubCommand): def args(self, parser): parser.add_argument("tag", help="Image Tag") - parser.add_argument("dockerfile", - help="Dockerfile name") + parser.add_argument("dockerfile", default=None, + help="Dockerfile name", nargs='?') + parser.add_argument("--checktype", choices=["checksum", "age"], + default="checksum", help="check type") + parser.add_argument("--olderthan", default=60, type=int, + help="number of minutes") def run(self, args, argv): - dockerfile = open(args.dockerfile, "rb").read() tag = args.tag dkr = Docker() @@ -471,13 +478,32 @@ class CheckCommand(SubCommand): print("Image does not exist") return 1 - if dkr.image_matches_dockerfile(tag, dockerfile): - if not args.quiet: - print("Image is up to date") - return 0 - else: - print("Image needs updating") - return 1 + if args.checktype == "checksum": + if not args.dockerfile: + print("Need a dockerfile for tag:%s" % (tag)) + return 1 + + dockerfile = open(args.dockerfile, "rb").read() + + if dkr.image_matches_dockerfile(tag, dockerfile): + if not args.quiet: + print("Image is up to date") + return 0 + else: + print("Image needs updating") + return 1 + elif args.checktype == "age": + timestr = dkr.get_image_creation_time(info).split(".")[0] + created = datetime.strptime(timestr, "%Y-%m-%dT%H:%M:%S") + past = datetime.now() - timedelta(minutes=args.olderthan) + if created < past: + print ("Image created @ %s more than %d minutes old" % + (timestr, args.olderthan)) + return 1 + else: + if not args.quiet: + print ("Image less than %d minutes old" % (args.olderthan)) + return 0 def main(): From patchwork Tue Jun 19 15:44:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139191 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5393667lji; Tue, 19 Jun 2018 09:10:17 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIkNwdQA+Xd5TEBmUVMK4AhPTf1LU5gSuxvf82pTm09YZbVcQqjVoLIq3QWCgwaqn1nNapo X-Received: by 2002:ac8:6110:: with SMTP id a16-v6mr14990617qtm.389.1529424617371; Tue, 19 Jun 2018 09:10:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529424617; cv=none; d=google.com; s=arc-20160816; b=i2AFP2vC/XuYptx+ixSKsOzwCLT1wj5sxOUrpBgSX/ryA+phQcVVRHhJPziIHvr9m+ p8s+KnaGjJWanTizPTu4VwFr7GZuStUVdoTQkWX96b8VVCFG8FSXiReLq7jH5OB+m9bc Nvon3HmgwzTEO4y46EoqNYRjGbK2cmIjJB1IP8yrqDK15VeseI1FdW8LAgEuB5C50/o9 5OVjpN3+sC5t03fWXsamuXi1HIzMrdls/nCOR6FQnbghkviOo7n8Tn1Z9n0VwG5LlFs4 3bdIGsV5NGDtm22aNNnplapky2rftkkasqs463ruNtau4O5JeCOSWpaBjS4oR7TgjbUU wgVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=Da57ECTJ27F1UqzcF6YwMSIUfcwat0ZTTT73wmFouN4=; b=H1vRc/AeZES6JFsXJC5k7/RsbdZgmOdYqErjKwjpca4trfV9IIyy66Djng98kz0xSW lyIyGrFJzVDNxxah5G3SdzFRBEIeAcOZv3lvGnkOzxAeeY1zAo6r+nKaA2blFhPbrOEc FcTgjYQiDrg93sYhWyfjVsm7mfLQ5oKD/3AB8kbPZ11ybATdCFFjOnKUaeeh5/OybfGP 6p4pw6tO5owr4D/Z8l3Th6mJzrXyfmCuynBIGKd4nZXQO6nvmlRBWseA3QozSwBZDH7t DCnqN4mEBJSC8u79XnwmVhQwRAztXVDxi0uWBkiiCO3ut+FpILK6ozciCXj8X6CGIiGZ +8Nw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="V4pWTGy/"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id j3-v6si81419qtp.72.2018.06.19.09.10.17 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:10:17 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="V4pWTGy/"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43491 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJCy-0002td-Hz for patch@linaro.org; Tue, 19 Jun 2018 12:10:16 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38868) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVIvJ-00048t-V6 for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVIvD-0001kv-2b for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:52:01 -0400 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:36825) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVIvC-0001jz-NU for qemu-devel@nongnu.org; Tue, 19 Jun 2018 11:51:54 -0400 Received: by mail-wr0-x243.google.com with SMTP id f16-v6so186005wrm.3 for ; Tue, 19 Jun 2018 08:51:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Da57ECTJ27F1UqzcF6YwMSIUfcwat0ZTTT73wmFouN4=; b=V4pWTGy/ahcya5xJhbtarK9N4P3yP/3hQQm+iwnS5XtmTnKzhNH5eP2hFvAxI2eJ+2 PIWLTahIZBdo3CX7HbhmCN0TkkARfhYVtzZ80Rhz33MICucF5RQV2JfsSt79/qxmnuZ0 c6o9306U8hXNWzlyoQI2M6A+tP04lRkd7NTao= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Da57ECTJ27F1UqzcF6YwMSIUfcwat0ZTTT73wmFouN4=; b=dPMse5FPfz1FGXzSNBo/F2hkU0WBHWa1rsnJ58893PKd1Les3oj8Nym3PbgA3AI6J0 QPLov7pka1xbq/GbxEP5HaUyUrTENKwtkE522R2o6wQbPYOtKJDJFi1ORwJ/0jkc2dsM 4bvwQlL0xH/944/+oHHgc9o2P9cW7qxYNt/IrYQzrQMEbrt1fi3c6aU4Uy6pV7NtFgHs AhHSgcVVjMSFHb3dc9lr8nulrMwu5kL3LbRFZ5FJvCMoDZlo/CPyybPGQBCfNtoi1dCe GSys04qrOyzIVQEU7VILqhPZPXIGBLsaNYWZNSQLB6VieNTF2I7W0sWdF7sA8HPfg7RT kwnQ== X-Gm-Message-State: APt69E33ht0lGbVXC1gE6970I0DIQWbnMsU0VAGxXkkDhJmYvgBIWjZc mbKTkFFoNh8g2PytCO+nuAEGZQ== X-Received: by 2002:adf:cc8e:: with SMTP id p14-v6mr13594561wrj.226.1529423513597; Tue, 19 Jun 2018 08:51:53 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id 203-v6sm586021wmp.23.2018.06.19.08.51.47 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 08:51:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 5DFA03E11F5; Tue, 19 Jun 2018 16:44:40 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:34 +0100 Message-Id: <20180619154435.18898-56-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::243 Subject: [Qemu-devel] [PULL 55/56] tests/docker/Makefile.include: only force SID to NOCACHE if old X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Now we can check the age of a docker image we can be a little more intelligent about re-building Sid images and only force NOCACHE if it is "old". Signed-off-by: Alex Bennée -- 2.17.1 diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include index c0f09505bb..91d9665517 100644 --- a/tests/docker/Makefile.include +++ b/tests/docker/Makefile.include @@ -75,8 +75,14 @@ docker-image-debian-win64-cross: docker-image-debian8-mxe # force a re-build of the base image if we ever need to build one of # its children. ifndef SKIP_DOCKER_BUILD +ifeq ($(HAVE_USER_DOCKER),y) +SID_AGE=$(shell $(DOCKER_SCRIPT) check --checktype=age --olderthan=180 --quiet qemu:debian-sid) +ifeq ($(SID_AGE),) +else docker-image-debian-sid: NOCACHE=1 endif +endif +endif docker-image-debian-alpha-cross: docker-image-debian-sid docker-image-debian-hppa-cross: docker-image-debian-sid From patchwork Tue Jun 19 15:44:35 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 139230 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp5430388lji; Tue, 19 Jun 2018 09:43:03 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJno82kRaXw+9vZyaQaKAtQC8pU32FBS7PUdv+SFi3aWcG8AMcKfzn+CFzyF4oHfCR7Qscy X-Received: by 2002:a37:c9d3:: with SMTP id m80-v6mr14171187qkl.173.1529426583410; Tue, 19 Jun 2018 09:43:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529426583; cv=none; d=google.com; s=arc-20160816; b=zUCtqSZ8whYZw7WnOFPVfDr62o7InoIEg3IiB0P9FeT5wDGPSPO+lZ5yox4amiIHeG VJAYSlSVX1/rtBYplXM8uQvzaDCgihyFVfTNm1gnEwQpZ5mpU9IGkDwUdHQunyytiKUh /s57ZPekFBWs7QzQ4QqiQ48MTD1XgetEhQteHuj2lpmRPGJQ8aiUZyDHlHsTjFchlMwN jQrEKwR4yqnvhqmIPWagy1Mk7GUiAgq+wrPjwC3vmVp4jiJvd7AiT2n+f/YdJ6Vibb+4 wvrvYzSpeQVYqGkheEHhxjHbZ4PgRIsc8Gi9w2xkJhQGBNVspyiUICA5JhswQgOq8psQ eWog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=2G9ZC+T782z4FqjcA5SlNuj4yrsbRdTgV8lx2Dclq7s=; b=CXhhY+7SWG0lcciqWyE3gdcv1b8IB182FMnyh6mGcnF/L6uLMl6SbHFzF1DgvhhI7Q y88LlaLY3U2Jev+CMQD1wG77uzlCUjymKMYHGVzkVONS0+015nTUrqOJ+Ky9MpIf6kop vg+dm4nb/u3YtUhH4EL26Z7ob89fB46doGgDqv8wzRFSwKWSqzCnKiA0KcjAhehAq2lK tFHkoDUmv9PwvlWrWc+9fazIxYTNDRkW0ZA4/JAEH41URpoqwo81YQ8kRiShanroroEY 6nXayP1DFZJdiPVhasv7OllA3G+uatipOjrfJwveiD07MBV6alehB8fZ6vIA8jDR6WnI Vj4w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="RfbTU/SJ"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id d30-v6si132229qtd.302.2018.06.19.09.43.03 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 19 Jun 2018 09:43:03 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="RfbTU/SJ"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43764 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJig-0003kp-Ql for patch@linaro.org; Tue, 19 Jun 2018 12:43:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46039) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fVJ4z-0004eN-LN for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fVJ4u-0007dE-1F for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:02:01 -0400 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:52206) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fVJ4t-0007co-RH for qemu-devel@nongnu.org; Tue, 19 Jun 2018 12:01:55 -0400 Received: by mail-wm0-x236.google.com with SMTP id r15-v6so1270175wmc.1 for ; Tue, 19 Jun 2018 09:01:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=2G9ZC+T782z4FqjcA5SlNuj4yrsbRdTgV8lx2Dclq7s=; b=RfbTU/SJTtzHIdDaN5z1aIohQUKnpNkRO6uXDGIk2cQEE3ZoyxBLJG+FQPbzenB324 LoCQ32kSsG9jTSKC3CrQqLGJVaRy+vVwNqBHmeDifvL+Vv0fiUhnefgyg3XmTnj/PNrG pDMXi8dOOTp76+PhQ/ukKjRQYoyg+bYoknUsw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=2G9ZC+T782z4FqjcA5SlNuj4yrsbRdTgV8lx2Dclq7s=; b=iHkpJXBrfTzX+Ie6PIgkBtX3EBw/vzd/fV24tQdtus6Qz6U/trrWsNqpDdjDVtmsYZ 8hIBBuufhpXEkjVeiMAw9iAf+y+L9mtY2mLzUNpFnNJ9fSZ3O060QVCgavrX3sG0GM9l BYAGPZ+3ez3cRk5ewAvXxfu1DucHLzwPNBb8SRVuB10nOnOXzo311cTREpLHbl3FXik0 a2uXM8iMshdxuOdwWIrBdSeYC7DqXm8v/DyUI+BkFrO+DSEoE2NUdfRiR2maIuYGVh3B ZuXol51JQYBnHfNbyuxLtsdElZaTHRYGIpE8JxxSNlpIZWOPW0g5B8RyTKdRg23/F8dZ 287A== X-Gm-Message-State: APt69E0tbDdbVp8C6Pb0GJRrOdpOeACFBWNv/6HYTnLlGLJh4LAxovU9 HLolZBHEkWmPpTz9lfWoaIUAYg== X-Received: by 2002:a1c:e546:: with SMTP id c67-v6mr10219547wmh.108.1529424114675; Tue, 19 Jun 2018 09:01:54 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id v13-v6sm40228wrq.43.2018.06.19.09.01.47 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 19 Jun 2018 09:01:49 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 72D7D3E140A; Tue, 19 Jun 2018 16:44:40 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: peter.maydell@linaro.org Date: Tue, 19 Jun 2018 16:44:35 +0100 Message-Id: <20180619154435.18898-57-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180619154435.18898-1-alex.bennee@linaro.org> References: <20180619154435.18898-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::236 Subject: [Qemu-devel] [PULL 56/56] .travis.yml: add check-tcg test X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, =?utf-8?q?Alex_Benn=C3=A9e?= , richard.henderson@linaro.org, qemu-devel@nongnu.org, f4bug@amsat.org, cota@braap.org, famz@redhat.com, aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- v7 - explicit build-tcg-prereqs -- 2.17.1 diff --git a/.travis.yml b/.travis.yml index fabfe9ec34..ad352c5784 100644 --- a/.travis.yml +++ b/.travis.yml @@ -153,3 +153,11 @@ matrix: - TEST_CMD="" before_script: - ./configure ${CONFIG} --extra-cflags="-g3 -O0 -fsanitize=thread -fuse-ld=gold" || { cat config.log && exit 1; } + - env: + - CONFIG="--disable-system --disable-docs" + - TEST_CMD="make check-tcg" + script: + - make ${MAKEFLAGS} build-tcg-prereqs && ${TEST_CMD} + sudo: required + dist: trusty + compiler: gcc