[PULL 6/7] softfloat: Define misc operations for bfloat16

2020-08-29 Thread Richard Henderson
From: LIU Zhiwei Signed-off-by: LIU Zhiwei Reviewed-by: Richard Henderson Message-Id: <20200813071421.2509-4-zhiwei_...@c-sky.com> [rth: Fix merge conflict with NO_SIGNALING_NANS; use bool for predicates.] Signed-off-by: Richard Henderson --- include/fpu/softfloat.h| 48

[PULL 4/7] softfloat: Define operations for bfloat16

2020-08-29 Thread Richard Henderson
From: LIU Zhiwei This patch implements operations for bfloat16 except conversion and some misc operations. We also add FloatFmt and pack/unpack interfaces for bfloat16. As they are both static fields, we can't make a sperate patch for them. Signed-off-by: LIU Zhiwei Reviewed-by: Richard

[PULL 2/7] softfloat: Add fp16 and uint8/int8 conversion functions

2020-08-29 Thread Richard Henderson
From: Frank Chang Reviewed-by: Alex Bennée Signed-off-by: Frank Chang Message-Id: <1596102747-20226-4-git-send-email-chihmin.c...@sifive.com> Signed-off-by: Richard Henderson --- include/fpu/softfloat.h | 8 fpu/softfloat.c | 34 ++ 2 files

[PULL 5/7] softfloat: Define convert operations for bfloat16

2020-08-29 Thread Richard Henderson
From: LIU Zhiwei Signed-off-by: LIU Zhiwei Reviewed-by: Richard Henderson Message-Id: <20200813071421.2509-3-zhiwei_...@c-sky.com> [rth: Use FloatRoundMode for conversion functions.] Signed-off-by: Richard Henderson --- include/fpu/softfloat.h | 54 ++ fpu/softfloat.c | 223

[PULL 7/7] softfloat: Define comparison operations for bfloat16

2020-08-29 Thread Richard Henderson
Reviewed-by: LIU Zhiwei Signed-off-by: Richard Henderson --- include/fpu/softfloat.h | 41 + 1 file changed, 41 insertions(+) diff --git a/include/fpu/softfloat.h b/include/fpu/softfloat.h index 1233f98014..78ad5ca738 100644 --- a/include/fpu/softfloat.h

[PULL 1/7] softfloat: Implement the full set of comparisons for float16

2020-08-29 Thread Richard Henderson
From: Kito Cheng Implement them in softfloat and remove the local versions in riscv. Signed-off-by: Kito Cheng Signed-off-by: Chih-Min Chao Acked-by: Alex Bennée Reviewed-by: Alistair Francis Message-Id: <1596102747-20226-2-git-send-email-chihmin.c...@sifive.com> Signed-off-by: Richard

[PULL 3/7] softfloat: Add float16_is_normal

2020-08-29 Thread Richard Henderson
From: Stephen Long This float16 predicate was missing from the normal set. Signed-off-by: Stephen Long Signed-off-by: Richard Henderson --- include/fpu/softfloat.h | 5 + 1 file changed, 5 insertions(+) diff --git a/include/fpu/softfloat.h b/include/fpu/softfloat.h index

[PULL 0/7] softfloat patch queue

2020-08-29 Thread Richard Henderson
-20200829 for you to fetch changes up to c53b1079334c41b342a8ad3b7ccfd51bf5427f5a: softfloat: Define comparison operations for bfloat16 (2020-08-29 19:25:42 -0700) * float16 comparison wrappers * float16 conversions to/from 8-bit

Re: [RFC v4 68/70] target/riscv: gdb: modify gdb csr xml file to align with csr register map

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Hsiangkai Wang > > Signed-off-by: Hsiangkai Wang > Signed-off-by: Frank Chang > --- > gdb-xml/riscv-32bit-csr.xml | 11 ++- > gdb-xml/riscv-64bit-csr.xml | 11 ++- > target/riscv/gdbstub.c | 4 ++-- > 3 files

Re: [RFC v4 70/70] target/riscv: gdb: support vector registers for rv32

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Greentime Hu > > This patch adds vector support for rv32 gdb. It allows gdb client to access > vector registers correctly. > > Signed-off-by: Greentime Hu > Signed-off-by: Frank Chang > --- > gdb-xml/riscv-32bit-csr.xml | 7 +++ >

Re: [RFC v4 69/70] target/riscv: gdb: support vector registers for rv64

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +++ b/gdb-xml/riscv-64bit-csr.xml > @@ -248,4 +248,11 @@ > > > > + > + > + > + > + > + > + Just because these are csr's doesn't mean they're unrelated to RVV. I would think that ideally they would be in the (generated)

