+2014-10-21 Jan Beulich <jbeulich@suse.com>
+
+ * read.c (HANDLE_CONDITIONAL_ASSEMBLY): New parameter "num_read".
+ (read_a_source_file): Adjust HANDLE_CONDITIONAL_ASSEMBLY
+ invocations.
+ (_find_end_of_line): Don't issue "stray '\\'" warning when in
+ false branch of conditional.
+
2014-10-21 Jan Beulich <jbeulich@suse.com>
* config/tc-aarch64.c (output_operand_error_record): Move down
cfi_pop_insert ();
}
\f
-#define HANDLE_CONDITIONAL_ASSEMBLY() \
+#define HANDLE_CONDITIONAL_ASSEMBLY(num_read) \
if (ignore_input ()) \
{ \
- char *eol = find_end_of_line (input_line_pointer, flag_m68k_mri); \
+ char *eol = find_end_of_line (input_line_pointer - (num_read), \
+ flag_m68k_mri); \
input_line_pointer = (input_line_pointer <= buffer_limit \
&& eol >= buffer_limit) \
? buffer_limit \
char *line_start = input_line_pointer;
int mri_line_macro;
- HANDLE_CONDITIONAL_ASSEMBLY ();
+ HANDLE_CONDITIONAL_ASSEMBLY (0);
c = get_symbol_end ();
if (is_name_beginner (c))
{
/* Want user-defined label or pseudo/opcode. */
- HANDLE_CONDITIONAL_ASSEMBLY ();
+ HANDLE_CONDITIONAL_ASSEMBLY (1);
s = --input_line_pointer;
c = get_symbol_end (); /* name's delimiter. */
/* local label ("4:") */
char *backup = input_line_pointer;
- HANDLE_CONDITIONAL_ASSEMBLY ();
+ HANDLE_CONDITIONAL_ASSEMBLY (1);
temp = c - '0';
continue;
}
- HANDLE_CONDITIONAL_ASSEMBLY ();
+ HANDLE_CONDITIONAL_ASSEMBLY (1);
#ifdef tc_unrecognized_line
if (tc_unrecognized_line (c))
}
if (inquote)
as_warn (_("missing closing `%c'"), inquote);
- if (inescape)
+ if (inescape && !ignore_input ())
as_warn (_("stray `\\'"));
return s;
}
+2014-10-21 Jan Beulich <jbeulich@suse.com>
+
+ * gas/gas/all/cond.s: Also test processing of leading double
+ quote and trailing backslash in false branch of conditional.
+ * gas/gas/all/cond.l: Adjust accordingly.
+
2014-10-21 Jan Beulich <jbeulich@suse.com>
* gas/ppc/power8.s: Test msgclr and msgsnd.
[ ]*[1-9][0-9]*[ ]+[0-9a-f]+[048c] 0[0C] ?00 ?00 ?0[0C][ ]+m[ ]+12,[ ]*13[ ]*
[ ]*[1-9][0-9]*[ ]+0[0D] ?00 ?00 ?0[0D][ ]*
[ ]*[1-9][0-9]*[ ]+
+[ ]*[1-9][0-9]*[ ]+\.if[ ]+0[ ]*
+[ ]*[1-9][0-9]*[ ]+\.endif[ ]*
+[ ]*[1-9][0-9]*[ ]+
[ ]*[1-9][0-9]*[ ]+.*\.p2align 5,0
#pass