1 Star 0 Fork 81

lyn/openjdk-1.8.0

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
8221658.patch 1.22 KB
一键复制 编辑 原始数据 按行查看 历史
From 56af1a5b3a8dc267f31a1e3ea7766b0ec2f6664b Mon Sep 17 00:00:00 2001
Date: Fri, 22 Jan 2021 11:15:05 +0800
Subject: 8221658: aarch64: add necessary predicate for ubfx
patterns
---
hotspot/src/cpu/aarch64/vm/aarch64.ad | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hotspot/src/cpu/aarch64/vm/aarch64.ad b/hotspot/src/cpu/aarch64/vm/aarch64.ad
index fb80c0184..48d3628e9 100644
--- a/hotspot/src/cpu/aarch64/vm/aarch64.ad
+++ b/hotspot/src/cpu/aarch64/vm/aarch64.ad
@@ -10917,7 +10917,7 @@ instruct ubfxwI(iRegINoSp dst, iRegIorL2I src, immI rshift, immI_bitmask mask)
long mask = $mask$$constant;
int width = exact_log2(mask+1);
__ ubfxw(as_Register($dst$$reg),
- as_Register($src$$reg), rshift, width);
+ as_Register($src$$reg), $rshift$$constant & 31, width);
%}
ins_pipe(ialu_reg_shift);
%}
@@ -10954,7 +10954,7 @@ instruct ubfxIConvI2L(iRegLNoSp dst, iRegIorL2I src, immI rshift, immI_bitmask m
long mask = $mask$$constant;
int width = exact_log2(mask+1);
__ ubfx(as_Register($dst$$reg),
- as_Register($src$$reg), rshift, width);
+ as_Register($src$$reg), $rshift$$constant & 63, width);
%}
ins_pipe(ialu_reg_shift);
%}
--
2.19.0
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/lyn1001/openjdk-1.8.0.git
git@gitee.com:lyn1001/openjdk-1.8.0.git
lyn1001
openjdk-1.8.0
openjdk-1.8.0
master

搜索帮助