public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ada/29262]  New: Adding tasking support for arm-linux
@ 2006-09-28  6:13 belandor at web dot de
  2006-09-28  6:37 ` [Bug ada/29262] " belandor at web dot de
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: belandor at web dot de @ 2006-09-28  6:13 UTC (permalink / raw)
  To: gcc-bugs

I would like to use tasking support for GNAT on an arm-linux target (Intel
XSCale PXA 270) to the gcc-4_1-branch

The installed runtime library however is using generic dummy package for
tasking support (e.g. s-taprop.ads).
After having a look at gcc/ada/Makefile.in, I figured there needs to be a
couple of changes:

1. need for system-linux-arm.ads - which can be identical to
system-linux-x86.ads

2. The Makefile.in needs to be changed as follows:
(g-soccon is not in my focus, so I just kicked it out for now)
(a-numaux is using the libc bindings)
(all the rest of this section is from the x86-linux part)

Index: Makefile.in
===================================================================
--- Makefile.in (revision 117213)
+++ Makefile.in (working copy)
@@ -539,6 +539,33 @@
   EXTRA_GNATRTL_TASKING_OBJS=s-vxwork.o
 endif

+ifeq ($(strip $(filter-out arm linux%,$(arch) $(osys))),)
+  LIBGNAT_TARGET_PAIRS = \
+  a-intnam.ads<a-intnam-linux.ads \
+  a-numaux.ads<a-numaux-libc-x86.ads \
+  s-inmaop.adb<s-inmaop-posix.adb \
+  s-intman.adb<s-intman-posix.adb \
+  s-osinte.adb<s-osinte-posix.adb \
+  s-osinte.ads<s-osinte-linux.ads \
+  s-osprim.adb<s-osprim-posix.adb \
+  s-taprop.adb<s-taprop-linux.adb \
+  s-taspri.ads<s-taspri-posix.ads \
+  s-tpopsp.adb<s-tpopsp-posix-foreign.adb \
+  s-parame.adb<s-parame-linux.adb \
+  system.ads<system-linux-arm.ads
+
+  TOOLS_TARGET_PAIRS =  \
+    mlib-tgt.adb<mlib-tgt-linux.adb \
+    indepsw.adb<indepsw-gnu.adb
+
+  EH_MECHANISM=-gcc
+  THREADSLIB = -lpthread
+  GNATLIB_SHARED = gnatlib-shared-dual
+  GMEM_LIB = gmemlib
+  PREFIX_OBJS = $(PREFIX_REAL_OBJS)
+  LIBRARY_VERSION := $(LIB_VERSION)
+endif
+
 ifeq ($(strip $(filter-out arm% coff wrs vx%,$(targ))),)
   LIBGNAT_TARGET_PAIRS = \
   a-intnam.ads<a-intnam-vxworks.ads \

Did I forget anything? Unfortunately, I don't have a running (native) compiler
(yet??), so ACATS tests might be hard to do.


-- 
           Summary: Adding tasking support for arm-linux
           Product: gcc
           Version: 4.1.2
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P3
         Component: ada
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: belandor at web dot de
GCC target triplet: arm-xscale-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
@ 2006-09-28  6:37 ` belandor at web dot de
  2006-09-28  6:49 ` belandor at web dot de
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: belandor at web dot de @ 2006-09-28  6:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from belandor at web dot de  2006-09-28 06:37 -------
(In reply to comment #0)
actually, the Makefile.in needs modifications.
a-numaux-x86.ads does not work for arm (error-message is that only 15 digits
are allowed for floating point type), therefore the line 

+  a-numaux.ads<a-numaux-libc-x86.ads \

should be removed in the section.
Compiler is build fine (build=i686-pc-linux-gnu, host=i686-pc-linux-gnu) and
the files get installed in adainclude/adalib as expected.
I even was able to compile a simple tasking program.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
  2006-09-28  6:37 ` [Bug ada/29262] " belandor at web dot de
@ 2006-09-28  6:49 ` belandor at web dot de
  2006-09-28  6:49 ` belandor at web dot de
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: belandor at web dot de @ 2006-09-28  6:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from belandor at web dot de  2006-09-28 06:49 -------
Created an attachment (id=12347)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12347&action=view)
simple_tasking source code


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
  2006-09-28  6:37 ` [Bug ada/29262] " belandor at web dot de
  2006-09-28  6:49 ` belandor at web dot de
@ 2006-09-28  6:49 ` belandor at web dot de
  2006-09-28  6:52 ` belandor at web dot de
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: belandor at web dot de @ 2006-09-28  6:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from belandor at web dot de  2006-09-28 06:49 -------
Created an attachment (id=12346)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12346&action=view)
hello world source code


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
                   ` (2 preceding siblings ...)
  2006-09-28  6:49 ` belandor at web dot de
