You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2005/08/04 04:19:35 UTC
[jira] Created: (STDCXX-11) IA64 32-bit atomic operations broken
IA64 32-bit atomic operations broken
------------------------------------
Key: STDCXX-11
URL: http://issues.apache.org/jira/browse/STDCXX-11
Project: STDCXX
Type: Bug
Components: Build
Versions: 4.1.2
Environment: IA64, 32-bit
Reporter: Martin Sebor
Priority: Critical
Fix For: 4.1.3
The atomic operations on IA64 are broken in 32-bit mode:
$ cat t.cpp && nice gmake SRCS=t.cpp
#include <iostream>
int main () { }
aCC -c -D_RWSTDDEBUG -mt -D_RWSTD_USE_CONFIG -I/build/sebor/aCC-5.57-15s/include -I/build/sebor/dev/stdlib/include -I/build/sebor/dev/stdlib/examples/include -AA -g +d +w +W392 +W655 +W684 +W818 +W819 +W849 t.cpp
aCC t.o -o t -AA +nostl -Wl,+s -L/build/sebor/aCC-5.57-15s/lib -mt -L/build/sebor/aCC-5.57-15s/lib -lstd15s -lm
$ gdb -q t
(gdb) r
Starting program: /build/sebor/aCC-5.57-15s/examples/t
Program received signal SIGSEGV, Segmentation fault
si_code: 1 - SEGV_MAPERR - Address not mapped to object.
0x4118da0:1 in __rw_atomic_add32+0x1 ()
(gdb) where
#0 0x4118da0:1 in __rw_atomic_add32+0x1 ()
#1 0x4070880:0 in __rw::__rw_atomic_preincrement (__x=@0x4001588c,
No.Identifier=false) at /build/sebor/dev/stdlib/include/rw/_mutex.h:1716
#2 0x4151590:0 in __rw::__rw_locale::_C_manage (plocale=0x0, locname=0x0)
at /build/sebor/dev/stdlib/src/locale_body.cpp:832
#3 0x40703c0:0 in std::locale::locale (this=0x400106f0)
at /build/sebor/dev/stdlib/src/locale_core.cpp:60
#4 0x407f290:0 in std::basic_streambuf<char,std::char_traits<char> >::std::basic_streambuf<char,std::char_traits<char> > (this=0x40010670, __mode=__rw_in_out)
at /build/sebor/dev/stdlib/include/streambuf.cc:50
#5 0x4069cc0:0 in std::basic_filebuf<char,std::char_traits<char> >::std::basic_filebuf<char,std::char_traits<char> > (this=0x40010670, __fd=0,
__buf=0x40010bf0 "", __bufsz=512)
at /build/sebor/dev/stdlib/include/fstream:142
#6 0x4067350:0 in std::ios_base::Init::Init (this=0x40010158)
at /build/sebor/dev/stdlib/src/iostream.cpp:244
#7 0x4066d20:0 in __rw::__sinit_t_cpp_ ()
at /build/sebor/dev/stdlib/include/iostream:51
#8 0x20000000797b8df0:0 in EM_mark_BOS+0x50 () from /usr/lib/hpux32/dld.so
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
[jira] Resolved: (STDCXX-11) IA64 32-bit atomic operations broken
Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/STDCXX-11?page=all ]
Martin Sebor resolved STDCXX-11:
--------------------------------
Resolution: Fixed
Test case runs successfully to completion. Closed.
> IA64 32-bit atomic operations broken
> ------------------------------------
>
> Key: STDCXX-11
> URL: http://issues.apache.org/jira/browse/STDCXX-11
> Project: STDCXX
> Type: Bug
> Components: Build
> Versions: 4.1.2
> Environment: IA64, 32-bit
> Reporter: Martin Sebor
> Priority: Critical
> Fix For: 4.1.3
>
> The atomic operations on IA64 are broken in 32-bit mode:
> $ cat t.cpp && nice gmake SRCS=t.cpp
> #include <iostream>
> int main () { }
> aCC -c -D_RWSTDDEBUG -mt -D_RWSTD_USE_CONFIG -I/build/sebor/aCC-5.57-15s/include -I/build/sebor/dev/stdlib/include -I/build/sebor/dev/stdlib/examples/include -AA -g +d +w +W392 +W655 +W684 +W818 +W819 +W849 t.cpp
> aCC t.o -o t -AA +nostl -Wl,+s -L/build/sebor/aCC-5.57-15s/lib -mt -L/build/sebor/aCC-5.57-15s/lib -lstd15s -lm
> $ gdb -q t
> (gdb) r
> Starting program: /build/sebor/aCC-5.57-15s/examples/t
> Program received signal SIGSEGV, Segmentation fault
> si_code: 1 - SEGV_MAPERR - Address not mapped to object.
> 0x4118da0:1 in __rw_atomic_add32+0x1 ()
> (gdb) where
> #0 0x4118da0:1 in __rw_atomic_add32+0x1 ()
> #1 0x4070880:0 in __rw::__rw_atomic_preincrement (__x=@0x4001588c,
> No.Identifier=false) at /build/sebor/dev/stdlib/include/rw/_mutex.h:1716
> #2 0x4151590:0 in __rw::__rw_locale::_C_manage (plocale=0x0, locname=0x0)
> at /build/sebor/dev/stdlib/src/locale_body.cpp:832
> #3 0x40703c0:0 in std::locale::locale (this=0x400106f0)
> at /build/sebor/dev/stdlib/src/locale_core.cpp:60
> #4 0x407f290:0 in std::basic_streambuf<char,std::char_traits<char> >::std::basic_streambuf<char,std::char_traits<char> > (this=0x40010670, __mode=__rw_in_out)
> at /build/sebor/dev/stdlib/include/streambuf.cc:50
> #5 0x4069cc0:0 in std::basic_filebuf<char,std::char_traits<char> >::std::basic_filebuf<char,std::char_traits<char> > (this=0x40010670, __fd=0,
> __buf=0x40010bf0 "", __bufsz=512)
> at /build/sebor/dev/stdlib/include/fstream:142
> #6 0x4067350:0 in std::ios_base::Init::Init (this=0x40010158)
> at /build/sebor/dev/stdlib/src/iostream.cpp:244
> #7 0x4066d20:0 in __rw::__sinit_t_cpp_ ()
> at /build/sebor/dev/stdlib/include/iostream:51
> #8 0x20000000797b8df0:0 in EM_mark_BOS+0x50 () from /usr/lib/hpux32/dld.so
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
[jira] Commented: (STDCXX-11) IA64 32-bit atomic operations broken
Posted by "Nicole Willson (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/STDCXX-11?page=comments#action_12317652 ]
Nicole Willson commented on STDCXX-11:
--------------------------------------
I was able to fix this problem by creating a 32 bit version of the atomic-ia64.s file. Before dereferencing the 32 bit pointer I added the line "addp4 ri = 0, ro" where ri is a register for storing the converted pointer and ro is the register the 32bit pointer is stored in. Also, I added .psr abi32 to the beginning of the file.
> IA64 32-bit atomic operations broken
> ------------------------------------
>
> Key: STDCXX-11
> URL: http://issues.apache.org/jira/browse/STDCXX-11
> Project: STDCXX
> Type: Bug
> Components: Build
> Versions: 4.1.2
> Environment: IA64, 32-bit
> Reporter: Martin Sebor
> Priority: Critical
> Fix For: 4.1.3
>
> The atomic operations on IA64 are broken in 32-bit mode:
> $ cat t.cpp && nice gmake SRCS=t.cpp
> #include <iostream>
> int main () { }
> aCC -c -D_RWSTDDEBUG -mt -D_RWSTD_USE_CONFIG -I/build/sebor/aCC-5.57-15s/include -I/build/sebor/dev/stdlib/include -I/build/sebor/dev/stdlib/examples/include -AA -g +d +w +W392 +W655 +W684 +W818 +W819 +W849 t.cpp
> aCC t.o -o t -AA +nostl -Wl,+s -L/build/sebor/aCC-5.57-15s/lib -mt -L/build/sebor/aCC-5.57-15s/lib -lstd15s -lm
> $ gdb -q t
> (gdb) r
> Starting program: /build/sebor/aCC-5.57-15s/examples/t
> Program received signal SIGSEGV, Segmentation fault
> si_code: 1 - SEGV_MAPERR - Address not mapped to object.
> 0x4118da0:1 in __rw_atomic_add32+0x1 ()
> (gdb) where
> #0 0x4118da0:1 in __rw_atomic_add32+0x1 ()
> #1 0x4070880:0 in __rw::__rw_atomic_preincrement (__x=@0x4001588c,
> No.Identifier=false) at /build/sebor/dev/stdlib/include/rw/_mutex.h:1716
> #2 0x4151590:0 in __rw::__rw_locale::_C_manage (plocale=0x0, locname=0x0)
> at /build/sebor/dev/stdlib/src/locale_body.cpp:832
> #3 0x40703c0:0 in std::locale::locale (this=0x400106f0)
> at /build/sebor/dev/stdlib/src/locale_core.cpp:60
> #4 0x407f290:0 in std::basic_streambuf<char,std::char_traits<char> >::std::basic_streambuf<char,std::char_traits<char> > (this=0x40010670, __mode=__rw_in_out)
> at /build/sebor/dev/stdlib/include/streambuf.cc:50
> #5 0x4069cc0:0 in std::basic_filebuf<char,std::char_traits<char> >::std::basic_filebuf<char,std::char_traits<char> > (this=0x40010670, __fd=0,
> __buf=0x40010bf0 "", __bufsz=512)
> at /build/sebor/dev/stdlib/include/fstream:142
> #6 0x4067350:0 in std::ios_base::Init::Init (this=0x40010158)
> at /build/sebor/dev/stdlib/src/iostream.cpp:244
> #7 0x4066d20:0 in __rw::__sinit_t_cpp_ ()
> at /build/sebor/dev/stdlib/include/iostream:51
> #8 0x20000000797b8df0:0 in EM_mark_BOS+0x50 () from /usr/lib/hpux32/dld.so
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
[jira] Closed: (STDCXX-11) IA64 32-bit atomic operations broken
Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/STDCXX-11?page=all ]
Martin Sebor closed STDCXX-11:
------------------------------
Fix confirmed.
> IA64 32-bit atomic operations broken
> ------------------------------------
>
> Key: STDCXX-11
> URL: http://issues.apache.org/jira/browse/STDCXX-11
> Project: STDCXX
> Type: Bug
> Components: Build
> Versions: 4.1.2
> Environment: IA64, 32-bit
> Reporter: Martin Sebor
> Priority: Critical
> Fix For: 4.1.3
>
> The atomic operations on IA64 are broken in 32-bit mode:
> $ cat t.cpp && nice gmake SRCS=t.cpp
> #include <iostream>
> int main () { }
> aCC -c -D_RWSTDDEBUG -mt -D_RWSTD_USE_CONFIG -I/build/sebor/aCC-5.57-15s/include -I/build/sebor/dev/stdlib/include -I/build/sebor/dev/stdlib/examples/include -AA -g +d +w +W392 +W655 +W684 +W818 +W819 +W849 t.cpp
> aCC t.o -o t -AA +nostl -Wl,+s -L/build/sebor/aCC-5.57-15s/lib -mt -L/build/sebor/aCC-5.57-15s/lib -lstd15s -lm
> $ gdb -q t
> (gdb) r
> Starting program: /build/sebor/aCC-5.57-15s/examples/t
> Program received signal SIGSEGV, Segmentation fault
> si_code: 1 - SEGV_MAPERR - Address not mapped to object.
> 0x4118da0:1 in __rw_atomic_add32+0x1 ()
> (gdb) where
> #0 0x4118da0:1 in __rw_atomic_add32+0x1 ()
> #1 0x4070880:0 in __rw::__rw_atomic_preincrement (__x=@0x4001588c,
> No.Identifier=false) at /build/sebor/dev/stdlib/include/rw/_mutex.h:1716
> #2 0x4151590:0 in __rw::__rw_locale::_C_manage (plocale=0x0, locname=0x0)
> at /build/sebor/dev/stdlib/src/locale_body.cpp:832
> #3 0x40703c0:0 in std::locale::locale (this=0x400106f0)
> at /build/sebor/dev/stdlib/src/locale_core.cpp:60
> #4 0x407f290:0 in std::basic_streambuf<char,std::char_traits<char> >::std::basic_streambuf<char,std::char_traits<char> > (this=0x40010670, __mode=__rw_in_out)
> at /build/sebor/dev/stdlib/include/streambuf.cc:50
> #5 0x4069cc0:0 in std::basic_filebuf<char,std::char_traits<char> >::std::basic_filebuf<char,std::char_traits<char> > (this=0x40010670, __fd=0,
> __buf=0x40010bf0 "", __bufsz=512)
> at /build/sebor/dev/stdlib/include/fstream:142
> #6 0x4067350:0 in std::ios_base::Init::Init (this=0x40010158)
> at /build/sebor/dev/stdlib/src/iostream.cpp:244
> #7 0x4066d20:0 in __rw::__sinit_t_cpp_ ()
> at /build/sebor/dev/stdlib/include/iostream:51
> #8 0x20000000797b8df0:0 in EM_mark_BOS+0x50 () from /usr/lib/hpux32/dld.so
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira