public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
@ 2005-03-17 19:51 Hans-Peter Nilsson
  2005-03-18 20:00 ` H. J. Lu
  0 siblings, 1 reply; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-17 19:51 UTC (permalink / raw)
  To: H . J . Lu; +Cc: binutils

Same as for ld-cris; missing adjustments cause these failures:
Running /home/hp/combined/combined/ld/testsuite/ld-mmix/mmix.exp ...
FAIL: ld-mmix/bpo-1
FAIL: ld-mmix/bpo-10
FAIL: ld-mmix/bpo-11
FAIL: ld-mmix/bpo-14
FAIL: ld-mmix/bpo-16
FAIL: ld-mmix/bpo-17
FAIL: ld-mmix/bpo-18
FAIL: ld-mmix/bpo-19
FAIL: ld-mmix/bpo-2
FAIL: ld-mmix/bpo-3
FAIL: ld-mmix/bpo-4
FAIL: ld-mmix/bpo-5
FAIL: ld-mmix/bpo-6
FAIL: ld-mmix/bpo-9
FAIL: ld-mmix/bspec1
FAIL: ld-mmix/bspec2
FAIL: ld-mmix/greg-1
FAIL: ld-mmix/greg-19
FAIL: ld-mmix/greg-2
FAIL: ld-mmix/greg-3
FAIL: ld-mmix/greg-4
FAIL: ld-mmix/greg-5
FAIL: ld-mmix/greg-5s
FAIL: ld-mmix/greg-6
FAIL: ld-mmix/greg-7
FAIL: ld-mmix/loc1
FAIL: ld-mmix/loc2
FAIL: ld-mmix/loc3
FAIL: ld-mmix/loc4
FAIL: ld-mmix/loc6
FAIL: ld-mmix/local1
FAIL: ld-mmix/local12
FAIL: ld-mmix/local3
FAIL: ld-mmix/local5
FAIL: ld-mmix/local7
FAIL: ld-mmix/locdo-1
FAIL: ld-mmix/loct-1
FAIL: ld-mmix/locto-1
FAIL: ld-mmix/start-1
FAIL: ld-mmix/undef-3

Thanks in advance.

brgds, H-P

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-17 19:51 Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing Hans-Peter Nilsson
@ 2005-03-18 20:00 ` H. J. Lu
  2005-03-18 20:24   ` H. J. Lu
  0 siblings, 1 reply; 22+ messages in thread
From: H. J. Lu @ 2005-03-18 20:00 UTC (permalink / raw)
  To: Hans-Peter Nilsson; +Cc: binutils

On Thu, Mar 17, 2005 at 11:01:23AM -0500, Hans-Peter Nilsson wrote:
> Same as for ld-cris; missing adjustments cause these failures:
> Running /home/hp/combined/combined/ld/testsuite/ld-mmix/mmix.exp ...
> FAIL: ld-mmix/bpo-1
> FAIL: ld-mmix/bpo-10
> FAIL: ld-mmix/bpo-11
> FAIL: ld-mmix/bpo-14
> FAIL: ld-mmix/bpo-16
> FAIL: ld-mmix/bpo-17
> FAIL: ld-mmix/bpo-18
> FAIL: ld-mmix/bpo-19
> FAIL: ld-mmix/bpo-2
> FAIL: ld-mmix/bpo-3
> FAIL: ld-mmix/bpo-4
> FAIL: ld-mmix/bpo-5
> FAIL: ld-mmix/bpo-6
> FAIL: ld-mmix/bpo-9
> FAIL: ld-mmix/bspec1
> FAIL: ld-mmix/bspec2
> FAIL: ld-mmix/greg-1
> FAIL: ld-mmix/greg-19
> FAIL: ld-mmix/greg-2
> FAIL: ld-mmix/greg-3
> FAIL: ld-mmix/greg-4
> FAIL: ld-mmix/greg-5
> FAIL: ld-mmix/greg-5s
> FAIL: ld-mmix/greg-6
> FAIL: ld-mmix/greg-7
> FAIL: ld-mmix/loc1
> FAIL: ld-mmix/loc2
> FAIL: ld-mmix/loc3
> FAIL: ld-mmix/loc4
> FAIL: ld-mmix/loc6
> FAIL: ld-mmix/local1
> FAIL: ld-mmix/local12
> FAIL: ld-mmix/local3
> FAIL: ld-mmix/local5
> FAIL: ld-mmix/local7
> FAIL: ld-mmix/locdo-1
> FAIL: ld-mmix/loct-1
> FAIL: ld-mmix/locto-1
> FAIL: ld-mmix/start-1
> FAIL: ld-mmix/undef-3
> 

The mmix-elf target doesn't work for me at all. I got failures like:

/export/build/linux/binutils-cross/build-mmix-elf/ld/../binutils/objdump
-dht tmpdir/dump1 > tmpdir/dump.out
regexp_diff match failure
regexp "^       0:      e3fd0001        setl \$253,0x1$"
line   "       0:       e3 fd 00 01     *unknown*"
regexp_diff match failure
regexp "^   10000:      e3fd0004        setl \$253,0x4$"
line   "   10000:       e3 fd 00 04     *unknown*"

There are many failures in gas also.


H.J.

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-18 20:00 ` H. J. Lu
@ 2005-03-18 20:24   ` H. J. Lu
  2005-03-18 21:12     ` Daniel Jacobowitz
  0 siblings, 1 reply; 22+ messages in thread
