[Bug gas/11395] gas creates 64bit add-instruction in 32bit mode for hppa2.0

2010-04-16 Thread nickc at redhat dot com

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2010-04-16 
11:21 ---
Subject: Bug 11395

CVSROOT:/cvs/src
Module name:src
Changes by: ni...@sourceware.org2010-04-16 11:20:41

Modified files:
gas: ChangeLog 
gas/config : tc-hppa.c 
gas/testsuite  : ChangeLog 
gas/testsuite/gas/hppa/basic: add2.s basic.exp 

Log message:
PR gas/11395
* config/tc-hppa.c (pa_ip): Do not allow 64-bit add condition
matcher to accept and unconditional 32-bit add instruction.
(pa_build_unwind_subspace): Cope with error conditions not
allowing the start symbol to be set.

* gas/hppa/basic/add2.s: Add test of simple 32-bit instruction.
* gas/hppa/basic/basic.exp (do_add2): Add grep for expected
disassembly.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/ChangeLog.diff?cvsroot=srcr1=1.4131r2=1.4132
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-hppa.c.diff?cvsroot=srcr1=1.147r2=1.148
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/ChangeLog.diff?cvsroot=srcr1=1.1655r2=1.1656
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/hppa/basic/add2.s.diff?cvsroot=srcr1=1.2r2=1.3
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/hppa/basic/basic.exp.diff?cvsroot=srcr1=1.13r2=1.14


--- Additional Comments From nickc at redhat dot com  2010-04-16 11:23 
---
Hi Michael,

  Sorry for taking so long to look at this problem.

  It turns out to be a bug in GAS's code for parsing condition prefixes for
64-bit addition instructions.  If there were no conditions at all the
instruction was being matched and treated as a 64-bit add, instead of being
rejected and allowing the parser to proceed to the 32-bit add pattern.

  I have checked in a patch to fix this, as well as an addition to the HPPA part
of the GAS testsuite to make sure that the bug stays fixed.

Cheers
  Nick


-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://sourceware.org/bugzilla/show_bug.cgi?id=11395

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils


Untranslated strings in readelf.c

2010-04-16 Thread Frédéric Marchal
Hello,

Several untranlated strings exist in binutils 2.20 in function 
process_mips_specific of readelf.c. In particular around this place:

  10048   printf (_( Reserved entries:\n));
  10049   printf (_(  %*s %10s %*s Purpose\n),
  10050   addr_size * 2, Address, Access,
  10051   addr_size * 2, Initial);
  10052   entry = print_mips_got_entry (data, pltgot, entry);
  10053   printf ( Lazy resolver\n);
  10054   if (data
  10055(byte_get (data + entry - pltgot, addr_size)
  10056(addr_size * 8 - 1)) != 0)
  10057 {
  10058   entry = print_mips_got_entry (data, pltgot, entry);
  10059   printf ( Module pointer (GNU extension)\n);
  10060 }
  10061   printf (\n);
  10062
  10063   if (entry  local_end)
  10064 {
  10065   printf (_( Local entries:\n));
  10066   printf (_(  %*s %10s %*s\n),
  10067   addr_size * 2, Address, Access,
  10068   addr_size * 2, Initial);

Note the missing _() around Address, Access and Initial in the two 
printf.

Frederic


___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/11507] New: altmacro: wrong string interpretation

2010-04-16 Thread theorizer at freemail dot hu
On the macro below 'as' prints infinite number of the following error message
test.S:3: Error: `' was already used as parameter (or another local) name

.altmacro
.macro ABC  
.print local 
.endm

ABC

It's perhaps about that the interpreter thinks the local word in the string of
.print is an altmacro directive and as such it has to be carried out. Note,
there is a space after local.
I've experienced this behavior with binutils 2.18, 2.19, 2.20 on 64-bit and
32-bit gentoo linux as well as on windows xp in cygwin environment (binutils
2.19 and 2.20)

-- 
   Summary: altmacro: wrong string interpretation
   Product: binutils
   Version: 2.20
Status: NEW
  Severity: normal
  Priority: P2
 Component: gas
AssignedTo: unassigned at sources dot redhat dot com
ReportedBy: theorizer at freemail dot hu
CC: bug-binutils at gnu dot org
 GCC build triplet: x86_64-gentoo-linux, x86_32-gentoo-linux, cygwin
  GCC host triplet: x86_64-gentoo-linux, x86_32-gentoo-linux, cygwin
GCC target triplet: x86_64-gentoo-linux, x86_32-gentoo-linux, cygwin


http://sourceware.org/bugzilla/show_bug.cgi?id=11507

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/11509] New: Strange evaluation of symbol containing register

2010-04-16 Thread theorizer at freemail dot hu
Assume the source below:

.intel_syntax noprefix

.eqv param, ebp-4

mov eax, [param]
mov eax, [param]

On this source 'as' (2.19, 2.20) assembles the following:
   0:   8b 45 fcmoveax,DWORD PTR [ebp-0x4]
   3:   b8 fc ff ff ff  moveax,0xfffc

'as' 2.18 however assembles this here:
   0:   8b 01   moveax,DWORD PTR [ecx]
   2:   8b 01   moveax,DWORD PTR [ecx]

if you change the symbol definition line to

.eqv param, ebp

then the assembled code is already the same for both mov instructions (with any
'as' versions):

   0:   8b 45 00moveax,DWORD PTR [ebp+0x0]
   3:   8b 45 00moveax,DWORD PTR [ebp+0x0]

As I see it does not matter whether you apply .eqv, .equ, .equiv, or =. The
result is always the same.

-- 
   Summary: Strange evaluation of symbol containing register
   Product: binutils
   Version: 2.20
Status: NEW
  Severity: normal
  Priority: P2
 Component: gas
AssignedTo: unassigned at sources dot redhat dot com
ReportedBy: theorizer at freemail dot hu
CC: bug-binutils at gnu dot org
 GCC build triplet: x86_64-gentoo-linux, x86_32-gentoo-linux, cygwin
  GCC host triplet: x86_64-gentoo-linux, x86_32-gentoo-linux, cygwin
GCC target triplet: x86_64-gentoo-linux, x86_32-gentoo-linux, cygwin


http://sourceware.org/bugzilla/show_bug.cgi?id=11509

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils