List Info

Thread: Setting a 128 bit value of the vector register




Setting a 128 bit value of the vector register
user name
2007-11-06 07:45:57
I tried setting the vector register on ppc to a 128 hex
number but the
gdb gave me an
"Numeric constant too large".

(gdb) info reg vr1
vr1            {uint128 =
0x00000000000000000000000000000000, v4_float = {
    0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
v8_int16 = {0x0,
    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0
<repeats 16 times>}}
(gdb) set $vr0.uint128 = 0xfffffffffffffffff
Numeric constant too large.

I get identical problem when trying to write to an mmx
register on
x86.  It happens whenever the number is larger than 64bits

I know that I can brake the number in four peaces up and
use
".v4_int32" to accomplish the same goal. I am just
wondering if this
is a bug or a "feature".

-- 
=====================================================
Grzegorz Cieslewski
Research Assistant
High-performance Computing & Simulation (HCS) Research
Laboratory
University of Florida, Dept. of Electrical and Computer
Engineering
330 Benton Hall, Gainesville, FL, 32611-6200
Phone: (352) 392-9041
Email: cieslewskihcs.ufl.edu
Web: www.hcs.ufl.edu
=====================================================

Re: Setting a 128 bit value of the vector register
country flaguser name
United States
2007-11-06 07:48:44
On Tue, Nov 06, 2007 at 08:45:57AM -0500, Grzegorz
Cieslewski wrote:
> I tried setting the vector register on ppc to a 128 hex
number but the
> gdb gave me an
> "Numeric constant too large".

Bug, but not that surprising... GDB uses host integer types
to
represent target integer types, and this is too big for any
host
integer.

-- 
Daniel Jacobowitz
CodeSourcery

[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )