diff options
author | Tristan Gingold <gingold@adacore.com> | 2011-08-26 13:37:28 +0000 |
---|---|---|
committer | Tristan Gingold <gingold@adacore.com> | 2011-08-26 13:37:28 +0000 |
commit | 0ac5db1998f7b3d147b3fdc1b01def4f00178547 (patch) | |
tree | 4ac2228881c5fe6f95dafa38e99fa1c58e7d98c4 /gas/config/tc-alpha.c | |
parent | 0189c2eba712589d7a99478e92467b9db8d7afe9 (diff) | |
download | gdb-0ac5db1998f7b3d147b3fdc1b01def4f00178547.zip gdb-0ac5db1998f7b3d147b3fdc1b01def4f00178547.tar.gz gdb-0ac5db1998f7b3d147b3fdc1b01def4f00178547.tar.bz2 |
2011-08-26 Tristan Gingold <gingold@adacore.com>
* config/tc-alpha.c (s_alpha_linkage): Simplify. Add comments.
Diffstat (limited to 'gas/config/tc-alpha.c')
-rw-r--r-- | gas/config/tc-alpha.c | 29 |
1 files changed, 12 insertions, 17 deletions
diff --git a/gas/config/tc-alpha.c b/gas/config/tc-alpha.c index e9dd0fe..931e54c 100644 --- a/gas/config/tc-alpha.c +++ b/gas/config/tc-alpha.c @@ -4701,31 +4701,26 @@ s_alpha_linkage (int ignore ATTRIBUTE_UNUSED) p = frag_more (LKP_S_K_SIZE); memset (p, 0, LKP_S_K_SIZE); fixp = fix_new_exp - (frag_now, p - frag_now->fr_literal, LKP_S_K_SIZE, &exp, 0,\ + (frag_now, p - frag_now->fr_literal, LKP_S_K_SIZE, &exp, 0, BFD_RELOC_ALPHA_LINKAGE); + if (alpha_insn_label == NULL) + alpha_insn_label = symbol_new + (FAKE_LABEL_NAME, now_seg, (valueT) frag_now_fix (), frag_now); + + /* Create a linkage element. */ linkage_fixup = (struct alpha_linkage_fixups *) xmalloc (sizeof (struct alpha_linkage_fixups)); - linkage_fixup->fixp = fixp; - linkage_fixup->next = 0; - - if (alpha_insn_label == 0) - alpha_insn_label = symbol_new - (FAKE_LABEL_NAME, now_seg, (valueT) frag_now_fix (), frag_now); + linkage_fixup->next = NULL; linkage_fixup->label = alpha_insn_label; - if (alpha_linkage_fixup_root == 0) - { - alpha_linkage_fixup_root = alpha_linkage_fixup_tail = linkage_fixup; - alpha_linkage_fixup_tail->next = 0; - } + /* Append it to the list. */ + if (alpha_linkage_fixup_root == NULL) + alpha_linkage_fixup_root = linkage_fixup; else - { - alpha_linkage_fixup_tail->next = linkage_fixup; - alpha_linkage_fixup_tail = linkage_fixup; - alpha_linkage_fixup_tail->next = 0; - } + alpha_linkage_fixup_tail->next = linkage_fixup; + alpha_linkage_fixup_tail = linkage_fixup; } demand_empty_rest_of_line (); } |