From: H. J. Lu @ 2005-03-18 20:24 UTC (permalink / raw)
  To: Hans-Peter Nilsson; +Cc: binutils

On Fri, Mar 18, 2005 at 11:10:29AM -0800, H. J. Lu wrote:
> On Thu, Mar 17, 2005 at 11:01:23AM -0500, Hans-Peter Nilsson wrote:
> > Same as for ld-cris; missing adjustments cause these failures:
> > Running /home/hp/combined/combined/ld/testsuite/ld-mmix/mmix.exp ...
> > FAIL: ld-mmix/bpo-1
> > FAIL: ld-mmix/bpo-10
> > FAIL: ld-mmix/bpo-11
> > FAIL: ld-mmix/bpo-14
> > FAIL: ld-mmix/bpo-16
> > FAIL: ld-mmix/bpo-17
> > FAIL: ld-mmix/bpo-18
> > FAIL: ld-mmix/bpo-19
> > FAIL: ld-mmix/bpo-2
> > FAIL: ld-mmix/bpo-3
> > FAIL: ld-mmix/bpo-4
> > FAIL: ld-mmix/bpo-5
> > FAIL: ld-mmix/bpo-6
> > FAIL: ld-mmix/bpo-9
> > FAIL: ld-mmix/bspec1
> > FAIL: ld-mmix/bspec2
> > FAIL: ld-mmix/greg-1
> > FAIL: ld-mmix/greg-19
> > FAIL: ld-mmix/greg-2
> > FAIL: ld-mmix/greg-3
> > FAIL: ld-mmix/greg-4
> > FAIL: ld-mmix/greg-5
> > FAIL: ld-mmix/greg-5s
> > FAIL: ld-mmix/greg-6
> > FAIL: ld-mmix/greg-7
> > FAIL: ld-mmix/loc1
> > FAIL: ld-mmix/loc2
> > FAIL: ld-mmix/loc3
> > FAIL: ld-mmix/loc4
> > FAIL: ld-mmix/loc6
> > FAIL: ld-mmix/local1
> > FAIL: ld-mmix/local12
> > FAIL: ld-mmix/local3
> > FAIL: ld-mmix/local5
> > FAIL: ld-mmix/local7
> > FAIL: ld-mmix/locdo-1
> > FAIL: ld-mmix/loct-1
> > FAIL: ld-mmix/locto-1
> > FAIL: ld-mmix/start-1
> > FAIL: ld-mmix/undef-3
> > 
> 
> The mmix-elf target doesn't work for me at all. I got failures like:
> 
> /export/build/linux/binutils-cross/build-mmix-elf/ld/../binutils/objdump
> -dht tmpdir/dump1 > tmpdir/dump.out
> regexp_diff match failure
> regexp "^       0:      e3fd0001        setl \$253,0x1$"
> line   "       0:       e3 fd 00 01     *unknown*"
> regexp_diff match failure
> regexp "^   10000:      e3fd0004        setl \$253,0x4$"
> line   "   10000:       e3 fd 00 04     *unknown*"

This only happens on 64bit host.

> 
> There are many failures in gas also.
> 

It looks like mmix-elf is pretty much broken, especially on 64bit
host. I don't know which failures are really caused by my empty
section removal. May I suggest you clean up mmix-elf for both 32 and 64
bit hosts before I work on empty section removal?


