Richard Henderson
a1f233f25f
target/arm: Implement SVE floating-point trig select coefficient
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-22-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:09 +01:00
Richard Henderson
0762cd428f
target/arm: Implement SVE floating-point exponential accelerator
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-21-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:09 +01:00
Richard Henderson
4b242d9c1b
target/arm: Implement SVE Compute Vector Address Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-20-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:09 +01:00
Richard Henderson
d9d78dccc8
target/arm: Implement SVE Bitwise Shift - Unpredicated Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-19-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:09 +01:00
Richard Henderson
96f922cccc
target/arm: Implement SVE Stack Allocation Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-18-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:09 +01:00
Richard Henderson
9a56c9c3a9
target/arm: Implement SVE Index Generation Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-17-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:09 +01:00
Richard Henderson
fea98f9c30
target/arm: Implement SVE Integer Arithmetic - Unpredicated Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-16-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:09 +01:00
Richard Henderson
96a36e4a44
target/arm: Implement SVE Integer Multiply-Add Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-15-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
afac6d0467
target/arm: Implement SVE Integer Arithmetic - Unary Predicated Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-14-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
fe7f8dfb2d
target/arm: Implement SVE bitwise shift by wide elements (predicated)
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-13-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
27721dbb7a
target/arm: Implement SVE bitwise shift by vector (predicated)
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-12-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
ccd841c3d7
target/arm: Implement SVE bitwise shift by immediate (predicated)
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-11-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
047cec971d
target/arm: Implement SVE Integer Reduction Group
...
Excepting MOVPRFX, which isn't a reduction. Presumably it is
placed within the group because of its encoding.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-10-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
f97cfd596e
target/arm: Implement SVE Integer Binary Arithmetic - Predicated Group
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-9-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
028e2a7b87
target/arm: Implement SVE Predicate Misc Group
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-8-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
516e246a1a
target/arm: Implement SVE Predicate Logical Operations Group
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-7-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
9e18d7a67f
target/arm: Implement SVE predicate test
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-6-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
d1822297f6
target/arm: Implement SVE load vector/predicate
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-5-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
39eea56172
target/arm: Implement SVE Bitwise Logical - Unpredicated Group
...
These were the instructions that were stubbed out when
introducing the decode skeleton.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-4-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
38388f7ee3
target/arm: Add SVE decode skeleton
...
Including only 4, as-yet unimplemented, instruction patterns
so that the whole thing compiles.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-3-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:08 +01:00
Richard Henderson
8c71baedb8
target/arm: Introduce translate-a64.h
...
Move some stuff that will be common to both translate-a64.c
and translate-sve.c.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180516223007.10256-2-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:07 +01:00
Abdallah Bouassida
200bf5b7ff
target/arm: Add the XML dynamic generation
...
Generate an XML description for the cp-regs.
Register these regs with the gdb_register_coprocessor().
Add arm_gdb_get_sysreg() to use it as a callback to read those regs.
Add a dummy arm_gdb_set_sysreg().
Signed-off-by: Abdallah Bouassida <abdallah.bouassida@lauterbach.com >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 1524153386-3550-4-git-send-email-abdallah.bouassida@lauterbach.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:07 +01:00
Abdallah Bouassida
9c513e786d
target/arm: Add "_S" suffix to the secure version of a sysreg
...
This is a preparation for the coming feature of creating dynamically an XML
description for the ARM sysregs.
Add "_S" suffix to the secure version of sysregs that have both S and NS views
Replace (S) and (NS) by _S and _NS for the register that are manually defined,
so all the registers follow the same convention.
Signed-off-by: Abdallah Bouassida <abdallah.bouassida@lauterbach.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 1524153386-3550-3-git-send-email-abdallah.bouassida@lauterbach.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:07 +01:00
Abdallah Bouassida
1f16378718
target/arm: Add "ARM_CP_NO_GDB" as a new bit field for ARMCPRegInfo type
...
This is a preparation for the coming feature of creating dynamically an XML
description for the ARM sysregs.
A register has ARM_CP_NO_GDB enabled will not be shown in the dynamic XML.
This bit is enabled automatically when creating CP_ANY wildcard aliases.
This bit could be enabled manually for any register we want to remove from the
dynamic XML description.
Signed-off-by: Abdallah Bouassida <abdallah.bouassida@lauterbach.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 1524153386-3550-2-git-send-email-abdallah.bouassida@lauterbach.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-18 17:48:07 +01:00
Richard Henderson
03385dfdaa
fpu/softfloat: Specialize on snan_bit_is_one
...
Only MIPS requires snan_bit_is_one to be variable. While we are
specializing softfloat behaviour, allow other targets to eliminate
this runtime check.
Cc: Aurelien Jarno <aurelien@aurel32.net >
Cc: Yongbok Kim <yongbok.kim@mips.com >
Cc: David Gibson <david@gibson.dropbear.id.au >
Cc: Alexander Graf <agraf@suse.de >
Cc: Guan Xuetao <gxt@mprc.pku.edu.cn >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Richard Henderson
d0cfecb50d
target/s390x: Remove floatX_maybe_silence_nan from conversions
...
This is now handled properly by the generic softfloat code.
Cc: Alexander Graf <agraf@suse.de >
Reviewed-by: David Hildenbrand <david@redhat.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Richard Henderson
cab3211261
target/riscv: Remove floatX_maybe_silence_nan from conversions
...
This is now handled properly by the generic softfloat code.
Cc: Palmer Dabbelt <palmer@sifive.com >
Cc: Sagar Karandikar <sagark@eecs.berkeley.edu >
Cc: Bastian Koppelmann <kbastian@mail.uni-paderborn.de >
Reviewed-by: Michael Clark <mjc@sifive.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Richard Henderson
4accd4a89f
target/mips: Remove floatX_maybe_silence_nan from conversions
...
This is now handled properly by the generic softfloat code.
Cc: Aurelien Jarno <aurelien@aurel32.net >
Cc: Yongbok Kim <yongbok.kim@mips.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Richard Henderson
1c0c951f71
target/m68k: Use floatX_silence_nan when we have already checked for SNaN
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Laurent Vivier <laurent@vivier.eu >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Richard Henderson
e1cf9adf5b
target/hppa: Remove floatX_maybe_silence_nan from conversions
...
This is now handled properly by the generic softfloat code.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Richard Henderson
a9d173dc60
target/arm: Remove floatX_maybe_silence_nan from conversions
...
This is now handled properly by the generic softfloat code.
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Richard Henderson
d7ecc062c4
target/arm: Use floatX_silence_nan when we have already checked for SNaN
...
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Alex Bennée
0acb9e7cb3
target/arm: squash FZ16 behaviour for conversions
...
The ARM ARM specifies FZ16 is suppressed for conversions. Rather than
pushing this logic into the softfloat code we can simply save the FZ
state and temporarily disable it for the softfloat call.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:15 -07:00
Alex Bennée
486624fcd3
target/arm: convert conversion helpers to fpst/ahp_flag
...
Instead of passing env and leaving it up to the helper to get the
right fpstatus we pass it explicitly. There was already a get_fpstatus
helper for neon for the 32 bit code. We also add an get_ahp_flag() for
passing the state of the alternative FP16 format flag. This leaves
scope for later tracking the AHP state in translation flags.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2018-05-17 15:27:09 -07:00
Peter Maydell
61126a8b4b
Merge remote-tracking branch 'remotes/ehabkost/tags/x86-next-pull-request' into staging
...
x86 queue, 2018-05-15
* KnightsMill CPU model
* CLDEMOTE(Demote Cache Line) cpu feature
* pc-i440fx-2.13 and pc-q35-2.13 machine-types
* Add model-specific cache information to EPYC CPU model
# gpg: Signature made Tue 15 May 2018 22:53:12 BST
# gpg: using RSA key 2807936F984DC5A6
# gpg: Good signature from "Eduardo Habkost <ehabkost@redhat.com >"
# Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF D1AA 2807 936F 984D C5A6
* remotes/ehabkost/tags/x86-next-pull-request:
i386: Add new property to control cache info
pc: add 2.13 machine types
i386: Initialize cache information for EPYC family processors
i386: Add cache information in X86CPUDefinition
i386: Helpers to encode cache information consistently
x86/cpu: Enable CLDEMOTE(Demote Cache Line) cpu feature
i386: add KnightsMill cpu model
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-17 09:57:55 +01:00
Babu Moger
ab8f992e3e
i386: Add new property to control cache info
...
The property legacy-cache will be used to control the cache information.
If user passes "-cpu legacy-cache" then older information will
be displayed even if the hardware supports new information. Otherwise
use the statically loaded cache definitions if available.
Renamed the previous cache structures to legacy_*. If there is any change in
the cache information, then it needs to be initialized in builtin_x86_defs.
Signed-off-by: Babu Moger <babu.moger@amd.com >
Tested-by: Geoffrey McRae <geoff@hostfission.com >
Message-Id: <20180514164156.27034-3-babu.moger@amd.com >
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
2018-05-15 11:33:33 -03:00
Babu Moger
fe52acd2a0
i386: Initialize cache information for EPYC family processors
...
Initialize pre-determined cache information for EPYC processors.
Signed-off-by: Babu Moger <babu.moger@amd.com >
Tested-by: Geoffrey McRae <geoff@hostfission.com >
Message-Id: <20180510204148.11687-5-babu.moger@amd.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
2018-05-15 11:33:33 -03:00
Babu Moger
6aaeb05492
i386: Add cache information in X86CPUDefinition
...
Add cache information in X86CPUDefinition and CPUX86State.
Signed-off-by: Babu Moger <babu.moger@amd.com >
Tested-by: Geoffrey McRae <geoff@hostfission.com >
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com >
Message-Id: <20180510204148.11687-3-babu.moger@amd.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
2018-05-15 11:33:33 -03:00
Eduardo Habkost
7e3482f824
i386: Helpers to encode cache information consistently
...
Instead of having a collection of macros that need to be used in
complex expressions to build CPUID data, define a CPUCacheInfo
struct that can hold information about a given cache. Helper
functions will take a CPUCacheInfo struct as input to encode
CPUID leaves for a cache.
This will help us ensure consistency between cache information
CPUID leaves, and make the existing inconsistencies in CPUID info
more visible.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Signed-off-by: Babu Moger <babu.moger@amd.com >
Tested-by: Geoffrey McRae <geoff@hostfission.com >
Message-Id: <20180510204148.11687-2-babu.moger@amd.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
2018-05-15 11:33:33 -03:00
Jingqi Liu
0da0fb0628
x86/cpu: Enable CLDEMOTE(Demote Cache Line) cpu feature
...
The CLDEMOTE instruction hints to hardware that the cache line that
contains the linear address should be moved("demoted") from
the cache(s) closest to the processor core to a level more distant
from the processor core. This may accelerate subsequent accesses
to the line by other cores in the same coherence domain,
especially if the line was written by the core that demotes the line.
Intel Snow Ridge has added new cpu feature, CLDEMOTE.
The new cpu feature needs to be exposed to guest VM.
The bit definition:
CPUID.(EAX=7,ECX=0):ECX[bit 25] CLDEMOTE
The release document ref below link:
https://software.intel.com/sites/default/files/managed/c5/15/ \
architecture-instruction-set-extensions-programming-reference.pdf
Signed-off-by: Jingqi Liu <jingqi.liu@intel.com >
Message-Id: <1525406253-54846-1-git-send-email-jingqi.liu@intel.com >
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
2018-05-15 11:33:33 -03:00
Boqun Feng
a18495159a
i386: add KnightsMill cpu model
...
A new cpu model called "KnightsMill" is added to model Knights Mill
processors. Compared to "Skylake-Server" cpu model, the following
features are added:
avx512_4vnniw avx512_4fmaps avx512pf avx512er avx512_vpopcntdq
and the following features are removed:
pcid invpcid clflushopt avx512dq avx512bw clwb smap rtm mpx
xsavec xgetbv1 hle
Signed-off-by: Boqun Feng <boqun.feng@intel.com >
Message-Id: <20180320000821.8337-1-boqun.feng@intel.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
2018-05-15 11:33:33 -03:00
Alex Bennée
905edee910
target/arm: Fix sqrt_f16 exception raising
...
We are meant to explicitly pass fpst, not cpu_env.
Cc: qemu-stable@nongnu.org
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 20180512003217.9105-12-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Alex Bennée
6ba28ddb9b
target/arm: Implement FMOV (immediate) for fp16
...
All the hard work is already done by vfp_expand_imm, we just need to
make sure we pick up the correct size.
Cc: qemu-stable@nongnu.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180512003217.9105-11-richard.henderson@linaro.org
[rth: Merge unallocated_encoding check with TCGMemOp conversion.]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Alex Bennée
ace97feef3
target/arm: Implement FCSEL for fp16
...
These were missed out from the rest of the half-precision work.
Cc: qemu-stable@nongnu.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180512003217.9105-10-richard.henderson@linaro.org
[rth: Fix erroneous check vs type]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Alex Bennée
7a1929256e
target/arm: Implement FCMP for fp16
...
These where missed out from the rest of the half-precision work.
Cc: qemu-stable@nongnu.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20180512003217.9105-9-richard.henderson@linaro.org
[rth: Diagnose lack of FP16 before fp_access_check]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Richard Henderson
95f9864fde
target/arm: Implement FP data-processing (3 source) for fp16
...
We missed all of the scalar fp16 fma operations.
Cc: qemu-stable@nongnu.org
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 20180512003217.9105-8-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Richard Henderson
b8f5171cf0
target/arm: Implement FP data-processing (2 source) for fp16
...
We missed all of the scalar fp16 binary operations.
Cc: qemu-stable@nongnu.org
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 20180512003217.9105-7-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Richard Henderson
3d99d93126
target/arm: Introduce and use read_fp_hreg
...
Cc: qemu-stable@nongnu.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 20180512003217.9105-6-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Richard Henderson
2752728016
target/arm: Implement FCVT (scalar, fixed-point) for fp16
...
Cc: qemu-stable@nongnu.org
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 20180512003217.9105-5-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00
Richard Henderson
564a063250
target/arm: Implement FCVT (scalar, integer) for fp16
...
Cc: qemu-stable@nongnu.org
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Alex Bennée <alex.bennee@linaro.org >
Message-id: 20180512003217.9105-4-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-15 14:58:43 +01:00