aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/tc-xtensa.c11
2 files changed, 16 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 6a6fa5e..fbcce02 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2007-12-20 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (xtensa_elf_cons): Set frag flags for
+ expressions without suffixes.
+ (get_frag_property_flags): Preserve is_no_transform flag for frags
+ not marked as either instructions or literals.
+
2007-12-17 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (output_insn): Use ARRAY_SIZE.
diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c
index e632ef3..ab4578b 100644
--- a/gas/config/tc-xtensa.c
+++ b/gas/config/tc-xtensa.c
@@ -1558,7 +1558,10 @@ xtensa_elf_cons (int nbytes)
}
}
else
- emit_expr (&exp, (unsigned int) nbytes);
+ {
+ xtensa_set_frag_assembly_state (frag_now);
+ emit_expr (&exp, (unsigned int) nbytes);
+ }
}
while (*input_line_pointer++ == ',');
@@ -10670,7 +10673,11 @@ get_frag_property_flags (const fragS *fragP, frag_flags *prop_flags)
prop_flags->is_literal = TRUE;
if (fragP->tc_frag_data.is_specific_opcode
|| fragP->tc_frag_data.is_no_transform)
- prop_flags->is_no_transform = TRUE;
+ {
+ prop_flags->is_no_transform = TRUE;
+ if (xtensa_frag_flags_is_empty (prop_flags))
+ prop_flags->is_data = TRUE;
+ }
if (fragP->tc_frag_data.is_unreachable)
prop_flags->is_unreachable = TRUE;
else if (fragP->tc_frag_data.is_insn)