H.J.

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-18 20:24   ` H. J. Lu
@ 2005-03-18 21:12     ` Daniel Jacobowitz
  2005-03-18 21:33       ` H. J. Lu
  0 siblings, 1 reply; 22+ messages in thread
From: Daniel Jacobowitz @ 2005-03-18 21:12 UTC (permalink / raw)
  To: H. J. Lu; +Cc: Hans-Peter Nilsson, binutils

On Fri, Mar 18, 2005 at 11:54:17AM -0800, H. J. Lu wrote:
> It looks like mmix-elf is pretty much broken, especially on 64bit
> host. I don't know which failures are really caused by my empty
> section removal. May I suggest you clean up mmix-elf for both 32 and 64
> bit hosts before I work on empty section removal?

Have you tried mmix-mmo?

-- 
Daniel Jacobowitz
CodeSourcery, LLC

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-18 21:12     ` Daniel Jacobowitz
@ 2005-03-18 21:33       ` H. J. Lu
  2005-03-18 22:03         ` Daniel Jacobowitz
  0 siblings, 1 reply; 22+ messages in thread
From: H. J. Lu @ 2005-03-18 21:33 UTC (permalink / raw)
  To: Hans-Peter Nilsson, binutils

On Fri, Mar 18, 2005 at 02:59:55PM -0500, Daniel Jacobowitz wrote:
> On Fri, Mar 18, 2005 at 11:54:17AM -0800, H. J. Lu wrote:
> > It looks like mmix-elf is pretty much broken, especially on 64bit
> > host. I don't know which failures are really caused by my empty
> > section removal. May I suggest you clean up mmix-elf for both 32 and 64
> > bit hosts before I work on empty section removal?
> 
> Have you tried mmix-mmo?
> 

checking target system type... Invalid configuration `mmix-mmo': system
`mmo' not recognized


H.J.

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-18 21:33       ` H. J. Lu
@ 2005-03-18 22:03         ` Daniel Jacobowitz
  2005-03-18 22:07           ` H. J. Lu
  0 siblings, 1 reply; 22+ messages in thread
From: Daniel Jacobowitz @ 2005-03-18 22:03 UTC (permalink / raw)
  To: H. J. Lu; +Cc: Hans-Peter Nilsson, binutils

On Fri, Mar 18, 2005 at 12:03:49PM -0800, H. J. Lu wrote:
> On Fri, Mar 18, 2005 at 02:59:55PM -0500, Daniel Jacobowitz wrote:
> > On Fri, Mar 18, 2005 at 11:54:17AM -0800, H. J. Lu wrote:
> > > It looks like mmix-elf is pretty much broken, especially on 64bit
> > > host. I don't know which failures are really caused by my empty
> > > section removal. May I suggest you clean up mmix-elf for both 32 and 64
> > > bit hosts before I work on empty section removal?
> > 
> > Have you tried mmix-mmo?
> > 
> 
> checking target system type... Invalid configuration `mmix-mmo': system
> `mmo' not recognized

Excuse me for misremembering.  You could always try the archives, or
config.sub:

% ./config.sub mmix
mmix-knuth-mmixware

-- 
Daniel Jacobowitz
CodeSourcery, LLC

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-18 22:03         ` Daniel Jacobowitz
@ 2005-03-18 22:07           ` H. J. Lu
  2005-03-19  0:03             ` Hans-Peter Nilsson
  0 siblings, 1 reply; 22+ messages in thread
From: H. J. Lu @ 2005-03-18 22:07 UTC (permalink / raw)
  To: Hans-Peter Nilsson, binutils

On Fri, Mar 18, 2005 at 03:06:32PM -0500, Daniel Jacobowitz wrote:
> On Fri, Mar 18, 2005 at 12:03:49PM -0800, H. J. Lu wrote:
> > On Fri, Mar 18, 2005 at 02:59:55PM -0500, Daniel Jacobowitz wrote:
> > > On Fri, Mar 18, 2005 at 11:54:17AM -0800, H. J. Lu wrote:
> > > > It looks like mmix-elf is pretty much broken, especially on 64bit
> > > > host. I don't know which failures are really caused by my empty
> > > > section removal. May I suggest you clean up mmix-elf for both 32 and 64
> > > > bit hosts before I work on empty section removal?
> > > 
> > > Have you tried mmix-mmo?
> > > 
> > 
> > checking target system type... Invalid configuration `mmix-mmo': system
> > `mmo' not recognized
> 
> Excuse me for misremembering.  You could always try the archives, or
> config.sub:
> 
> % ./config.sub mmix
> mmix-knuth-mmixware
> 

Same problem. mmix-mmixware == mmix-elf. It doesn't support 64bit host.
It is kind of odd since mmix-elf is 64bit. Please fix it first.