Re: [RFC v4 67/70] target/riscv: rvv-1.0: relax RV_VLEN_MAX to 512-bits

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > As GVEC only supports MAXSZ and OPRSZ in the range of: [8..256] bytes > and LMUL could be a fractional number. The maximum vector size can be > operated might be less than 8 bytes or larger than 256 bytes. > Skip to use

Re: [RFC v4 66/70] target/riscv: rvv-1.0: narrowing floating-point/integer type-convert

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +DEF_HELPER_5(vfncvt_rod_f_f_w_h, void, ptr, ptr, ptr, env, i32) > +DEF_HELPER_5(vfncvt_rod_f_f_w_w, void, ptr, ptr, ptr, env, i32) > +DEF_HELPER_5(vfncvt_rtz_xu_f_w_b, void, ptr, ptr, ptr, env, i32) > +DEF_HELPER_5(vfncvt_rtz_xu_f_w_h, void,

Re: [RFC v4 65/70] target/riscv: add "set round to odd" rounding mode helper function

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > helper_set_rounding_mode() is responsible for SIGILL, and "round to odd" > should be an interface private to translation, so add a new independent > helper_set_rod_rounding_mode(). > > Signed-off-by: Frank Chang > --- >

Re: [RFC v4 64/70] target/riscv: rvv-1.0: widening floating-point/integer type-convert

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > @@ -995,12 +995,18 @@ DEF_HELPER_5(vfwcvt_xu_f_v_h, void, ptr, ptr, ptr, env, > i32) > DEF_HELPER_5(vfwcvt_xu_f_v_w, void, ptr, ptr, ptr, env, i32) > DEF_HELPER_5(vfwcvt_x_f_v_h, void, ptr, ptr, ptr, env, i32) > DEF_HELPER_5(vfwcvt_x_f_v_w,

Re: [RFC v4 63/70] target/riscv: rvv-1.0: floating-point/integer type-convert instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +DEF_HELPER_5(vfcvt_rtz_xu_f_v_h, void, ptr, ptr, ptr, env, i32) > +DEF_HELPER_5(vfcvt_rtz_xu_f_v_w, void, ptr, ptr, ptr, env, i32) > +DEF_HELPER_5(vfcvt_rtz_xu_f_v_d, void, ptr, ptr, ptr, env, i32) > +DEF_HELPER_5(vfcvt_rtz_x_f_v_h, void, ptr,

Re: [RFC v4 62/70] target/riscv: introduce floating-point rounding mode enum

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/fpu_helper.c | 12 ++-- > target/riscv/insn_trans/trans_rvv.inc.c | 18 +- > target/riscv/internals.h| 9 + >

Re: [RFC v4 61/70] target/riscv: rvv-1.0: floating-point min/max instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/vector_helper.c | 24 > 1 file changed, 12 insertions(+), 12 deletions(-) Reviewed-by: Richard Henderson r~

Re: [RFC v4 55/70] target/riscv: rvv-1.0: single-width floating-point reduction

2020-08-29 Thread Richard Henderson
On 8/29/20 4:50 PM, Richard Henderson wrote: > It doesn't actually say anything about the way in which we've implemented the > *_noprop functions. Ho hum. It seems v2.2 has changed fmin/fmax for the fpu as well. We really should fix that too... r~

Re: [RFC v4 57/70] target/riscv: rvv-1.0: single-width scaling shift instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > log(SEW) truncate vssra.vi immediate value. > > Signed-off-by: Frank Chang > --- > target/riscv/insn_trans/trans_rvv.inc.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Reviewed-by: Richard Henderson

Re: [RFC v4 56/70] target/riscv: rvv-1.0: widening floating-point reduction instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/insn_trans/trans_rvv.inc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Richard Henderson r~

Re: [RFC v4 55/70] target/riscv: rvv-1.0: single-width floating-point reduction

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/vector_helper.c | 12 ++-- > 1 file changed, 6 insertions(+), 6 deletions(-) The one sentence in the manual is quite poor for this, and needs improvement: >

[REPORT] Nightly Performance Tests - Saturday, August 29, 2020

2020-08-29 Thread Ahmed Karaman
Host CPU : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz Host Memory : 15.49 GB Start Time (UTC) : 2020-08-29 22:35:01 End Time (UTC) : 2020-08-29 23:07:59 Execution Time : 0:32:57.786998 Status : SUCCESS Note: Changes denoted by '-' are less than 0.01%.

Re: [RFC PATCH v2] hw/display/tcx: Allow 64-bit accesses to framebuffer stippler and blitter

2020-08-29 Thread Michael
Hello, On Sat, 29 Aug 2020 18:45:06 +0200 Philippe Mathieu-Daudé wrote: > > > > However the NetBSD revision 1.32 of the driver introduced > > > > 64-bit accesses to the stippler and blitter [2]. It is safe > > > > to assume these memory regions are 64-bit accessible. > > > > QEMU implementation

Re: [RFC v4 53/70] target/riscv: rvv-1.0: floating-point slide instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +DEF_HELPER_6(vfslide1up_vf_h, void, ptr, ptr, i64, ptr, env, i32) > +DEF_HELPER_6(vfslide1up_vf_w, void, ptr, ptr, i64, ptr, env, i32) > +DEF_HELPER_6(vfslide1up_vf_d, void, ptr, ptr, i64, ptr, env, i32) > +DEF_HELPER_6(vfslide1down_vf_h, void,

Re: [RFC v4 52/70] target/riscv: rvv-1.0: slide instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > * Remove clear function from helper functions as the tail elements > are unchanged in RVV 1.0. > > Signed-off-by: Frank Chang > --- > target/riscv/vector_helper.c | 19 --- > 1 file changed, 12

Re: [RFC v4 51/70] target/riscv: rvv-1.0: mask-register logical instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/insn_trans/trans_rvv.inc.c | 3 ++- > target/riscv/vector_helper.c| 4 > 2 files changed, 2 insertions(+), 5 deletions(-) Reviewed-by: Richard Henderson

Re: [RFC v4 50/70] target/riscv: rvv-1.0: floating-point compare instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/vector_helper.c | 8 > 1 file changed, 8 deletions(-) Reviewed-by: Richard Henderson r~

Re: [RFC v4 48/70] target/riscv: rvv-1.0: integer comparison instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > * Sign-extend vmselu.vi and vmsgtu.vi immediate values. > * Remove "set tail elements to zeros" as tail elements can be unchanged > for either VTA to have undisturbed or agnostic setting. > > Signed-off-by: Frank Chang

Re: [RFC v4 46/70] target/riscv: rvv-1.0: quad-widening integer multiply-add instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Add the following instructions: > > * vqmaccu.vv > * vqmaccu.vx > * vqmacc.vv > * vqmacc.vx > * vqmaccsu.vv > * vqmaccsu.vx > * vqmaccus.vx > > Signed-off-by: Frank Chang > --- > target/riscv/helper.h

Re: [RFC v4 47/70] target/riscv: rvv-1.0: single-width saturating add and subtract instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Sign-extend vsaddu.vi immediate value. > > Signed-off-by: Frank Chang > --- > target/riscv/insn_trans/trans_rvv.inc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Richard Henderson r~

Re: [RFC v4 45/70] target/riscv: rvv-1.0: add Zvqmac extension

2020-08-29 Thread Richard Henderson
On 8/29/20 1:17 PM, Richard Henderson wrote: > On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: >> From: Frank Chang >> >> Signed-off-by: Frank Chang >> --- >> target/riscv/cpu.c | 1 + >> target/riscv/cpu.h | 1 + >> target/riscv/translate.c | 2 ++ >> 3 files changed, 4

Re: [RFC v4 45/70] target/riscv: rvv-1.0: add Zvqmac extension

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/cpu.c | 1 + > target/riscv/cpu.h | 1 + > target/riscv/translate.c | 2 ++ > 3 files changed, 4 insertions(+) Reviewed-by: Richard Henderson r~

Re: [RFC v4 42/70] target/riscv: rvv-1.0: integer add-with-carry/subtract-with-borrow

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Clear tail elements only if VTA is agnostic. > > Signed-off-by: Frank Chang > --- > target/riscv/insn32.decode | 20 ++-- > target/riscv/insn_trans/trans_rvv.inc.c | 2 +- >

Re: [RFC v4 40/70] target/riscv: rvv-1.0: single-width averaging add and subtract instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Add the following instructions: > > * vaaddu.vv > * vaaddu.vx > * vasubu.vv > * vasubu.vx > > Remove the following instructions: > > * vadd.vi > > Signed-off-by: Frank Chang > --- > target/riscv/helper.h

Re: [RFC v4 38/70] target/riscv: rvv-1.0: whole register move instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Add the following instructions: > > * vmv1r.v > * vmv2r.v > * vmv4r.v > * vmv8r.v > > Signed-off-by: Frank Chang > --- > target/riscv/insn32.decode | 4 > target/riscv/insn_trans/trans_rvv.inc.c | 25

Re: [RFC v4 37/70] target/riscv: rvv-1.0: floating-point scalar move instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > NaN-boxed the scalar floating-point register based on RVV 1.0's rules. > > Signed-off-by: Frank Chang > --- > target/riscv/insn32.decode | 4 +-- > target/riscv/insn_trans/trans_rvv.inc.c | 42

Re: [RFC v4 36/70] target/riscv: rvv-1.0: floating-point move instruction

2020-08-29 Thread Richard Henderson
On 8/29/20 1:00 PM, Richard Henderson wrote: > static bool require_rvf(Disascontext *s) > { > switch (s->sew) { > case MO_16: > case MO_32: > return has_ext(s, RVF); > case MO_64: > return has_ext(s, RVD); > default: > return false; > } > } Oh, and

Re: [RFC v4 36/70] target/riscv: rvv-1.0: floating-point move instruction

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > static bool trans_vfmv_v_f(DisasContext *s, arg_vfmv_v_f *a) > { > if (require_rvv(s) && > +has_ext(s, RVF) && > vext_check_isa_ill(s) && > require_align(a->rd, 1 << s->lmul) && > (s->sew != 0)) { > +

Re: [RFC v4 34/70] target/riscv: rvv-1.0: register gather instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +static bool vrgatherei16_vv_check(DisasContext *s, arg_rmrr *a) > +{ > +int8_t emul = 4 - (s->sew + 3) + s->lmul; Similarly for EEW elsewhere. This should be int emul = MO_16 - s->sew + s->lmul; > @@ -3339,7 +3353,8 @@ static bool

Re: [RFC v4 25/70] target/riscv: rvv-1.0: take fractional LMUL into vector max elements calculation

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Update vext_get_vlmax() and MAXSZ() to take fractional LMUL into > calculation for RVV 1.0. > > Signed-off-by: Frank Chang > --- > target/riscv/cpu.h | 43 ++--- >

Re: [RFC v4 24/70] target/riscv: rvv-1.0: update vext_max_elems() for load/store insns

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +static uint8_t vext_get_emul(DisasContext *s, uint8_t eew) > +{ > +int8_t emul = ctzl(eew) - (s->sew + 3) + s->lmul; > +return emul < 0 ? 0 : emul; > +} Same comment about EEW being encoded as MemOp to match SEW. r~

Re: [RFC v4 23/70] target/riscv: rvv-1.0: load/store whole register instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +/* > + * load and store whole register instructions ignore vtype and vl setting. > + * Thus, we don't need to check vill bit. (Section 7.9) > + */ > +#define GEN_LDST_WHOLE_TRANS(NAME, EEW, ARGTYPE, ARG_NF, IS_STORE) \ > +static bool

Re: [RFC v4 22/70] target/riscv: rvv-1.0: amo operations

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +static bool vext_check_amo(DisasContext *s, int vd, int vs2, > + int wd, int vm, uint8_t eew) > +{ > +int8_t emul = ctzl(eew) - (s->sew + 3) + s->lmul; > +bool ret = has_ext(s, RVA) && > + (1 <<

Re: [RFC v4 21/70] target/riscv: rvv-1.0: fault-only-first unit stride load

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Signed-off-by: Frank Chang > --- > target/riscv/helper.h | 27 +++- > target/riscv/insn32.decode | 14 +++ > target/riscv/insn_trans/trans_rvv.inc.c | 31 -- >

Re: [RFC v4 20/70] target/riscv: rvv-1.0: fix address index overflow bug of indexed load/store insns

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Replace ETYPE from signed int to unsigned int to prevent index overflow > issue, which would lead to wrong index address. > > Signed-off-by: Frank Chang > --- > target/riscv/vector_helper.c | 8 > 1 file

Re: [RFC v4 19/70] target/riscv: rvv-1.0: index load and store instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > +static bool vext_check_st_index(DisasContext *s, int vd, int vs2, int nf, > +uint8_t eew) > { > -return !s->vill; > +uint8_t lmul_r = s->lmul < 0 ? 0 : s->lmul; > +int8_t emul = ctzl(eew) - (s->sew +

Re: [RFC v4 18/70] target/riscv: rvv-1.0: stride load and store instructions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > /* > + * Vector unit-stride, strided, unit-stride segment, strided segment > + * store check function. > + * > + * Rules to be checked here: > + * 1. EMUL must within the range: 1/8 <= EMUL <= 8. (Section 7.3) > + * 2. Destination vector

Re: [RFC v4 16/70] target/riscv: rvv:1.0: add translation-time nan-box helper function

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > * Add fp16 nan-box check generator function, if a 16-bit input is not > properly nanboxed, then the input is replaced with the default qnan. > * Add do_nanbox() helper function to utilize gen_check_nanbox_X() to >

Re: [RFC v4 15/70] target/riscv: introduce more imm value modes in translator functions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:49 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Immediate value in translator function is extended not only > zero-extended and sign-extended but with more modes to be applicable > with multiple formats of vector instructions. > > * IMM_ZX: Zero-extended > *

Re: [RFC v4 14/70] target/riscv: rvv-1.0: update check functions

2020-08-29 Thread Richard Henderson
On 8/17/20 1:48 AM, frank.ch...@sifive.com wrote: > +static inline bool is_aligned(const uint8_t val, const uint8_t pos) > +{ > +return pos ? (val & (pos - 1)) == 0 : true; > +} The truncation to uint8_t from int is odd. Can we drop all of that and just use int? Looking at the uses, I think

Re: [PULL 00/18] riscv-to-apply queue

2020-08-29 Thread Alistair Francis
On Sat, Aug 29, 2020 at 8:50 AM LIU Zhiwei wrote: > > > > On 2020/8/26 6:30, Alistair Francis wrote: > > On Tue, Aug 25, 2020 at 2:50 PM Peter Maydell > > wrote: > >> On Tue, 25 Aug 2020 at 22:32, Alistair Francis > >> wrote: > >>> On Tue, Aug 25, 2020 at 2:24 PM Peter Maydell > >>> wrote:

Re: [RFC PATCH v2] hw/display/tcx: Allow 64-bit accesses to framebuffer stippler and blitter

2020-08-29 Thread Michael
Hello, since I wrote the NetBSD code in question, here are my 2 cent: On Sat, 29 Aug 2020 08:41:43 -0700 Richard Henderson wrote: > On 8/22/20 7:21 AM, Philippe Mathieu-Daudé wrote: > > The S24/TCX datasheet is listed as "Unable to locate" on [1]. I don't have it either, but someone did a lot

Re: [RFC PATCH v2] hw/display/tcx: Allow 64-bit accesses to framebuffer stippler and blitter

2020-08-29 Thread Philippe Mathieu-Daudé
Le sam. 29 août 2020 18:14, Michael a écrit : > Hello, > > since I wrote the NetBSD code in question, here are my 2 cent: > > On Sat, 29 Aug 2020 08:41:43 -0700 > Richard Henderson wrote: > > > On 8/22/20 7:21 AM, Philippe Mathieu-Daudé wrote: > > > The S24/TCX datasheet is listed as "Unable to

Re: [RFC v4 12/70] target/riscv: rvv-1.0: add fractional LMUL

2020-08-29 Thread Richard Henderson
On 8/17/20 1:48 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > Introduce the concepts of fractional LMUL for RVV 1.0. > In RVV 1.0, LMUL bits are contiguous in vtype register. > > Signed-off-by: Frank Chang > --- > target/riscv/cpu.h | 15 --- >

Re: [PULL 00/18] riscv-to-apply queue

2020-08-29 Thread LIU Zhiwei
On 2020/8/26 6:30, Alistair Francis wrote: On Tue, Aug 25, 2020 at 2:50 PM Peter Maydell wrote: On Tue, 25 Aug 2020 at 22:32, Alistair Francis wrote: On Tue, Aug 25, 2020 at 2:24 PM Peter Maydell wrote: The hypervisor related patches don't seem to have any reviewed-by tags, which seems

Re: [RFC v4 07/70] target/riscv: rvv-1.0: remove rvv related codes from fcsr registers

2020-08-29 Thread Richard Henderson
On 8/17/20 1:48 AM, frank.ch...@sifive.com wrote: > From: Frank Chang > > * Remove VXRM and VXSAT fields from FCSR register as they are only > presented in VCSR register. > * Remove RVV loose check in fs() predicate function. > > Signed-off-by: Frank Chang > --- > target/riscv/csr.c | 13

Re: [PATCH v2] memory: Directly dispatch alias accesses on origin memory region

2020-08-29 Thread Richard Henderson
On 8/22/20 9:14 AM, Philippe Mathieu-Daudé wrote: > There is an issue when accessing an alias memory region via the > memory_region_dispatch_read() / memory_region_dispatch_write() > calls. > > Since commit 2cdfcf272d ("memory: assign MemoryRegionOps to all > regions") we assign _mem_ops to all

Re: [RFC PATCH v2] hw/display/tcx: Allow 64-bit accesses to framebuffer stippler and blitter

2020-08-29 Thread Richard Henderson
On 8/22/20 7:21 AM, Philippe Mathieu-Daudé wrote: > The S24/TCX datasheet is listed as "Unable to locate" on [1]. > > However the NetBSD revision 1.32 of the driver introduced > 64-bit accesses to the stippler and blitter [2]. It is safe > to assume these memory regions are 64-bit accessible. >

Re: [PATCH] target/xtensa: enable all coprocessors for linux-user

2020-08-29 Thread Richard Henderson
On 8/29/20 3:47 AM, Max Filippov wrote: > Linux userspace always sees coprocessors as enabled. CPENABLE register > and coprocessor exceptions are used internally by the kernel to manage > lazy coprocessor context switch. None of it is needed for linux-user. > Always enable all coprocessors for

Re: [PATCH] meson: move zlib detection to meson

2020-08-29 Thread Marc-André Lureau
On Fri, Aug 28, 2020 at 9:38 PM Paolo Bonzini wrote: > > Meson includes the same logic that tries to look for -lz if > pkg-config (and cmake) cannot find zlib. The undocumented > --disable-zlib-test option becomes a no-op. > > Signed-off-by: Paolo Bonzini Nice! (special treatment since 0.54),

Re: [PATCH 62/77] target/microblaze: Try to keep imm and delay slot together

2020-08-29 Thread Richard Henderson
On 8/27/20 12:17 PM, Edgar E. Iglesias wrote: > On Tue, Aug 25, 2020 at 01:59:35PM -0700, Richard Henderson wrote: >> If the last insn on a page is imm, or a branch with delay slot, >> then end a tb early if this has not begun the tb. If it has >> begun the tb, then we can allow the tb to span

Re: [PATCH v2 24/45] target/arm: Implement fp16 for Neon VRECPE, VRSQRTE using gvec

2020-08-29 Thread Richard Henderson
On 8/29/20 6:53 AM, Peter Maydell wrote: > On Fri, 28 Aug 2020 at 23:53, Richard Henderson > wrote: >> >> On 8/28/20 2:40 PM, Peter Maydell wrote: >>> The other approach would be to standardize on "the decodetree pattern >>> always converts the size to the data-type size, regardless of how >>>

Re: [PATCH 6/7] hw/arm/virt: spe: Add SPE fdt binding for virt machine

2020-08-29 Thread Auger Eric
Hi Haibo, On 8/7/20 10:10 AM, Haibo Xu wrote: > Add a virtual SPE device for virt machine while using PPI > 5 for SPE overflow interrupt number. > > Signed-off-by: Haibo Xu > --- > hw/arm/virt-acpi-build.c| 3 +++ > hw/arm/virt.c | 42 +

[PATCH v2 13/16] hw/riscv: microchip_pfsoc: Connect 2 Cadence GEMs

2020-08-29 Thread Bin Meng
From: Bin Meng Microchip PolarFire SoC integrates 2 Candence GEMs to provide IEEE 802.3 standard-compliant 10/100/1000 Mbps ethernet interface. On the Icicle Kit board, GEM0 connects to a PHY at address 8 while GEM1 connects to a PHY at address 9. The 2nd stage bootloader (U-Boot) is using

[PATCH v2 11/16] hw/net: cadence_gem: Add a new 'phy-addr' property

2020-08-29 Thread Bin Meng
From: Bin Meng At present the PHY address of the PHY connected to GEM is hard-coded to either 23 (BOARD_PHY_ADDRESS) or 0. This might not be the case for all boards. Add a new 'phy-addr' property so that board can specify the PHY address for each GEM instance. Signed-off-by: Bin Meng ---

[PATCH v2 08/16] hw/riscv: microchip_pfsoc: Connect a Cadence SDHCI controller and an SD card

2020-08-29 Thread Bin Meng
From: Bin Meng Microchip PolarFire SoC integrates one Cadence SDHCI controller. On the Icicle Kit board, one eMMC chip and an external SD card connect to this controller depending on different configuration. As QEMU does not support eMMC yet, we just emulate the SD card configuration. To test

[PATCH v2 15/16] hw/riscv: clint: Avoid using hard-coded timebase frequency

2020-08-29 Thread Bin Meng
From: Bin Meng At present the CLINT timestamp is using a hard-coded timebase frequency value SIFIVE_CLINT_TIMEBASE_FREQ. This might not be true for all boards. Add a new 'timebase-freq' property to the CLINT device, and update various functions to accept this as a parameter. Signed-off-by: Bin

[PATCH v2 14/16] hw/riscv: microchip_pfsoc: Hook GPIO controllers

2020-08-29 Thread Bin Meng
From: Bin Meng Microchip PolarFire SoC integrates 3 GPIOs controllers. It seems enough to create unimplemented devices to cover their register spaces at this point. With this commit, QEMU can boot to U-Boot (2nd stage bootloader) all the way to the Linux shell login prompt, with a modified HSS

[PATCH v2 07/16] hw/sd: Add Cadence SDHCI emulation

2020-08-29 Thread Bin Meng
From: Bin Meng Cadence SD/SDIO/eMMC Host Controller (SD4HC) is an SDHCI compatible controller. The SDHCI compatible registers start from offset 0x200, which are called Slot Register Set (SRS) in its datasheet. This creates a Cadence SDHCI model built on top of the existing generic SDHCI model.

[PATCH v2 06/16] hw/riscv: microchip_pfsoc: Connect 5 MMUARTs

2020-08-29 Thread Bin Meng
From: Bin Meng Microchip PolarFire SoC has 5 MMUARTs, and the Icicle Kit board wires 4 of them out. Let's connect all 5 MMUARTs. Signed-off-by: Bin Meng Reviewed-by: Alistair Francis --- (no changes since v1) include/hw/riscv/microchip_pfsoc.h | 20

[PATCH v2 12/16] hw/arm: xlnx: Set all boards' GEM 'phy-addr' property value to 23

2020-08-29 Thread Bin Meng
From: Bin Meng When cadence_gem model was created for Xilinx boards, the PHY address was hard-coded to 23 in the GEM model. Now that we have introduced a property we can use that to tell GEM model what our PHY address is. Change all boards' GEM 'phy-addr' property value to 23, and set the PHY

[PATCH v2 05/16] hw/char: Add Microchip PolarFire SoC MMUART emulation

2020-08-29 Thread Bin Meng
From: Bin Meng Microchip PolarFire SoC MMUART is ns16550 compatible, with some additional registers. Create a simple MMUART model built on top of the existing ns16550 model. Signed-off-by: Bin Meng --- Changes in v2: - change to update hw/char/meson.build - add impl.min_access_size and

[PATCH v2 16/16] hw/riscv: sifive_u: Connect a DMA controller

2020-08-29 Thread Bin Meng
From: Bin Meng SiFive FU540 SoC integrates a platform DMA controller with 4 DMA channels. This connects the exsiting SiFive PDMA model to the SoC, and adds its device tree data as well. Signed-off-by: Bin Meng --- (no changes since v1) include/hw/riscv/sifive_u.h | 11 +++

[PATCH v2 09/16] hw/dma: Add SiFive platform DMA controller emulation

2020-08-29 Thread Bin Meng
From: Bin Meng Microchip PolarFire SoC integrates a DMA engine that supports: * Independent concurrent DMA transfers using 4 DMA channels * Generation of interrupts on various conditions during execution which is actually an IP reused from the SiFive FU540 chip. This creates a model to support

[PATCH v2 01/16] target/riscv: cpu: Add a new 'resetvec' property

2020-08-29 Thread Bin Meng
From: Bin Meng Currently the reset vector address is hard-coded in a RISC-V CPU's instance_init() routine. In a real world we can have 2 exact same CPUs except for the reset vector address, which is pretty common in the RISC-V core IP licensing business. Normally reset vector address is a

[PATCH v2 04/16] hw/riscv: Initial support for Microchip PolarFire SoC Icicle Kit board

2020-08-29 Thread Bin Meng
From: Bin Meng This is an initial support for Microchip PolarFire SoC Icicle Kit. The Icicle Kit board integrates a PolarFire SoC, with one SiFive's E51 plus four U54 cores and many on-chip peripherals and an FPGA. For more details about Microchip PolarFire Soc, please see:

[PATCH v2 10/16] hw/riscv: microchip_pfsoc: Connect a DMA controller

2020-08-29 Thread Bin Meng
From: Bin Meng On the Icicle Kit board, the HSS firmware utilizes the on-chip DMA controller to move the 2nd stage bootloader in the system memory. Let's connect a DMA controller to Microchip PolarFire SoC. Signed-off-by: Bin Meng --- Changes in v2: - connect 8 IRQs to the PLIC

[PATCH v2 02/16] hw/riscv: hart: Add a new 'resetvec' property

2020-08-29 Thread Bin Meng
From: Bin Meng RISC-V machines do not instantiate RISC-V CPUs directly, instead they do that via the hart array. Add a new property for the reset vector address to allow the value to be passed to the CPU, before CPU is realized. Signed-off-by: Bin Meng Reviewed-by: Alistair Francis --- (no

[PATCH v2 00/16] hw/riscv: Add Microchip PolarFire SoC Icicle Kit board support

2020-08-29 Thread Bin Meng
From: Bin Meng This adds support for Microchip PolarFire SoC Icicle Kit board. The Icicle Kit board integrates a PolarFire SoC, with one SiFive's E51 plus four U54 cores and many on-chip peripherals and an FPGA. For more details about Microchip PolarFire SoC, please see:

[PATCH v2 03/16] target/riscv: cpu: Set reset vector based on the configured property value

2020-08-29 Thread Bin Meng
From: Bin Meng Now that we have the newly introduced 'resetvec' property in the RISC-V CPU and HART, instead of hard-coding the reset vector addr in the CPU's instance_init(), move that to riscv_cpu_realize() based on the configured property value from the RISC-V machines. Signed-off-by: Bin

Re: [PATCH] softfloat: Define comparison operations for bfloat16

2020-08-29 Thread LIU Zhiwei
On 2020/8/29 1:53, Richard Henderson wrote: These operations were missed in Zhiwei's bfloat16 implementation. Signed-off-by: Richard Henderson --- include/fpu/softfloat.h | 41 + 1 file changed, 41 insertions(+) diff --git a/include/fpu/softfloat.h

[Bug 1893010] Re: qemu linux-user doesn't support OFD fcntl locks

2020-08-29 Thread Laurent Vivier
Please check qemu-5.1.0. This has been fixed by: 2d92c6827ca0 ("linux-user: implement OFD locks") https://git.qemu.org/?p=qemu.git;a=commitdiff;h=2d92c6827ca0 perhaps you can send a patch to the qemu-devel ML to add the strace part. -- You received this bug notification because you are a

Re: [PATCH v2 24/45] target/arm: Implement fp16 for Neon VRECPE, VRSQRTE using gvec

2020-08-29 Thread Peter Maydell
On Fri, 28 Aug 2020 at 23:53, Richard Henderson wrote: > > On 8/28/20 2:40 PM, Peter Maydell wrote: > > The other approach would be to standardize on "the decodetree pattern > > always converts the size to the data-type size, regardless of how > > it's encoded in the insn fields", and then you

Re: [PATCH v2 44/45] target/arm: Implement fp16 for Neon VMUL, VMLA, VMLS

2020-08-29 Thread Peter Maydell
On Sat, 29 Aug 2020 at 00:38, Richard Henderson wrote: > > On 8/28/20 11:33 AM, Peter Maydell wrote: > > Convert the Neon floating-point VMUL, VMLA and VMLS to use gvec, > > and use this to implement fp16 support. > > > > Signed-off-by: Peter Maydell > > Reviewed-by: Richard Henderson > > > +

Re: [PATCH v2 43/45] target/arm/vec_helper: Add gvec fp indexed multiply-and-add operations

2020-08-29 Thread Peter Maydell
On Sat, 29 Aug 2020 at 00:24, Richard Henderson wrote: > > On 8/28/20 11:33 AM, Peter Maydell wrote: > > +#define float16_nop(N, M, S) (M) > > +#define float32_nop(N, M, S) (M) > > +#define float64_nop(N, M, S) (M) > > > > +DO_FMUL_IDX(gvec_fmul_idx_h, nop, float16, H2) > >

[Bug 1893040] Re: External modules retreval using Go1.15 on s390x appears to have checksum and ECDSA verification issues

2020-08-29 Thread Laurent Vivier
** Tags added: linux-user -- You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1893040 Title: External modules retreval using Go1.15 on s390x appears to have checksum and ECDSA verification issues

Re: [PATCH v2] meson: Convert undefsym.sh to undefsym.py

2020-08-29 Thread Stefan Hajnoczi
On Fri, Aug 28, 2020 at 5:18 PM 罗勇刚(Yonggang Luo) wrote: > > I am confusing, why my patch are not recognized by Patchew? I looked at the message headers in case git-publish corrupted the email, but I didn't notice any issues. Some of your other patches were detected correctly by Patchew:

[PATCH] target/xtensa: enable all coprocessors for linux-user

2020-08-29 Thread Max Filippov
Linux userspace always sees coprocessors as enabled. CPENABLE register and coprocessor exceptions are used internally by the kernel to manage lazy coprocessor context switch. None of it is needed for linux-user. Always enable all coprocessors for user emulation. Signed-off-by: Max Filippov ---

[PATCH] meson: fix SDL2_image detection

2020-08-29 Thread Volker Rümelin
Configure used to probe for SDL2_image in sdl_image_probe (). Meson should do the same. This fixes the following error on my system: Run-time dependency sdl2 found: YES 2.0.8 Found CMake: /usr/bin/cmake (3.17.0) Run-time dependency sdl-image found: NO (tried pkgconfig and cmake)

on msys2, the generated qemu-version.h seems not valid

2020-08-29 Thread Yonggang Luo
#define QEMU_PKGVERSION "" #define QEMU_FULL_VERSION "5.1.50" pkgversion=$(git describe --match 'v*' --dirty | echo "") what's echo "" for in qemu-version.sh -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo

[PATCH] Fix a gap where acpi_pcihp_find_hotplug_bus() returns a non-hotpluggable bus

2020-08-29 Thread Ani Sinha
When ACPI hotplug for the root bus is disabled, the bsel property for that bus is not set. Please see the following commit: 3d7e78aaf ("Introduce a new flag for i440fx to disable PCI hotplug on the root bus"). As a result, when acpi_pcihp_find_hotplug_bus() is called with bsel set to 0, it