diff options
author | Jose E. Marchesi <jose.marchesi@oracle.com> | 2024-02-19 20:39:48 +0100 |
---|---|---|
committer | Jose E. Marchesi <jose.marchesi@oracle.com> | 2024-02-19 20:48:17 +0100 |
commit | b86b514aace19799ea141514e16296fb63a089b3 (patch) | |
tree | d191bbb58f8dc18907d5014d7cd3689f68321672 /gdb/dcache.h | |
parent | b47cef7ca8a2fa55acdab367c87c1ea076aec4b2 (diff) | |
download | gdb-b86b514aace19799ea141514e16296fb63a089b3.zip gdb-b86b514aace19799ea141514e16296fb63a089b3.tar.gz gdb-b86b514aace19799ea141514e16296fb63a089b3.tar.bz2 |
bpf: gas: avoid UB in pointer subtraction
The PARSE_ERROR macro in md_assemble performs pointer subtraction. If
parse_expression returns NULL then the later will be part of the
subtraction and therefore UB will be incurred.
This patch changes md_assemble to:
1. Accommodate all invocations to parse_expression to the fact it will
return NULL when a parse error occurs.
2. Avoid UB in PARSE_ERROR.
Tested in bpf-unknown-none target / x86_64-linux-gnu host.
gas/ChangeLog:
* config/tc-bpf.c (md_assemble): Fix to take into account that
parse_expression can return NULL.
(PARSE_ERROR): Avoid passing invalid length to parse_error.
Diffstat (limited to 'gdb/dcache.h')
0 files changed, 0 insertions, 0 deletions