public inbox for java-prs@sourceware.org
help / color / mirror / Atom feed
* Re: libgcj/9078: libffi: problems with uint8 on powerpc
@ 2003-03-17 3:19 jsturm
0 siblings, 0 replies; 3+ messages in thread
From: jsturm @ 2003-03-17 3:19 UTC (permalink / raw)
To: 173074, dbelan2, gcc-bugs, gcc-prs, java-prs, jsturm
Synopsis: libffi: problems with uint8 on powerpc
State-Changed-From-To: feedback->closed
State-Changed-By: jsturm
State-Changed-When: Mon Mar 17 03:19:44 2003
State-Changed-Why:
Closed in Debian BTS.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9078
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: libgcj/9078: libffi: problems with uint8 on powerpc
@ 2002-12-29 8:13 jsturm
0 siblings, 0 replies; 3+ messages in thread
From: jsturm @ 2002-12-29 8:13 UTC (permalink / raw)
To: 173074, dbelan2, gcc-bugs, gcc-prs, java-prs, jsturm, nobody
Synopsis: libffi: problems with uint8 on powerpc
Responsible-Changed-From-To: unassigned->jsturm
Responsible-Changed-By: jsturm
Responsible-Changed-When: Sun Dec 29 08:13:07 2002
Responsible-Changed-Why:
I'll handle it.
State-Changed-From-To: open->feedback
State-Changed-By: jsturm
State-Changed-When: Sun Dec 29 08:13:07 2002
State-Changed-Why:
Response sent via email.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9078
^ permalink raw reply [flat|nested] 3+ messages in thread
* libgcj/9078: libffi: problems with uint8 on powerpc
@ 2002-12-28 3:16 Matthias Klose
0 siblings, 0 replies; 3+ messages in thread
From: Matthias Klose @ 2002-12-28 3:16 UTC (permalink / raw)
To: gcc-gnats, debian-gcc
>Number: 9078
>Category: libgcj
>Synopsis: libffi: problems with uint8 on powerpc
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Dec 28 03:16:02 PST 2002
>Closed-Date:
>Last-Modified:
>Originator: David Paul BELANGER <dbelan2@CS.McGill.CA>
>Release: 3.2.1 (Debian) (Debian unstable)
>Organization:
The Debian Project
>Environment:
System: Debian GNU/Linux (unstable)
Architecture: i686
host: i386-linux
>Description:
[ Reported to the Debian BTS as report #173074.
Please CC 173074@bugs.debian.org on replies.
Log of report can be found at http://bugs.debian.org/173074 ]
[ category libgcj, as there is no explicit libffi category]
ffi_type_uint8 and other arguments shorter than one word are
not passed in correctly to the function called by ffi_call.
Also, returns values are not passed correctly. For example, instead of
finding the returned byte value where the pointer points to, it is found
at an offset of 3 from the pointer.
This is related to the fact that the powerpc is a big endian machine and
somewhere, bytes need to be moved.
I have included code and output I get on my powerpc machine.
Thanks,
David
-----
#include <stdio.h>
#include <ffi.h>
unsigned char identity(unsigned char c) {
printf("identity: %d\n", c);
return c;
}
int main(void) {
ffi_cif cif;
ffi_type *args[1];
void *values[1];
int b;
unsigned char result;
int i;
args[0] = &ffi_type_uint;
/*
* args[0] = &ffi_type_uint8; - if this type is specified,
* function always receives 0.
*/
b = 24;
values[0] = &b;
if (ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 1,
&ffi_type_uint8, args) != FFI_OK) {
printf("error\n");
return 1;
}
ffi_call(&cif, identity, &result, values);
printf("at result: %d\n", result);
printf("at result + 3: %d\n", *(&result + 3));
/*
for (i = 0; i < sizeof(result); i++) {
printf("byte %d = %d\n", i, *((unsigned char *) &result));
}
*/
return 0;
}
-----
output:
identity: 24
at result: 0
at result + 3: 24
-----
David
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2003-03-17 3:19 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-03-17 3:19 libgcj/9078: libffi: problems with uint8 on powerpc jsturm
-- strict thread matches above, loose matches on Subject: below --
2002-12-29 8:13 jsturm
2002-12-28 3:16 Matthias Klose
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).