Message ID | 20210416152429.91832-1-ziqiaokong@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Set the correct env->fpip for x86 float instructions | expand |
Sry, the second link is duplicated. It should be https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg00307.html, which is my previous email. Ziqiao On Fri, Apr 16, 2021 at 11:25 PM Ziqiao Kong <ziqiaokong@gmail.com> wrote: > > Hello, everyone! > > This patch follows https://lists.gnu.org/archive/html/qemu-devel/2010-11/msg02497.html and https://lists.gnu.org/archive/html/qemu-devel/2010-11/msg02497.html > > It's my first time to submit a patch to qemu. Any advice is highly welcome! > > Ziqiao > --- > target/i386/tcg/fpu_helper.c | 4 ++-- > target/i386/tcg/translate.c | 3 +++ > 2 files changed, 5 insertions(+), 2 deletions(-) > > diff --git a/target/i386/tcg/fpu_helper.c b/target/i386/tcg/fpu_helper.c > index 60ed93520a..e8cbde4e1a 100644 > --- a/target/i386/tcg/fpu_helper.c > +++ b/target/i386/tcg/fpu_helper.c > @@ -2395,7 +2395,7 @@ static void do_fstenv(CPUX86State *env, target_ulong ptr, int data32, > cpu_stl_data_ra(env, ptr, env->fpuc, retaddr); > cpu_stl_data_ra(env, ptr + 4, fpus, retaddr); > cpu_stl_data_ra(env, ptr + 8, fptag, retaddr); > - cpu_stl_data_ra(env, ptr + 12, 0, retaddr); /* fpip */ > + cpu_stl_data_ra(env, ptr + 12, env->fpip, retaddr); /* fpip */ > cpu_stl_data_ra(env, ptr + 16, 0, retaddr); /* fpcs */ > cpu_stl_data_ra(env, ptr + 20, 0, retaddr); /* fpoo */ > cpu_stl_data_ra(env, ptr + 24, 0, retaddr); /* fpos */ > @@ -2404,7 +2404,7 @@ static void do_fstenv(CPUX86State *env, target_ulong ptr, int data32, > cpu_stw_data_ra(env, ptr, env->fpuc, retaddr); > cpu_stw_data_ra(env, ptr + 2, fpus, retaddr); > cpu_stw_data_ra(env, ptr + 4, fptag, retaddr); > - cpu_stw_data_ra(env, ptr + 6, 0, retaddr); > + cpu_stw_data_ra(env, ptr + 6, env->fpip, retaddr); > cpu_stw_data_ra(env, ptr + 8, 0, retaddr); > cpu_stw_data_ra(env, ptr + 10, 0, retaddr); > cpu_stw_data_ra(env, ptr + 12, 0, retaddr); > diff --git a/target/i386/tcg/translate.c b/target/i386/tcg/translate.c > index 880bc45561..cc4398f03b 100644 > --- a/target/i386/tcg/translate.c > +++ b/target/i386/tcg/translate.c > @@ -6337,7 +6337,10 @@ static target_ulong disas_insn(DisasContext *s, CPUState *cpu) > goto unknown_op; > } > } > + tcg_gen_movi_tl(s->tmp0, pc_start - s->cs_base); > + tcg_gen_st_tl(s->tmp0, cpu_env, offsetof(CPUX86State, fpip)); > break; > + > /************************/ > /* string ops */ > > -- > 2.25.1 >
Patchew URL: https://patchew.org/QEMU/20210416152429.91832-1-ziqiaokong@gmail.com/ Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20210416152429.91832-1-ziqiaokong@gmail.com Subject: [PATCH] Set the correct env->fpip for x86 float instructions === TEST SCRIPT BEGIN === #!/bin/bash git rev-parse base > /dev/null || exit 0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram ./scripts/checkpatch.pl --mailback base.. === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu - [tag update] patchew/20210416104010.13228-1-peter.maydell@linaro.org -> patchew/20210416104010.13228-1-peter.maydell@linaro.org * [new tag] patchew/20210416152429.91832-1-ziqiaokong@gmail.com -> patchew/20210416152429.91832-1-ziqiaokong@gmail.com Switched to a new branch 'test' bdb832b Set the correct env->fpip for x86 float instructions === OUTPUT BEGIN === ERROR: Missing Signed-off-by: line(s) total: 1 errors, 0 warnings, 26 lines checked Commit bdb832bd7de0 (Set the correct env->fpip for x86 float instructions) has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. === OUTPUT END === Test command exited with code: 1 The full log is available at http://patchew.org/logs/20210416152429.91832-1-ziqiaokong@gmail.com/testing.checkpatch/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
diff --git a/target/i386/tcg/fpu_helper.c b/target/i386/tcg/fpu_helper.c index 60ed93520a..e8cbde4e1a 100644 --- a/target/i386/tcg/fpu_helper.c +++ b/target/i386/tcg/fpu_helper.c @@ -2395,7 +2395,7 @@ static void do_fstenv(CPUX86State *env, target_ulong ptr, int data32, cpu_stl_data_ra(env, ptr, env->fpuc, retaddr); cpu_stl_data_ra(env, ptr + 4, fpus, retaddr); cpu_stl_data_ra(env, ptr + 8, fptag, retaddr); - cpu_stl_data_ra(env, ptr + 12, 0, retaddr); /* fpip */ + cpu_stl_data_ra(env, ptr + 12, env->fpip, retaddr); /* fpip */ cpu_stl_data_ra(env, ptr + 16, 0, retaddr); /* fpcs */ cpu_stl_data_ra(env, ptr + 20, 0, retaddr); /* fpoo */ cpu_stl_data_ra(env, ptr + 24, 0, retaddr); /* fpos */ @@ -2404,7 +2404,7 @@ static void do_fstenv(CPUX86State *env, target_ulong ptr, int data32, cpu_stw_data_ra(env, ptr, env->fpuc, retaddr); cpu_stw_data_ra(env, ptr + 2, fpus, retaddr); cpu_stw_data_ra(env, ptr + 4, fptag, retaddr); - cpu_stw_data_ra(env, ptr + 6, 0, retaddr); + cpu_stw_data_ra(env, ptr + 6, env->fpip, retaddr); cpu_stw_data_ra(env, ptr + 8, 0, retaddr); cpu_stw_data_ra(env, ptr + 10, 0, retaddr); cpu_stw_data_ra(env, ptr + 12, 0, retaddr); diff --git a/target/i386/tcg/translate.c b/target/i386/tcg/translate.c index 880bc45561..cc4398f03b 100644 --- a/target/i386/tcg/translate.c +++ b/target/i386/tcg/translate.c @@ -6337,7 +6337,10 @@ static target_ulong disas_insn(DisasContext *s, CPUState *cpu) goto unknown_op; } } + tcg_gen_movi_tl(s->tmp0, pc_start - s->cs_base); + tcg_gen_st_tl(s->tmp0, cpu_env, offsetof(CPUX86State, fpip)); break; + /************************/ /* string ops */