Date: Wed, 15 Sep 2021 16:05:34 GMT From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 8753039a8f23 - main - arm64: Fix a logic bug in is_load_instr(). Message-ID: <202109151605.18FG5YvK086556@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=8753039a8f231ab04c7f3db9eaa5d9144d73440d commit 8753039a8f231ab04c7f3db9eaa5d9144d73440d Author: John Baldwin <jhb@FreeBSD.org> AuthorDate: 2021-09-15 16:03:18 +0000 Commit: John Baldwin <jhb@FreeBSD.org> CommitDate: 2021-09-15 16:03:18 +0000 arm64: Fix a logic bug in is_load_instr(). Logical and ('&&') was used to join two conditions instead of logical or ('||') causing some store instructions to not be recognized. Reported by: GCC 9 -Wparentheses Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D31949 --- sys/arm64/include/db_machdep.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm64/include/db_machdep.h b/sys/arm64/include/db_machdep.h index 105e8e507ce3..9ec0b6402a91 100644 --- a/sys/arm64/include/db_machdep.h +++ b/sys/arm64/include/db_machdep.h @@ -97,7 +97,7 @@ typedef long db_expr_t; (((ins) & 0xffe00c00u) != 0x3c800000u)) || /* unscaled immediate */ \ ((((ins) & 0x3b000000u) == 0x39000000u) && \ (((ins) & 0x3bc00000u) != 0x39000000u) && \ - (((ins) & 0xffc00000u) != 0x3d800000u)) && /* unsigned immediate */ \ + (((ins) & 0xffc00000u) != 0x3d800000u)) || /* unsigned immediate */ \ (((ins) & 0x3bc00000u) == 0x28400000u) || /* pair (offset) */ \ (((ins) & 0x3bc00000u) == 0x28c00000u) || /* pair (post-indexed) */ \ (((ins) & 0x3bc00000u) == 0x29800000u)) /* pair (pre-indexed) */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202109151605.18FG5YvK086556>