aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorClément Chigot <clement.chigot@atos.net>2021-07-30 15:58:40 +0200
committerClément Chigot <clement.chigot@atos.net>2021-08-04 08:54:59 +0200
commita83ef1c760b4146d49d0f5729989e300ed4261fa (patch)
tree78eff92323b5f92a93e49f4e88c0b9308c072166 /gas/config
parent934cb8492f1745c2883ba6be885e8729f92a258f (diff)
downloadfsf-binutils-gdb-a83ef1c760b4146d49d0f5729989e300ed4261fa.zip
fsf-binutils-gdb-a83ef1c760b4146d49d0f5729989e300ed4261fa.tar.gz
fsf-binutils-gdb-a83ef1c760b4146d49d0f5729989e300ed4261fa.tar.bz2
gas: correctly output XCOFF tbss symbols with XTY_CM type.
Global tbss symbols weren't correctly handled and were generating a symbol with XTY_SD instead of XTY_CM as expected. gas/ * config/tc-ppc.c (ppc_frog_symbol): Generate a XTY_CM when a symbol has a storage class of XMC_UL.
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-ppc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
index b756708..af025af 100644
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -6001,7 +6001,8 @@ ppc_frob_symbol (symbolS *sym)
a->x_csect.x_scnlen.l = (S_GET_VALUE (symbol_get_tc (sym)->next)
- S_GET_VALUE (sym));
}
- if (symbol_get_tc (sym)->symbol_class == XMC_BS)
+ if (symbol_get_tc (sym)->symbol_class == XMC_BS
+ || symbol_get_tc (sym)->symbol_class == XMC_UL)
a->x_csect.x_smtyp = (symbol_get_tc (sym)->align << 3) | XTY_CM;
else
a->x_csect.x_smtyp = (symbol_get_tc (sym)->align << 3) | XTY_SD;