[PATCH 17/20] alpha: treat STO_ALPHA_STD_GPLOAD as a function in abilist.awk
Matt Turner
mattst88@gmail.com
Wed Aug 12 01:19:54 GMT 2026
The Alpha ABI defines two st_other values for functions:
0x80 (STO_ALPHA_NOPV) - .prologue 0: runs on caller's GP
0x88 (STO_ALPHA_STD_GPLOAD) - .prologue 1: standard two-instruction GP load
abilist.awk recognized 0x80 but not 0x88 when classifying a dynamic
symbol of object type as a function. Symbols like strncat that are
weak aliases of .prologue 1 assembly functions appear as STT_NOTYPE
with st_other=0x88 in the dynamic symbol table and were incorrectly
classified as data.
Add 0x88 to the check so both GP-setup variants are treated as
functions.
---
scripts/abilist.awk | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git ./scripts/abilist.awk ./scripts/abilist.awk
index 7ea1edf8c0..39f63d0803 100644
--- ./scripts/abilist.awk
+++ ./scripts/abilist.awk
@@ -70,8 +70,8 @@ $2 == "g" || $2 == "w" && (NF == 6 || NF == 7 || NF == 8) {
type = "O";
seen_opd = 1;
}
- else if (type == "D" && NF == 8 && $7 == "0x80") {
- # Alpha functions avoiding plt entry in users
+ else if (type == "D" && NF == 8 && ($7 == "0x80" || $7 == "0x88")) {
+ # Alpha functions: 0x80 = STO_ALPHA_NOPV, 0x88 = STO_ALPHA_STD_GPLOAD
type = "F";
size = "";
seen_opd = -1;
--
2.54.0
More information about the Libc-alpha
mailing list