H.J.

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-18 22:07           ` H. J. Lu
@ 2005-03-19  0:03             ` Hans-Peter Nilsson
  2005-03-19  0:18               ` H. J. Lu
  0 siblings, 1 reply; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-19  0:03 UTC (permalink / raw)
  To: hongjiu.lu; +Cc: binutils

(Please fix lucon.org so it doesn't bounce messages from me.)

On Fri, 18 Mar 2005, H. J. Lu wrote:
> On Fri, Mar 18, 2005 at 03:06:32PM -0500, Daniel Jacobowitz wrote:
> > % ./config.sub mmix
> > mmix-knuth-mmixware

That's the correct triplet.

> Same problem. mmix-mmixware == mmix-elf. It doesn't support 64bit host.
> It is kind of odd since mmix-elf is 64bit. Please fix it first.

Not odd at all when it's developed on i686-pc-linux-gnu...
(I.e. it's not a 64-bit bfd_vma issue.)

Hmm, I thought I'd built on a 64-bit host, but perhaps not
recently.  I'll make sure the toolchain builds on a 64-bit host
and get back to you.

brgds, H-P
PS.  Thanks for looking at the 64ksec problems!

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

* Re: Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing
  2005-03-19  0:03             ` Hans-Peter Nilsson
@ 2005-03-19  0:18               ` H. J. Lu
  2005-03-19 18:53                 ` Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c) Hans-Peter Nilsson
  0 siblings, 1 reply; 22+ messages in thread
From: H. J. Lu @ 2005-03-19  0:18 UTC (permalink / raw)
  To: Hans-Peter Nilsson; +Cc: binutils

