Commit 1255c03a by Tom de Vries Committed by Tom de Vries

recog.c (asm_labels_ok): New function.

2011-09-06  Tom de Vries  <tom@codesourcery.com>

	* recog.c (asm_labels_ok): New function.
	(check_asm_operands): Use asm_labels_ok.

From-SVN: r178580
parent df177175
2011-09-06 Tom de Vries <tom@codesourcery.com>
* recog.c (asm_labels_ok): New function.
(check_asm_operands): Use asm_labels_ok.
2011-09-05 Richard Sandiford <rdsandiford@googlemail.com>
PR target/49606
......@@ -118,6 +118,25 @@ init_recog (void)
}
/* Return true if labels in asm operands BODY are LABEL_REFs. */
static bool
asm_labels_ok (rtx body)
{
rtx asmop;
int i;
asmop = extract_asm_operands (body);
if (asmop == NULL_RTX)
return true;
for (i = 0; i < ASM_OPERANDS_LABEL_LENGTH (asmop); i++)
if (GET_CODE (ASM_OPERANDS_LABEL (asmop, i)) != LABEL_REF)
return false;
return true;
}
/* Check that X is an insn-body for an `asm' with operands
and that the operands mentioned in it are legitimate. */
......@@ -129,6 +148,9 @@ check_asm_operands (rtx x)
const char **constraints;
int i;
if (!asm_labels_ok (x))
return 0;
/* Post-reload, be more strict with things. */
if (reload_completed)
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment