Fix latent bug exposed by a gcc-3 bug fix.
* tc-ia64.c (is_conditional_branch): Return true for br, brl, and br. excluding br.i.
This commit is contained in:
parent
baf80c32ae
commit
1deb8127a2
2 changed files with 14 additions and 9 deletions
|
@ -1,3 +1,8 @@
|
|||
2001-04-13 Jim Wilson <wilson@redhat.com>
|
||||
|
||||
* tc-ia64.c (is_conditional_branch): Return true for br, brl, and br.
|
||||
excluding br.i.
|
||||
|
||||
2001-04-13 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* config/obj-elf.c (obj_elf_change_section): Add entsize argument,
|
||||
|
|
|
@ -6889,19 +6889,19 @@ ia64_canonicalize_symbol_name (name)
|
|||
return name;
|
||||
}
|
||||
|
||||
/* Return true if idesc is a conditional branch instruction. */
|
||||
|
||||
static int
|
||||
is_conditional_branch (idesc)
|
||||
struct ia64_opcode *idesc;
|
||||
{
|
||||
return (strncmp (idesc->name, "br", 2) == 0
|
||||
&& (strcmp (idesc->name, "br") == 0
|
||||
|| strncmp (idesc->name, "br.cond", 7) == 0
|
||||
|| strncmp (idesc->name, "br.call", 7) == 0
|
||||
|| strncmp (idesc->name, "br.ret", 6) == 0
|
||||
|| strcmp (idesc->name, "brl") == 0
|
||||
|| strncmp (idesc->name, "brl.cond", 7) == 0
|
||||
|| strncmp (idesc->name, "brl.call", 7) == 0
|
||||
|| strncmp (idesc->name, "brl.ret", 6) == 0));
|
||||
/* br is a conditional branch. Everything that starts with br. except
|
||||
br.ia is a conditional branch. Everything that starts with brl is a
|
||||
conditional branch. */
|
||||
return (idesc->name[0] == 'b' && idesc->name[1] == 'r'
|
||||
&& (idesc->name[2] == '\0'
|
||||
|| (idesc->name[2] == '.' && idesc->name[3] != 'i')
|
||||
|| idesc->name[2] == 'l'));
|
||||
}
|
||||
|
||||
/* Return whether the given opcode is a taken branch. If there's any doubt,
|
||||
|
|
Loading…
Reference in a new issue