public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* Problem with .req directive in arm-elf-as (2.15 branch)
@ 2004-04-23  3:15 Peter S. Housel
  2004-04-30  8:43 ` Nick Clifton
  2004-04-30 11:02 ` Nick Clifton
  0 siblings, 2 replies; 3+ messages in thread
From: Peter S. Housel @ 2004-04-23  3:15 UTC (permalink / raw)
  To: binutils

The current binutils-2_15-branch has a problem with the ARM ".req"
pseudo-op.  The following code, which used to assemble correctly in 2.13,
now fails:

MMUPurgeTLBReg      .req c6
MMUCP               .req p15
MCR     MMUCP, 0, a1, MMUPurgeTLBReg, c0, 0

Apparently this results because the alias names are already downcased by the
time md_assemble() (and therefore create_register_alias()) in tc-arm.c get
to see them.

-Peter-

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Problem with .req directive in arm-elf-as (2.15 branch)
  2004-04-23  3:15 Problem with .req directive in arm-elf-as (2.15 branch) Peter S. Housel
@ 2004-04-30  8:43 ` Nick Clifton
  2004-04-30 11:02 ` Nick Clifton
  1 sibling, 0 replies; 3+ messages in thread
From: Nick Clifton @ 2004-04-30  8:43 UTC (permalink / raw)
  To: Peter S. Housel; +Cc: binutils

[-- Attachment #1: Type: text/plain, Size: 628 bytes --]

Hi Peter,

>The current binutils-2_15-branch has a problem with the ARM ".req"
>pseudo-op.  The following code, which used to assemble correctly in 2.13,
>now fails:
>
>MMUPurgeTLBReg      .req c6
>MMUCP               .req p15
>MCR     MMUCP, 0, a1, MMUPurgeTLBReg, c0, 0
>
>Apparently this results because the alias names are already downcased by the
>time md_assemble() (and therefore create_register_alias()) in tc-arm.c get
>to see them.
>  
>
Thanks for catching this.  It was due to a small typo in the sources 
which is fixed by the attached patch.  I will be applying this patch to 
the sources shortly.

Cheers
  Nick


[-- Attachment #2: tc-arm.c.patch --]
[-- Type: text/plain, Size: 709 bytes --]

Index: gas/config/tc-arm.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-arm.c,v
retrieving revision 1.167
diff -c -3 -p -r1.167 tc-arm.c
*** gas/config/tc-arm.c	22 Apr 2004 16:18:29 -0000	1.167
--- gas/config/tc-arm.c	30 Apr 2004 08:00:37 -0000
*************** create_register_alias (newname, p)
*** 11439,11445 ****
        char *copy_of_str;
        char *r;
  
! #ifdef IGNORE_OPCODE_CASE
        newname = original_case_string;
  #endif
        copy_of_str = newname;
--- 11439,11445 ----
        char *copy_of_str;
        char *r;
  
! #ifndef IGNORE_OPCODE_CASE
        newname = original_case_string;
  #endif
        copy_of_str = newname;

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Problem with .req directive in arm-elf-as (2.15 branch)
  2004-04-23  3:15 Problem with .req directive in arm-elf-as (2.15 branch) Peter S. Housel
  2004-04-30  8:43 ` Nick Clifton
@ 2004-04-30 11:02 ` Nick Clifton
  1 sibling, 0 replies; 3+ messages in thread
From: Nick Clifton @ 2004-04-30 11:02 UTC (permalink / raw)
  To: Peter S. Housel; +Cc: binutils

[-- Attachment #1: Type: text/plain, Size: 627 bytes --]

Hi Peter,

>The current binutils-2_15-branch has a problem with the ARM ".req"
>pseudo-op.  The following code, which used to assemble correctly in 2.13,
>now fails:
>
>MMUPurgeTLBReg      .req c6
>MMUCP               .req p15
>MCR     MMUCP, 0, a1, MMUPurgeTLBReg, c0, 0
>
>Apparently this results because the alias names are already downcased by the
>time md_assemble() (and therefore create_register_alias()) in tc-arm.c get
>to see them.
>  

Thanks for catching this.  It was due to a small typo in the sources
which is fixed by the attached patch.  I will be applying this patch to
the sources shortly.

Cheers
   Nick



[-- Attachment #2: tc-arm.c.patch --]
[-- Type: text/plain, Size: 2090 bytes --]

Index: gas/config/tc-arm.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-arm.c,v
retrieving revision 1.167
diff -c -3 -p -r1.167 tc-arm.c
*** gas/config/tc-arm.c	22 Apr 2004 16:18:29 -0000	1.167
--- gas/config/tc-arm.c	30 Apr 2004 10:37:21 -0000
*************** co_proc_number (str)
*** 3595,3601 ****
  	}
        else
  	{
! 	  inst.error = _("bad or missing co-processor number");
  	  return FAIL;
  	}
      }
--- 3595,3601 ----
  	}
        else
  	{
! 	  inst.error = all_reg_maps[REG_TYPE_CP].expected;
  	  return FAIL;
  	}
      }
*************** cp_reg_required_here (str, where)
*** 3650,3656 ****
  
    /* In the few cases where we might be able to accept something else
       this error can be overridden.  */
!   inst.error = _("co-processor register expected");
  
    /* Restore the start point.  */
    *str = start;
--- 3650,3656 ----
  
    /* In the few cases where we might be able to accept something else
       this error can be overridden.  */
!   inst.error = all_reg_maps[REG_TYPE_CN].expected;
  
    /* Restore the start point.  */
    *str = start;
*************** fp_reg_required_here (str, where)
*** 3673,3679 ****
  
    /* In the few cases where we might be able to accept something else
       this error can be overridden.  */
!   inst.error = _("floating point register expected");
  
    /* Restore the start point.  */
    *str = start;
--- 3673,3679 ----
  
    /* In the few cases where we might be able to accept something else
       this error can be overridden.  */
!   inst.error = all_reg_maps[REG_TYPE_FN].expected;
  
    /* Restore the start point.  */
    *str = start;
*************** create_register_alias (newname, p)
*** 11439,11445 ****
        char *copy_of_str;
        char *r;
  
! #ifdef IGNORE_OPCODE_CASE
        newname = original_case_string;
  #endif
        copy_of_str = newname;
--- 11439,11445 ----
        char *copy_of_str;
        char *r;
  
! #ifndef IGNORE_OPCODE_CASE
        newname = original_case_string;
  #endif
        copy_of_str = newname;


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-04-30 10:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-04-23  3:15 Problem with .req directive in arm-elf-as (2.15 branch) Peter S. Housel
2004-04-30  8:43 ` Nick Clifton
2004-04-30 11:02 ` Nick Clifton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).