[Beignet] [PATCH] GBE: fix a patch JMPI assert.
Song, Ruiling
ruiling.song at intel.com
Wed Jun 22 07:10:23 UTC 2016
I am ok with this patch.
Thanks!
Ruiling
> -----Original Message-----
> From: Beignet [mailto:beignet-bounces at lists.freedesktop.org] On Behalf Of
> Yang Rong
> Sent: Thursday, May 26, 2016 1:29 PM
> To: beignet at lists.freedesktop.org
> Cc: Yang, Rong R <rong.r.yang at intel.com>
> Subject: [Beignet] [PATCH] GBE: fix a patch JMPI assert.
>
> If jmpi out of range (+/-32768), should use long jump.
> Now decide the long jump in the gbe, use the GEN IR, but
> one GEN IR may produce several GEN instructions, especially
> long operation pre BDW. So use experiential 8000 as threshold.
> But some case still out of range. So decrease the threshold to
> 3000. Need move it to context in the futher.
>
> Fix bug:
> https://bugs.freedesktop.org/show_bug.cgi?id=94810
>
> Signed-off-by: Yang Rong <rong.r.yang at intel.com>
> ---
> backend/src/backend/gen_insn_selection.cpp | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/backend/src/backend/gen_insn_selection.cpp
> b/backend/src/backend/gen_insn_selection.cpp
> index fbd9363..a9cd65a 100644
> --- a/backend/src/backend/gen_insn_selection.cpp
> +++ b/backend/src/backend/gen_insn_selection.cpp
> @@ -1203,7 +1203,7 @@ namespace gbe
> }
> // FIXME, this longjmp check is too hacky. We need to support instruction
> // insertion at code emission stage in the future.
> - insn->extra.longjmp = ctx.getFunction().getDistance(start, end) > 8000;
> + insn->extra.longjmp = ctx.getFunction().getDistance(start, end) > 3000;
> return insn->extra.longjmp ? 2 : 1;
> }
>
> --
> 2.1.4
>
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/beignet
More information about the Beignet
mailing list