On Fri, Mar 18, 2005 at 05:49:06PM -0500, Hans-Peter Nilsson wrote:
> (Please fix lucon.org so it doesn't bounce messages from me.)

It should be fixed now.

> 
> On Fri, 18 Mar 2005, H. J. Lu wrote:
> > On Fri, Mar 18, 2005 at 03:06:32PM -0500, Daniel Jacobowitz wrote:
> > > % ./config.sub mmix
> > > mmix-knuth-mmixware
> 
> That's the correct triplet.
> 
> > Same problem. mmix-mmixware == mmix-elf. It doesn't support 64bit host.
> > It is kind of odd since mmix-elf is 64bit. Please fix it first.
> 
> Not odd at all when it's developed on i686-pc-linux-gnu...
> (I.e. it's not a 64-bit bfd_vma issue.)
> 
> Hmm, I thought I'd built on a 64-bit host, but perhaps not
> recently.  I'll make sure the toolchain builds on a 64-bit host
> and get back to you.

Please make sure that there are no unexpected failures in gas.

> 
> brgds, H-P
> PS.  Thanks for looking at the 64ksec problems!

Alan checked in a patch. But linker is still very slow if there are
64K output sections. With this patch

http://sourceware.org/ml/binutils/2005-03/msg00487.html

linker should be ok with 64K input sections.


H.J.

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

* Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-19  0:18               ` H. J. Lu
@ 2005-03-19 18:53                 ` Hans-Peter Nilsson
  2005-03-20  1:15                   ` H. J. Lu
  0 siblings, 1 reply; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-19 18:53 UTC (permalink / raw)
  To: H. J. Lu; +Cc: binutils

On Fri, 18 Mar 2005, H. J. Lu wrote:
> Please make sure that there are no unexpected failures in gas.

That's what I meant of course.  Now it does; if there are any
related ld failures they disappear in the breakage due to empty
size section removal.

(For the record, the value of (X << 24) where X=0xff depends on
the size of int and the type of the expression.  Easiest fixed
by forcing the type of X.)

I'll commit this to 2.16 too.

	* mmix-opc.c (O, Z): Force expression as unsigned long.

Index: mmix-opc.c
===================================================================
RCS file: /cvs/src/src/opcodes/mmix-opc.c,v
retrieving revision 1.2
diff -p -c -u -p -r1.2 mmix-opc.c
cvs diff: conflicting specifications of output style
--- mmix-opc.c	13 Dec 2003 14:56:24 -0000	1.2
+++ mmix-opc.c	19 Mar 2005 04:06:27 -0000
@@ -67,11 +67,11 @@ const struct mmix_spec_reg mmix_spec_reg
 /* All bits in the opcode-byte are significant.  Add "| ..."
expressions
    to add zero-bits.  */
 #undef O
-#define O(m) ((m) << 24), ((~(m) & 255) << 24)
+#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24)

 /* Bits 7..1 of the opcode are significant.  */
 #undef Z
-#define Z(m) ((m) << 24), ((~(m) & 254) << 24)
+#define Z(m) ((unsigned long) (m) << 24), ((~(unsigned long) (m) & 254) << 24)

 /* For easier overview of the table.  */
 #define N mmix_type_normal

brgds, H-P

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-19 18:53                 ` Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c) Hans-Peter Nilsson
@ 2005-03-20  1:15                   ` H. J. Lu
  2005-03-20  1:44                     ` Daniel Jacobowitz
                                       ` (2 more replies)
  0 siblings, 3 replies; 22+ messages in thread
From: H. J. Lu @ 2005-03-20  1:15 UTC (permalink / raw)
  To: Hans-Peter Nilsson; +Cc: binutils

On Fri, Mar 18, 2005 at 11:30:41PM -0500, Hans-Peter Nilsson wrote:
> On Fri, 18 Mar 2005, H. J. Lu wrote:
> > Please make sure that there are no unexpected failures in gas.
> 
> That's what I meant of course.  Now it does; if there are any
> related ld failures they disappear in the breakage due to empty
> size section removal.
> 
> (For the record, the value of (X << 24) where X=0xff depends on
> the size of int and the type of the expression.  Easiest fixed
> by forcing the type of X.)
> 
> I'll commit this to 2.16 too.
> 
> 	* mmix-opc.c (O, Z): Force expression as unsigned long.
> 

It isn't enough. I checked in the following patch to mainline to
fix it. I suggest you check it to 2.16 branch.

BTW, is mmix-mmixware a real ELF target? When I used mmix-elf, many
ELF tests in gas/testsuite/gas/elf failed. Should they be fixed or
skipped?


H.J.
----
2005-03-19  H.J. Lu  <hongjiu.lu@intel.com>

	* mmix-opc.c (O): Use 24UL instead of 24 for unsigned long.
	(Z): Likewise.

--- opcodes/mmix-opc.c.ll	2005-03-19 10:06:14.302812718 -0800
+++ opcodes/mmix-opc.c	2005-03-19 10:24:16.870501567 -0800
@@ -67,11 +67,11 @@ const struct mmix_spec_reg mmix_spec_reg
 /* All bits in the opcode-byte are significant.  Add "| ..." expressions
    to add zero-bits.  */
 #undef O
-#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24)
+#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24UL)
 
 /* Bits 7..1 of the opcode are significant.  */
 #undef Z
-#define Z(m) ((unsigned long) (m) << 24), ((~(unsigned long) (m) & 254) << 24)
+#define Z(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 254) << 24UL)
 
 /* For easier overview of the table.  */
 #define N mmix_type_normal

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20  1:15                   ` H. J. Lu
@ 2005-03-20  1:44                     ` Daniel Jacobowitz
  2005-03-20  5:49                       ` H. J. Lu
  2005-03-20  2:05                     ` Hans-Peter Nilsson
  2005-03-20  2:32                     ` Hans-Peter Nilsson
  2 siblings, 1 reply; 22+ messages in thread
From: Daniel Jacobowitz @ 2005-03-20  1:44 UTC (permalink / raw)
  To: H. J. Lu; +Cc: Hans-Peter Nilsson, binutils

On Sat, Mar 19, 2005 at 10:33:22AM -0800, H. J. Lu wrote:
> On Fri, Mar 18, 2005 at 11:30:41PM -0500, Hans-Peter Nilsson wrote:
> > On Fri, 18 Mar 2005, H. J. Lu wrote:
> > > Please make sure that there are no unexpected failures in gas.
> > 
> > That's what I meant of course.  Now it does; if there are any
> > related ld failures they disappear in the breakage due to empty
> > size section removal.
> > 
> > (For the record, the value of (X << 24) where X=0xff depends on
> > the size of int and the type of the expression.  Easiest fixed
> > by forcing the type of X.)
> > 
> > I'll commit this to 2.16 too.
> > 
> > 	* mmix-opc.c (O, Z): Force expression as unsigned long.
> > 
> 
> It isn't enough. I checked in the following patch to mainline to
> fix it. I suggest you check it to 2.16 branch.

Why do you believe the type of the shift count matters here?

> -#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24)
> +#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24UL)

-- 
Daniel Jacobowitz
CodeSourcery, LLC

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20  1:15                   ` H. J. Lu
  2005-03-20  1:44                     ` Daniel Jacobowitz
@ 2005-03-20  2:05                     ` Hans-Peter Nilsson
  2005-03-20 13:27                       ` H. J. Lu
  2005-03-20 19:58                       ` H. J. Lu
  2005-03-20  2:32                     ` Hans-Peter Nilsson
  2 siblings, 2 replies; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-20  2:05 UTC (permalink / raw)
  To: H. J. Lu; +Cc: binutils

On Sat, 19 Mar 2005, H. J. Lu wrote:
> On Fri, Mar 18, 2005 at 11:30:41PM -0500, Hans-Peter Nilsson wrote:
> > 	* mmix-opc.c (O, Z): Force expression as unsigned long.
> >
>
> It isn't enough. I checked in the following patch to mainline to
> fix it. I suggest you check it to 2.16 branch.

Please explain what faults you saw; "isn't enough" isn't enough
to warrant this patch, which I don't see the obviousity in
without further explanation.  Alternatively, revert it.

FWIW, I checked that this patch fixed the GAS testsuite errors
on a RH Ent AS 3.0 x86_64-unknown-linux-gnu with "gcc
version 3.2.3 20030502 (Red Hat Linux 3.2.3-49)" aka.
spe189.testdrive.hp.com.

> BTW, is mmix-mmixware a real ELF target? When I used mmix-elf, many
> ELF tests in gas/testsuite/gas/elf failed. Should they be fixed or
> skipped?

Again, there is no mmix-elf port.  Use mmix-knuth-mmixware.

brgds, H-P

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20  1:15                   ` H. J. Lu
  2005-03-20  1:44                     ` Daniel Jacobowitz
  2005-03-20  2:05                     ` Hans-Peter Nilsson
@ 2005-03-20  2:32                     ` Hans-Peter Nilsson
  2 siblings, 0 replies; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-20  2:32 UTC (permalink / raw)
  To: H. J. Lu; +Cc: binutils

On Sat, 19 Mar 2005, H. J. Lu wrote:
> BTW, is mmix-mmixware a real ELF target?

No, but you might be confused by noting that mmix-knuth-mmixware
assembles to (64-bit) ELF.  The default output format however is
mmo, not ELF.

brgds, H-P

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20  1:44                     ` Daniel Jacobowitz
@ 2005-03-20  5:49                       ` H. J. Lu
  2005-03-20  5:53                         ` Daniel Jacobowitz
  0 siblings, 1 reply; 22+ messages in thread
From: H. J. Lu @ 2005-03-20  5:49 UTC (permalink / raw)
  To: Hans-Peter Nilsson, binutils

On Sat, Mar 19, 2005 at 01:36:54PM -0500, Daniel Jacobowitz wrote:
> On Sat, Mar 19, 2005 at 10:33:22AM -0800, H. J. Lu wrote:
> > On Fri, Mar 18, 2005 at 11:30:41PM -0500, Hans-Peter Nilsson wrote:
> > > On Fri, 18 Mar 2005, H. J. Lu wrote:
> > > > Please make sure that there are no unexpected failures in gas.
> > > 
> > > That's what I meant of course.  Now it does; if there are any
> > > related ld failures they disappear in the breakage due to empty
> > > size section removal.
> > > 
> > > (For the record, the value of (X << 24) where X=0xff depends on
> > > the size of int and the type of the expression.  Easiest fixed
> > > by forcing the type of X.)
> > > 
> > > I'll commit this to 2.16 too.
> > > 
> > > 	* mmix-opc.c (O, Z): Force expression as unsigned long.
> > > 
> > 
> > It isn't enough. I checked in the following patch to mainline to
> > fix it. I suggest you check it to 2.16 branch.
> 
> Why do you believe the type of the shift count matters here?
> 
> > -#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24)
> > +#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24UL)
> 

Without that change, mmix doesn't work on x86_64.


H.J.

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20  5:49                       ` H. J. Lu
@ 2005-03-20  5:53                         ` Daniel Jacobowitz
  0 siblings, 0 replies; 22+ messages in thread
From: Daniel Jacobowitz @ 2005-03-20  5:53 UTC (permalink / raw)
  To: H. J. Lu; +Cc: Hans-Peter Nilsson, binutils

On Sat, Mar 19, 2005 at 11:00:03AM -0800, H. J. Lu wrote:
> On Sat, Mar 19, 2005 at 01:36:54PM -0500, Daniel Jacobowitz wrote:
> > On Sat, Mar 19, 2005 at 10:33:22AM -0800, H. J. Lu wrote:
> > > On Fri, Mar 18, 2005 at 11:30:41PM -0500, Hans-Peter Nilsson wrote:
> > > > On Fri, 18 Mar 2005, H. J. Lu wrote:
> > > > > Please make sure that there are no unexpected failures in gas.
> > > > 
> > > > That's what I meant of course.  Now it does; if there are any
> > > > related ld failures they disappear in the breakage due to empty
> > > > size section removal.
> > > > 
> > > > (For the record, the value of (X << 24) where X=0xff depends on
> > > > the size of int and the type of the expression.  Easiest fixed
> > > > by forcing the type of X.)
> > > > 
> > > > I'll commit this to 2.16 too.
> > > > 
> > > > 	* mmix-opc.c (O, Z): Force expression as unsigned long.
> > > > 
> > > 
> > > It isn't enough. I checked in the following patch to mainline to
> > > fix it. I suggest you check it to 2.16 branch.
> > 
> > Why do you believe the type of the shift count matters here?
> > 
> > > -#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24)
> > > +#define O(m) ((unsigned long) (m) << 24UL), ((~(unsigned long) (m) & 255) << 24UL)
> > 
> 
> Without that change, mmix doesn't work on x86_64.

The C language seems to disagree with you.  Please provide an example.

The type of an << operation is the (promoted) type of the left operand;
the type of the right operand is generally irrelevant.

-- 
Daniel Jacobowitz
CodeSourcery, LLC

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20  2:05                     ` Hans-Peter Nilsson
@ 2005-03-20 13:27                       ` H. J. Lu
  2005-03-20 19:18                         ` Hans-Peter Nilsson
  2005-03-20 19:58                       ` H. J. Lu
  1 sibling, 1 reply; 22+ messages in thread
From: H. J. Lu @ 2005-03-20 13:27 UTC (permalink / raw)
  To: Hans-Peter Nilsson; +Cc: binutils

On Sat, Mar 19, 2005 at 01:53:04PM -0500, Hans-Peter Nilsson wrote:
> On Sat, 19 Mar 2005, H. J. Lu wrote:
> > On Fri, Mar 18, 2005 at 11:30:41PM -0500, Hans-Peter Nilsson wrote:
> > > 	* mmix-opc.c (O, Z): Force expression as unsigned long.
> > >
> >
> > It isn't enough. I checked in the following patch to mainline to
> > fix it. I suggest you check it to 2.16 branch.
> 
> Please explain what faults you saw; "isn't enough" isn't enough
> to warrant this patch, which I don't see the obviousity in
> without further explanation.  Alternatively, revert it.
> 
> FWIW, I checked that this patch fixed the GAS testsuite errors
> on a RH Ent AS 3.0 x86_64-unknown-linux-gnu with "gcc
> version 3.2.3 20030502 (Red Hat Linux 3.2.3-49)" aka.
> spe189.testdrive.hp.com.

I am using Fedora Core 3 with gcc version 3.4.2 20041017 (Red Hat
3.4.2-6.fc3). I got exactly the same error as "unknown" instructions
before my patch.

> 
> > BTW, is mmix-mmixware a real ELF target? When I used mmix-elf, many
> > ELF tests in gas/testsuite/gas/elf failed. Should they be fixed or
> > skipped?
> 
> Again, there is no mmix-elf port.  Use mmix-knuth-mmixware.
> 

But binutils thinks mmix-elf is a valid target. Shouldn't it be
disallowed?


H.J.

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20 13:27                       ` H. J. Lu
@ 2005-03-20 19:18                         ` Hans-Peter Nilsson
  2005-03-20 19:19                           ` Hans-Peter Nilsson
  0 siblings, 1 reply; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-20 19:18 UTC (permalink / raw)
  To: H. J. Lu; +Cc: binutils

On Sat, 19 Mar 2005, H. J. Lu wrote:
> I am using Fedora Core 3 with gcc version 3.4.2 20041017 (Red Hat
> 3.4.2-6.fc3). I got exactly the same error as "unknown" instructions
> before my patch.

Thank you for the explanation.  I still wish I could repeat what
you see; it'd mean there's a "promotion" from unsigned int to
int, which I strongly doubt.

> But binutils thinks mmix-elf is a valid target. Shouldn't it be
> disallowed?

User error.  I see no particular need to explicitly disallow all
targets that aren't supported; all x-*-aout x-*-elf x-*-linux*
where x only matches one of them etc.

brgds, H-P

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20 19:18                         ` Hans-Peter Nilsson
@ 2005-03-20 19:19                           ` Hans-Peter Nilsson
  0 siblings, 0 replies; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-20 19:19 UTC (permalink / raw)
  To: H. J. Lu; +Cc: binutils

On Sun, 20 Mar 2005, Hans-Peter Nilsson wrote:
> it'd mean there's a "promotion" from unsigned int to
> int, which I strongly doubt.

Correction: it'd mean there's a "promotion" from "unsigned long"
to "signed int".

brgds, H-P

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20  2:05                     ` Hans-Peter Nilsson
  2005-03-20 13:27                       ` H. J. Lu
@ 2005-03-20 19:58                       ` H. J. Lu
  1 sibling, 0 replies; 22+ messages in thread
From: H. J. Lu @ 2005-03-20 19:58 UTC (permalink / raw)
  To: Hans-Peter Nilsson; +Cc: binutils

On Sat, Mar 19, 2005 at 01:53:04PM -0500, Hans-Peter Nilsson wrote:
> On Sat, 19 Mar 2005, H. J. Lu wrote:
> > On Fri, Mar 18, 2005 at 11:30:41PM -0500, Hans-Peter Nilsson wrote:
> > > 	* mmix-opc.c (O, Z): Force expression as unsigned long.
> > >
> >
> > It isn't enough. I checked in the following patch to mainline to
> > fix it. I suggest you check it to 2.16 branch.
> 
> Please explain what faults you saw; "isn't enough" isn't enough
> to warrant this patch, which I don't see the obviousity in
> without further explanation.  Alternatively, revert it.
> 
> FWIW, I checked that this patch fixed the GAS testsuite errors
> on a RH Ent AS 3.0 x86_64-unknown-linux-gnu with "gcc
> version 3.2.3 20030502 (Red Hat Linux 3.2.3-49)" aka.
> spe189.testdrive.hp.com.
> 

I couldn't reproduce it today. I reverted my change and checked
in the fix for ld-mmix tests.


H.J.

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
  2005-03-20 12:06 Paul Schlie
@ 2005-03-20 17:24 ` Hans-Peter Nilsson
  0 siblings, 0 replies; 22+ messages in thread
From: Hans-Peter Nilsson @ 2005-03-20 17:24 UTC (permalink / raw)
  To: Paul Schlie; +Cc: binutils

On Sat, 19 Mar 2005, Paul Schlie wrote:
> > Hans-Peter Nilsson <hp at bitrange dot com> wrote:
> > ...
> >     * mmix-opc.c (O, Z): Force expression as unsigned long.
> > ...
>
> Out of curiosity, what's the general philosophy with respect to
> specifying specific type-sizes, when it's likely critical that
> a type be at-least as large as some critical value?

AFAIK, the general philosphy is that "int" is *at least* 32
bits.  That means it's a slightly different issue than the one
at hand.

> (as it's not clear that long long need be any particular size
> other than at least as large as a long, etc. etc.; when might
> int64_t for example be more appropriate in gnu sources
> example?)

I don't remember for "GNU sources" in general; see the GNU
coding standard.

brgds, H-P

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

* Re: Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c)
@ 2005-03-20 12:06 Paul Schlie
  2005-03-20 17:24 ` Hans-Peter Nilsson
  0 siblings, 1 reply; 22+ messages in thread
From: Paul Schlie @ 2005-03-20 12:06 UTC (permalink / raw)
  To: Hans-Peter Nilsson; +Cc: binutils

> Hans-Peter Nilsson <hp at bitrange dot com> wrote:
> ...
>     * mmix-opc.c (O, Z): Force expression as unsigned long.
> ...

Out of curiosity, what's the general philosophy with respect to
specifying specific type-sizes, when it's likely critical that
a type be at-least as large as some critical value?

(as it's not clear that long long need be any particular size
other than at least as large as a long, etc. etc.; when might
int64_t for example be more appropriate in gnu sources example?)


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

end of thread, other threads:[~2005-03-20 17:16 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-03-17 19:51 Necessary ld-mmix testsuite updates for your elflink.c empty sections change are missing Hans-Peter Nilsson
2005-03-18 20:00 ` H. J. Lu
2005-03-18 20:24   ` H. J. Lu
2005-03-18 21:12     ` Daniel Jacobowitz
2005-03-18 21:33       ` H. J. Lu
2005-03-18 22:03         ` Daniel Jacobowitz
2005-03-18 22:07           ` H. J. Lu
2005-03-19  0:03             ` Hans-Peter Nilsson
2005-03-19  0:18               ` H. J. Lu
2005-03-19 18:53                 ` Committed, MMIX: Fix 64-bit host (opcodes/mmix-opc.c) Hans-Peter Nilsson
2005-03-20  1:15                   ` H. J. Lu
2005-03-20  1:44                     ` Daniel Jacobowitz
2005-03-20  5:49                       ` H. J. Lu
2005-03-20  5:53                         ` Daniel Jacobowitz
2005-03-20  2:05                     ` Hans-Peter Nilsson
2005-03-20 13:27                       ` H. J. Lu
2005-03-20 19:18                         ` Hans-Peter Nilsson
2005-03-20 19:19                           ` Hans-Peter Nilsson
2005-03-20 19:58                       ` H. J. Lu
2005-03-20  2:32                     ` Hans-Peter Nilsson
2005-03-20 12:06 Paul Schlie
2005-03-20 17:24 ` Hans-Peter Nilsson

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).