aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog9
-rw-r--r--gas/expr.c12
-rw-r--r--gas/stabs.c4
-rw-r--r--gas/symbols.c6
4 files changed, 14 insertions, 17 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 16a1618..e49f5fb 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,14 @@
2003-05-27 Richard Henderson <rth@redhat.com>
+ * expr.c (make_expr_symbol): Fold FAKE_LABEL_NAME use into the
+ symbol_create call.
+ (current_location): Use symbol_temp_new_now.
+ * stabs.c (s_stab_generic): Use symbol_temp_new.
+ * symbols.c (temp_label_name): Remove.
+ (symbol_temp_new, symbol_temp_make): Use FAKE_LABEL_NAME.
+
+2003-05-27 Richard Henderson <rth@redhat.com>
+
* dw2gencfi.c, dw2gencfi.h: Rewrite from scratch.
* as.c (main): Always call cfi_finish.
* config/tc-i386.c (x86_dwarf2_return_column): New.
diff --git a/gas/expr.c b/gas/expr.c
index 6478887..58db726 100644
--- a/gas/expr.c
+++ b/gas/expr.c
@@ -67,7 +67,6 @@ make_expr_symbol (expressionP)
expressionS *expressionP;
{
expressionS zero;
- const char *fake;
symbolS *symbolP;
struct expr_symbol_line *n;
@@ -91,13 +90,11 @@ make_expr_symbol (expressionP)
expressionP = &zero;
}
- fake = FAKE_LABEL_NAME;
-
/* Putting constant symbols in absolute_section rather than
expr_section is convenient for the old a.out code, for which
S_GET_SEGMENT does not always retrieve the value put in by
S_SET_SEGMENT. */
- symbolP = symbol_create (fake,
+ symbolP = symbol_create (FAKE_LABEL_NAME,
(expressionP->X_op == O_constant
? absolute_section
: expr_section),
@@ -745,13 +742,8 @@ current_location (expressionp)
}
else
{
- symbolS *symbolp;
-
- symbolp = symbol_new (FAKE_LABEL_NAME, now_seg,
- (valueT) frag_now_fix (),
- frag_now);
expressionp->X_op = O_symbol;
- expressionp->X_add_symbol = symbolp;
+ expressionp->X_add_symbol = symbol_temp_new_now ();
expressionp->X_add_number = 0;
}
}
diff --git a/gas/stabs.c b/gas/stabs.c
index 38bbc24..900826b 100644
--- a/gas/stabs.c
+++ b/gas/stabs.c
@@ -371,13 +371,11 @@ s_stab_generic (what, stab_secname, stabstr_secname)
}
else
{
- const char *fake;
symbolS *symbol;
expressionS exp;
/* Arrange for a value representing the current location. */
- fake = FAKE_LABEL_NAME;
- symbol = symbol_new (fake, saved_seg, dot, saved_frag);
+ symbol = symbol_temp_new (saved_seg, dot, saved_frag);
exp.X_op = O_symbol;
exp.X_add_symbol = symbol;
diff --git a/gas/symbols.c b/gas/symbols.c
index 935c6a4..7362afb 100644
--- a/gas/symbols.c
+++ b/gas/symbols.c
@@ -588,15 +588,13 @@ symbol_make (name)
return (symbolP);
}
-static const char temp_label_name[] = ".L0\001";
-
symbolS *
symbol_temp_new (seg, ofs, frag)
segT seg;
valueT ofs;
fragS *frag;
{
- return symbol_new (temp_label_name, seg, ofs, frag);
+ return symbol_new (FAKE_LABEL_NAME, seg, ofs, frag);
}
symbolS *
@@ -608,7 +606,7 @@ symbol_temp_new_now ()
symbolS *
symbol_temp_make ()
{
- return symbol_make (temp_label_name);
+ return symbol_make (FAKE_LABEL_NAME);
}
/* Implement symbol table lookup.