@ 2006-09-28  6:52 ` belandor at web dot de
  2006-10-04 18:03 ` laurent at guerby dot net
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: belandor at web dot de @ 2006-09-28  6:52 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from belandor at web dot de  2006-09-28 06:51 -------
...running the above programs give me the following errors/messages:

root@colibri:/testprogs/glibc# ./simple_tasking
Alignment trap: simple_tasking (1099) PC=0x0000a670 Instr=0xe5933000
Address=0x00000001 FSR 0x0f3

raised STORAGE_ERROR : s-intman.adb:158 explicit raise
root@colibri:/testprogs/glibc#
root@colibri:/testprogs/glibc#
root@colibri:/testprogs/glibc# ls
hello           hello_threaded  hello_world     simple_tasking
root@colibri:/testprogs/glibc# ./hello_world
Hello World

so it seems, there's something fishy for the tasking setup - any good idea to
trace this up? (I don't have a debugger at hand *grrr*)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
                   ` (3 preceding siblings ...)
  2006-09-28  6:52 ` belandor at web dot de
@ 2006-10-04 18:03 ` laurent at guerby dot net
  2006-10-09  4:13 ` belandor at web dot de
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: laurent at guerby dot net @ 2006-10-04 18:03 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from laurent at guerby dot net  2006-10-04 18:03 -------
Hi,

s-osinte.ads<s-osinte-linux.ads

This might need a bit more work, some structure size and such might not be
identical between versions. You should look at the s-osinte-linux-alpha.ads and
s-osinte-linux-hppa.ads diffs with s-osinte-linux.ads to get an idea of what
kind of changes could be needed.

Hope this helps.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
                   ` (4 preceding siblings ...)
  2006-10-04 18:03 ` laurent at guerby dot net
@ 2006-10-09  4:13 ` belandor at web dot de
  2006-10-09  8:28 ` charlet at adacore dot com
  2007-05-02  9:24 ` charlet at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: belandor at web dot de @ 2006-10-09  4:13 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from belandor at web dot de  2006-10-09 04:13 -------
(In reply to comment #5)
> Hi,
> 
> s-osinte.ads<s-osinte-linux.ads
> 
> This might need a bit more work, some structure size and such might not be
> identical between versions. You should look at the s-osinte-linux-alpha.ads and
> s-osinte-linux-hppa.ads diffs with s-osinte-linux.ads to get an idea of what
> kind of changes could be needed.
> 
> Hope this helps.
> 

... well, I can see differences, but is there any definite way of finding out,
how the C structures actually look like? Do I have to hunt this up in the glibc
source code?

(the signal values should be easily obtainable with a little C program - but
the other stuff?)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
                   ` (5 preceding siblings ...)
  2006-10-09  4:13 ` belandor at web dot de
@ 2006-10-09  8:28 ` charlet at adacore dot com
  2007-05-02  9:24 ` charlet at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: charlet at adacore dot com @ 2006-10-09  8:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from charlet at adacore dot com  2006-10-09 08:28 -------
Subject: Re:  Adding tasking support for arm-linux

> ... well, I can see differences, but is there any definite way of finding out,
> how the C structures actually look like? Do I have to hunt this up in the
> glibc source code?

You need to retrieve the values and struct definitions from the include files
present on your system.

Arno


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

* [Bug ada/29262] Adding tasking support for arm-linux
  2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
                   ` (6 preceding siblings ...)
  2006-10-09  8:28 ` charlet at adacore dot com
@ 2007-05-02  9:24 ` charlet at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: charlet at gcc dot gnu dot org @ 2007-05-02  9:24 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from charlet at gcc dot gnu dot org  2007-05-02 10:24 -------
Unless the submitter intends to work on this PR, I doubt anything will
happen, so closing for now.

If someone is interested in working on this, feel free to reopen and
assign to you.

Arno


-- 

charlet at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |WONTFIX


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29262


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

end of thread, other threads:[~2007-05-02  9:24 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-09-28  6:13 [Bug ada/29262] New: Adding tasking support for arm-linux belandor at web dot de
2006-09-28  6:37 ` [Bug ada/29262] " belandor at web dot de
2006-09-28  6:49 ` belandor at web dot de
2006-09-28  6:49 ` belandor at web dot de
2006-09-28  6:52 ` belandor at web dot de
2006-10-04 18:03 ` laurent at guerby dot net
2006-10-09  4:13 ` belandor at web dot de
2006-10-09  8:28 ` charlet at adacore dot com
2007-05-02  9:24 ` charlet at gcc dot gnu dot org

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