]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Remove obsolete Tru64 UNIX V5.1B support
authorro <ro@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 12 Mar 2012 15:35:56 +0000 (15:35 +0000)
committerro <ro@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 12 Mar 2012 15:35:56 +0000 (15:35 +0000)
libstdc++-v3:
* configure.host: Remove osf* handling.
* config/os/osf: Remove.
* doc/xml/manual/using.xml: Remove OSF reference.

* testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf*
handling.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
Likewise.
* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/list/pthread5.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/23_containers/vector/debug/multithreaded_swap.cc:
Likewise.
* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
* testsuite/30_threads/async/42819.cc: Likewise.

* libstdc++-v3/testsuite/30_threads/async/49668.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/async/any.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/async/async.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/async/launch.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/async/sync.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/call_once/39909.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/call_once/49668.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/call_once/call_once1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable/cons/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable/members/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable/members/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable_any/50862.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable_any/members/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/condition_variable_any/members/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/future/cons/move.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/45133.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/get.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/get2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/share.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/valid.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/wait.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/wait_for.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/future/members/wait_until.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/lock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/lock/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/lock/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/lock/4.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/cons/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/dest/destructor_locked.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/lock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/native_handle/typesizes.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/49668.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/cons/alloc.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/cons/move.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/cons/move_assign.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/get_future.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/get_future2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke3.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke4.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke5.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/reset.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/reset2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/swap.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/packaged_task/members/valid.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/cons/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/promise/cons/alloc.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/promise/cons/move.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/promise/cons/move_assign.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/get_future.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/get_future2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/set_exception.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/set_exception2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/set_value.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/set_value2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/set_value3.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/promise/members/swap.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/lock/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/native_handle/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/try_lock/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/try_lock/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_mutex/unlock/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/lock/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/lock/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/cons/move.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/members/45133.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/members/get.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/members/get2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/members/valid.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/members/wait.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/members/wait_for.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/shared_future/members/wait_until.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/this_thread/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/this_thread/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/this_thread/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/this_thread/4.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/4.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/49668.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/5.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/6.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/7.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/8.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/9.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/cons/moveable.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/members/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/members/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/members/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/members/4.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/members/5.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/thread/members/hardware_concurrency.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/thread/swap/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/native_handle/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/3.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_until/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_until/2.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/try_lock/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/try_lock/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/try_lock/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/try_lock/4.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/modifiers/1.cc:
Likewise.
* libstdc++-v3/testsuite/30_threads/unique_lock/modifiers/2.cc:
Likewise.
* libstdc++-v3/testsuite/ext/rope/pthread7-rope.cc: Likewise.
* libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.

libobjc:
* configure.ac (enable_objc_gc): Remove alpha*-dec-osf* handling.
* configure: Regenerate.

* thr.c (_XOPEN_SOURCE): Define unconditionally.

libjava:
* configure.ac (alpha*-dec-osf*): Remove.
* configure: Regenerate.
* configure.host (alpha*-dec-osf*): Remove.

* gnu/java/net/natPlainDatagramSocketImplPosix.cc (setOption): Use
IPV6_MULTICAST_IF unconditionally.
* gnu/java/net/natPlainDatagramSocketImplWin32.cc (setOption):
Likewise.
* gnu/java/net/natPlainSocketImplPosix.cc
(gnu::java::net::PlainSocketImpl::accept): Use ::accept instead of
_Jv_accept.
* include/posix-signal.h [__alpha__ && __osf__]: Remove.
* include/posix.h (_POSIX_PII_SOCKET): Don't define.
(_Jv_accept): Remove.

* java/io/File.java (File._access): Rename to access.
Change callers.
(File._stat): Likewise.
* java/io/File.h: Regenerate.
* classpath/lib/java/io/File.class: Regenerate.
* java/io/natFilePosix.cc (java::io::File::_access): Rename to
access.
(java::io::File::_stat): Rename to stat.
* java/io/natFileWin32.cc: Likewise.

* testsuite/libjava.jni/jni.exp (gcj_jni_get_cxxflags_invocation):
Remove alpha*-dec-osf* handling.
* testsuite/libjava.jvmti/jvmti-interp.exp
(gcj_jni_compile_c_to_so): Likewise.
* testsuite/libjava.jvmti/jvmti.exp (gcj_jvmti_compile_cxx_to_o):
Likewise.

libitm:
* configure.tgt (*-*-osf*): Remove.
* configure: Regenerate.

libgomp:
* configure.tgt (alpha*-dec-osf*): Remove.

* config/osf/sem.h: Remove.
* config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.

libgfortran:
* configure.ac: Remove Tru64 reference.
* acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Remove alpha*-dec-osf*
handling.
* configure: Regenerate.
* intrinsics/c99_functions.c [__osf__]: Remove.

libgcc:
* config.host: Remove alpha*-dec-osf5.1* handling.
* config/alpha/gthr-posix.c: Remove.
* config/alpha/libgcc-osf5.ver: Remove.
* config/alpha/osf5-unwind.h: Remove.
* config/alpha/t-osf-pthread: Remove.
* config/alpha/t-slibgcc-osf: Remove.
* config/t-crtfm (crtfastmath.o): Remove -frandom-seed.
* gthr-posix.h [!_REENTRANT && __osf__] (_REENTRANT): Don't define.
[__osf__ && _PTHREAD_USE_MANGLED_NAMES_]: Remove.
* mkmap-flat.awk: Remove osf_export handling.

gnattools:
* configure.ac: Remove alpha*-dec-osf* handling.
* configure: Regenerate.

gcc/testsuite:
* g++.dg/abi/rtti3.C: Remove alpha*-dec-osf* handling.
* g++.dg/abi/thunk4.C: Likewise.
* g++.dg/cdce3.C: Don't skip on*-dec-osf5*.
Adapt line numbers.
* g++.dg/compat/struct-layout-1_generate.c: Remove alpha*-dec-osf*
handling.
* g++.dg/cpp0x/constexpr-rom.C: Likewise.
* g++.dg/eh/spbp.C: Likewise.
* g++.dg/ext/label13.C: Likewise.
* g++.dg/guality/guality.exp: Likewise.
* g++.dg/other/anon5.C: Likewise.
* g++.dg/other/pragma-ep-1.C: Remove.
* g++.dg/warn/miss-format-1.C: Remove alpha*-dec-osf* handling.
* g++.dg/warn/pr31246.C: Likewise.
* g++.dg/warn/weak1.C: Likewise.
* g++.old-deja/g++.eh/badalloc1.C: Likewise.
* g++.old-deja/g++.ext/attrib5.C: Likewise.
* gcc.c-torture/compile/limits-declparen.c: Likewise.
* gcc.c-torture/compile/limits-pointer.c: Likewise.
* gcc.c-torture/execute/20001229-1.c: Remove __osf__ handling.
* gcc.dg/attr-weakref-1.c: Remove alpha*-dec-osf* handling.
* gcc.dg/c99-stdint-6.c: Remove alpha*-dec-osf5* handling.
* gcc.dg/c99-tgmath-1.c: Likewise.
* gcc.dg/c99-tgmath-2.c: Likewise.
* gcc.dg/c99-tgmath-3.c: Likewise.
* gcc.dg/c99-tgmath-4.c: Likewise.
* gcc.dg/compat/struct-layout-1_generate.c: Remove alpha*-dec-osf*
handling.
* gcc.dg/debug/pr49032.c: Likewise.
* gcc.dg/guality/guality.exp: Likewise.
* gcc.dg/intmax_t-1.c: Likewise.
* gcc.dg/pr48616.c: Likewise.
* gcc.dg/pragma-ep-1.c: Remove.
* gcc.dg/pragma-ep-2.c: Remove.
* gcc.dg/pragma-ep-3.c: Remove.
* gcc.dg/torture/pr47917.c: Remove alpha*-dec-osf5* handling.
* gcc.dg/tree-ssa/pr42585.c: Remove alpha*-dec-osf* handling.
* gcc.misc-tests/gcov-14.c: Likewise.
* gfortran.dg/guality/guality.exp: Likewise.
* lib/target-supports.exp (check_weak_available): Likewise.
(add_options_for_tls): Likewise.
(check_ascii_locale_available): Likewise.
* obj-c++.dg/dwarf-2.mm: Likewise.
* objc.dg/dwarf-1.m: Likewise.
* objc.dg/dwarf-2.m: Likewise.

gcc/c-family:
* c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
handling.
* c-pragma.c (handle_pragma_extern_prefix): Remove.
(init_pragma): Don't register extern_prefix.

gcc/po:
* EXCLUDES (mips-tdump.c, mips-tfile.c): Remove.

gcc:
* config.gcc (alpha*-dec-osf5.1*): Remove.
* config.host (alpha*-dec-osf*): Remove.
* configure.ac (*-*-osf*): Remove.
(alpha*-dec-osf*): Remove.
* configure: Regenerate.

* config/alpha/host-osf.c, config/alpha/osf5.h,
config/alpha/osf5.opt, config/alpha/va_list.h, config/alpha/x-osf:
Remove.

* config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Remove.
* config/alpha/alpha.c (struct machine_function): Update comment.
(alpha_start_function): Remove Tru64 UNIX as handling for
max_frame_size.
* config/alpha/alpha.md ("exception_receiver"): Remove
TARGET_LD_BUGGY_LDGP.
("*exception_receiver_2"): Likewise.
* except.c (finish_eh_generation): Remove Tru64 reference.
* ginclude/stdarg.h [_HIDDEN_VA_LIST]: Don't undef _VA_LIST.
* system.h (TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Poison.
* target.def (handle_pragma_extern_prefix): Remove.

* Makefile.in (mips-tfile.o-warn): Remove.
(ALL_HOST_BACKEND_OBJS): Remove mips-tfile.o, mips-tdump.o.
(mips-tfile, mips-tfile.o, mips-tdump, mips-tdump.o): Remove.
* mips-tdump.c, mips-tfile.c: Remove.

* doc/extend.texi (Symbol-Renaming Pragmas): Remove #pragma
extern_prefix.
* doc/install.texi (Binaries): Remove Tru64 UNIX reference.
(Specific, alpha*-dec-osf5.1): Note removal.
* doc/tm.texi.in (Misc, TARGET_HANDLE_PRAGMA_EXTERN_PREFIX):
Remove.
* doc/tm.texi: Regenerate.
* doc/trouble.texi (Cross-Compiler Problems): Remove.

gcc/ada:
* gcc-interface/Makefile.in (alpha*-dec-osf*): Remove.
* a-intnam-tru64.ads, mlib-tgt-specific-tru64.adb,
s-mastop-tru64.adb, s-osinte-tru64.adb, s-osinte-tru64.ads,
s-taprop-tru64.adb, s-tasinf-tru64.ads, s-taspri-tru64.ads,
system-tru64.ads: Remove.

* adaint.c (__gnat_number_of_cpus) [__alpha__ && __osf__]:
Remove.
[IS_CROSS] [!(__alpha__ && __osf__)]: Remove.
* env.c [__alpha__ && __osf__]: Remove.
* gsocket.h (_OSF_SOURCE): Remove.
(HAVE_THREAD_SAFE_GETxxxBYyyy) [__osf__]: Remove.
* init.c [__alpha__ && __osf__]: Remove.
* link.c [__osf__]: Remove.
* s-oscons-tmplt.c [__alpha__ && __osf__]: Remove.
[__osf__ && !_SS_MAXSIZE]: Remove.
* sysdep.c [__osf__]: Remove.
* terminals.c [__alpha__ && __osf__]: Remove.
[OSF1]: Remove.

* g-traceb.ads: Remove Tru64 reference.
* g-trasym.ads: Likewise.
* gnat_ugn.texi (Linking a Mixed C++ & Ada Program): Likewise.
(Summary of Run-Time Configurations): Likewise.
* memtrack.adb: Likewise.

fixincludes:
* inclhack.def (alpha___extern_prefix): Remove.
(alpha___extern_prefix_standards): Remove.
(alpha___extern_prefix_sys_stat): Remove.
(alpha_bad_lval): Remove.
(alpha_pthread): Remove.
(alpha_pthread_gcc): Remove.
(alpha_pthread_init): Remove.
* fixincl.x: Regenerate.
* tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: Remove.
[ALPHA_PTHREAD_GCC_CHECK]: Remove.
[ALPHA_PTHREAD_INIT_CHECK]: Remove.
* tests/base/standards.h: Remove.
* tests/base/sys/stat.h [ALPHA___EXTERN_PREFIX_SYS_STAT_CHECK]:
Remove.
* tests/base/testing.h [ALPHA___EXTERN_PREFIX_CHECK]: Remove.
[ALPHA_BAD_LVAL_CHECK]: Remove.

contrib:
* config-list.mk (LIST): Remove alpha-dec-osf5.1.

config:
* weakref.m4 (GCC_CHECK_ELF_STYLE_WEAKREF): Remove
alpha*-dec-osf*.

toplevel:
* MAINTAINERS (OS Port Maintainers): Remove osf.
* configure.ac (enable_libgomp): Remove *-*-osf*.
(with_stabs): Remove alpha*-*-osf*.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185240 138bc75d-0d04-0410-961f-82ee72b054a4

328 files changed:
ChangeLog
MAINTAINERS
config/ChangeLog
config/weakref.m4
configure
configure.ac
contrib/ChangeLog
contrib/config-list.mk
fixincludes/ChangeLog
fixincludes/fixincl.x
fixincludes/inclhack.def
fixincludes/tests/base/pthread.h
fixincludes/tests/base/standards.h [deleted file]
fixincludes/tests/base/sys/stat.h
fixincludes/tests/base/testing.h
gcc/ChangeLog
gcc/Makefile.in
gcc/ada/ChangeLog
gcc/ada/a-intnam-tru64.ads [deleted file]
gcc/ada/adaint.c
gcc/ada/env.c
gcc/ada/g-traceb.ads
gcc/ada/g-trasym.ads
gcc/ada/gcc-interface/Makefile.in
gcc/ada/gnat_ugn.texi
gcc/ada/gsocket.h
gcc/ada/init.c
gcc/ada/link.c
gcc/ada/memtrack.adb
gcc/ada/mlib-tgt-specific-tru64.adb [deleted file]
gcc/ada/s-mastop-tru64.adb [deleted file]
gcc/ada/s-oscons-tmplt.c
gcc/ada/s-osinte-tru64.adb [deleted file]
gcc/ada/s-osinte-tru64.ads [deleted file]
gcc/ada/s-taprop-tru64.adb [deleted file]
gcc/ada/s-tasinf-tru64.ads [deleted file]
gcc/ada/s-taspri-tru64.ads [deleted file]
gcc/ada/sysdep.c
gcc/ada/system-tru64.ads [deleted file]
gcc/ada/terminals.c
gcc/c-family/ChangeLog
gcc/c-family/c-cppbuiltin.c
gcc/c-family/c-pragma.c
gcc/config.gcc
gcc/config.host
gcc/config/alpha/alpha.c
gcc/config/alpha/alpha.h
gcc/config/alpha/alpha.md
gcc/config/alpha/host-osf.c [deleted file]
gcc/config/alpha/osf5.h [deleted file]
gcc/config/alpha/osf5.opt [deleted file]
gcc/config/alpha/va_list.h [deleted file]
gcc/config/alpha/x-osf [deleted file]
gcc/configure
gcc/configure.ac
gcc/doc/extend.texi
gcc/doc/install.texi
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/doc/trouble.texi
gcc/except.c
gcc/ginclude/stdarg.h
gcc/mips-tdump.c [deleted file]
gcc/mips-tfile.c [deleted file]
gcc/po/ChangeLog
gcc/po/EXCLUDES
gcc/system.h
gcc/target.def
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/abi/rtti3.C
gcc/testsuite/g++.dg/abi/thunk4.C
gcc/testsuite/g++.dg/cdce3.C
gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c
gcc/testsuite/g++.dg/cpp0x/constexpr-rom.C
gcc/testsuite/g++.dg/eh/spbp.C
gcc/testsuite/g++.dg/ext/label13.C
gcc/testsuite/g++.dg/guality/guality.exp
gcc/testsuite/g++.dg/other/anon5.C
gcc/testsuite/g++.dg/other/pragma-ep-1.C [deleted file]
gcc/testsuite/g++.dg/warn/miss-format-1.C
gcc/testsuite/g++.dg/warn/pr31246.C
gcc/testsuite/g++.dg/warn/weak1.C
gcc/testsuite/g++.old-deja/g++.eh/badalloc1.C
gcc/testsuite/g++.old-deja/g++.ext/attrib5.C
gcc/testsuite/gcc.c-torture/compile/limits-declparen.c
gcc/testsuite/gcc.c-torture/compile/limits-pointer.c
gcc/testsuite/gcc.c-torture/execute/20001229-1.c
gcc/testsuite/gcc.dg/attr-weakref-1.c
gcc/testsuite/gcc.dg/c99-stdint-6.c
gcc/testsuite/gcc.dg/c99-tgmath-1.c
gcc/testsuite/gcc.dg/c99-tgmath-2.c
gcc/testsuite/gcc.dg/c99-tgmath-3.c
gcc/testsuite/gcc.dg/c99-tgmath-4.c
gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c
gcc/testsuite/gcc.dg/debug/pr49032.c
gcc/testsuite/gcc.dg/guality/guality.exp
gcc/testsuite/gcc.dg/intmax_t-1.c
gcc/testsuite/gcc.dg/pr48616.c
gcc/testsuite/gcc.dg/pragma-ep-1.c [deleted file]
gcc/testsuite/gcc.dg/pragma-ep-2.c [deleted file]
gcc/testsuite/gcc.dg/pragma-ep-3.c [deleted file]
gcc/testsuite/gcc.dg/torture/pr47917.c
gcc/testsuite/gcc.dg/tree-ssa/pr42585.c
gcc/testsuite/gcc.misc-tests/gcov-14.c
gcc/testsuite/gfortran.dg/guality/guality.exp
gcc/testsuite/lib/target-supports.exp
gcc/testsuite/obj-c++.dg/dwarf-2.mm
gcc/testsuite/objc.dg/dwarf-1.m
gcc/testsuite/objc.dg/dwarf-2.m
gnattools/configure
gnattools/configure.ac
libgcc/ChangeLog
libgcc/config.host
libgcc/config/alpha/gthr-posix.c [deleted file]
libgcc/config/alpha/libgcc-osf5.ver [deleted file]
libgcc/config/alpha/osf5-unwind.h [deleted file]
libgcc/config/alpha/t-osf-pthread [deleted file]
libgcc/config/alpha/t-slibgcc-osf [deleted file]
libgcc/config/t-crtfm
libgcc/gthr-posix.h
libgcc/mkmap-flat.awk
libgfortran/ChangeLog
libgfortran/acinclude.m4
libgfortran/configure
libgfortran/configure.ac
libgfortran/intrinsics/c99_functions.c
libgomp/ChangeLog
libgomp/config/osf/sem.h [deleted file]
libgomp/config/posix/lock.c
libgomp/configure.tgt
libitm/ChangeLog
libitm/configure
libitm/configure.tgt
libjava/ChangeLog
libjava/classpath/lib/java/io/File.class
libjava/configure
libjava/configure.ac
libjava/configure.host
libjava/gnu/java/net/natPlainDatagramSocketImplPosix.cc
libjava/gnu/java/net/natPlainDatagramSocketImplWin32.cc
libjava/gnu/java/net/natPlainSocketImplPosix.cc
libjava/include/posix-signal.h
libjava/include/posix.h
libjava/java/io/File.h
libjava/java/io/File.java
libjava/java/io/natFilePosix.cc
libjava/java/io/natFileWin32.cc
libjava/testsuite/libjava.jni/jni.exp
libjava/testsuite/libjava.jvmti/jvmti-interp.exp
libjava/testsuite/libjava.jvmti/jvmti.exp
libobjc/ChangeLog
libobjc/configure
libobjc/configure.ac
libobjc/thr.c
libstdc++-v3/ChangeLog
libstdc++-v3/config/os/osf/ctype_base.h [deleted file]
libstdc++-v3/config/os/osf/ctype_configure_char.cc [deleted file]
libstdc++-v3/config/os/osf/ctype_inline.h [deleted file]
libstdc++-v3/config/os/osf/error_constants.h [deleted file]
libstdc++-v3/config/os/osf/os_defines.h [deleted file]
libstdc++-v3/configure.host
libstdc++-v3/doc/xml/manual/using.xml
libstdc++-v3/testsuite/18_support/pthread_guard.cc
libstdc++-v3/testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc
libstdc++-v3/testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc
libstdc++-v3/testsuite/21_strings/basic_string/pthread18185.cc
libstdc++-v3/testsuite/21_strings/basic_string/pthread4.cc
libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-1.cc
libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-2.cc
libstdc++-v3/testsuite/23_containers/list/pthread1.cc
libstdc++-v3/testsuite/23_containers/list/pthread5.cc
libstdc++-v3/testsuite/23_containers/map/pthread6.cc
libstdc++-v3/testsuite/23_containers/vector/debug/multithreaded_swap.cc
libstdc++-v3/testsuite/27_io/basic_ofstream/pthread2.cc
libstdc++-v3/testsuite/27_io/basic_ostringstream/pthread3.cc
libstdc++-v3/testsuite/30_threads/async/42819.cc
libstdc++-v3/testsuite/30_threads/async/49668.cc
libstdc++-v3/testsuite/30_threads/async/any.cc
libstdc++-v3/testsuite/30_threads/async/async.cc
libstdc++-v3/testsuite/30_threads/async/launch.cc
libstdc++-v3/testsuite/30_threads/async/sync.cc
libstdc++-v3/testsuite/30_threads/call_once/39909.cc
libstdc++-v3/testsuite/30_threads/call_once/49668.cc
libstdc++-v3/testsuite/30_threads/call_once/call_once1.cc
libstdc++-v3/testsuite/30_threads/condition_variable/cons/1.cc
libstdc++-v3/testsuite/30_threads/condition_variable/members/1.cc
libstdc++-v3/testsuite/30_threads/condition_variable/members/2.cc
libstdc++-v3/testsuite/30_threads/condition_variable/native_handle/typesizes.cc
libstdc++-v3/testsuite/30_threads/condition_variable_any/50862.cc
libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/1.cc
libstdc++-v3/testsuite/30_threads/condition_variable_any/members/1.cc
libstdc++-v3/testsuite/30_threads/condition_variable_any/members/2.cc
libstdc++-v3/testsuite/30_threads/future/cons/move.cc
libstdc++-v3/testsuite/30_threads/future/members/45133.cc
libstdc++-v3/testsuite/30_threads/future/members/get.cc
libstdc++-v3/testsuite/30_threads/future/members/get2.cc
libstdc++-v3/testsuite/30_threads/future/members/share.cc
libstdc++-v3/testsuite/30_threads/future/members/valid.cc
libstdc++-v3/testsuite/30_threads/future/members/wait.cc
libstdc++-v3/testsuite/30_threads/future/members/wait_for.cc
libstdc++-v3/testsuite/30_threads/future/members/wait_until.cc
libstdc++-v3/testsuite/30_threads/lock/1.cc
libstdc++-v3/testsuite/30_threads/lock/2.cc
libstdc++-v3/testsuite/30_threads/lock/3.cc
libstdc++-v3/testsuite/30_threads/lock/4.cc
libstdc++-v3/testsuite/30_threads/lock_guard/cons/1.cc
libstdc++-v3/testsuite/30_threads/mutex/cons/1.cc
libstdc++-v3/testsuite/30_threads/mutex/dest/destructor_locked.cc
libstdc++-v3/testsuite/30_threads/mutex/lock/1.cc
libstdc++-v3/testsuite/30_threads/mutex/native_handle/1.cc
libstdc++-v3/testsuite/30_threads/mutex/native_handle/typesizes.cc
libstdc++-v3/testsuite/30_threads/mutex/try_lock/1.cc
libstdc++-v3/testsuite/30_threads/mutex/try_lock/2.cc
libstdc++-v3/testsuite/30_threads/mutex/unlock/1.cc
libstdc++-v3/testsuite/30_threads/packaged_task/49668.cc
libstdc++-v3/testsuite/30_threads/packaged_task/cons/1.cc
libstdc++-v3/testsuite/30_threads/packaged_task/cons/2.cc
libstdc++-v3/testsuite/30_threads/packaged_task/cons/3.cc
libstdc++-v3/testsuite/30_threads/packaged_task/cons/alloc.cc
libstdc++-v3/testsuite/30_threads/packaged_task/cons/move.cc
libstdc++-v3/testsuite/30_threads/packaged_task/cons/move_assign.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/get_future.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/get_future2.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke2.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke3.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke4.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke5.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/reset.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/reset2.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/swap.cc
libstdc++-v3/testsuite/30_threads/packaged_task/members/valid.cc
libstdc++-v3/testsuite/30_threads/promise/cons/1.cc
libstdc++-v3/testsuite/30_threads/promise/cons/alloc.cc
libstdc++-v3/testsuite/30_threads/promise/cons/move.cc
libstdc++-v3/testsuite/30_threads/promise/cons/move_assign.cc
libstdc++-v3/testsuite/30_threads/promise/members/get_future.cc
libstdc++-v3/testsuite/30_threads/promise/members/get_future2.cc
libstdc++-v3/testsuite/30_threads/promise/members/set_exception.cc
libstdc++-v3/testsuite/30_threads/promise/members/set_exception2.cc
libstdc++-v3/testsuite/30_threads/promise/members/set_value.cc
libstdc++-v3/testsuite/30_threads/promise/members/set_value2.cc
libstdc++-v3/testsuite/30_threads/promise/members/set_value3.cc
libstdc++-v3/testsuite/30_threads/promise/members/swap.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/1.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/lock/1.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/native_handle/1.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/try_lock/1.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/try_lock/2.cc
libstdc++-v3/testsuite/30_threads/recursive_mutex/unlock/1.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/1.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/lock/1.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/lock/2.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc
libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/unlock/1.cc
libstdc++-v3/testsuite/30_threads/shared_future/cons/move.cc
libstdc++-v3/testsuite/30_threads/shared_future/members/45133.cc
libstdc++-v3/testsuite/30_threads/shared_future/members/get.cc
libstdc++-v3/testsuite/30_threads/shared_future/members/get2.cc
libstdc++-v3/testsuite/30_threads/shared_future/members/valid.cc
libstdc++-v3/testsuite/30_threads/shared_future/members/wait.cc
libstdc++-v3/testsuite/30_threads/shared_future/members/wait_for.cc
libstdc++-v3/testsuite/30_threads/shared_future/members/wait_until.cc
libstdc++-v3/testsuite/30_threads/this_thread/1.cc
libstdc++-v3/testsuite/30_threads/this_thread/2.cc
libstdc++-v3/testsuite/30_threads/this_thread/3.cc
libstdc++-v3/testsuite/30_threads/this_thread/4.cc
libstdc++-v3/testsuite/30_threads/thread/cons/1.cc
libstdc++-v3/testsuite/30_threads/thread/cons/2.cc
libstdc++-v3/testsuite/30_threads/thread/cons/3.cc
libstdc++-v3/testsuite/30_threads/thread/cons/4.cc
libstdc++-v3/testsuite/30_threads/thread/cons/49668.cc
libstdc++-v3/testsuite/30_threads/thread/cons/5.cc
libstdc++-v3/testsuite/30_threads/thread/cons/6.cc
libstdc++-v3/testsuite/30_threads/thread/cons/7.cc
libstdc++-v3/testsuite/30_threads/thread/cons/8.cc
libstdc++-v3/testsuite/30_threads/thread/cons/9.cc
libstdc++-v3/testsuite/30_threads/thread/cons/moveable.cc
libstdc++-v3/testsuite/30_threads/thread/members/1.cc
libstdc++-v3/testsuite/30_threads/thread/members/2.cc
libstdc++-v3/testsuite/30_threads/thread/members/3.cc
libstdc++-v3/testsuite/30_threads/thread/members/4.cc
libstdc++-v3/testsuite/30_threads/thread/members/5.cc
libstdc++-v3/testsuite/30_threads/thread/members/hardware_concurrency.cc
libstdc++-v3/testsuite/30_threads/thread/swap/1.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/cons/1.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/dest/destructor_locked.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/lock/1.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/native_handle/1.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/native_handle/typesizes.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock/1.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock/2.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/1.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/2.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/3.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_until/1.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_until/2.cc
libstdc++-v3/testsuite/30_threads/timed_mutex/unlock/1.cc
libstdc++-v3/testsuite/30_threads/try_lock/1.cc
libstdc++-v3/testsuite/30_threads/try_lock/2.cc
libstdc++-v3/testsuite/30_threads/try_lock/3.cc
libstdc++-v3/testsuite/30_threads/try_lock/4.cc
libstdc++-v3/testsuite/30_threads/unique_lock/cons/1.cc
libstdc++-v3/testsuite/30_threads/unique_lock/cons/2.cc
libstdc++-v3/testsuite/30_threads/unique_lock/cons/3.cc
libstdc++-v3/testsuite/30_threads/unique_lock/cons/4.cc
libstdc++-v3/testsuite/30_threads/unique_lock/cons/5.cc
libstdc++-v3/testsuite/30_threads/unique_lock/cons/6.cc
libstdc++-v3/testsuite/30_threads/unique_lock/locking/1.cc
libstdc++-v3/testsuite/30_threads/unique_lock/locking/2.cc
libstdc++-v3/testsuite/30_threads/unique_lock/locking/3.cc
libstdc++-v3/testsuite/30_threads/unique_lock/locking/4.cc
libstdc++-v3/testsuite/30_threads/unique_lock/modifiers/1.cc
libstdc++-v3/testsuite/30_threads/unique_lock/modifiers/2.cc
libstdc++-v3/testsuite/ext/rope/pthread7-rope.cc
libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc
libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc

index b6922b18b52a8d3abc5d7c412b134e49dca9c212..72f713b40fea17724a94c268abc560aff1a100da 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * MAINTAINERS (OS Port Maintainers): Remove osf.
+       * configure.ac (enable_libgomp): Remove *-*-osf*.
+       (with_stabs): Remove alpha*-*-osf*.
+       * configure: Regenerate.
+
 2012-03-05  Tristan Gingold  <gingold@adacore.com>
 
        * configure.ac: Enable gdb and readline for ia64*-*-*vms*.
index d65c854d848ad0ee0bc035049fb1e374b8855eea..1d64cc718ff339829d161d7e0f4bc5855deeb123 100644 (file)
@@ -122,7 +122,7 @@ freebsd                     Loren J. Rittle         ljrittle@acm.org
 GNU/Hurd               Thomas Schwinge         thomas@schwinge.name
 hpux                   John David Anglin       dave.anglin@nrc-cnrc.gc.ca
 hpux                   Steve Ellcey            sje@cup.hp.com
-irix, osf, solaris     Rainer Orth             ro@CeBiTec.Uni-Bielefeld.DE
+irix, solaris          Rainer Orth             ro@CeBiTec.Uni-Bielefeld.DE
 netbsd                 Jason Thorpe            thorpej@netbsd.org
 netbsd                 Krister Walfridsson     krister.walfridsson@gmail.com
 sh-linux-gnu           Kaz Kojima              kkojima@gcc.gnu.org
index e2bf48d9ca5fe354bb8af14798c17aeea72c51fa..bfabcc0fb3c8f60581a07740537826c5594f5402 100644 (file)
@@ -1,3 +1,8 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * weakref.m4 (GCC_CHECK_ELF_STYLE_WEAKREF): Remove
+       alpha*-dec-osf*.
+
 2012-01-22  Douglas B Rupp  <rupp@gnat.com>
 
        * config/mh-interix: Remove as unneeded.
index 39b63d39b8ab88c0a60872392a3efe804b52eea1..ecb85672805882b330cac43e0fc12e7fe96aeec9 100644 (file)
@@ -38,7 +38,6 @@ int main ()
 }
 ]])], ac_cv_have_elf_style_weakref=yes, ac_cv_have_elf_style_weakref=no, [
 case "${host}" in
-  alpha*-dec-osf*) ac_cv_have_elf_style_weakref=no ;;
   *-apple-darwin[[89]]*) ac_cv_have_elf_style_weakref=no ;;
   *) ac_cv_have_elf_style_weakref=yes;;
 esac])CFLAGS="$weakref_m4_saved_CFLAGS"])
index 267e137858bab35dfbbed8bbb790861daa630c23..4fd82679aa8243502d564e126412635c3e84e9ee 100755 (executable)
--- a/configure
+++ b/configure
@@ -3054,7 +3054,7 @@ if test x$enable_libgomp = x ; then
        ;;
     *-*-netbsd* | *-*-freebsd* | *-*-openbsd* | *-*-dragonfly*)
        ;;
-    *-*-solaris2* | *-*-irix6* | *-*-osf* | *-*-hpux11*)
+    *-*-solaris2* | *-*-irix6* | *-*-hpux11*)
        ;;
     *-*-darwin* | *-*-aix*)
        ;;
@@ -6878,7 +6878,7 @@ if test x${with_stabs} = x ; then
   case "${target}" in
   mips*-*-irix[56]*)
     ;;
-  mips*-*-* | alpha*-*-osf*)
+  mips*-*-*)
     with_stabs=yes;
     extra_host_args="${extra_host_args} --with-stabs"
     ;;
index 9deab72c7f392c80400fb8a0121404db8f6f2b98..f6ab734a18ee57fe726d019d897ab38234c82b44 100644 (file)
@@ -483,7 +483,7 @@ if test x$enable_libgomp = x ; then
        ;;
     *-*-netbsd* | *-*-freebsd* | *-*-openbsd* | *-*-dragonfly*)
        ;;
-    *-*-solaris2* | *-*-irix6* | *-*-osf* | *-*-hpux11*)
+    *-*-solaris2* | *-*-irix6* | *-*-hpux11*)
        ;;
     *-*-darwin* | *-*-aix*)
        ;;
@@ -2336,7 +2336,7 @@ if test x${with_stabs} = x ; then
   case "${target}" in
   mips*-*-irix[[56]]*)
     ;;
-  mips*-*-* | alpha*-*-osf*)
+  mips*-*-*)
     with_stabs=yes;
     extra_host_args="${extra_host_args} --with-stabs"
     ;;
index aac4f9ba7b94ed9048b4734521a4e857d4833e43..2ad64573ca845a779f182e8213fe4b0ad17512dd 100644 (file)
@@ -1,3 +1,7 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config-list.mk (LIST): Remove alpha-dec-osf5.1.
+
 2012-03-02   Diego Novillo  <dnovillo@google.com>
 
        * testsuite-management/validate_failures.py (class TestResult): Fix
index 108f84d85cf7c595b5a1e3dec45e11e126865bb4..a198836d7fcdf0e1a79baebe9bbb19bd024a61b9 100644 (file)
@@ -12,8 +12,7 @@ TEST=all-gcc
 #
 # v850e1-elf is rejected by config.sub
 LIST = alpha-linux-gnu alpha-freebsd6 alpha-netbsd alpha-openbsd \
-  alpha-dec-osf5.1OPT-enable-obsolete alpha64-dec-vms alpha-dec-vms \
-  am33_2.0-linux \
+  alpha64-dec-vms alpha-dec-vms am33_2.0-linux \
   arm-wrs-vxworks arm-freebsd6 arm-netbsdelf arm-linux \
   arm-linux-androideabi arm-uclinux_eabi arm-ecos-elf arm-eabi \
   arm-symbianelf arm-rtems arm-elf arm-wince-pe avr-rtems avr-elf \
index d37b5efa1002d29e6e8685d6c108c9a64d5a4b24..14dd8a8175b9efb31e1a4d0fa2273653b465a24c 100644 (file)
@@ -1,3 +1,22 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * inclhack.def (alpha___extern_prefix): Remove.
+       (alpha___extern_prefix_standards): Remove.
+       (alpha___extern_prefix_sys_stat): Remove.
+       (alpha_bad_lval): Remove.
+       (alpha_pthread): Remove.
+       (alpha_pthread_gcc): Remove.
+       (alpha_pthread_init): Remove.
+       * fixincl.x: Regenerate.
+       * tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: Remove.
+       [ALPHA_PTHREAD_GCC_CHECK]: Remove.
+       [ALPHA_PTHREAD_INIT_CHECK]: Remove.
+       * tests/base/standards.h: Remove.
+       * tests/base/sys/stat.h [ALPHA___EXTERN_PREFIX_SYS_STAT_CHECK]:
+       Remove.
+       * tests/base/testing.h [ALPHA___EXTERN_PREFIX_CHECK]: Remove.
+       [ALPHA_BAD_LVAL_CHECK]: Remove.
+
 2012-03-12  Tristan Gingold  <gingold@adacore.com>
 
        * inclhack.def (vms_use_quoted_include,vms_add_missing_braces)
index eca464678e432a0a4b19b548df6f374b4f9a7037..57bc488ea56cb27fdf8a1356f0e1713dcfd3dfb9 100644 (file)
@@ -2,11 +2,11 @@
  * 
  * DO NOT EDIT THIS FILE   (fixincl.x)
  * 
- * It has been AutoGen-ed  March 12, 2012 at 10:19:44 AM by AutoGen 5.11.1
+ * It has been AutoGen-ed  Monday March 12, 2012 at 04:25:19 PM MET
  * From the definitions    inclhack.def
  * and the template file   fixincl
  */
-/* DO NOT SVN-MERGE THIS FILE, EITHER Mon Mar 12 10:19:44 CET 2012
+/* DO NOT SVN-MERGE THIS FILE, EITHER Mon Mar 12 16:25:19 MET 2012
  *
  * You must regenerate it.  Use the ./genfixes script.
  *
@@ -15,7 +15,7 @@
  * certain ANSI-incompatible system header files which are fixed to work
  * correctly with ANSI C and placed in a directory that GNU C will search.
  *
- * This file contains 230 fixup descriptions.
+ * This file contains 223 fixup descriptions.
  *
  * See README for more information.
  *
@@ -1025,118 +1025,6 @@ static const char* apzAlpha___AssertPatch[] = {
     "__assert(const char *, const char *, int)",
     (char*)NULL };
 
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Alpha___Extern_Prefix fix
- */
-tSCC zAlpha___Extern_PrefixName[] =
-     "alpha___extern_prefix";
-
-/*
- *  File name selection pattern
- */
-#define zAlpha___Extern_PrefixList (char*)NULL
-/*
- *  Machine/OS name selection pattern
- */
-tSCC* apzAlpha___Extern_PrefixMachs[] = {
-        "alpha*-dec-osf*",
-        (const char*)NULL };
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zAlpha___Extern_PrefixSelect0[] =
-       "(.*)(defined\\(__DECC\\)|def[ \t]*__DECC)[ \t]*\n\
-(#[ \t]*pragma[ \t]*extern_prefix.*)";
-
-#define    ALPHA___EXTERN_PREFIX_TEST_CT  1
-static tTestDesc aAlpha___Extern_PrefixTests[] = {
-  { TT_EGREP,    zAlpha___Extern_PrefixSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Alpha___Extern_Prefix
- */
-static const char* apzAlpha___Extern_PrefixPatch[] = {
-    "format",
-    "%1 (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))\n\
-%3",
-    (char*)NULL };
-
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Alpha___Extern_Prefix_Standards fix
- */
-tSCC zAlpha___Extern_Prefix_StandardsName[] =
-     "alpha___extern_prefix_standards";
-
-/*
- *  File name selection pattern
- */
-tSCC zAlpha___Extern_Prefix_StandardsList[] =
-  "standards.h\0";
-/*
- *  Machine/OS name selection pattern
- */
-tSCC* apzAlpha___Extern_Prefix_StandardsMachs[] = {
-        "alpha*-dec-osf*",
-        (const char*)NULL };
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zAlpha___Extern_Prefix_StandardsSelect0[] =
-       ".*!defined\\(_LIBC_POLLUTION_H_\\) && !defined\\(__DECC\\)";
-
-#define    ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT  1
-static tTestDesc aAlpha___Extern_Prefix_StandardsTests[] = {
-  { TT_EGREP,    zAlpha___Extern_Prefix_StandardsSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Alpha___Extern_Prefix_Standards
- */
-static const char* apzAlpha___Extern_Prefix_StandardsPatch[] = {
-    "format",
-    "%0 && !defined(__PRAGMA_EXTERN_PREFIX)",
-    (char*)NULL };
-
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Alpha___Extern_Prefix_Sys_Stat fix
- */
-tSCC zAlpha___Extern_Prefix_Sys_StatName[] =
-     "alpha___extern_prefix_sys_stat";
-
-/*
- *  File name selection pattern
- */
-tSCC zAlpha___Extern_Prefix_Sys_StatList[] =
-  "sys/stat.h\0sys/mount.h\0";
-/*
- *  Machine/OS name selection pattern
- */
-tSCC* apzAlpha___Extern_Prefix_Sys_StatMachs[] = {
-        "alpha*-dec-osf5*",
-        (const char*)NULL };
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zAlpha___Extern_Prefix_Sys_StatSelect0[] =
-       "#[ \t]*if[ \t]*defined\\(__DECC\\)";
-
-#define    ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT  1
-static tTestDesc aAlpha___Extern_Prefix_Sys_StatTests[] = {
-  { TT_EGREP,    zAlpha___Extern_Prefix_Sys_StatSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Alpha___Extern_Prefix_Sys_Stat
- */
-static const char* apzAlpha___Extern_Prefix_Sys_StatPatch[] = {
-    "format",
-    "%0 || defined(__PRAGMA_EXTERN_PREFIX)",
-    (char*)NULL };
-
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
  *  Description of Alpha_Assert fix
@@ -1172,41 +1060,6 @@ static const char* apzAlpha_AssertPatch[] = {
     "%1(EX)",
     (char*)NULL };
 
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Alpha_Bad_Lval fix
- */
-tSCC zAlpha_Bad_LvalName[] =
-     "alpha_bad_lval";
-
-/*
- *  File name selection pattern
- */
-#define zAlpha_Bad_LvalList (char*)NULL
-/*
- *  Machine/OS name selection pattern
- */
-tSCC* apzAlpha_Bad_LvalMachs[] = {
-        "alpha*-dec-osf*",
-        (const char*)NULL };
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zAlpha_Bad_LvalSelect0[] =
-       "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
-
-#define    ALPHA_BAD_LVAL_TEST_CT  1
-static tTestDesc aAlpha_Bad_LvalTests[] = {
-  { TT_EGREP,    zAlpha_Bad_LvalSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Alpha_Bad_Lval
- */
-static const char* apzAlpha_Bad_LvalPatch[] = { sed_cmd_z,
-    "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
-    (char*)NULL };
-
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
  *  Description of Alpha_Getopt fix
@@ -1312,126 +1165,6 @@ static const char* apzAlpha_ParensPatch[] = {
     "#ifndef __mips64",
     (char*)NULL };
 
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Alpha_Pthread fix
- */
-tSCC zAlpha_PthreadName[] =
-     "alpha_pthread";
-
-/*
- *  File name selection pattern
- */
-tSCC zAlpha_PthreadList[] =
-  "pthread.h\0";
-/*
- *  Machine/OS name selection pattern
- */
-tSCC* apzAlpha_PthreadMachs[] = {
-        "alpha*-dec-osf*",
-        (const char*)NULL };
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zAlpha_PthreadSelect0[] =
-       "((#[ \t]*if)([ \t]*defined[ \t]*\\(_PTHREAD_ENV_DECC\\)|def _PTHREAD_ENV_DECC)(.*))\n\
-(#[ \t]*define _PTHREAD_USE_PTDNAM_)";
-
-#define    ALPHA_PTHREAD_TEST_CT  1
-static tTestDesc aAlpha_PthreadTests[] = {
-  { TT_EGREP,    zAlpha_PthreadSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Alpha_Pthread
- */
-static const char* apzAlpha_PthreadPatch[] = {
-    "format",
-    "%2 defined (_PTHREAD_ENV_DECC)%4 || defined (__PRAGMA_EXTERN_PREFIX)\n\
-%5",
-    (char*)NULL };
-
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Alpha_Pthread_Gcc fix
- */
-tSCC zAlpha_Pthread_GccName[] =
-     "alpha_pthread_gcc";
-
-/*
- *  File name selection pattern
- */
-tSCC zAlpha_Pthread_GccList[] =
-  "pthread.h\0";
-/*
- *  Machine/OS name selection pattern
- */
-tSCC* apzAlpha_Pthread_GccMachs[] = {
-        "alpha*-dec-osf*",
-        (const char*)NULL };
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zAlpha_Pthread_GccSelect0[] =
-       "#else\n\
-# error <pthread.h>: unrecognized compiler.";
-
-#define    ALPHA_PTHREAD_GCC_TEST_CT  1
-static tTestDesc aAlpha_Pthread_GccTests[] = {
-  { TT_EGREP,    zAlpha_Pthread_GccSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Alpha_Pthread_Gcc
- */
-static const char* apzAlpha_Pthread_GccPatch[] = {
-    "format",
-    "#elif defined (__GNUC__)\n\
-# define _PTHREAD_ENV_GCC\n\
-%0",
-    (char*)NULL };
-
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Alpha_Pthread_Init fix
- */
-tSCC zAlpha_Pthread_InitName[] =
-     "alpha_pthread_init";
-
-/*
- *  File name selection pattern
- */
-tSCC zAlpha_Pthread_InitList[] =
-  "pthread.h\0";
-/*
- *  Machine/OS name selection pattern
- */
-tSCC* apzAlpha_Pthread_InitMachs[] = {
-        "alpha*-dec-osf*",
-        (const char*)NULL };
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zAlpha_Pthread_InitSelect0[] =
-       " \\* @\\(#\\).RCSfile: pthread\\.h,v \\$ .Revision: 1\\.1\\.33\\.21 \\$ \\(DEC\\) .Date: 2000/08/15 15:30:13 \\$";
-
-#define    ALPHA_PTHREAD_INIT_TEST_CT  1
-static tTestDesc aAlpha_Pthread_InitTests[] = {
-  { TT_EGREP,    zAlpha_Pthread_InitSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Alpha_Pthread_Init
- */
-static const char* apzAlpha_Pthread_InitPatch[] = { sed_cmd_z,
-    "-e", "s@MVALID\\(.*\\)A}@MVALID\\1A, 0, 0, 0, 0, 0, 0 }@\n\
-s@MVALID\\(.*\\)_}@MVALID\\1_, 0, 0, 0, 0 }@\n\
-s@CVALID\\(.*\\)A}@CVALID\\1A, 0, 0, 0, 0 }@\n\
-s@CVALID\\(.*\\)_}@CVALID\\1_, 0, 0 }@\n\
-s@WVALID\\(.*\\)A}@WVALID\\1A, 0, 0, 0, 0, 0, 0, 0, 0, 0 }@\n\
-s@WVALID\\(.*\\)_}@WVALID\\1_, 0, 0, 0, 0, 0, 0, 0 }@\n",
-    (char*)NULL };
-
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
  *  Description of Alpha_Sbrk fix
@@ -9335,9 +9068,9 @@ static const char* apzX11_SprintfPatch[] = {
  *
  *  List of all fixes
  */
-#define REGEX_COUNT          272
+#define REGEX_COUNT          265
 #define MACH_LIST_SIZE_LIMIT 181
-#define FIX_COUNT            230
+#define FIX_COUNT            223
 
 /*
  *  Enumerate the fixes
@@ -9365,17 +9098,10 @@ typedef enum {
     AIX_SYSWAIT_2_FIXIDX,
     AIX_VOLATILE_FIXIDX,
     ALPHA___ASSERT_FIXIDX,
-    ALPHA___EXTERN_PREFIX_FIXIDX,
-    ALPHA___EXTERN_PREFIX_STANDARDS_FIXIDX,
-    ALPHA___EXTERN_PREFIX_SYS_STAT_FIXIDX,
     ALPHA_ASSERT_FIXIDX,
-    ALPHA_BAD_LVAL_FIXIDX,
     ALPHA_GETOPT_FIXIDX,
     ALPHA_IF_SEMICOLON_FIXIDX,
     ALPHA_PARENS_FIXIDX,
-    ALPHA_PTHREAD_FIXIDX,
-    ALPHA_PTHREAD_GCC_FIXIDX,
-    ALPHA_PTHREAD_INIT_FIXIDX,
     ALPHA_SBRK_FIXIDX,
     AVOID_BOOL_DEFINE_FIXIDX,
     AVOID_BOOL_TYPE_FIXIDX,
@@ -9686,31 +9412,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
      ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aAlpha___AssertTests,   apzAlpha___AssertPatch, 0 },
 
-  {  zAlpha___Extern_PrefixName,    zAlpha___Extern_PrefixList,
-     apzAlpha___Extern_PrefixMachs,
-     ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aAlpha___Extern_PrefixTests,   apzAlpha___Extern_PrefixPatch, 0 },
-
-  {  zAlpha___Extern_Prefix_StandardsName,    zAlpha___Extern_Prefix_StandardsList,
-     apzAlpha___Extern_Prefix_StandardsMachs,
-     ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aAlpha___Extern_Prefix_StandardsTests,   apzAlpha___Extern_Prefix_StandardsPatch, 0 },
-
-  {  zAlpha___Extern_Prefix_Sys_StatName,    zAlpha___Extern_Prefix_Sys_StatList,
-     apzAlpha___Extern_Prefix_Sys_StatMachs,
-     ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aAlpha___Extern_Prefix_Sys_StatTests,   apzAlpha___Extern_Prefix_Sys_StatPatch, 0 },
-
   {  zAlpha_AssertName,    zAlpha_AssertList,
      apzAlpha_AssertMachs,
      ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aAlpha_AssertTests,   apzAlpha_AssertPatch, 0 },
 
-  {  zAlpha_Bad_LvalName,    zAlpha_Bad_LvalList,
-     apzAlpha_Bad_LvalMachs,
-     ALPHA_BAD_LVAL_TEST_CT, FD_MACH_ONLY,
-     aAlpha_Bad_LvalTests,   apzAlpha_Bad_LvalPatch, 0 },
-
   {  zAlpha_GetoptName,    zAlpha_GetoptList,
      apzAlpha_GetoptMachs,
      ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -9726,21 +9432,6 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
      ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aAlpha_ParensTests,   apzAlpha_ParensPatch, 0 },
 
-  {  zAlpha_PthreadName,    zAlpha_PthreadList,
-     apzAlpha_PthreadMachs,
-     ALPHA_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aAlpha_PthreadTests,   apzAlpha_PthreadPatch, 0 },
-
-  {  zAlpha_Pthread_GccName,    zAlpha_Pthread_GccList,
-     apzAlpha_Pthread_GccMachs,
-     ALPHA_PTHREAD_GCC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aAlpha_Pthread_GccTests,   apzAlpha_Pthread_GccPatch, 0 },
-
-  {  zAlpha_Pthread_InitName,    zAlpha_Pthread_InitList,
-     apzAlpha_Pthread_InitMachs,
-     ALPHA_PTHREAD_INIT_TEST_CT, FD_MACH_ONLY,
-     aAlpha_Pthread_InitTests,   apzAlpha_Pthread_InitPatch, 0 },
-
   {  zAlpha_SbrkName,    zAlpha_SbrkList,
      apzAlpha_SbrkMachs,
      ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
index 1a5cd8d234e46c464fea3f5ba440957a13f1c3ff..40b8d0fe5dd4a064a212715dfa30d80a0a50b829 100644 (file)
@@ -585,63 +585,6 @@ fix = {
 };
 
 
-/*
- *  Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX V4/5 headers.
- */
-fix = {
-    hackname  = alpha___extern_prefix;
-    select    = "(.*)(defined\\(__DECC\\)|def[ \t]*__DECC)[ \t]*\n"
-                "(#[ \t]*pragma[ \t]*extern_prefix.*)";
-
-    mach      = "alpha*-dec-osf*";
-    c_fix     = format;
-    c_fix_arg = "%1 (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))\n%3";
-
-    test_text = "#ifdef  __DECC\n"
-               "#pragma extern_prefix \"_P\"\n"
-               "#   if defined(__DECC)\n"
-               "#     pragma extern_prefix \"_E\"\n"
-               "# if !defined(_LIBC_POLLUTION_H_) && defined(__DECC)\n"
-               "#  pragma extern_prefix \"\"";
-};
-
-
-/*
- *  Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX V4/5 <standards.h>.
- */
-fix = {
-    hackname  = alpha___extern_prefix_standards;
-    files     = standards.h;
-    select    = ".*!defined\\(_LIBC_POLLUTION_H_\\) && !defined\\(__DECC\\)";
-
-    mach      = "alpha*-dec-osf*";
-    c_fix     = format;
-    c_fix_arg = "%0 && !defined(__PRAGMA_EXTERN_PREFIX)";
-
-    test_text = "#if (_ISO_C_SOURCE>=19990L) "
-                "&& !defined(_LIBC_POLLUTION_H_) && !defined(__DECC)";
-};
-
-
-/*
- *  Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX V5 <sys/mount.h> and
- *  <sys/stat.h>.  The tests for __DECC are special in various ways, so
- *  alpha__extern_prefix cannot be used.
- */
-fix = {
-    hackname  = alpha___extern_prefix_sys_stat;
-    files     = sys/stat.h;
-    files     = sys/mount.h;
-    select    = "#[ \t]*if[ \t]*defined\\(__DECC\\)";
-
-    mach      = "alpha*-dec-osf5*";
-    c_fix     = format;
-    c_fix_arg = "%0 || defined(__PRAGMA_EXTERN_PREFIX)";
-
-    test_text = "#   if defined(__DECC)";
-};
-
-
 /*
  *  Fix assert macro in assert.h on Alpha OSF/1.
  *  The superfluous int cast breaks C++.
@@ -657,37 +600,6 @@ fix = {
 };
 
 
-/*
- *  Fix #defines under Alpha OSF/1:
- *  The following files contain '#pragma extern_prefix "_FOO"' followed by
- *  a '#define something(x,y,z) _FOOsomething(x,y,z)'.  The intent of these
- *  statements is to reduce namespace pollution.  While these macros work
- *  properly in most cases, they don't allow you to take a pointer to the
- *  "something" being modified.  To get around this limitation, change these
- *  statements to be of the form '#define something _FOOsomething'.
- *
- *  sed ain't egrep, lesson 2463:  sed can use self-referential
- *  regular expressions.  In the substitute expression below,
- *  "\\1" and "\\2" refer to subexpressions found earlier in the
- *  same match.  So, we continue to use sed.  "extern_prefix" will
- *  be a rare match anyway...
- */
-fix = {
-    hackname = alpha_bad_lval;
-
-    select   = "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
-    mach      = "alpha*-dec-osf*";
-
-    sed      =
-        "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*"
-               "\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/";
-
-    test_text = '#pragma extern_prefix "_FOO"'"\n"
-                "#define something(x,y,z) _FOOsomething(x,y,z)\n"
-                "#define mumble _FOOmumble";
-};
-
-
 /*
  *  Fix getopt declarations in stdio.h and stdlib.h on Alpha OSF/1 and AIX.
  */
@@ -728,99 +640,6 @@ fix = {
 };
 
 
-/*
- *  Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX <pthread.h>.
- */
-fix = {
-    hackname  = alpha_pthread;
-    files     = pthread.h;
-    select    = "((#[ \t]*if)([ \t]*defined[ \t]*\\(_PTHREAD_ENV_DECC\\)"
-                "|def _PTHREAD_ENV_DECC)(.*))\n"
-               "(#[ \t]*define _PTHREAD_USE_PTDNAM_)";
-
-    mach      = "alpha*-dec-osf*";
-    c_fix     = format;
-    c_fix_arg = "%2 defined (_PTHREAD_ENV_DECC)%4 "
-                "|| defined (__PRAGMA_EXTERN_PREFIX)\n%5";
-
-    test_text = "#  if defined (_PTHREAD_ENV_DECC) "
-                      "|| defined (_PTHREAD_ENV_EPCC)\n"
-               "#   define _PTHREAD_USE_PTDNAM_\n"
-               "#  endif\n"
-               "#  ifdef _PTHREAD_ENV_DECC\n"
-               "#   define _PTHREAD_USE_PTDNAM_\n"
-               "#  endif";
-};
-
-
-/*
- *  Recognize GCC in Tru64 UNIX V5.1B <pthread.h>.
- */
-fix = {
-    hackname  = alpha_pthread_gcc;
-    files     = pthread.h;
-    select    = "#else\n# error <pthread.h>: unrecognized compiler.";
-
-    mach      = "alpha*-dec-osf*";
-    c_fix     = format;
-    c_fix_arg = "#elif defined (__GNUC__)\n"
-               "# define _PTHREAD_ENV_GCC\n"
-               "%0";
-
-    test_text = "# define _PTHREAD_ENV_INTELC\n"
-               "#else\n"
-               "# error <pthread.h>: unrecognized compiler.\n"
-               "#endif";
-};
-
-
-/*
- * Compaq Tru64 v5.1 defines all of its PTHREAD_*_INITIALIZER macros
- * incorrectly, specifying less fields in the initializers than are
- * defined in the corresponding structure types.  Use of these macros
- * in user code results in spurious warnings.
- */
-fix = {
-    hackname  = alpha_pthread_init;
-    files     = pthread.h;
-    select    = ' \* @\(#\).RCSfile: pthread\.h,v \$'
-                ' .Revision: 1\.1\.33\.21 \$ \(DEC\)'
-                ' .Date: 2000/08/15 15:30:13 \$';
-    mach      = "alpha*-dec-osf*";
-    sed       = "s@MVALID\\(.*\\)A}@MVALID\\1A, 0, 0, 0, 0, 0, 0 }@\n"
-                "s@MVALID\\(.*\\)_}@MVALID\\1_, 0, 0, 0, 0 }@\n"
-                "s@CVALID\\(.*\\)A}@CVALID\\1A, 0, 0, 0, 0 }@\n"
-                "s@CVALID\\(.*\\)_}@CVALID\\1_, 0, 0 }@\n"
-                "s@WVALID\\(.*\\)A}@WVALID\\1A, 0, 0, 0, 0, 0, 0, 0, 0, 0 }@\n"
-                "s@WVALID\\(.*\\)_}@WVALID\\1_, 0, 0, 0, 0, 0, 0, 0 }@\n";
-    test_text = <<- _EOText_
-       /*
-        * @(#)_RCSfile: pthread.h,v $ _Revision: 1.1.33.21 $ (DEC) _Date: 2000/08/15 15:30:13 $
-        */
-       #ifndef _PTHREAD_NOMETER_STATIC
-       # define PTHREAD_MUTEX_INITIALIZER \
-           {_PTHREAD_MSTATE_CONFIG, _PTHREAD_MVALID | _PTHREAD_MVF_STA}
-       # define PTHREAD_COND_INITIALIZER \
-           {_PTHREAD_CSTATE_SLOW, _PTHREAD_CVALID | _PTHREAD_CVF_STA}
-       # define PTHREAD_MUTEX_INITWITHNAME_NP(_n_,_a_) \
-           {_PTHREAD_MSTATE_CONFIG, _PTHREAD_MVALID | _PTHREAD_MVF_STA, _n_, _a_}
-       # define PTHREAD_COND_INITWITHNAME_NP(_n_,_a_) \
-           {_PTHREAD_CSTATE_SLOW, _PTHREAD_CVALID | _PTHREAD_CVF_STA, _n_, _a_}
-       #else
-       # define PTHREAD_MUTEX_INITIALIZER {0, _PTHREAD_MVALID | _PTHREAD_MVF_STA}
-       # define PTHREAD_MUTEX_INITWITHNAME_NP(_n_,_a_) \
-           {0, _PTHREAD_MVALID | _PTHREAD_MVF_STA, _n_, _a_}
-       # define PTHREAD_COND_INITWITHNAME_NP(_n_,_a_) \
-           {0, _PTHREAD_CVALID | _PTHREAD_CVF_STA, _n_, _a_}
-       #endif
-
-       #define PTHREAD_RWLOCK_INITIALIZER {_PTHREAD_RWVALID | _PTHREAD_RWVF_STA}
-       #define PTHREAD_RWLOCK_INITWITHNAME_NP(_n_,_a_) \
-               {_PTHREAD_RWVALID | _PTHREAD_RWVF_STA, _n_, _a_}
-       _EOText_;
-};
-
-
 /*
  *  Fix return value of sbrk in unistd.h on Alpha OSF/1 V2.0
  *  And OpenBSD.
index 24a215fa47f51331a911448f2e77d4dc7c7a5f94..054fe508d1d1751006ee6a2a1c6aa023039b5a2e 100644 (file)
 #endif  /* AIX_PTHREAD_CHECK */
 
 
-#if defined( ALPHA_PTHREAD_CHECK )
-#  if defined (_PTHREAD_ENV_DECC) || defined (_PTHREAD_ENV_EPCC) || defined (__PRAGMA_EXTERN_PREFIX)
-#   define _PTHREAD_USE_PTDNAM_
-#  endif
-#  if defined (_PTHREAD_ENV_DECC) || defined (__PRAGMA_EXTERN_PREFIX)
-#   define _PTHREAD_USE_PTDNAM_
-#  endif
-#endif  /* ALPHA_PTHREAD_CHECK */
-
-
-#if defined( ALPHA_PTHREAD_GCC_CHECK )
-# define _PTHREAD_ENV_INTELC
-#elif defined (__GNUC__)
-# define _PTHREAD_ENV_GCC
-#else
-# error <pthread.h>: unrecognized compiler.
-#endif
-#endif  /* ALPHA_PTHREAD_GCC_CHECK */
-
-
-#if defined( ALPHA_PTHREAD_INIT_CHECK )
-/*
- * @(#)_RCSfile: pthread.h,v $ _Revision: 1.1.33.21 $ (DEC) _Date: 2000/08/15 15:30:13 $
- */
-#ifndef _PTHREAD_NOMETER_STATIC
-# define PTHREAD_MUTEX_INITIALIZER     {_PTHREAD_MSTATE_CONFIG, _PTHREAD_MVALID | _PTHREAD_MVF_STA, 0, 0, 0, 0, 0, 0 }
-# define PTHREAD_COND_INITIALIZER     {_PTHREAD_CSTATE_SLOW, _PTHREAD_CVALID | _PTHREAD_CVF_STA, 0, 0, 0, 0 }
-# define PTHREAD_MUTEX_INITWITHNAME_NP(_n_,_a_)     {_PTHREAD_MSTATE_CONFIG, _PTHREAD_MVALID | _PTHREAD_MVF_STA, _n_, _a_, 0, 0, 0, 0 }
-# define PTHREAD_COND_INITWITHNAME_NP(_n_,_a_)     {_PTHREAD_CSTATE_SLOW, _PTHREAD_CVALID | _PTHREAD_CVF_STA, _n_, _a_, 0, 0 }
-#else
-# define PTHREAD_MUTEX_INITIALIZER {0, _PTHREAD_MVALID | _PTHREAD_MVF_STA, 0, 0, 0, 0, 0, 0 }
-# define PTHREAD_MUTEX_INITWITHNAME_NP(_n_,_a_)     {0, _PTHREAD_MVALID | _PTHREAD_MVF_STA, _n_, _a_, 0, 0, 0, 0 }
-# define PTHREAD_COND_INITWITHNAME_NP(_n_,_a_)     {0, _PTHREAD_CVALID | _PTHREAD_CVF_STA, _n_, _a_, 0, 0 }
-#endif
-
-#define PTHREAD_RWLOCK_INITIALIZER {_PTHREAD_RWVALID | _PTHREAD_RWVF_STA, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
-#define PTHREAD_RWLOCK_INITWITHNAME_NP(_n_,_a_)         {_PTHREAD_RWVALID | _PTHREAD_RWVF_STA, _n_, _a_, 0, 0, 0, 0, 0, 0, 0 }
-#endif  /* ALPHA_PTHREAD_INIT_CHECK */
-
-
 #if defined( GLIBC_MUTEX_INIT_CHECK )
 #define PTHREAD_MUTEX_INITIALIZER \
   { { 0, 0, 0, 0, 0, 0 } }
diff --git a/fixincludes/tests/base/standards.h b/fixincludes/tests/base/standards.h
deleted file mode 100644 (file)
index fccf806..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-/*  DO NOT EDIT THIS FILE.
-
-    It has been auto-edited by fixincludes from:
-
-       "fixinc/tests/inc/standards.h"
-
-    This had to be done to correct non-standard usages in the
-    original, manufacturer supplied header file.  */
-
-
-
-#if defined( ALPHA___EXTERN_PREFIX_STANDARDS_CHECK )
-#if (_ISO_C_SOURCE>=19990L) && !defined(_LIBC_POLLUTION_H_) && !defined(__DECC) && !defined(__PRAGMA_EXTERN_PREFIX)
-#endif  /* ALPHA___EXTERN_PREFIX_STANDARDS_CHECK */
index 5c254ea94c529dd22e736bee5c36e3445c04cabd..240c308fdbcea3de79a87c8bcade6bfe05bc5d5e 100644 (file)
@@ -9,11 +9,6 @@
 
 
 
-#if defined( ALPHA___EXTERN_PREFIX_SYS_STAT_CHECK )
-#   if defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX)
-#endif  /* ALPHA___EXTERN_PREFIX_SYS_STAT_CHECK */
-
-
 #if defined( GLIBC_C99_INLINE_2_CHECK )
 #ifdef __GNUC_GNU_INLINE__
 extern
index c15a151280fbe7491c82aa47ac811ffd885d12ec..f1ffeffa41a47733188766c8d6f64d799973b0d7 100644 (file)
@@ -9,23 +9,6 @@
 
 
 
-#if defined( ALPHA___EXTERN_PREFIX_CHECK )
-#if (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))
-#pragma extern_prefix "_P"
-#   if  (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))
-#     pragma extern_prefix "_E"
-# if !defined(_LIBC_POLLUTION_H_) &&  (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))
-#  pragma extern_prefix ""
-#endif  /* ALPHA___EXTERN_PREFIX_CHECK */
-
-
-#if defined( ALPHA_BAD_LVAL_CHECK )
-#pragma extern_prefix "_FOO"
-#define something _FOOsomething
-#define mumble _FOOmumble
-#endif  /* ALPHA_BAD_LVAL_CHECK */
-
-
 #if defined( AVOID_WCHAR_T_TYPE_CHECK )
 #ifndef __cplusplus
 typedef unsigned short wchar_t         ;
index c2ccdbf1bc91102167ff9c6f7cbce6ab78d4657e..03e8f545789779864af61472b908cbd6ef1909d9 100644 (file)
@@ -1,3 +1,41 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config.gcc (alpha*-dec-osf5.1*): Remove.
+       * config.host (alpha*-dec-osf*): Remove.
+       * configure.ac (*-*-osf*): Remove.
+       (alpha*-dec-osf*): Remove.
+       * configure: Regenerate.
+
+       * config/alpha/host-osf.c, config/alpha/osf5.h,
+       config/alpha/osf5.opt, config/alpha/va_list.h, config/alpha/x-osf:
+       Remove.
+
+       * config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Remove.
+       * config/alpha/alpha.c (struct machine_function): Update comment.
+       (alpha_start_function): Remove Tru64 UNIX as handling for
+       max_frame_size.
+       * config/alpha/alpha.md ("exception_receiver"): Remove
+       TARGET_LD_BUGGY_LDGP.
+       ("*exception_receiver_2"): Likewise.
+       * except.c (finish_eh_generation): Remove Tru64 reference.
+       * ginclude/stdarg.h [_HIDDEN_VA_LIST]: Don't undef _VA_LIST.
+       * system.h (TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Poison.
+       * target.def (handle_pragma_extern_prefix): Remove.
+
+       * Makefile.in (mips-tfile.o-warn): Remove.
+       (ALL_HOST_BACKEND_OBJS): Remove mips-tfile.o, mips-tdump.o.
+       (mips-tfile, mips-tfile.o, mips-tdump, mips-tdump.o): Remove.
+       * mips-tdump.c, mips-tfile.c: Remove.
+
+       * doc/extend.texi (Symbol-Renaming Pragmas): Remove #pragma
+       extern_prefix.
+       * doc/install.texi (Binaries): Remove Tru64 UNIX reference.
+       (Specific, alpha*-dec-osf5.1): Note removal.
+       * doc/tm.texi.in (Misc, TARGET_HANDLE_PRAGMA_EXTERN_PREFIX):
+       Remove.
+       * doc/tm.texi: Regenerate.
+       * doc/trouble.texi (Cross-Compiler Problems): Remove.
+
 2012-03-12  Richard Guenther  <rguenther@suse.de>
 
        * config/arm/arm.c (neon_dereference_pointer): Do not call
index b5190991180c660831569bd910918d9435b72b11..1bed38a1b8b514c8fb2846ef1fe85e75c1c5a875 100644 (file)
@@ -195,8 +195,6 @@ GCC_WARN_CXXFLAGS = $(LOOSE_WARN) $($(@D)-warn) $(NOCOMMON_FLAG) $($@-warn)
 # flex output may yield harmless "no previous prototype" warnings
 build/gengtype-lex.o-warn = -Wno-error
 gengtype-lex.o-warn = -Wno-error
-# mips-tfile.c contains -Wcast-qual warnings.
-mips-tfile.o-warn = -Wno-error
 expmed.o-warn = -Wno-error
 
 # All warnings have to be shut off in stage1 if the compiler used then
@@ -1467,8 +1465,7 @@ ALL_HOST_FRONTEND_OBJS = $(C_OBJS) \
 
 ALL_HOST_BACKEND_OBJS = $(GCC_OBJS) $(OBJS) $(OBJS-libcommon) \
   $(OBJS-libcommon-target) @TREEBROWSER@ main.o gccspec.o cppspec.o \
-  $(COLLECT2_OBJS) $(EXTRA_GCC_OBJS) mips-tfile.o mips-tdump.o \
-  $(GCOV_OBJS) $(GCOV_DUMP_OBJS)
+  $(COLLECT2_OBJS) $(EXTRA_GCC_OBJS) $(GCOV_OBJS) $(GCOV_DUMP_OBJS)
 
 # This lists all host object files, whether they are included in this
 # compilation or not.
@@ -3450,22 +3447,6 @@ $(common_out_object_file): $(common_out_file) $(CONFIG_H) $(SYSTEM_H) \
     $(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(OPTS_H) $(TM_H) $(TM_P_H) $(MACHMODE_H)
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
          $< $(OUTPUT_OPTION)
-
-# Build auxiliary files that support ecoff format.
-mips-tfile: mips-tfile.o $(LIBDEPS)
-       $(LINKER) $(LINKERFLAGS) $(LDFLAGS) -o $@ \
-               mips-tfile.o $(LIBS)
-
-mips-tfile.o : mips-tfile.c $(CONFIG_H) $(SYSTEM_H) \
-   version.h $(srcdir)/../include/getopt.h $(GSTAB_H) intl.h
-
-mips-tdump: mips-tdump.o $(LIBDEPS)
-       $(LINKER) $(LINKERFLAGS) $(LDFLAGS) -o $@ \
-               mips-tdump.o $(LIBS)
-
-mips-tdump.o : mips-tdump.c $(CONFIG_H) $(SYSTEM_H) \
-   version.h $(srcdir)/../include/getopt.h stab.def
-
 #\f
 # Generate header and source files from the machine description,
 # and compile them.
index 3989168aaa76aab00f4d9182e267800b1e357908..2593ef29de8c26f0b8de5c538fc43437d601ccbd 100644 (file)
@@ -1,3 +1,31 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * gcc-interface/Makefile.in (alpha*-dec-osf*): Remove.
+       * a-intnam-tru64.ads, mlib-tgt-specific-tru64.adb,
+       s-mastop-tru64.adb, s-osinte-tru64.adb, s-osinte-tru64.ads,
+       s-taprop-tru64.adb, s-tasinf-tru64.ads, s-taspri-tru64.ads,
+       system-tru64.ads: Remove.
+
+       * adaint.c (__gnat_number_of_cpus) [__alpha__ && __osf__]:
+       Remove.
+       [IS_CROSS] [!(__alpha__ && __osf__)]: Remove.
+       * env.c [__alpha__ && __osf__]: Remove.
+       * gsocket.h (_OSF_SOURCE): Remove.
+       (HAVE_THREAD_SAFE_GETxxxBYyyy) [__osf__]: Remove.
+       * init.c [__alpha__ && __osf__]: Remove.
+       * link.c [__osf__]: Remove.
+       * s-oscons-tmplt.c [__alpha__ && __osf__]: Remove.
+       [__osf__ && !_SS_MAXSIZE]: Remove.
+       * sysdep.c [__osf__]: Remove.
+       * terminals.c [__alpha__ && __osf__]: Remove.
+       [OSF1]: Remove.
+
+       * g-traceb.ads: Remove Tru64 reference.
+       * g-trasym.ads: Likewise.
+       * gnat_ugn.texi (Linking a Mixed C++ & Ada Program): Likewise.
+       (Summary of Run-Time Configurations): Likewise.
+       * memtrack.adb: Likewise.
+
 2012-03-12  Tristan Gingold  <gingold@adacore.com>
 
        * gcc-interface/decl.c (gnat_to_gnu_param): Use flag_vms_malloc64
diff --git a/gcc/ada/a-intnam-tru64.ads b/gcc/ada/a-intnam-tru64.ads
deleted file mode 100644 (file)
index 3ea1a4a..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                 GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS                 --
---                                                                          --
---                   A D A . I N T E R R U P T S . N A M E S                --
---                                                                          --
---                                  S p e c                                 --
---                                                                          --
---          Copyright (C) 1991-2011, Free Software Foundation, Inc.         --
---                                                                          --
--- GNARL is free software; you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNARL was developed by the GNARL team at Florida State University.       --
--- Extensive contributions were provided by Ada Core Technologies, Inc.     --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This is the DEC Unix 4.0 version of this package
-
---  The following signals are reserved by the run time:
-
---  SIGFPE, SIGILL, SIGSEGV, SIGBUS, SIGABRT, SIGTRAP, SIGINT, SIGALRM,
---  SIGSTOP, SIGKILL
-
---  The pragma Unreserve_All_Interrupts affects the following signal(s):
-
---  SIGINT: made available for Ada handler
-
-with System.OS_Interface;
-
-package Ada.Interrupts.Names is
-
-   --  All identifiers in this unit are implementation defined
-
-   pragma Implementation_Defined;
-
-   --  Beware that the mapping of names to signals may be many-to-one. There
-   --  may be aliases. Also, for all signal names that are not supported on the
-   --  current system the value of the corresponding constant will be zero.
-
-   SIGHUP : constant Interrupt_ID :=
-     System.OS_Interface.SIGHUP;      --  hangup
-
-   SIGINT : constant Interrupt_ID :=
-     System.OS_Interface.SIGINT;      --  interrupt (rubout)
-
-   SIGQUIT : constant Interrupt_ID :=
-     System.OS_Interface.SIGQUIT;     --  quit (ASCD FS)
-
-   SIGILL : constant Interrupt_ID :=
-     System.OS_Interface.SIGILL;      --  illegal instruction (not reset)
-
-   SIGTRAP : constant Interrupt_ID :=
-     System.OS_Interface.SIGTRAP;     --  trace trap (not reset)
-
-   SIGIOT : constant Interrupt_ID :=
-     System.OS_Interface.SIGIOT;      --  IOT instruction
-
-   SIGABRT : constant Interrupt_ID := --  used by abort,
-     System.OS_Interface.SIGABRT;     --  replace SIGIOT in the  future
-
-   SIGEMT : constant Interrupt_ID :=
-     System.OS_Interface.SIGEMT;      --  EMT instruction
-
-   SIGFPE : constant Interrupt_ID :=
-     System.OS_Interface.SIGFPE;      --  floating point exception
-
-   SIGKILL : constant Interrupt_ID :=
-     System.OS_Interface.SIGKILL;     --  kill (cannot be caught or ignored)
-
-   SIGBUS : constant Interrupt_ID :=
-     System.OS_Interface.SIGBUS;      --  bus error
-
-   SIGSEGV : constant Interrupt_ID :=
-     System.OS_Interface.SIGSEGV;     --  segmentation violation
-
-   SIGSYS : constant Interrupt_ID :=
-     System.OS_Interface.SIGSYS;      --  bad argument to system call
-
-   SIGPIPE : constant Interrupt_ID := --  write on a pipe with
-     System.OS_Interface.SIGPIPE;     --  no one to read it
-
-   SIGALRM : constant Interrupt_ID :=
-     System.OS_Interface.SIGALRM;     --  alarm clock
-
-   SIGTERM : constant Interrupt_ID :=
-     System.OS_Interface.SIGTERM;     --  software termination signal from kill
-
-   SIGUSR1 : constant Interrupt_ID :=
-     System.OS_Interface.SIGUSR1;     --  user defined signal 1
-
-   SIGUSR2 : constant Interrupt_ID :=
-     System.OS_Interface.SIGUSR2;     --  user defined signal 2
-
-   SIGCHLD : constant Interrupt_ID :=
-     System.OS_Interface.SIGCHLD;     --  4.3BSD's/POSIX name for SIGCLD
-
-   SIGWINCH : constant Interrupt_ID :=
-     System.OS_Interface.SIGWINCH;    --  window size change
-
-   SIGURG : constant Interrupt_ID :=
-     System.OS_Interface.SIGURG;      --  urgent condition on IO channel
-
-   SIGPOLL : constant Interrupt_ID :=
-     System.OS_Interface.SIGPOLL;     --  pollable event occurred
-
-   SIGIO : constant Interrupt_ID :=   --  input/output possible,
-     System.OS_Interface.SIGIO;       --  SIGPOLL alias (Solaris)
-
-   SIGSTOP : constant Interrupt_ID :=
-     System.OS_Interface.SIGSTOP;     --  stop (cannot be caught or ignored)
-
-   SIGTSTP : constant Interrupt_ID :=
-     System.OS_Interface.SIGTSTP;     --  user stop requested from tty
-
-   SIGCONT : constant Interrupt_ID :=
-     System.OS_Interface.SIGCONT;     --  stopped process has been continued
-
-   SIGTTIN : constant Interrupt_ID :=
-     System.OS_Interface.SIGTTIN;     --  background tty read attempted
-
-   SIGTTOU : constant Interrupt_ID :=
-     System.OS_Interface.SIGTTOU;     --  background tty write attempted
-
-   SIGVTALRM : constant Interrupt_ID :=
-     System.OS_Interface.SIGVTALRM;   --  virtual timer expired
-
-   SIGPROF : constant Interrupt_ID :=
-     System.OS_Interface.SIGPROF;     --  profiling timer expired
-
-   SIGXCPU : constant Interrupt_ID :=
-     System.OS_Interface.SIGXCPU;     --  CPU time limit exceeded
-
-   SIGXFSZ : constant Interrupt_ID :=
-     System.OS_Interface.SIGXFSZ;     --  filesize limit exceeded
-
-end Ada.Interrupts.Names;
index 4c96d56b1cee6ae4b6426420c6f27aa68cb92f85..8309123ce4ecb70c7eb8d52a9cf73dbbc4d32270 100644 (file)
@@ -6,7 +6,7 @@
  *                                                                          *
  *                          C Implementation File                           *
  *                                                                          *
- *          Copyright (C) 1992-2011, Free Software Foundation, Inc.         *
+ *          Copyright (C) 1992-2012, Free Software Foundation, Inc.         *
  *                                                                          *
  * GNAT is free software;  you can  redistribute it  and/or modify it under *
  * terms of the  GNU General Public License as published  by the Free Soft- *
@@ -2467,8 +2467,7 @@ __gnat_number_of_cpus (void)
 {
   int cores = 1;
 
-#if defined (linux) || defined (sun) || defined (AIX) \
-    || (defined (__alpha__)  && defined (_osf_)) || defined (__APPLE__)
+#if defined (linux) || defined (sun) || defined (AIX) || defined (__APPLE__)
   cores = (int) sysconf (_SC_NPROCESSORS_ONLN);
 
 #elif (defined (__mips) && defined (__sgi))
@@ -3541,7 +3540,6 @@ _flush_cache()
       && ! defined (__hpux__) \
       && ! defined (__APPLE__) \
       && ! defined (_AIX) \
-      && ! (defined (__alpha__)  && defined (__osf__)) \
       && ! defined (VMS) \
       && ! defined (__MINGW32__) \
       && ! (defined (__mips) && defined (__sgi)))
index 31c878e77954c0004f54e8fb19c5d1d933dd4f41..ac7ee21b38431a96bbe94a6586a241f4091b5963 100644 (file)
@@ -6,7 +6,7 @@
  *                                                                          *
  *                          C Implementation File                           *
  *                                                                          *
- *            Copyright (C) 2005-2011, Free Software Foundation, Inc.       *
+ *            Copyright (C) 2005-2012, Free Software Foundation, Inc.       *
  *                                                                          *
  * GNAT is free software;  you can  redistribute it  and/or modify it under *
  * terms of the  GNU General Public License as published  by the Free Soft- *
  *                                                                          *
  ****************************************************************************/
 
-/* Tru64 UNIX V4.0F <stdlib.h> declares unsetenv() only if AES_SOURCE (which
-   is plain broken, this should be _AES_SOURCE instead as everywhere else;
-   Tru64 UNIX V5.1B declares it only if _BSD.  */
-#if defined (__alpha__) && defined (__osf__)
-#define AES_SOURCE
-#define _BSD
-#endif
-
 #ifdef __cplusplus
 extern "C" {
 #endif
index 6c4d6b10efcf98c2b7e9e2c530e69fa7cda4335e..3397014ff2702727aab68827ba967fb171715a08 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---                     Copyright (C) 1999-2010, AdaCore                     --
+--                     Copyright (C) 1999-2012, AdaCore                     --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -64,7 +64,6 @@
 --     LynxOS x86
 --     Solaris x86
 --     Solaris sparc
---     Tru64 alpha
 --     OpenVMS/Alpha
 --     OpenVMS/ia64
 --     VxWorks PowerPC
index 4b30600adb37d97fd72abdfd872e420619d11732..1cc6551d4571e4c9f28dc5fd103ec366bd03ef75 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---                     Copyright (C) 1999-2011, AdaCore                     --
+--                     Copyright (C) 1999-2012, AdaCore                     --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -38,7 +38,6 @@
 --     GNU/Linux x86, x86_64, ia64
 --     FreeBSD x86, x86_64
 --     Solaris sparc and x86
---     Tru64
 --     OpenVMS Alpha and ia64
 --     Windows
 
index eb6e7bcdd453677ee47348f589692aa69e33e397..75d80c518bf0b6763db230d55f20ca57b6653fa9 100644 (file)
@@ -1454,34 +1454,6 @@ ifeq ($(strip $(filter-out rtems%,$(osys))),)
   s-interr.adb<s-interr-hwint.adb
 endif
 
-ifeq ($(strip $(filter-out alpha% dec osf%,$(targ))),)
-  LIBGNAT_TARGET_PAIRS = \
-  a-intnam.ads<a-intnam-tru64.ads \
-  s-inmaop.adb<s-inmaop-posix.adb \
-  s-intman.adb<s-intman-posix.adb \
-  s-mastop.adb<s-mastop-tru64.adb \
-  s-osinte.adb<s-osinte-tru64.adb \
-  s-osinte.ads<s-osinte-tru64.ads \
-  s-osprim.adb<s-osprim-unix.adb \
-  s-taprop.adb<s-taprop-tru64.adb \
-  s-tasinf.ads<s-tasinf-tru64.ads \
-  s-taspri.ads<s-taspri-tru64.ads \
-  s-tpopsp.adb<s-tpopsp-posix-foreign.adb \
-  s-traceb.adb<s-traceb-mastop.adb \
-  system.ads<system-tru64.ads \
-  $(ATOMICS_TARGET_PAIRS) \
-  $(ATOMICS_BUILTINS_TARGET_PAIRS)
-
-  TOOLS_TARGET_PAIRS=mlib-tgt-specific.adb<mlib-tgt-specific-tru64.adb
-
-  EH_MECHANISM=-gcc
-  GMEM_LIB=gmemlib
-  MISCLIB = -lexc
-  THREADSLIB = -lpthread -lmach -lexc -lrt
-  GNATLIB_SHARED = gnatlib-shared-default
-  LIBRARY_VERSION := $(LIB_VERSION)
-endif
-
 ifeq ($(strip $(filter-out alpha64 ia64 dec hp vms% openvms% alphavms%,$(host))),)
 
 soext  = .exe
index 6885eed89d2e16ac1c3e82508a73c6e8849773dc..e6f368bcb48d64c0cf16ed7ea8e4b31292e1ecb6 100644 (file)
@@ -3092,7 +3092,7 @@ $ gnatlink ada_unit file1.o file2.o --LINK=./my_script
 
 If the @code{zero cost} exception mechanism is used, and the platform
 doesn't support automatic registration of exception tables (e.g.@: HP-UX,
-Tru64 or AIX), the simple approach described above will not work and
+or AIX), the simple approach described above will not work and
 a pre-linking phase using GNAT will be necessary.
 
 @end enumerate
@@ -22164,11 +22164,6 @@ information about several specific platforms.
 @item @code{@ @ @ @ }Tasking    @tab native VMS threads
 @item @code{@ @ @ @ }Exceptions @tab ZCX
 @*
-@item @b{alpha-tru64}
-@item @code{@ @ }@i{rts-native (default)}
-@item @code{@ @ @ @ }Tasking    @tab native TRU64 threads
-@item @code{@ @ @ @ }Exceptions @tab ZCX
-@*
 @item @code{@ @ }@i{rts-sjlj}
 @item @code{@ @ @ @ }Tasking    @tab native TRU64 threads
 @item @code{@ @ @ @ }Exceptions @tab SJLJ
index a4507fe8804ccd62622e38f37a61c1885f8012e5..4dfbee77f08fd24f6c8a48e03ca4c788054a83b3 100644 (file)
@@ -6,7 +6,7 @@
  *                                                                          *
  *                              C Header File                               *
  *                                                                          *
- *         Copyright (C) 2004-2011, Free Software Foundation, Inc.          *
+ *         Copyright (C) 2004-2012, Free Software Foundation, Inc.          *
  *                                                                          *
  * GNAT is free software;  you can  redistribute it  and/or modify it under *
  * terms of the  GNU General Public License as published  by the Free Soft- *
 /* For AIX */
 #endif
 
-#ifndef _OSF_SOURCE
-#define _OSF_SOURCE 1
-/* For Tru64 */
-#endif
-
 /** No system header may be included prior to this point since on some targets
  ** we need to redefine FD_SETSIZE.
  **/
 #endif
 
 #if defined (_AIX) || defined (__FreeBSD__) || defined (__hpux__) || \
-    defined (__osf__) || defined (_WIN32) || defined (__APPLE__)
+    defined (_WIN32) || defined (__APPLE__)
 # define HAVE_THREAD_SAFE_GETxxxBYyyy 1
 
 #elif defined (sgi) || defined (linux) || defined (__GLIBC__) || \
index 80a02b1734fd2e95813cbabe02fdab9d6a1ff3e4..87124b6a4ea1b3b1acfdb535f91effa0f0afac50 100644 (file)
@@ -294,156 +294,6 @@ __gnat_install_handler (void)
   __gnat_handler_installed = 1;
 }
 
-/*****************/
-/* Tru64 section */
-/*****************/
-
-#elif defined(__alpha__) && defined(__osf__)
-
-#include <signal.h>
-#include <sys/siginfo.h>
-
-extern char *__gnat_get_code_loc (struct sigcontext *);
-extern void __gnat_set_code_loc (struct sigcontext *, char *);
-extern size_t __gnat_machine_state_length (void);
-
-#define HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE
-
-void
-__gnat_adjust_context_for_raise (int signo, void *ucontext)
-{
-  struct sigcontext *sigcontext = (struct sigcontext *) ucontext;
-
-  /* The unwinder expects the signal context to contain the address of the
-     faulting instruction.  For SIGFPE, this depends on the trap shadow
-     situation (see man ieee).  We nonetheless always compensate for it,
-     considering that PC designates the instruction following the one that
-     trapped.  This is not necessarily true but corresponds to what we have
-     always observed.  */
-  if (signo == SIGFPE)
-    sigcontext->sc_pc--;
-}
-
-static void
-__gnat_error_handler (int sig, siginfo_t *si, void *ucontext)
-{
-  struct Exception_Data *exception;
-  static int recurse = 0;
-  const char *msg;
-
-  /* Adjusting is required for every fault context, so adjust for this one
-     now, before we possibly trigger a recursive fault below.  */
-  __gnat_adjust_context_for_raise (sig, ucontext);
-
-  /* If this was an explicit signal from a "kill", just resignal it.  */
-  if (SI_FROMUSER (si))
-    {
-      signal (sig, SIG_DFL);
-      kill (getpid(), sig);
-    }
-
-  /* Otherwise, treat it as something we handle.  */
-  switch (sig)
-    {
-    case SIGSEGV:
-      /* If the problem was permissions, this is a constraint error.
-        Likewise if the failing address isn't maximally aligned or if
-        we've recursed.
-
-        ??? Using a static variable here isn't task-safe, but it's
-        much too hard to do anything else and we're just determining
-        which exception to raise.  */
-      if (si->si_code == SEGV_ACCERR
-         || (long) si->si_addr == 0
-         || (((long) si->si_addr) & 3) != 0
-         || recurse)
-       {
-         exception = &constraint_error;
-         msg = "SIGSEGV";
-       }
-      else
-       {
-         /* See if the page before the faulting page is accessible.  Do that
-            by trying to access it.  We'd like to simply try to access
-            4096 + the faulting address, but it's not guaranteed to be
-            the actual address, just to be on the same page.  */
-         recurse++;
-         ((volatile char *)
-          ((long) si->si_addr & - getpagesize ()))[getpagesize ()];
-         exception = &storage_error;
-         msg = "stack overflow or erroneous memory access";
-       }
-      break;
-
-    case SIGBUS:
-      exception = &program_error;
-      msg = "SIGBUS";
-      break;
-
-    case SIGFPE:
-      exception = &constraint_error;
-      msg = "SIGFPE";
-      break;
-
-    default:
-      exception = &program_error;
-      msg = "unhandled signal";
-    }
-
-  recurse = 0;
-  Raise_From_Signal_Handler (exception, CONST_CAST (char *, msg));
-}
-
-void
-__gnat_install_handler (void)
-{
-  struct sigaction act;
-
-  /* Setup signal handler to map synchronous signals to appropriate
-     exceptions. Make sure that the handler isn't interrupted by another
-     signal that might cause a scheduling event!  */
-
-  act.sa_handler = (void (*) (int)) __gnat_error_handler;
-  act.sa_flags = SA_RESTART | SA_NODEFER | SA_SIGINFO;
-  sigemptyset (&act.sa_mask);
-
-  /* Do not install handlers if interrupt state is "System".  */
-  if (__gnat_get_interrupt_state (SIGABRT) != 's')
-    sigaction (SIGABRT, &act, NULL);
-  if (__gnat_get_interrupt_state (SIGFPE) != 's')
-    sigaction (SIGFPE,  &act, NULL);
-  if (__gnat_get_interrupt_state (SIGILL) != 's')
-    sigaction (SIGILL,  &act, NULL);
-  if (__gnat_get_interrupt_state (SIGSEGV) != 's')
-    sigaction (SIGSEGV, &act, NULL);
-  if (__gnat_get_interrupt_state (SIGBUS) != 's')
-    sigaction (SIGBUS,  &act, NULL);
-
-  __gnat_handler_installed = 1;
-}
-
-/* Routines called by s-mastop-tru64.adb.  */
-
-#define SC_GP 29
-
-char *
-__gnat_get_code_loc (struct sigcontext *context)
-{
-  return (char *) context->sc_pc;
-}
-
-void
-__gnat_set_code_loc (struct sigcontext *context, char *pc)
-{
-  context->sc_pc = (long) pc;
-}
-
-size_t
-__gnat_machine_state_length (void)
-{
-  return sizeof (struct sigcontext);
-}
-
 /*****************/
 /* HP-UX section */
 /*****************/
index cb1a928584ae69d3571dcdee99f28027f49abeeb..223147df7d2668804210768a645316dcea26237f 100644 (file)
@@ -6,7 +6,7 @@
  *                                                                          *
  *                          C Implementation File                           *
  *                                                                          *
- *          Copyright (C) 1992-2011, Free Software Foundation, Inc.         *
+ *          Copyright (C) 1992-2012, Free Software Foundation, Inc.         *
  *                                                                          *
  * GNAT is free software;  you can  redistribute it  and/or modify it under *
  * terms of the  GNU General Public License as published  by the Free Soft- *
@@ -96,19 +96,7 @@ extern "C" {
 #define SHARED 'H'
 #define STATIC 'T'
 
-#if defined (__osf__)
-const char *__gnat_object_file_option = "-Wl,-input,";
-const char *__gnat_run_path_option = "-Wl,-rpath,";
-int __gnat_link_max = 10000;
-unsigned char __gnat_objlist_file_supported = 1;
-char __gnat_shared_libgnat_default = STATIC;
-char __gnat_shared_libgcc_default = STATIC;
-unsigned char __gnat_using_gnu_linker = 0;
-const char *__gnat_object_library_extension = ".a";
-unsigned char __gnat_separate_run_path_options = 0;
-const char *__gnat_default_libgcc_subdir = "lib";
-
-#elif defined (sgi)
+#if defined (sgi)
 const char *__gnat_object_file_option = "-Wl,-objectlist,";
 const char *__gnat_run_path_option = "-Wl,-rpath,";
 int __gnat_link_max = 5000;
index 6b29e1748c347875d51e68941808997a7f374453..ec490e21db96ca0a6c7a8d1eb35ad8f47bcbba4c 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---          Copyright (C) 2001-2009, Free Software Foundation, Inc.         --
+--          Copyright (C) 2001-2012, Free Software Foundation, Inc.         --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -61,7 +61,6 @@
 --    HP-UX
 --    Irix
 --    Solaris
---    Tru64
 --    Alpha OpenVMS
 
 --  NOTE FOR FUTURE PLATFORMS SUPPORT: It is assumed that type Duration is
diff --git a/gcc/ada/mlib-tgt-specific-tru64.adb b/gcc/ada/mlib-tgt-specific-tru64.adb
deleted file mode 100644 (file)
index b5f5a13..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                         GNAT COMPILER COMPONENTS                         --
---                                                                          --
---                    M L I B . T G T . S P E C I F I C                     --
---                             (Tru64 Version)                              --
---                                                                          --
---                                 B o d y                                  --
---                                                                          --
---          Copyright (C) 2002-2008, Free Software Foundation, Inc.         --
---                                                                          --
--- GNAT is free software;  you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
--- for  more details.  You should have  received  a copy of the GNU General --
--- Public License  distributed with GNAT; see file COPYING3.  If not, go to --
--- http://www.gnu.org/licenses for a complete copy of the license.          --
---                                                                          --
--- GNAT was originally developed  by the GNAT team at  New York University. --
--- Extensive contributions were provided by Ada Core Technologies Inc.      --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This is the Tru64 version of the body
-
-with MLib.Fil;
-with MLib.Utl;
-with Opt;
-with Output; use Output;
-
-package body MLib.Tgt.Specific is
-
-   use MLib;
-
-   --  Non default subprogram
-
-   procedure Build_Dynamic_Library
-     (Ofiles       : Argument_List;
-      Options      : Argument_List;
-      Interfaces   : Argument_List;
-      Lib_Filename : String;
-      Lib_Dir      : String;
-      Symbol_Data  : Symbol_Record;
-      Driver_Name  : Name_Id := No_Name;
-      Lib_Version  : String  := "";
-      Auto_Init    : Boolean := False);
-
-   function Is_Archive_Ext (Ext : String) return Boolean;
-
-   function PIC_Option return String;
-
-   --  Local variables
-
-   Expect_Unresolved : aliased String := "-Wl,-expect_unresolved,*";
-
-   ---------------------------
-   -- Build_Dynamic_Library --
-   ---------------------------
-
-   procedure Build_Dynamic_Library
-     (Ofiles       : Argument_List;
-      Options      : Argument_List;
-      Interfaces   : Argument_List;
-      Lib_Filename : String;
-      Lib_Dir      : String;
-      Symbol_Data  : Symbol_Record;
-      Driver_Name  : Name_Id := No_Name;
-      Lib_Version  : String  := "";
-      Auto_Init    : Boolean := False)
-   is
-      pragma Unreferenced (Interfaces);
-      pragma Unreferenced (Symbol_Data);
-      pragma Unreferenced (Auto_Init);
-      --  Initialization is done through the constructor mechanism
-
-      Lib_File : constant String :=
-                   "lib" & Fil.Append_To (Lib_Filename, DLL_Ext);
-
-      Lib_Path : constant String :=
-                   Lib_Dir & Directory_Separator & Lib_File;
-
-      Version_Arg          : String_Access;
-      Symbolic_Link_Needed : Boolean := False;
-
-   begin
-      if Opt.Verbose_Mode then
-         Write_Str ("building relocatable shared library ");
-         Write_Line (Lib_Path);
-      end if;
-
-      --  If specified, add automatic elaboration/finalization
-
-      if Lib_Version = "" then
-         Utl.Gcc
-           (Output_File => Lib_Path,
-            Objects     => Ofiles,
-            Options     => Options & Expect_Unresolved'Access,
-            Options_2   => No_Argument_List,
-            Driver_Name => Driver_Name);
-
-      else
-         declare
-            Maj_Version : constant String :=
-                            Major_Id_Name (Lib_File, Lib_Version);
-         begin
-            if Maj_Version'Length /= 0 then
-               Version_Arg := new String'("-Wl,-soname," & Maj_Version);
-
-            else
-               Version_Arg := new String'("-Wl,-soname," & Lib_Version);
-            end if;
-
-            if Is_Absolute_Path (Lib_Version) then
-               Utl.Gcc
-                 (Output_File => Lib_Version,
-                  Objects     => Ofiles,
-                  Options     =>
-                    Options & Version_Arg & Expect_Unresolved'Access,
-                  Options_2   => No_Argument_List,
-                  Driver_Name => Driver_Name);
-               Symbolic_Link_Needed := Lib_Version /= Lib_Path;
-
-            else
-               Utl.Gcc
-                 (Output_File => Lib_Dir & Directory_Separator & Lib_Version,
-                  Objects     => Ofiles,
-                  Options     =>
-                    Options & Version_Arg & Expect_Unresolved'Access,
-                  Options_2   => No_Argument_List,
-                  Driver_Name => Driver_Name);
-               Symbolic_Link_Needed :=
-                 Lib_Dir & Directory_Separator & Lib_Version /= Lib_Path;
-            end if;
-
-            if Symbolic_Link_Needed then
-               Create_Sym_Links
-                 (Lib_Path, Lib_Version, Lib_Dir, Maj_Version);
-            end if;
-         end;
-      end if;
-   end Build_Dynamic_Library;
-
-   --------------------
-   -- Is_Archive_Ext --
-   --------------------
-
-   function Is_Archive_Ext (Ext : String) return Boolean is
-   begin
-      return Ext = ".a" or else Ext = ".so";
-   end Is_Archive_Ext;
-
-   ----------------
-   -- PIC_Option --
-   ----------------
-
-   function PIC_Option return String is
-   begin
-      return "";
-   end PIC_Option;
-
-begin
-   Build_Dynamic_Library_Ptr := Build_Dynamic_Library'Access;
-   Is_Archive_Ext_Ptr := Is_Archive_Ext'Access;
-   PIC_Option_Ptr := PIC_Option'Access;
-end MLib.Tgt.Specific;
diff --git a/gcc/ada/s-mastop-tru64.adb b/gcc/ada/s-mastop-tru64.adb
deleted file mode 100644 (file)
index 7114ea7..0000000
+++ /dev/null
@@ -1,163 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                         GNAT COMPILER COMPONENTS                         --
---                                                                          --
---                     SYSTEM.MACHINE_STATE_OPERATIONS                      --
---                                                                          --
---                                 B o d y                                  --
---                         (Version for Alpha/Dec Unix)                     --
---                                                                          --
---                     Copyright (C) 1999-2010, AdaCore                     --
---                                                                          --
--- GNAT is free software;  you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNAT was originally developed  by the GNAT team at  New York University. --
--- Extensive contributions were provided by Ada Core Technologies Inc.      --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This version of System.Machine_State_Operations is for use on
---  Alpha systems running DEC Unix.
-
-with System.Memory;
-
-package body System.Machine_State_Operations is
-
-   pragma Linker_Options ("-lexc");
-   --  Needed for definitions of exc_capture_context and exc_virtual_unwind
-
-   ----------------------------
-   -- Allocate_Machine_State --
-   ----------------------------
-
-   function Allocate_Machine_State return Machine_State is
-      use System.Storage_Elements;
-
-      function c_machine_state_length return Storage_Offset;
-      pragma Import (C, c_machine_state_length, "__gnat_machine_state_length");
-
-   begin
-      return Machine_State
-        (Memory.Alloc (Memory.size_t (c_machine_state_length)));
-   end Allocate_Machine_State;
-
-   ----------------
-   -- Fetch_Code --
-   ----------------
-
-   function Fetch_Code (Loc : Code_Loc) return Code_Loc is
-   begin
-      return Loc;
-   end Fetch_Code;
-
-   ------------------------
-   -- Free_Machine_State --
-   ------------------------
-
-   procedure Free_Machine_State (M : in out Machine_State) is
-   begin
-      Memory.Free (Address (M));
-      M := Machine_State (Null_Address);
-   end Free_Machine_State;
-
-   ------------------
-   -- Get_Code_Loc --
-   ------------------
-
-   function Get_Code_Loc (M : Machine_State) return Code_Loc is
-      Asm_Call_Size : constant := 4;
-
-      function c_get_code_loc (M : Machine_State) return Code_Loc;
-      pragma Import (C, c_get_code_loc, "__gnat_get_code_loc");
-
-      --  Code_Loc returned by c_get_code_loc is the return point but here we
-      --  want Get_Code_Loc to return the call point. Under DEC Unix a call
-      --  asm instruction takes 4 bytes. So we must remove this value from
-      --  c_get_code_loc to have the call point.
-
-      Loc : constant Code_Loc := c_get_code_loc (M);
-
-   begin
-      if Loc = 0 then
-         return 0;
-      else
-         return Loc - Asm_Call_Size;
-      end if;
-   end Get_Code_Loc;
-
-   --------------------------
-   -- Machine_State_Length --
-   --------------------------
-
-   function Machine_State_Length
-     return System.Storage_Elements.Storage_Offset
-   is
-      use System.Storage_Elements;
-
-      function c_machine_state_length return Storage_Offset;
-      pragma Import (C, c_machine_state_length, "__gnat_machine_state_length");
-
-   begin
-      return c_machine_state_length;
-   end Machine_State_Length;
-
-   ---------------
-   -- Pop_Frame --
-   ---------------
-
-   procedure Pop_Frame (M : Machine_State) is
-      procedure exc_virtual_unwind (Fcn : System.Address; M : Machine_State);
-      pragma Import (C, exc_virtual_unwind, "exc_virtual_unwind");
-
-      function exc_lookup_function (Loc : Code_Loc) return System.Address;
-      pragma Import (C, exc_lookup_function, "exc_lookup_function_entry");
-
-      procedure c_set_code_loc (M : Machine_State; Loc : Code_Loc);
-      pragma Import (C, c_set_code_loc, "__gnat_set_code_loc");
-
-      --  Look for a code-range descriptor table containing the PC of the
-      --  specified machine state. If we don't find any, attempting to unwind
-      --  further would fail so we set the machine state's code location to a
-      --  value indicating that the top of the call chain is reached. This
-      --  happens when the function at the address pointed to by PC has not
-      --  been registered with the unwinding machinery, as with the __istart
-      --  functions generated by the linker in presence of initialization
-      --  routines for example.
-
-      Prf : constant System.Address := exc_lookup_function (Get_Code_Loc (M));
-
-   begin
-      if Prf = System.Null_Address then
-         c_set_code_loc (M, 0);
-      else
-         exc_virtual_unwind (Prf, M);
-      end if;
-   end Pop_Frame;
-
-   -----------------------
-   -- Set_Machine_State --
-   -----------------------
-
-   procedure Set_Machine_State (M : Machine_State) is
-      procedure c_capture_context (M : Machine_State);
-      pragma Import (C, c_capture_context, "exc_capture_context");
-   begin
-      c_capture_context (M);
-      Pop_Frame (M);
-   end Set_Machine_State;
-
-end System.Machine_State_Operations;
index 340abe99fe831a63352cefaebf1bbf7cff1b901b..3005ba781a0d612e46a16c0b9970789117cb2a66 100644 (file)
@@ -7,7 +7,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---          Copyright (C) 2000-2011, Free Software Foundation, Inc.         --
+--          Copyright (C) 2000-2012, Free Software Foundation, Inc.         --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -85,12 +85,6 @@ pragma Style_Checks ("M32766");
  **/
 #define _XOPEN_SOURCE 500
 
-#elif defined (__alpha__) && defined (__osf__)
-/** For Tru64 UNIX, _XOPEN_SOURCE must be defined, otherwise CLOCK_REALTIME
- ** is not defined.
- **/
-#define _XOPEN_SOURCE 500
-
 #elif defined (__mips) && defined (__sgi)
 /** For IRIX 6, _XOPEN5 must be defined and _XOPEN_IOV_MAX must be used as
  ** IOV_MAX, otherwise IOV_MAX is not defined.  IRIX 5 has neither.
@@ -111,14 +105,6 @@ pragma Style_Checks ("M32766");
 #include <fcntl.h>
 #include <time.h>
 
-#if defined (__alpha__) && defined (__osf__)
-/** Tru64 is unable to do vector IO operations with default value of IOV_MAX,
- ** so its value is redefined to a small one which is known to work properly.
- **/
-#undef IOV_MAX
-#define IOV_MAX 16
-#endif
-
 #if defined (__VMS)
 /** VMS is unable to do vector IO operations with default value of IOV_MAX,
  ** so its value is redefined to a small one which is known to work properly.
@@ -978,15 +964,6 @@ CND(AF_INET, "IPv4 address family")
 # undef AF_INET6
 #endif
 
-/**
- ** Tru64 UNIX V4.0F defines AF_INET6 without IPv6 support, specifically
- ** without struct sockaddr_in6.  We use _SS_MAXSIZE (used for the definition
- ** of struct sockaddr_storage on Tru64 UNIX V5.1) to detect this.
- **/
-#if defined(__osf__) && !defined(_SS_MAXSIZE)
-# undef AF_INET6
-#endif
-
 #ifndef AF_INET6
 # define AF_INET6 -1
 #else
diff --git a/gcc/ada/s-osinte-tru64.adb b/gcc/ada/s-osinte-tru64.adb
deleted file mode 100644 (file)
index ad391bc..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                 GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS                 --
---                                                                          --
---                   S Y S T E M . O S _ I N T E R F A C E                  --
---                                                                          --
---                                  B o d y                                 --
---                                                                          --
---         Copyright (C) 1998-2009, Free Software Foundation, Inc.          --
---                                                                          --
--- GNARL is free software; you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNARL was developed by the GNARL team at Florida State University.       --
--- Extensive contributions were provided by Ada Core Technologies, Inc.     --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This is the DEC Unix version of this package
-
---  This package encapsulates all direct interfaces to OS services
---  that are needed by children of System.
-
-pragma Polling (Off);
---  Turn off polling, we do not want ATC polling to take place during
---  tasking operations. It causes infinite loops and other problems.
-
-with Interfaces.C; use Interfaces.C;
-with System.Machine_Code; use System.Machine_Code;
-
-package body System.OS_Interface is
-
-   --------------------
-   -- Get_Stack_Base --
-   --------------------
-
-   function Get_Stack_Base (thread : pthread_t) return Address is
-      pragma Unreferenced (thread);
-   begin
-      return Null_Address;
-   end Get_Stack_Base;
-
-   ------------------
-   -- pthread_init --
-   ------------------
-
-   procedure pthread_init is
-   begin
-      null;
-   end pthread_init;
-
-   ------------------
-   -- pthread_self --
-   ------------------
-
-   function pthread_self return pthread_t is
-      Self : pthread_t;
-   begin
-      Asm ("call_pal 0x9e" & ASCII.LF & ASCII.HT &
-           "bis $31, $0, %0",
-           Outputs  => pthread_t'Asm_Output ("=r", Self),
-           Clobber  => "$0",
-           Volatile => True);
-      return Self;
-   end pthread_self;
-
-   ----------------------
-   -- Hide_Yellow_Zone --
-   ----------------------
-
-   procedure Hide_Unhide_Yellow_Zone (Hide : Boolean) is
-      type Teb_Ptr is access all pthread_teb_t;
-      Teb : Teb_Ptr;
-      Res : Interfaces.C.int;
-      pragma Unreferenced (Res);
-
-   begin
-      --  Get the Thread Environment Block address
-
-      Asm ("call_pal 0x9e" & ASCII.LF & ASCII.HT &
-           "bis $31, $0, %0",
-           Outputs  => Teb_Ptr'Asm_Output ("=r", Teb),
-           Clobber  => "$0",
-           Volatile => True);
-
-      --  Stick a guard page right above the Yellow Zone if it exists
-
-      if Teb.all.stack_yellow /= Teb.all.stack_guard then
-         Res :=
-           mprotect
-             (Teb.all.stack_yellow, Get_Page_Size,
-              prot => (if Hide then PROT_ON else PROT_OFF));
-      end if;
-   end Hide_Unhide_Yellow_Zone;
-
-   -----------------
-   -- To_Duration --
-   -----------------
-
-   function To_Duration (TS : timespec) return Duration is
-   begin
-      return Duration (TS.tv_sec) + Duration (TS.tv_nsec) / 10#1#E9;
-   end To_Duration;
-
-   -----------------
-   -- To_Timespec --
-   -----------------
-
-   function To_Timespec (D : Duration) return timespec is
-      S : time_t;
-      F : Duration;
-
-   begin
-      S := time_t (Long_Long_Integer (D));
-      F := D - Duration (S);
-
-      --  If F has negative value due to a round-up, adjust for positive F
-      --  value.
-
-      if F < 0.0 then
-         S := S - 1;
-         F := F + 1.0;
-      end if;
-
-      return timespec'(tv_sec => S,
-                       tv_nsec => long (Long_Long_Integer (F * 10#1#E9)));
-   end To_Timespec;
-
-end System.OS_Interface;
diff --git a/gcc/ada/s-osinte-tru64.ads b/gcc/ada/s-osinte-tru64.ads
deleted file mode 100644 (file)
index 0fcd422..0000000
+++ /dev/null
@@ -1,585 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                 GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS                 --
---                                                                          --
---                   S Y S T E M . O S _ I N T E R F A C E                  --
---                                                                          --
---                                  S p e c                                 --
---                                                                          --
---             Copyright (C) 1991-1994, Florida State University            --
---          Copyright (C) 1995-2011, Free Software Foundation, Inc.         --
---                                                                          --
--- GNAT is free software;  you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNARL was developed by the GNARL team at Florida State University.       --
--- Extensive contributions were provided by Ada Core Technologies, Inc.     --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This is the Tru64 version of this package
-
---  This package encapsulates all direct interfaces to OS services
---  that are needed by the tasking run-time (libgnarl).
-
---  PLEASE DO NOT add any with-clauses to this package or remove the pragma
---  Preelaborate. This package is designed to be a bottom-level (leaf) package.
-
-with Interfaces.C;
-
-with Ada.Unchecked_Conversion;
-
-package System.OS_Interface is
-   pragma Preelaborate;
-
-   pragma Linker_Options ("-lpthread");
-   pragma Linker_Options ("-lmach");
-   pragma Linker_Options ("-lexc");
-   pragma Linker_Options ("-lrt");
-
-   subtype int            is Interfaces.C.int;
-   subtype short          is Interfaces.C.short;
-   subtype long           is Interfaces.C.long;
-   subtype unsigned       is Interfaces.C.unsigned;
-   subtype unsigned_short is Interfaces.C.unsigned_short;
-   subtype unsigned_long  is Interfaces.C.unsigned_long;
-   subtype unsigned_char  is Interfaces.C.unsigned_char;
-   subtype plain_char     is Interfaces.C.plain_char;
-   subtype size_t         is Interfaces.C.size_t;
-   subtype char_array     is Interfaces.C.char_array;
-
-   -----------
-   -- Errno --
-   -----------
-
-   function errno return int;
-   pragma Import (C, errno, "_Geterrno");
-
-   EAGAIN    : constant := 35;
-   EINTR     : constant := 4;
-   EINVAL    : constant := 22;
-   ENOMEM    : constant := 12;
-   ETIMEDOUT : constant := 60;
-
-   -------------
-   -- Signals --
-   -------------
-
-   Max_Interrupt : constant := 48;
-   type Signal is new int range 0 .. Max_Interrupt;
-   for Signal'Size use int'Size;
-
-   SIGHUP     : constant := 1; --  hangup
-   SIGINT     : constant := 2; --  interrupt (rubout)
-   SIGQUIT    : constant := 3; --  quit (ASCD FS)
-   SIGILL     : constant := 4; --  illegal instruction (not reset)
-   SIGTRAP    : constant := 5; --  trace trap (not reset)
-   SIGABRT    : constant := 6; --  used by abort, replace SIGIOT in the  future
-   SIGIOT     : constant := 6; --  abort (terminate) process
-   SIGLOST    : constant := 6; --  old BSD signal ??
-   SIGEMT     : constant := 7; --  EMT instruction
-   SIGFPE     : constant := 8; --  floating point exception
-   SIGKILL    : constant := 9; --  kill (cannot be caught or ignored)
-   SIGBUS     : constant := 10; --  bus error
-   SIGSEGV    : constant := 11; --  segmentation violation
-   SIGSYS     : constant := 12; --  bad argument to system call
-   SIGPIPE    : constant := 13; --  write on a pipe with no one to read it
-   SIGALRM    : constant := 14; --  alarm clock
-   SIGTERM    : constant := 15; --  software termination signal from kill
-   SIGURG     : constant := 16; --  urgent condition on IO channel
-   SIGIOINT   : constant := 16; --  printer to backend error signal
-   SIGSTOP    : constant := 17; --  stop (cannot be caught or ignored)
-   SIGTSTP    : constant := 18; --  user stop requested from tty
-   SIGCONT    : constant := 19; --  stopped process has been continued
-   SIGCHLD    : constant := 20; --  child status change
-   SIGTTIN    : constant := 21; --  background tty read attempted
-   SIGTTOU    : constant := 22; --  background tty write attempted
-   SIGPOLL    : constant := 23; --  I/O possible, or completed
-   SIGIO      : constant := 23; --  STREAMS version of SIGPOLL
-   SIGAIO     : constant := 23; --  base lan i/o
-   SIGPTY     : constant := 23; --  pty i/o
-   SIGXCPU    : constant := 24; --  CPU time limit exceeded
-   SIGXFSZ    : constant := 25; --  filesize limit exceeded
-   SIGVTALRM  : constant := 26; --  virtual timer expired
-   SIGPROF    : constant := 27; --  profiling timer expired
-   SIGWINCH   : constant := 28; --  window size change
-   SIGINFO    : constant := 29; --  information request
-   SIGPWR     : constant := 29; --  Power Fail/Restart -- SVID3/SVR4
-   SIGUSR1    : constant := 30; --  user defined signal 1
-   SIGUSR2    : constant := 31; --  user defined signal 2
-   SIGRESV    : constant := 32; --  reserved by Digital for future use
-
-   SIGADAABORT : constant := SIGABRT;
-
-   type Signal_Set is array (Natural range <>) of Signal;
-
-   Unmasked    : constant Signal_Set := (0 .. 0 => SIGTRAP);
-   Reserved    : constant Signal_Set := (SIGALRM, SIGABRT, SIGKILL, SIGSTOP);
-
-   type sigset_t is private;
-
-   function sigaddset (set : access sigset_t; sig : Signal) return int;
-   pragma Import (C, sigaddset);
-
-   function sigdelset (set : access sigset_t; sig : Signal) return int;
-   pragma Import (C, sigdelset);
-
-   function sigfillset (set : access sigset_t) return int;
-   pragma Import (C, sigfillset);
-
-   function sigismember (set : access sigset_t; sig : Signal) return int;
-   pragma Import (C, sigismember);
-
-   function sigemptyset (set : access sigset_t) return int;
-   pragma Import (C, sigemptyset);
-
-   type union_type_3 is new String (1 .. 116);
-   type siginfo_t is record
-      si_signo     : int;
-      si_errno     : int;
-      si_code      : int;
-      X_data       : union_type_3;
-   end record;
-   for siginfo_t'Size use 8 * 128;
-   pragma Convention (C, siginfo_t);
-
-   type struct_sigaction is record
-      sa_handler : System.Address;
-      sa_mask    : sigset_t;
-      sa_flags   : int;
-      sa_signo   : int;
-   end record;
-   pragma Convention (C, struct_sigaction);
-   type struct_sigaction_ptr is access all struct_sigaction;
-
-   SIG_BLOCK   : constant := 1;
-   SIG_UNBLOCK : constant := 2;
-   SIG_SETMASK : constant := 3;
-
-   SIG_DFL : constant := 0;
-   SIG_IGN : constant := 1;
-
-   SA_NODEFER : constant := 8;
-   SA_SIGINFO : constant := 16#40#;
-   SA_ONSTACK : constant := 16#01#;
-
-   function sigaction
-     (sig  : Signal;
-      act  : struct_sigaction_ptr;
-      oact : struct_sigaction_ptr) return int;
-   pragma Import (C, sigaction);
-
-   ----------
-   -- Time --
-   ----------
-
-   type timespec is private;
-
-   function nanosleep (rqtp, rmtp : access timespec)  return int;
-   pragma Import (C, nanosleep);
-
-   type clockid_t is new int;
-
-   function clock_gettime
-     (clock_id : clockid_t;
-      tp       : access timespec) return int;
-   pragma Import (C, clock_gettime);
-
-   function To_Duration (TS : timespec) return Duration;
-   pragma Inline (To_Duration);
-
-   function To_Timespec (D : Duration) return timespec;
-   pragma Inline (To_Timespec);
-
-   type struct_timezone is record
-      tz_minuteswest : int;
-      tz_dsttime     : int;
-   end record;
-   pragma Convention (C, struct_timezone);
-
-   -------------------------
-   -- Priority Scheduling --
-   -------------------------
-
-   SCHED_FIFO  : constant := 1;
-   SCHED_RR    : constant := 2;
-   SCHED_OTHER : constant := 3;
-   SCHED_LFI   : constant := 5;
-
-   -------------
-   -- Process --
-   -------------
-
-   type pid_t is private;
-
-   function kill (pid : pid_t; sig : Signal) return int;
-   pragma Import (C, kill);
-
-   function getpid return pid_t;
-   pragma Import (C, getpid);
-
-   BIND_NO_INHERIT  : constant := 1;
-
-   function bind_to_cpu
-     (pid       : pid_t;
-      cpu_mask  : unsigned_long;
-      flag      : unsigned_long := BIND_NO_INHERIT) return int;
-   pragma Import (C, bind_to_cpu);
-
-   -------------
-   -- Threads --
-   -------------
-
-   type Thread_Body is access
-     function (arg : System.Address) return System.Address;
-   pragma Convention (C, Thread_Body);
-
-   function Thread_Body_Access is new
-     Ada.Unchecked_Conversion (System.Address, Thread_Body);
-
-   type pthread_t           is private;
-   subtype Thread_Id        is pthread_t;
-
-   type pthread_mutex_t     is limited private;
-   type pthread_cond_t      is limited private;
-   type pthread_attr_t      is limited private;
-   type pthread_mutexattr_t is limited private;
-   type pthread_condattr_t  is limited private;
-   type pthread_key_t       is private;
-
-   PTHREAD_CREATE_DETACHED : constant := 1;
-
-   PTHREAD_SCOPE_PROCESS : constant := 0;
-   PTHREAD_SCOPE_SYSTEM  : constant := 1;
-
-   PTHREAD_EXPLICIT_SCHED : constant := 1;
-
-   -----------
-   -- Stack --
-   -----------
-
-   Stack_Base_Available : constant Boolean := False;
-   --  Indicates if the stack base is available on this target
-
-   function Get_Stack_Base (thread : pthread_t) return Address;
-   pragma Inline (Get_Stack_Base);
-   --  Returns the stack base of the specified thread. Only call this function
-   --  when Stack_Base_Available is True.
-
-   function Get_Page_Size return size_t;
-   function Get_Page_Size return Address;
-   pragma Import (C, Get_Page_Size, "getpagesize");
-   --  Returns the size of a page
-
-   PROT_NONE  : constant := 0;
-   PROT_READ  : constant := 1;
-   PROT_WRITE : constant := 2;
-   PROT_EXEC  : constant := 4;
-   PROT_ALL   : constant := PROT_READ + PROT_WRITE + PROT_EXEC;
-
-   PROT_ON    : constant := PROT_READ;
-   PROT_OFF   : constant := PROT_ALL;
-
-   function mprotect (addr : Address; len : size_t; prot : int) return int;
-   pragma Import (C, mprotect);
-
-   procedure Hide_Unhide_Yellow_Zone (Hide : Boolean);
-   --  Every thread except the initial one features an overflow warning area
-   --  (called the Yellow Zone) which is just above the overflow guard area
-   --  on the stack (called the Red Zone). During task execution, we want
-   --  signals from the Red Zone, so we need to hide the Yellow Zone. This
-   --  procedure is called at the start of task execution (with Hide set True)
-   --  to hide the Yellow Zone, and at the end of task execution (with Hide
-   --  set False) to unhide the Yellow Zone.
-
-   ---------------------------------------
-   -- Nonstandard Thread Initialization --
-   ---------------------------------------
-
-   procedure pthread_init;
-   pragma Inline (pthread_init);
-   --  This is a dummy procedure to share some GNULLI files
-
-   -------------------------
-   -- POSIX.1c  Section 3 --
-   -------------------------
-
-   function sigwait
-     (set : access sigset_t;
-      sig : access Signal) return int;
-   pragma Import (C, sigwait, "__sigwaitd10");
-
-   function pthread_kill
-     (thread : pthread_t;
-      sig    : Signal) return int;
-   pragma Import (C, pthread_kill);
-
-   function pthread_sigmask
-     (how  : int;
-      set  : access sigset_t;
-      oset : access sigset_t) return int;
-   pragma Import (C, pthread_sigmask);
-
-   --------------------------
-   -- POSIX.1c  Section 11 --
-   --------------------------
-
-   function pthread_mutexattr_init (attr : access pthread_mutexattr_t)
-     return int;
-   pragma Import (C, pthread_mutexattr_init);
-
-   function pthread_mutexattr_destroy
-     (attr : access pthread_mutexattr_t) return int;
-   pragma Import (C, pthread_mutexattr_destroy);
-
-   function pthread_mutex_init
-     (mutex : access pthread_mutex_t;
-      attr  : access pthread_mutexattr_t) return int;
-   pragma Import (C, pthread_mutex_init, "__pthread_mutex_init");
-
-   function pthread_mutex_destroy (mutex : access pthread_mutex_t) return int;
-   pragma Import (C, pthread_mutex_destroy, "__pthread_mutex_destroy");
-
-   function pthread_mutex_lock (mutex : access pthread_mutex_t) return int;
-   pragma Import (C, pthread_mutex_lock, "__pthread_mutex_lock");
-
-   function pthread_mutex_unlock (mutex : access pthread_mutex_t) return int;
-   pragma Import (C, pthread_mutex_unlock, "__pthread_mutex_unlock");
-
-   function pthread_condattr_init
-     (attr : access pthread_condattr_t) return int;
-   pragma Import (C, pthread_condattr_init);
-
-   function pthread_condattr_destroy
-     (attr : access pthread_condattr_t) return int;
-   pragma Import (C, pthread_condattr_destroy);
-
-   function pthread_cond_init
-     (cond : access pthread_cond_t;
-      attr : access pthread_condattr_t) return int;
-   pragma Import (C, pthread_cond_init, "__pthread_cond_init");
-
-   function pthread_cond_destroy (cond : access pthread_cond_t) return int;
-   pragma Import (C, pthread_cond_destroy, "__pthread_cond_destroy");
-
-   function pthread_cond_signal (cond : access pthread_cond_t) return int;
-   pragma Import (C, pthread_cond_signal, "__pthread_cond_signal");
-
-   function pthread_cond_wait
-     (cond  : access pthread_cond_t;
-      mutex : access pthread_mutex_t) return  int;
-   pragma Import (C, pthread_cond_wait, "__pthread_cond_wait");
-
-   function pthread_cond_timedwait
-     (cond    : access pthread_cond_t;
-      mutex   : access pthread_mutex_t;
-      abstime : access timespec) return int;
-   pragma Import (C, pthread_cond_timedwait, "__pthread_cond_timedwait");
-
-   --------------------------
-   -- POSIX.1c  Section 13 --
-   --------------------------
-
-   function pthread_mutexattr_setprotocol
-     (attr     : access pthread_mutexattr_t;
-      protocol : int) return int;
-   pragma Import (C, pthread_mutexattr_setprotocol);
-
-   function pthread_mutexattr_setprioceiling
-     (attr     : access pthread_mutexattr_t;
-      prioceiling : int) return int;
-   pragma Import (C, pthread_mutexattr_setprioceiling);
-
-   type struct_sched_param is record
-      sched_priority : int;  --  scheduling priority
-   end record;
-
-   function pthread_setschedparam
-     (thread : pthread_t;
-      policy : int;
-      param  : access struct_sched_param) return int;
-   pragma Import (C, pthread_setschedparam);
-
-   function pthread_attr_setscope
-     (attr            : access pthread_attr_t;
-      contentionscope : int) return int;
-   pragma Import (C, pthread_attr_setscope);
-
-   function pthread_attr_setinheritsched
-     (attr            : access pthread_attr_t;
-      inheritsched    : int) return int;
-   pragma Import (C, pthread_attr_setinheritsched,
-     "__pthread_attr_setinheritsched");
-
-   function pthread_attr_setschedpolicy
-     (attr : access pthread_attr_t; policy : int) return int;
-   pragma Import (C, pthread_attr_setschedpolicy);
-
-   function pthread_attr_setschedparam
-     (attr        : access pthread_attr_t;
-      sched_param : access struct_sched_param) return int;
-   pragma Import (C, pthread_attr_setschedparam);
-
-   function sched_yield return int;
-   pragma Import (C, sched_yield);
-
-   --------------------------
-   -- P1003.1c  Section 16 --
-   --------------------------
-
-   function pthread_attr_init (attributes : access pthread_attr_t)
-     return int;
-   pragma Import (C, pthread_attr_init);
-
-   function pthread_attr_destroy (attributes : access pthread_attr_t)
-     return int;
-   pragma Import (C, pthread_attr_destroy);
-
-   function pthread_attr_setdetachstate
-     (attr        : access pthread_attr_t;
-      detachstate : int) return int;
-   pragma Import (C, pthread_attr_setdetachstate);
-
-   function pthread_attr_setstacksize
-     (attr      : access pthread_attr_t;
-      stacksize : size_t) return int;
-   pragma Import (C, pthread_attr_setstacksize, "__pthread_attr_setstacksize");
-
-   function pthread_create
-     (thread        : access pthread_t;
-      attributes    : access pthread_attr_t;
-      start_routine : Thread_Body;
-      arg           : System.Address) return int;
-   pragma Import (C, pthread_create, "__pthread_create");
-
-   procedure pthread_exit (status : System.Address);
-   pragma Import (C, pthread_exit, "__pthread_exit");
-
-   function pthread_self return pthread_t;
-   pragma Inline (pthread_self);
-
-   --------------------------
-   -- POSIX.1c  Section 17 --
-   --------------------------
-
-   function pthread_setspecific
-     (key : pthread_key_t; value : System.Address) return int;
-   pragma Import (C, pthread_setspecific, "__pthread_setspecific");
-
-   function pthread_getspecific (key : pthread_key_t) return System.Address;
-   pragma Import (C, pthread_getspecific, "__pthread_getspecific");
-
-   type destructor_pointer is access procedure (arg : System.Address);
-   pragma Convention (C, destructor_pointer);
-
-   function pthread_key_create
-     (key        : access pthread_key_t;
-      destructor : destructor_pointer) return int;
-   pragma Import (C, pthread_key_create);
-
-private
-
-   type sigset_t is new unsigned_long;
-
-   type pid_t is new int;
-
-   type time_t is new int;
-
-   type timespec is record
-      tv_sec  : time_t;
-      tv_nsec : long;
-   end record;
-   pragma Convention (C, timespec);
-
-   type unsigned_long_array is array (Natural range <>) of unsigned_long;
-
-   type pthread_t is new System.Address;
-
-   type pthread_teb_t is record
-      reserved1     : System.Address;
-      reserved2     : System.Address;
-      size          : unsigned_short;
-      version       : unsigned_char;
-      reserved3     : unsigned_char;
-      external      : unsigned_char;
-      reserved4     : char_array (0 .. 1);
-      creator       : unsigned_char;
-      sequence      : unsigned_long;
-      reserved5     : unsigned_long_array (0 .. 1);
-      per_kt_area   : System.Address;
-      stack_base    : System.Address;
-      stack_reserve : System.Address;
-      stack_yellow  : System.Address;
-      stack_guard   : System.Address;
-      stack_size    : unsigned_long;
-      tsd_values    : System.Address;
-      tsd_count     : unsigned_long;
-      reserved6     : unsigned;
-      reserved7     : unsigned;
-      thread_flags  : unsigned;
-      thd_errno     : int;
-      stack_hiwater : System.Address;
-      home_rad      : unsigned_long;
-   end record;
-   pragma Convention (C, pthread_teb_t);
-
-   type pthread_cond_t is record
-      state     : unsigned;
-      valid     : unsigned;
-      name      : System.Address;
-      arg       : unsigned;
-      reserved1 : unsigned;
-      sequence  : unsigned_long;
-      block     : System.Address;
-   end record;
-   pragma Convention (C, pthread_cond_t);
-
-   type pthread_attr_t is record
-      valid    : long;
-      name     : System.Address;
-      arg      : unsigned_long;
-      reserved : unsigned_long_array (0 .. 18);
-   end record;
-   pragma Convention (C, pthread_attr_t);
-
-   type pthread_mutex_t is record
-      lock     : unsigned;
-      valid    : unsigned;
-      name     : System.Address;
-      arg      : unsigned;
-      depth    : unsigned;
-      sequence : unsigned_long;
-      owner    : unsigned_long;
-      block    : System.Address;
-   end record;
-   for pthread_mutex_t'Size use 8 * 48;
-   pragma Convention (C, pthread_mutex_t);
-
-   type pthread_mutexattr_t is record
-      valid    : long;
-      reserved : unsigned_long_array (0 .. 14);
-   end record;
-   pragma Convention (C, pthread_mutexattr_t);
-
-   type pthread_condattr_t is record
-      valid    : long;
-      reserved : unsigned_long_array (0 .. 12);
-   end record;
-   pragma Convention (C, pthread_condattr_t);
-
-   type pthread_key_t is new unsigned;
-
-end System.OS_Interface;
diff --git a/gcc/ada/s-taprop-tru64.adb b/gcc/ada/s-taprop-tru64.adb
deleted file mode 100644 (file)
index 8d69e5b..0000000
+++ /dev/null
@@ -1,1365 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                 GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS                 --
---                                                                          --
---     S Y S T E M . T A S K _ P R I M I T I V E S . O P E R A T I O N S    --
---                                                                          --
---                                  B o d y                                 --
---                                                                          --
---         Copyright (C) 1992-2011, Free Software Foundation, Inc.          --
---                                                                          --
--- GNARL is free software; you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNARL was developed by the GNARL team at Florida State University.       --
--- Extensive contributions were provided by Ada Core Technologies, Inc.     --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This is a Tru64 version of this package
-
---  This package contains all the GNULL primitives that interface directly with
---  the underlying OS.
-
-pragma Polling (Off);
---  Turn off polling, we do not want ATC polling to take place during tasking
---  operations. It causes infinite loops and other problems.
-
-with Interfaces;
-with Interfaces.C;
-
-with System.Tasking.Debug;
-with System.Interrupt_Management;
-with System.OS_Constants;
-with System.OS_Primitives;
-with System.Task_Info;
-
-with System.Soft_Links;
---  We use System.Soft_Links instead of System.Tasking.Initialization
---  because the later is a higher level package that we shouldn't depend on.
---  For example when using the restricted run time, it is replaced by
---  System.Tasking.Restricted.Stages.
-
-package body System.Task_Primitives.Operations is
-
-   package OSC renames System.OS_Constants;
-   package SSL renames System.Soft_Links;
-
-   use System.Tasking.Debug;
-   use System.Tasking;
-   use Interfaces.C;
-   use System.OS_Interface;
-   use System.Parameters;
-   use System.OS_Primitives;
-
-   ----------------
-   -- Local Data --
-   ----------------
-
-   --  The followings are logically constants, but need to be initialized
-   --  at run time.
-
-   Single_RTS_Lock : aliased RTS_Lock;
-   --  This is a lock to allow only one thread of control in the RTS at
-   --  a time; it is used to execute in mutual exclusion from all other tasks.
-   --  Used mainly in Single_Lock mode, but also to protect All_Tasks_List
-
-   Environment_Task_Id : Task_Id;
-   --  A variable to hold Task_Id for the environment task
-
-   Unblocked_Signal_Mask : aliased sigset_t;
-   --  The set of signals that should unblocked in all tasks
-
-   Time_Slice_Val : Integer;
-   pragma Import (C, Time_Slice_Val, "__gl_time_slice_val");
-
-   Locking_Policy : Character;
-   pragma Import (C, Locking_Policy, "__gl_locking_policy");
-
-   Dispatching_Policy : Character;
-   pragma Import (C, Dispatching_Policy, "__gl_task_dispatching_policy");
-
-   Curpid : pid_t;
-
-   Foreign_Task_Elaborated : aliased Boolean := True;
-   --  Used to identified fake tasks (i.e., non-Ada Threads)
-
-   Abort_Handler_Installed : Boolean := False;
-   --  True if a handler for the abort signal is installed
-
-   --------------------
-   -- Local Packages --
-   --------------------
-
-   package Specific is
-
-      procedure Initialize (Environment_Task : Task_Id);
-      pragma Inline (Initialize);
-      --  Initialize various data needed by this package
-
-      function Is_Valid_Task return Boolean;
-      pragma Inline (Is_Valid_Task);
-      --  Does executing thread have a TCB?
-
-      procedure Set (Self_Id : Task_Id);
-      pragma Inline (Set);
-      --  Set the self id for the current task
-
-      function Self return Task_Id;
-      pragma Inline (Self);
-      --  Return a pointer to the Ada Task Control Block of the calling task
-
-   end Specific;
-
-   package body Specific is separate;
-   --  The body of this package is target specific
-
-   ----------------------------------
-   -- ATCB allocation/deallocation --
-   ----------------------------------
-
-   package body ATCB_Allocation is separate;
-   --  The body of this package is shared across several targets
-
-   ---------------------------------
-   -- Support for foreign threads --
-   ---------------------------------
-
-   function Register_Foreign_Thread (Thread : Thread_Id) return Task_Id;
-   --  Allocate and initialize a new ATCB for the current Thread
-
-   function Register_Foreign_Thread
-     (Thread : Thread_Id) return Task_Id is separate;
-
-   -----------------------
-   -- Local Subprograms --
-   -----------------------
-
-   procedure Abort_Handler (Sig : Signal);
-   --  Signal handler used to implement asynchronous abort
-
-   function Get_Policy (Prio : System.Any_Priority) return Character;
-   pragma Import (C, Get_Policy, "__gnat_get_specific_dispatching");
-   --  Get priority specific dispatching policy
-
-   -------------------
-   -- Abort_Handler --
-   -------------------
-
-   procedure Abort_Handler (Sig : Signal) is
-      pragma Unreferenced (Sig);
-
-      T       : constant Task_Id := Self;
-      Old_Set : aliased sigset_t;
-
-      Result : Interfaces.C.int;
-      pragma Warnings (Off, Result);
-
-   begin
-      --  It's not safe to raise an exception when using GCC ZCX mechanism.
-      --  Note that we still need to install a signal handler, since in some
-      --  cases (e.g. shutdown of the Server_Task in System.Interrupts) we
-      --  need to send the Abort signal to a task.
-
-      if ZCX_By_Default then
-         return;
-      end if;
-
-      if T.Deferral_Level = 0
-        and then T.Pending_ATC_Level < T.ATC_Nesting_Level
-        and then not T.Aborting
-      then
-         T.Aborting := True;
-
-         --  Make sure signals used for RTS internal purpose are unmasked
-
-         Result :=
-           pthread_sigmask
-             (SIG_UNBLOCK,
-              Unblocked_Signal_Mask'Access,
-              Old_Set'Access);
-         pragma Assert (Result = 0);
-
-         raise Standard'Abort_Signal;
-      end if;
-   end Abort_Handler;
-
-   ------------------
-   -- Stack_Guard  --
-   ------------------
-
-   --  The underlying thread system sets a guard page at the bottom of a thread
-   --  stack, so nothing is needed.
-
-   procedure Stack_Guard (T : ST.Task_Id; On : Boolean) is
-      pragma Unreferenced (T);
-      pragma Unreferenced (On);
-   begin
-      null;
-   end Stack_Guard;
-
-   --------------------
-   -- Get_Thread_Id  --
-   --------------------
-
-   function Get_Thread_Id (T : ST.Task_Id) return OSI.Thread_Id is
-   begin
-      return T.Common.LL.Thread;
-   end Get_Thread_Id;
-
-   ----------
-   -- Self --
-   ----------
-
-   function Self return Task_Id renames Specific.Self;
-
-   ---------------------
-   -- Initialize_Lock --
-   ---------------------
-
-   --  Note: mutexes and cond_variables needed per-task basis are initialized
-   --  in Initialize_TCB and the Storage_Error is handled. Other mutexes (such
-   --  as RTS_Lock, Memory_Lock...) used in RTS is initialized before any
-   --  status change of RTS. Therefore raising Storage_Error in the following
-   --  routines should be able to be handled safely.
-
-   procedure Initialize_Lock
-     (Prio : System.Any_Priority;
-      L    : not null access Lock)
-   is
-      Attributes : aliased pthread_mutexattr_t;
-      Result     : Interfaces.C.int;
-
-   begin
-      Result := pthread_mutexattr_init (Attributes'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result = ENOMEM then
-         raise Storage_Error;
-      end if;
-
-      if Locking_Policy = 'C' then
-         L.Ceiling := Interfaces.C.int (Prio);
-      end if;
-
-      Result := pthread_mutex_init (L.L'Access, Attributes'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result = ENOMEM then
-         Result := pthread_mutexattr_destroy (Attributes'Access);
-         raise Storage_Error;
-      end if;
-
-      Result := pthread_mutexattr_destroy (Attributes'Access);
-      pragma Assert (Result = 0);
-   end Initialize_Lock;
-
-   procedure Initialize_Lock
-     (L     : not null access RTS_Lock;
-      Level : Lock_Level)
-   is
-      pragma Unreferenced (Level);
-
-      Attributes : aliased pthread_mutexattr_t;
-      Result     : Interfaces.C.int;
-
-   begin
-      Result := pthread_mutexattr_init (Attributes'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result = ENOMEM then
-         raise Storage_Error;
-      end if;
-
-      Result := pthread_mutex_init (L, Attributes'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result = ENOMEM then
-         Result := pthread_mutexattr_destroy (Attributes'Access);
-         raise Storage_Error;
-      end if;
-
-      Result := pthread_mutexattr_destroy (Attributes'Access);
-      pragma Assert (Result = 0);
-   end Initialize_Lock;
-
-   -------------------
-   -- Finalize_Lock --
-   -------------------
-
-   procedure Finalize_Lock (L : not null access Lock) is
-      Result : Interfaces.C.int;
-   begin
-      Result := pthread_mutex_destroy (L.L'Access);
-      pragma Assert (Result = 0);
-   end Finalize_Lock;
-
-   procedure Finalize_Lock (L : not null access RTS_Lock) is
-      Result : Interfaces.C.int;
-   begin
-      Result := pthread_mutex_destroy (L);
-      pragma Assert (Result = 0);
-   end Finalize_Lock;
-
-   ----------------
-   -- Write_Lock --
-   ----------------
-
-   procedure Write_Lock
-     (L                 : not null access Lock;
-      Ceiling_Violation : out Boolean)
-   is
-      Result         : Interfaces.C.int;
-      Self_ID        : Task_Id;
-      All_Tasks_Link : Task_Id;
-      Current_Prio   : System.Any_Priority;
-
-   begin
-      --  Perform ceiling checks only when this is the locking policy in use
-
-      if Locking_Policy = 'C' then
-         Self_ID := Self;
-         All_Tasks_Link := Self_ID.Common.All_Tasks_Link;
-         Current_Prio := Get_Priority (Self_ID);
-
-         --  If there is no other task, no need to check priorities
-
-         if All_Tasks_Link /= Null_Task
-           and then L.Ceiling < Interfaces.C.int (Current_Prio)
-         then
-            Ceiling_Violation := True;
-            return;
-         end if;
-      end if;
-
-      Result := pthread_mutex_lock (L.L'Access);
-      pragma Assert (Result = 0);
-
-      Ceiling_Violation := False;
-   end Write_Lock;
-
-   procedure Write_Lock
-     (L           : not null access RTS_Lock;
-      Global_Lock : Boolean := False)
-   is
-      Result : Interfaces.C.int;
-   begin
-      if not Single_Lock or else Global_Lock then
-         Result := pthread_mutex_lock (L);
-         pragma Assert (Result = 0);
-      end if;
-   end Write_Lock;
-
-   procedure Write_Lock (T : Task_Id) is
-      Result : Interfaces.C.int;
-   begin
-      if not Single_Lock then
-         Result := pthread_mutex_lock (T.Common.LL.L'Access);
-         pragma Assert (Result = 0);
-      end if;
-   end Write_Lock;
-
-   ---------------
-   -- Read_Lock --
-   ---------------
-
-   procedure Read_Lock
-     (L                 : not null access Lock;
-      Ceiling_Violation : out Boolean)
-   is
-   begin
-      Write_Lock (L, Ceiling_Violation);
-   end Read_Lock;
-
-   ------------
-   -- Unlock --
-   ------------
-
-   procedure Unlock (L : not null access Lock) is
-      Result : Interfaces.C.int;
-   begin
-      Result := pthread_mutex_unlock (L.L'Access);
-      pragma Assert (Result = 0);
-   end Unlock;
-
-   procedure Unlock
-     (L           : not null access RTS_Lock;
-      Global_Lock : Boolean := False)
-   is
-      Result : Interfaces.C.int;
-   begin
-      if not Single_Lock or else Global_Lock then
-         Result := pthread_mutex_unlock (L);
-         pragma Assert (Result = 0);
-      end if;
-   end Unlock;
-
-   procedure Unlock (T : Task_Id) is
-      Result : Interfaces.C.int;
-   begin
-      if not Single_Lock then
-         Result := pthread_mutex_unlock (T.Common.LL.L'Access);
-         pragma Assert (Result = 0);
-      end if;
-   end Unlock;
-
-   -----------------
-   -- Set_Ceiling --
-   -----------------
-
-   --  Dynamic priority ceilings are not supported by the underlying system
-
-   procedure Set_Ceiling
-     (L    : not null access Lock;
-      Prio : System.Any_Priority)
-   is
-      pragma Unreferenced (L, Prio);
-   begin
-      null;
-   end Set_Ceiling;
-
-   -----------
-   -- Sleep --
-   -----------
-
-   procedure Sleep
-     (Self_ID : Task_Id;
-      Reason  : System.Tasking.Task_States)
-   is
-      pragma Unreferenced (Reason);
-
-      Result : Interfaces.C.int;
-
-   begin
-      Result :=
-        pthread_cond_wait
-          (cond  => Self_ID.Common.LL.CV'Access,
-           mutex => (if Single_Lock
-                     then Single_RTS_Lock'Access
-                     else Self_ID.Common.LL.L'Access));
-
-      --  EINTR is not considered a failure
-
-      pragma Assert (Result = 0 or else Result = EINTR);
-   end Sleep;
-
-   -----------------
-   -- Timed_Sleep --
-   -----------------
-
-   --  This is for use within the run-time system, so abort is assumed to be
-   --  already deferred, and the caller should be holding its own ATCB lock.
-
-   procedure Timed_Sleep
-     (Self_ID  : Task_Id;
-      Time     : Duration;
-      Mode     : ST.Delay_Modes;
-      Reason   : System.Tasking.Task_States;
-      Timedout : out Boolean;
-      Yielded  : out Boolean)
-   is
-      pragma Unreferenced (Reason);
-
-      Base_Time  : constant Duration := Monotonic_Clock;
-      Check_Time : Duration := Base_Time;
-      Abs_Time   : Duration;
-      Request    : aliased timespec;
-      Result     : Interfaces.C.int;
-
-   begin
-      Timedout := True;
-      Yielded := False;
-
-      Abs_Time :=
-        (if Mode = Relative
-         then Duration'Min (Time, Max_Sensible_Delay) + Check_Time
-         else Duration'Min (Check_Time + Max_Sensible_Delay, Time));
-
-      if Abs_Time > Check_Time then
-         Request := To_Timespec (Abs_Time);
-
-         loop
-            exit when Self_ID.Pending_ATC_Level < Self_ID.ATC_Nesting_Level;
-
-            Result :=
-              pthread_cond_timedwait
-                (cond    => Self_ID.Common.LL.CV'Access,
-                 mutex   => (if Single_Lock
-                             then Single_RTS_Lock'Access
-                             else Self_ID.Common.LL.L'Access),
-                 abstime => Request'Access);
-
-            Check_Time := Monotonic_Clock;
-            exit when Abs_Time <= Check_Time or else Check_Time < Base_Time;
-
-            if Result = 0 or Result = EINTR then
-
-               --  Somebody may have called Wakeup for us
-
-               Timedout := False;
-               exit;
-            end if;
-
-            pragma Assert (Result = ETIMEDOUT);
-         end loop;
-      end if;
-   end Timed_Sleep;
-
-   -----------------
-   -- Timed_Delay --
-   -----------------
-
-   --  This is for use in implementing delay statements, so we assume the
-   --  caller is abort-deferred but is holding no locks.
-
-   procedure Timed_Delay
-     (Self_ID  : Task_Id;
-      Time     : Duration;
-      Mode     : ST.Delay_Modes)
-   is
-      Base_Time  : constant Duration := Monotonic_Clock;
-      Check_Time : Duration := Base_Time;
-      Abs_Time   : Duration;
-      Request    : aliased timespec;
-      Result     : Interfaces.C.int;
-
-   begin
-      if Single_Lock then
-         Lock_RTS;
-      end if;
-
-      Write_Lock (Self_ID);
-
-      Abs_Time :=
-        (if Mode = Relative
-         then Time + Check_Time
-         else Duration'Min (Check_Time + Max_Sensible_Delay, Time));
-
-      if Abs_Time > Check_Time then
-         Request := To_Timespec (Abs_Time);
-         Self_ID.Common.State := Delay_Sleep;
-
-         loop
-            exit when Self_ID.Pending_ATC_Level < Self_ID.ATC_Nesting_Level;
-
-            Result :=
-              pthread_cond_timedwait
-                (cond    => Self_ID.Common.LL.CV'Access,
-                 mutex   => (if Single_Lock
-                             then Single_RTS_Lock'Access
-                             else Self_ID.Common.LL.L'Access),
-                 abstime => Request'Access);
-
-            Check_Time := Monotonic_Clock;
-            exit when Abs_Time <= Check_Time or else Check_Time < Base_Time;
-
-            pragma Assert (Result = 0         or else
-                           Result = ETIMEDOUT or else
-                           Result = EINTR);
-         end loop;
-
-         Self_ID.Common.State := Runnable;
-      end if;
-
-      Unlock (Self_ID);
-
-      if Single_Lock then
-         Unlock_RTS;
-      end if;
-
-      Yield;
-   end Timed_Delay;
-
-   ---------------------
-   -- Monotonic_Clock --
-   ---------------------
-
-   function Monotonic_Clock return Duration is
-      TS     : aliased timespec;
-      Result : Interfaces.C.int;
-   begin
-      Result := clock_gettime (OSC.CLOCK_RT_Ada, TS'Unchecked_Access);
-      pragma Assert (Result = 0);
-      return To_Duration (TS);
-   end Monotonic_Clock;
-
-   -------------------
-   -- RT_Resolution --
-   -------------------
-
-   function RT_Resolution return Duration is
-   begin
-      --  Returned value must be an integral multiple of Duration'Small (1 ns)
-      --  The following is the best approximation of 1/1024. The clock on the
-      --  DEC Alpha ticks at 1024 Hz.
-
-      return 0.000_976_563;
-   end RT_Resolution;
-
-   ------------
-   -- Wakeup --
-   ------------
-
-   procedure Wakeup (T : Task_Id; Reason : System.Tasking.Task_States) is
-      pragma Unreferenced (Reason);
-      Result : Interfaces.C.int;
-   begin
-      Result := pthread_cond_signal (T.Common.LL.CV'Access);
-      pragma Assert (Result = 0);
-   end Wakeup;
-
-   -----------
-   -- Yield --
-   -----------
-
-   procedure Yield (Do_Yield : Boolean := True) is
-      Result : Interfaces.C.int;
-      pragma Unreferenced (Result);
-   begin
-      if Do_Yield then
-         Result := sched_yield;
-      end if;
-   end Yield;
-
-   ------------------
-   -- Set_Priority --
-   ------------------
-
-   procedure Set_Priority
-     (T                   : Task_Id;
-      Prio                : System.Any_Priority;
-      Loss_Of_Inheritance : Boolean := False)
-   is
-      pragma Unreferenced (Loss_Of_Inheritance);
-
-      Result : Interfaces.C.int;
-      Param  : aliased struct_sched_param;
-
-      Priority_Specific_Policy : constant Character := Get_Policy (Prio);
-      --  Upper case first character of the policy name corresponding to the
-      --  task as set by a Priority_Specific_Dispatching pragma.
-
-   begin
-      T.Common.Current_Priority := Prio;
-      Param.sched_priority  := Interfaces.C.int (Underlying_Priorities (Prio));
-
-      if Dispatching_Policy = 'R'
-        or else Priority_Specific_Policy = 'R'
-        or else Time_Slice_Val > 0
-      then
-         Result :=
-           pthread_setschedparam
-             (T.Common.LL.Thread, SCHED_RR, Param'Access);
-
-      elsif Dispatching_Policy = 'F'
-        or else Priority_Specific_Policy = 'F'
-        or else Time_Slice_Val = 0
-      then
-         Result :=
-           pthread_setschedparam
-             (T.Common.LL.Thread, SCHED_FIFO, Param'Access);
-
-      else
-         Result :=
-           pthread_setschedparam
-             (T.Common.LL.Thread, SCHED_OTHER, Param'Access);
-      end if;
-
-      pragma Assert (Result = 0);
-   end Set_Priority;
-
-   ------------------
-   -- Get_Priority --
-   ------------------
-
-   function Get_Priority (T : Task_Id) return System.Any_Priority is
-   begin
-      return T.Common.Current_Priority;
-   end Get_Priority;
-
-   ----------------
-   -- Enter_Task --
-   ----------------
-
-   procedure Enter_Task (Self_ID : Task_Id) is
-   begin
-      Hide_Unhide_Yellow_Zone (Hide => True);
-      Self_ID.Common.LL.Thread := pthread_self;
-
-      Specific.Set (Self_ID);
-   end Enter_Task;
-
-   -------------------
-   -- Is_Valid_Task --
-   -------------------
-
-   function Is_Valid_Task return Boolean renames Specific.Is_Valid_Task;
-
-   -----------------------------
-   -- Register_Foreign_Thread --
-   -----------------------------
-
-   function Register_Foreign_Thread return Task_Id is
-   begin
-      if Is_Valid_Task then
-         return Self;
-      else
-         return Register_Foreign_Thread (pthread_self);
-      end if;
-   end Register_Foreign_Thread;
-
-   --------------------
-   -- Initialize_TCB --
-   --------------------
-
-   procedure Initialize_TCB (Self_ID : Task_Id; Succeeded : out Boolean) is
-      Mutex_Attr : aliased pthread_mutexattr_t;
-      Result     : Interfaces.C.int;
-      Cond_Attr  : aliased pthread_condattr_t;
-
-   begin
-      if not Single_Lock then
-         Result := pthread_mutexattr_init (Mutex_Attr'Access);
-         pragma Assert (Result = 0 or else Result = ENOMEM);
-
-         if Result = 0 then
-            Result :=
-              pthread_mutex_init
-                (Self_ID.Common.LL.L'Access, Mutex_Attr'Access);
-            pragma Assert (Result = 0 or else Result = ENOMEM);
-         end if;
-
-         if Result /= 0 then
-            Succeeded := False;
-            return;
-         end if;
-
-         Result := pthread_mutexattr_destroy (Mutex_Attr'Access);
-         pragma Assert (Result = 0);
-      end if;
-
-      Result := pthread_condattr_init (Cond_Attr'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result = 0 then
-         Result :=
-           pthread_cond_init
-             (Self_ID.Common.LL.CV'Access, Cond_Attr'Access);
-         pragma Assert (Result = 0 or else Result = ENOMEM);
-      end if;
-
-      if Result = 0 then
-         Succeeded := True;
-      else
-         if not Single_Lock then
-            Result := pthread_mutex_destroy (Self_ID.Common.LL.L'Access);
-            pragma Assert (Result = 0);
-         end if;
-
-         Succeeded := False;
-      end if;
-
-      Result := pthread_condattr_destroy (Cond_Attr'Access);
-      pragma Assert (Result = 0);
-   end Initialize_TCB;
-
-   -----------------
-   -- Create_Task --
-   -----------------
-
-   procedure Create_Task
-     (T          : Task_Id;
-      Wrapper    : System.Address;
-      Stack_Size : System.Parameters.Size_Type;
-      Priority   : System.Any_Priority;
-      Succeeded  : out Boolean)
-   is
-      Attributes          : aliased pthread_attr_t;
-      Adjusted_Stack_Size : Interfaces.C.size_t;
-      Result              : Interfaces.C.int;
-      Param               : aliased System.OS_Interface.struct_sched_param;
-
-      Priority_Specific_Policy : constant Character := Get_Policy (Priority);
-      --  Upper case first character of the policy name corresponding to the
-      --  task as set by a Priority_Specific_Dispatching pragma.
-
-      use System.Task_Info;
-
-   begin
-      --  Account for the Yellow Zone (2 pages) and the guard page right above.
-      --  See Hide_Unhide_Yellow_Zone for the rationale.
-
-      Adjusted_Stack_Size :=
-        Interfaces.C.size_t (Stack_Size) + 3 * Get_Page_Size;
-
-      Result := pthread_attr_init (Attributes'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result /= 0 then
-         Succeeded := False;
-         return;
-      end if;
-
-      Result :=
-        pthread_attr_setdetachstate
-          (Attributes'Access, PTHREAD_CREATE_DETACHED);
-      pragma Assert (Result = 0);
-
-      Result :=
-        pthread_attr_setstacksize
-          (Attributes'Access, Adjusted_Stack_Size);
-      pragma Assert (Result = 0);
-
-      Param.sched_priority :=
-        Interfaces.C.int (Underlying_Priorities (Priority));
-      Result :=
-        pthread_attr_setschedparam
-          (Attributes'Access, Param'Access);
-      pragma Assert (Result = 0);
-
-      if Dispatching_Policy = 'R'
-        or else Priority_Specific_Policy = 'R'
-        or else Time_Slice_Val > 0
-      then
-         Result :=
-           pthread_attr_setschedpolicy
-             (Attributes'Access, System.OS_Interface.SCHED_RR);
-
-      elsif Dispatching_Policy = 'F'
-        or else Priority_Specific_Policy = 'F'
-        or else Time_Slice_Val = 0
-      then
-         Result :=
-           pthread_attr_setschedpolicy
-             (Attributes'Access, System.OS_Interface.SCHED_FIFO);
-
-      else
-         Result :=
-           pthread_attr_setschedpolicy
-             (Attributes'Access, System.OS_Interface.SCHED_OTHER);
-      end if;
-
-      pragma Assert (Result = 0);
-
-      --  Set the scheduling parameters explicitly, since this is the only way
-      --  to force the OS to take e.g. the sched policy and scope attributes
-      --  into account.
-
-      Result :=
-        pthread_attr_setinheritsched
-          (Attributes'Access, PTHREAD_EXPLICIT_SCHED);
-      pragma Assert (Result = 0);
-
-      T.Common.Current_Priority := Priority;
-
-      if T.Common.Task_Info /= null then
-         case T.Common.Task_Info.Contention_Scope is
-            when System.Task_Info.Process_Scope =>
-               Result :=
-                 pthread_attr_setscope
-                   (Attributes'Access, PTHREAD_SCOPE_PROCESS);
-
-            when System.Task_Info.System_Scope =>
-               Result :=
-                 pthread_attr_setscope
-                   (Attributes'Access, PTHREAD_SCOPE_SYSTEM);
-
-            when System.Task_Info.Default_Scope =>
-               Result := 0;
-         end case;
-
-         pragma Assert (Result = 0);
-      end if;
-
-      --  Since the initial signal mask of a thread is inherited from the
-      --  creator, and the Environment task has all its signals masked, we
-      --  do not need to manipulate caller's signal mask at this point.
-      --  All tasks in RTS will have All_Tasks_Mask initially.
-
-      --  Note: the use of Unrestricted_Access in the following call is needed
-      --  because otherwise we have an error of getting a access-to-volatile
-      --  value which points to a non-volatile object. But in this case it is
-      --  safe to do this, since we know we have no problems with aliasing and
-      --  Unrestricted_Access bypasses this check.
-
-      Result :=
-        pthread_create
-          (T.Common.LL.Thread'Unrestricted_Access,
-           Attributes'Access,
-           Thread_Body_Access (Wrapper),
-           To_Address (T));
-      pragma Assert (Result = 0 or else Result = EAGAIN);
-
-      Succeeded := Result = 0;
-
-      Result := pthread_attr_destroy (Attributes'Access);
-      pragma Assert (Result = 0);
-
-      if Succeeded and then T.Common.Task_Info /= null then
-
-         --  ??? We're using a process-wide function to implement a task
-         --  specific characteristic.
-
-         if T.Common.Task_Info.Bind_To_Cpu_Number = 0 then
-            Result := bind_to_cpu (Curpid, 0);
-
-         elsif T.Common.Task_Info.Bind_To_Cpu_Number > 0 then
-            Result :=
-              bind_to_cpu
-                (Curpid,
-                 Interfaces.C.unsigned_long (
-                   Interfaces.Shift_Left
-                     (Interfaces.Unsigned_64'(1),
-                      T.Common.Task_Info.Bind_To_Cpu_Number - 1)));
-            pragma Assert (Result = 0);
-         end if;
-      end if;
-   end Create_Task;
-
-   ------------------
-   -- Finalize_TCB --
-   ------------------
-
-   procedure Finalize_TCB (T : Task_Id) is
-      Result : Interfaces.C.int;
-
-   begin
-      if not Single_Lock then
-         Result := pthread_mutex_destroy (T.Common.LL.L'Access);
-         pragma Assert (Result = 0);
-      end if;
-
-      Result := pthread_cond_destroy (T.Common.LL.CV'Access);
-      pragma Assert (Result = 0);
-
-      if T.Known_Tasks_Index /= -1 then
-         Known_Tasks (T.Known_Tasks_Index) := null;
-      end if;
-
-      ATCB_Allocation.Free_ATCB (T);
-   end Finalize_TCB;
-
-   ---------------
-   -- Exit_Task --
-   ---------------
-
-   procedure Exit_Task is
-   begin
-      Specific.Set (null);
-      Hide_Unhide_Yellow_Zone (Hide => False);
-   end Exit_Task;
-
-   ----------------
-   -- Abort_Task --
-   ----------------
-
-   procedure Abort_Task (T : Task_Id) is
-      Result : Interfaces.C.int;
-   begin
-      if Abort_Handler_Installed then
-         Result := pthread_kill (T.Common.LL.Thread,
-           Signal (System.Interrupt_Management.Abort_Task_Interrupt));
-         pragma Assert (Result = 0);
-      end if;
-   end Abort_Task;
-
-   ----------------
-   -- Initialize --
-   ----------------
-
-   procedure Initialize (S : in out Suspension_Object) is
-      Mutex_Attr : aliased pthread_mutexattr_t;
-      Cond_Attr  : aliased pthread_condattr_t;
-      Result     : Interfaces.C.int;
-
-   begin
-      --  Initialize internal state (always to False (RM D.10(6)))
-
-      S.State := False;
-      S.Waiting := False;
-
-      --  Initialize internal mutex
-
-      Result := pthread_mutexattr_init (Mutex_Attr'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result = ENOMEM then
-         raise Storage_Error;
-      end if;
-
-      Result := pthread_mutex_init (S.L'Access, Mutex_Attr'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result = ENOMEM then
-         Result := pthread_mutexattr_destroy (Mutex_Attr'Access);
-         raise Storage_Error;
-      end if;
-
-      Result := pthread_mutexattr_destroy (Mutex_Attr'Access);
-      pragma Assert (Result = 0);
-
-      --  Initialize internal condition variable
-
-      Result := pthread_condattr_init (Cond_Attr'Access);
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      Result := pthread_cond_init (S.CV'Access, Cond_Attr'Access);
-
-      pragma Assert (Result = 0 or else Result = ENOMEM);
-
-      if Result /= 0 then
-         Result := pthread_mutex_destroy (S.L'Access);
-         pragma Assert (Result = 0);
-
-         if Result = ENOMEM then
-            raise Storage_Error;
-         end if;
-      end if;
-   end Initialize;
-
-   --------------
-   -- Finalize --
-   --------------
-
-   procedure Finalize (S : in out Suspension_Object) is
-      Result  : Interfaces.C.int;
-
-   begin
-      --  Destroy internal mutex
-
-      Result := pthread_mutex_destroy (S.L'Access);
-      pragma Assert (Result = 0);
-
-      --  Destroy internal condition variable
-
-      Result := pthread_cond_destroy (S.CV'Access);
-      pragma Assert (Result = 0);
-   end Finalize;
-
-   -------------------
-   -- Current_State --
-   -------------------
-
-   function Current_State (S : Suspension_Object) return Boolean is
-   begin
-      --  We do not want to use lock on this read operation. State is marked
-      --  as Atomic so that we ensure that the value retrieved is correct.
-
-      return S.State;
-   end Current_State;
-
-   ---------------
-   -- Set_False --
-   ---------------
-
-   procedure Set_False (S : in out Suspension_Object) is
-      Result  : Interfaces.C.int;
-
-   begin
-      SSL.Abort_Defer.all;
-
-      Result := pthread_mutex_lock (S.L'Access);
-      pragma Assert (Result = 0);
-
-      S.State := False;
-
-      Result := pthread_mutex_unlock (S.L'Access);
-      pragma Assert (Result = 0);
-
-      SSL.Abort_Undefer.all;
-   end Set_False;
-
-   --------------
-   -- Set_True --
-   --------------
-
-   procedure Set_True (S : in out Suspension_Object) is
-      Result : Interfaces.C.int;
-
-   begin
-      SSL.Abort_Defer.all;
-
-      Result := pthread_mutex_lock (S.L'Access);
-      pragma Assert (Result = 0);
-
-      --  If there is already a task waiting on this suspension object then we
-      --  resume it, leaving the state of the suspension object to False, as
-      --  specified in (RM D.10(9)). Otherwise, leave the state set to True.
-
-      if S.Waiting then
-         S.Waiting := False;
-         S.State := False;
-
-         Result := pthread_cond_signal (S.CV'Access);
-         pragma Assert (Result = 0);
-
-      else
-         S.State := True;
-      end if;
-
-      Result := pthread_mutex_unlock (S.L'Access);
-      pragma Assert (Result = 0);
-
-      SSL.Abort_Undefer.all;
-   end Set_True;
-
-   ------------------------
-   -- Suspend_Until_True --
-   ------------------------
-
-   procedure Suspend_Until_True (S : in out Suspension_Object) is
-      Result : Interfaces.C.int;
-
-   begin
-      SSL.Abort_Defer.all;
-
-      Result := pthread_mutex_lock (S.L'Access);
-      pragma Assert (Result = 0);
-
-      if S.Waiting then
-
-         --  Program_Error must be raised upon calling Suspend_Until_True
-         --  if another task is already waiting on that suspension object
-         --  (AM D.10(10)).
-
-         Result := pthread_mutex_unlock (S.L'Access);
-         pragma Assert (Result = 0);
-
-         SSL.Abort_Undefer.all;
-
-         raise Program_Error;
-
-      else
-         --  Suspend the task if the state is False. Otherwise, the task
-         --  continues its execution, and the state of the suspension object
-         --  is set to False (RM D.10(9)).
-
-         if S.State then
-            S.State := False;
-         else
-            S.Waiting := True;
-
-            loop
-               --  Loop in case pthread_cond_wait returns earlier than expected
-               --  (e.g. in case of EINTR caused by a signal).
-
-               Result := pthread_cond_wait (S.CV'Access, S.L'Access);
-               pragma Assert (Result = 0 or else Result = EINTR);
-
-               exit when not S.Waiting;
-            end loop;
-         end if;
-
-         Result := pthread_mutex_unlock (S.L'Access);
-         pragma Assert (Result = 0);
-
-         SSL.Abort_Undefer.all;
-      end if;
-   end Suspend_Until_True;
-
-   ----------------
-   -- Check_Exit --
-   ----------------
-
-   --  Dummy version
-
-   function Check_Exit (Self_ID : ST.Task_Id) return Boolean is
-      pragma Unreferenced (Self_ID);
-   begin
-      return True;
-   end Check_Exit;
-
-   --------------------
-   -- Check_No_Locks --
-   --------------------
-
-   function Check_No_Locks (Self_ID : ST.Task_Id) return Boolean is
-      pragma Unreferenced (Self_ID);
-   begin
-      return True;
-   end Check_No_Locks;
-
-   ----------------------
-   -- Environment_Task --
-   ----------------------
-
-   function Environment_Task return Task_Id is
-   begin
-      return Environment_Task_Id;
-   end Environment_Task;
-
-   --------------
-   -- Lock_RTS --
-   --------------
-
-   procedure Lock_RTS is
-   begin
-      Write_Lock (Single_RTS_Lock'Access, Global_Lock => True);
-   end Lock_RTS;
-
-   ----------------
-   -- Unlock_RTS --
-   ----------------
-
-   procedure Unlock_RTS is
-   begin
-      Unlock (Single_RTS_Lock'Access, Global_Lock => True);
-   end Unlock_RTS;
-
-   ------------------
-   -- Suspend_Task --
-   ------------------
-
-   function Suspend_Task
-     (T           : ST.Task_Id;
-      Thread_Self : Thread_Id) return Boolean
-   is
-      pragma Unreferenced (T, Thread_Self);
-   begin
-      return False;
-   end Suspend_Task;
-
-   -----------------
-   -- Resume_Task --
-   -----------------
-
-   function Resume_Task
-     (T           : ST.Task_Id;
-      Thread_Self : Thread_Id) return Boolean
-   is
-      pragma Unreferenced (T, Thread_Self);
-   begin
-      return False;
-   end Resume_Task;
-
-   --------------------
-   -- Stop_All_Tasks --
-   --------------------
-
-   procedure Stop_All_Tasks is
-   begin
-      null;
-   end Stop_All_Tasks;
-
-   ---------------
-   -- Stop_Task --
-   ---------------
-
-   function Stop_Task (T : ST.Task_Id) return Boolean is
-      pragma Unreferenced (T);
-   begin
-      return False;
-   end Stop_Task;
-
-   -------------------
-   -- Continue_Task --
-   -------------------
-
-   function Continue_Task (T : ST.Task_Id) return Boolean is
-      pragma Unreferenced (T);
-   begin
-      return False;
-   end Continue_Task;
-
-   ----------------
-   -- Initialize --
-   ----------------
-
-   procedure Initialize (Environment_Task : Task_Id) is
-      act     : aliased struct_sigaction;
-      old_act : aliased struct_sigaction;
-      Tmp_Set : aliased sigset_t;
-      Result  : Interfaces.C.int;
-
-      function State
-        (Int : System.Interrupt_Management.Interrupt_ID) return Character;
-      pragma Import (C, State, "__gnat_get_interrupt_state");
-      --  Get interrupt state. Defined in a-init.c. The input argument is
-      --  the interrupt number, and the result is one of the following:
-
-      Default : constant Character := 's';
-      --    'n'   this interrupt not set by any Interrupt_State pragma
-      --    'u'   Interrupt_State pragma set state to User
-      --    'r'   Interrupt_State pragma set state to Runtime
-      --    's'   Interrupt_State pragma set state to System (use "default"
-      --           system handler)
-
-   begin
-      Environment_Task_Id := Environment_Task;
-
-      Interrupt_Management.Initialize;
-
-      --  Prepare the set of signals that should unblocked in all tasks
-
-      Result := sigemptyset (Unblocked_Signal_Mask'Access);
-      pragma Assert (Result = 0);
-
-      for J in Interrupt_Management.Interrupt_ID loop
-         if System.Interrupt_Management.Keep_Unmasked (J) then
-            Result := sigaddset (Unblocked_Signal_Mask'Access, Signal (J));
-            pragma Assert (Result = 0);
-         end if;
-      end loop;
-
-      Curpid := getpid;
-
-      --  Initialize the lock used to synchronize chain of all ATCBs
-
-      Initialize_Lock (Single_RTS_Lock'Access, RTS_Lock_Level);
-
-      Specific.Initialize (Environment_Task);
-
-      --  Make environment task known here because it doesn't go through
-      --  Activate_Tasks, which does it for all other tasks.
-
-      Known_Tasks (Known_Tasks'First) := Environment_Task;
-      Environment_Task.Known_Tasks_Index := Known_Tasks'First;
-
-      Enter_Task (Environment_Task);
-
-      if State
-          (System.Interrupt_Management.Abort_Task_Interrupt) /= Default
-      then
-         act.sa_flags := 0;
-         act.sa_handler := Abort_Handler'Address;
-
-         Result := sigemptyset (Tmp_Set'Access);
-         pragma Assert (Result = 0);
-         act.sa_mask := Tmp_Set;
-
-         Result :=
-           sigaction
-             (Signal (System.Interrupt_Management.Abort_Task_Interrupt),
-              act'Unchecked_Access,
-              old_act'Unchecked_Access);
-         pragma Assert (Result = 0);
-         Abort_Handler_Installed := True;
-      end if;
-   end Initialize;
-
-   -----------------------
-   -- Set_Task_Affinity --
-   -----------------------
-
-   procedure Set_Task_Affinity (T : ST.Task_Id) is
-      pragma Unreferenced (T);
-
-   begin
-      --  Setting task affinity is not supported by the underlying system
-
-      null;
-   end Set_Task_Affinity;
-end System.Task_Primitives.Operations;
diff --git a/gcc/ada/s-tasinf-tru64.ads b/gcc/ada/s-tasinf-tru64.ads
deleted file mode 100644 (file)
index af2832d..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                         GNAT COMPILER COMPONENTS                         --
---                                                                          --
---                     S Y S T E M . T A S K _ I N F O                      --
---                                                                          --
---                                 S p e c                                  --
---                           (Compiler Interface)                           --
---                                                                          --
---         Copyright (C) 1998-2009, Free Software Foundation, Inc.          --
---                                                                          --
--- GNAT is free software;  you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNAT was originally developed  by the GNAT team at  New York University. --
--- Extensive contributions were provided by Ada Core Technologies Inc.      --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This package contains the definitions and routines associated with the
---  implementation and use of the Task_Info pragma. It is specialized
---  appropriately for targets that make use of this pragma.
-
---  Note: the compiler generates direct calls to this interface, via Rtsfind.
---  Any changes to this interface may require corresponding compiler changes.
-
---  This unit may be used directly from an application program by providing
---  an appropriate WITH, and the interface can be expected to remain stable.
-
---  This is a DEC Unix 4.0d version of this package
-
-package System.Task_Info is
-   pragma Preelaborate;
-   pragma Elaborate_Body;
-   --  To ensure that a body is allowed
-
-   -----------------------------------------
-   -- Implementation of Task_Info Feature --
-   -----------------------------------------
-
-   --  The Task_Info pragma:
-
-   --    pragma Task_Info (EXPRESSION);
-
-   --  allows the specification on a task by task basis of a value of type
-   --  System.Task_Info.Task_Info_Type to be passed to a task when it is
-   --  created. The specification of this type, and the effect on the task
-   --  that is created is target dependent.
-
-   --  The Task_Info pragma appears within a task definition (compare the
-   --  definition and implementation of pragma Priority). If no such pragma
-   --  appears, then the value Unspecified_Task_Info is passed. If a pragma
-   --  is present, then it supplies an alternative value. If the argument of
-   --  the pragma is a discriminant reference, then the value can be set on
-   --  a task by task basis by supplying the appropriate discriminant value.
-
-   --  Note that this means that the type used for Task_Info_Type must be
-   --  suitable for use as a discriminant (i.e. a scalar or access type).
-
-   ------------------
-   -- Declarations --
-   ------------------
-
-   type Scope_Type is
-     (Process_Scope,
-      --  Contend only with threads in same process
-
-      System_Scope,
-      --  Contend with all threads on same CPU
-
-      Default_Scope);
-
-   type Thread_Attributes is record
-      Bind_To_Cpu_Number : Integer;
-      --   -1: Do nothing
-      --    0: Unbind
-      --  1-N: Bind all unbound threads to this CPU
-
-      Contention_Scope   : Scope_Type;
-   end record;
-
-   type Task_Info_Type is access all Thread_Attributes;
-   --  Type used for passing information to task create call, using the
-   --  Task_Info pragma. This type may be specialized for individual
-   --  implementations, but it must be a type that can be used as a
-   --  discriminant (i.e. a scalar or access type).
-
-   Unspecified_Thread_Attribute : aliased Thread_Attributes :=
-     Thread_Attributes'(-1, Default_Scope);
-
-   Unspecified_Task_Info : constant Task_Info_Type :=
-     Unspecified_Thread_Attribute'Access;
-   --  Value passed to task in the absence of a Task_Info pragma
-   --  Don't call new here because the tasking run time has not been
-   --  elaborated yet, so calling Task_Lock is unsafe.
-
-end System.Task_Info;
diff --git a/gcc/ada/s-taspri-tru64.ads b/gcc/ada/s-taspri-tru64.ads
deleted file mode 100644 (file)
index 41c9aea..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                 GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS                 --
---                                                                          --
---                 S Y S T E M . T A S K _ P R I M I T I V E S              --
---                                                                          --
---                                  S p e c                                 --
---                                                                          --
---          Copyright (C) 1991-2011, Free Software Foundation, Inc.         --
---                                                                          --
--- GNARL is free software; you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNARL was developed by the GNARL team at Florida State University.       --
--- Extensive contributions were provided by Ada Core Technologies, Inc.     --
---                                                                          --
-------------------------------------------------------------------------------
-
---  This is the DEC Unix 4.0 version of this package
-
---  This package provides low-level support for most tasking features
-
-pragma Polling (Off);
---  Turn off polling, we do not want ATC polling to take place during tasking
---  operations. It causes infinite loops and other problems.
-
-with Interfaces.C;
-
-with System.OS_Interface;
-
-package System.Task_Primitives is
-   pragma Preelaborate;
-
-   type Lock is limited private;
-   --  Should be used for implementation of protected objects
-
-   type RTS_Lock is limited private;
-   --  Should be used inside the runtime system. The difference between Lock
-   --  and the RTS_Lock is that the later one serves only as a semaphore so
-   --  that do not check for ceiling violations.
-
-   type Suspension_Object is limited private;
-   --  Should be used for the implementation of Ada.Synchronous_Task_Control
-
-   type Task_Body_Access is access procedure;
-   --  Pointer to the task body's entry point (or possibly a wrapper
-   --  declared local to the GNARL).
-
-   type Private_Data is limited private;
-   --  Any information that the GNULLI needs maintained on a per-task basis.
-   --  A component of this type is guaranteed to be included
-
-   subtype Task_Address is System.Address;
-   --  In some versions of Task_Primitives, notably for VMS, Task_Address is
-   --  the short version of address defined in System.Aux_DEC. To avoid
-   --  dragging Aux_DEC into tasking packages a tasking specific subtype is
-   --  defined here.
-
-   Task_Address_Size : constant := Standard'Address_Size;
-   --  The size of Task_Address
-
-   Alternate_Stack_Size : constant := 0;
-   --  No alternate signal stack is used on this platform
-
-private
-
-   type Lock is record
-      L       : aliased System.OS_Interface.pthread_mutex_t;
-      Ceiling : Interfaces.C.int;
-   end record;
-
-   type RTS_Lock is new System.OS_Interface.pthread_mutex_t;
-
-   type Suspension_Object is record
-      State : Boolean;
-      pragma Atomic (State);
-      --  Boolean that indicates whether the object is open. This field is
-      --  marked Atomic to ensure that we can read its value without locking
-      --  the access to the Suspension_Object.
-
-      Waiting : Boolean;
-      --  Flag showing if there is a task already suspended on this object
-
-      L : aliased System.OS_Interface.pthread_mutex_t;
-      --  Protection for ensuring mutual exclusion on the Suspension_Object
-
-      CV : aliased System.OS_Interface.pthread_cond_t;
-      --  Condition variable used to queue threads until the is signaled
-   end record;
-
-   type Private_Data is record
-      Thread : aliased System.OS_Interface.pthread_t;
-      pragma Atomic (Thread);
-      --  Thread field may be updated by two different threads of control.
-      --  (See, Enter_Task and Create_Task in s-taprop.adb). They put the same
-      --  value (thr_self value). We do not want to use lock on those
-      --  operations and the only thing we have to make sure is that they are
-      --  updated in atomic fashion.
-
-      CV : aliased System.OS_Interface.pthread_cond_t;
-
-      L : aliased RTS_Lock;
-      --  Protection for all components is lock L
-   end record;
-
-end System.Task_Primitives;
index bfe7bce3278601194b2908c144a570063e3e5c26..6d77a76ea4928de78e7f68aaea0ef7d19fd8cddd 100644 (file)
@@ -252,7 +252,7 @@ __gnat_ttyname (int filedes)
 #endif
 \f
 #if defined (linux) || defined (sun) || defined (sgi) \
-  || (defined (__osf__) && ! defined (__alpha_vxworks)) || defined (WINNT) \
+  || ! defined (__alpha_vxworks) || defined (WINNT) \
   || defined (__MACHTEN__) || defined (__hpux__) || defined (_AIX) \
   || (defined (__svr4__) && defined (i386)) || defined (__Lynx__) \
   || defined (__CYGWIN__) || defined (__FreeBSD__) || defined (__OpenBSD__) \
@@ -310,7 +310,7 @@ getc_immediate_common (FILE *stream,
                        int waiting)
 {
 #if defined (linux) || defined (sun) || defined (sgi) \
-    || (defined (__osf__) && ! defined (__alpha_vxworks)) \
+    || ! defined (__alpha_vxworks) \
     || defined (__CYGWIN32__) || defined (__MACHTEN__) || defined (__hpux__) \
     || defined (_AIX) || (defined (__svr4__) && defined (i386)) \
     || defined (__Lynx__) || defined (__FreeBSD__) || defined (__OpenBSD__) \
@@ -331,7 +331,7 @@ getc_immediate_common (FILE *stream,
       termios_rec.c_lflag = termios_rec.c_lflag & ~ICANON & ~ECHO;
 
 #if defined(linux) || defined (sun) || defined (sgi) \
-    || defined (__osf__) || defined (__MACHTEN__) || defined (__hpux__) \
+    || defined (__MACHTEN__) || defined (__hpux__) \
     || defined (_AIX) || (defined (__svr4__) && defined (i386)) \
     || defined (__Lynx__) || defined (__FreeBSD__) || defined (__OpenBSD__) \
     || defined (__GLIBC__) || defined (__APPLE__)
@@ -842,11 +842,11 @@ __gnat_localtime_tzoff (const time_t *timer, const int *is_historic, long *off)
   (*Unlock_Task) ();
 }
 
-/* Darwin, Free BSD, Linux, Tru64, where component tm_gmtoff is present in
+/* Darwin, Free BSD, Linux, where component tm_gmtoff is present in
    struct tm */
 
 #elif defined (__APPLE__) || defined (__FreeBSD__) || defined (linux) ||\
-     (defined (__alpha__) && defined (__osf__)) || defined (__GLIBC__)
+     defined (__GLIBC__)
 {
   localtime_r (timer, &tp);
   *off = tp.tm_gmtoff;
diff --git a/gcc/ada/system-tru64.ads b/gcc/ada/system-tru64.ads
deleted file mode 100644 (file)
index 43facc7..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                        GNAT RUN-TIME COMPONENTS                          --
---                                                                          --
---                               S Y S T E M                                --
---                                                                          --
---                                 S p e c                                  --
---                           (DEC Unix Version)                             --
---                                                                          --
---          Copyright (C) 1992-2011, Free Software Foundation, Inc.         --
---                                                                          --
--- This specification is derived from the Ada Reference Manual for use with --
--- GNAT. The copyright notice above, and the license provisions that follow --
--- apply solely to the  contents of the part following the private keyword. --
---                                                                          --
--- GNAT is free software;  you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 3,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
---                                                                          --
--- As a special exception under Section 7 of GPL version 3, you are granted --
--- additional permissions described in the GCC Runtime Library Exception,   --
--- version 3.1, as published by the Free Software Foundation.               --
---                                                                          --
--- You should have received a copy of the GNU General Public License and    --
--- a copy of the GCC Runtime Library Exception along with this program;     --
--- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
--- <http://www.gnu.org/licenses/>.                                          --
---                                                                          --
--- GNAT was originally developed  by the GNAT team at  New York University. --
--- Extensive contributions were provided by Ada Core Technologies Inc.      --
---                                                                          --
-------------------------------------------------------------------------------
-
-package System is
-   pragma Pure;
-   --  Note that we take advantage of the implementation permission to make
-   --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
-   --  2005, this is Pure in any case (AI-362).
-
-   type Name is (SYSTEM_NAME_GNAT);
-   System_Name : constant Name := SYSTEM_NAME_GNAT;
-
-   --  System-Dependent Named Numbers
-
-   Min_Int               : constant := Long_Long_Integer'First;
-   Max_Int               : constant := Long_Long_Integer'Last;
-
-   Max_Binary_Modulus    : constant := 2 ** Long_Long_Integer'Size;
-   Max_Nonbinary_Modulus : constant := 2 ** Integer'Size - 1;
-
-   Max_Base_Digits       : constant := Long_Long_Float'Digits;
-   Max_Digits            : constant := Long_Long_Float'Digits;
-
-   Max_Mantissa          : constant := 63;
-   Fine_Delta            : constant := 2.0 ** (-Max_Mantissa);
-
-   Tick                  : constant := 1.0 / 1024.0;
-
-   --  Storage-related Declarations
-
-   type Address is private;
-   pragma Preelaborable_Initialization (Address);
-   Null_Address : constant Address;
-
-   Storage_Unit : constant := 8;
-   Word_Size    : constant := 64;
-   Memory_Size  : constant := 2 ** 64;
-
-   --  Address comparison
-
-   function "<"  (Left, Right : Address) return Boolean;
-   function "<=" (Left, Right : Address) return Boolean;
-   function ">"  (Left, Right : Address) return Boolean;
-   function ">=" (Left, Right : Address) return Boolean;
-   function "="  (Left, Right : Address) return Boolean;
-
-   pragma Import (Intrinsic, "<");
-   pragma Import (Intrinsic, "<=");
-   pragma Import (Intrinsic, ">");
-   pragma Import (Intrinsic, ">=");
-   pragma Import (Intrinsic, "=");
-
-   --  Other System-Dependent Declarations
-
-   type Bit_Order is (High_Order_First, Low_Order_First);
-   Default_Bit_Order : constant Bit_Order := Low_Order_First;
-   pragma Warnings (Off, Default_Bit_Order); -- kill constant condition warning
-
-   --  Priority-related Declarations (RM D.1)
-
-   Max_Priority           : constant Positive := 60;
-   Max_Interrupt_Priority : constant Positive := 63;
-
-   subtype Any_Priority       is Integer      range  0 .. 63;
-   subtype Priority           is Any_Priority range  0 .. 60;
-   subtype Interrupt_Priority is Any_Priority range 61 .. 63;
-
-   Default_Priority : constant Priority := 30;
-
-private
-
-   type Address is mod Memory_Size;
-   Null_Address : constant Address := 0;
-
-   --------------------------------------
-   -- System Implementation Parameters --
-   --------------------------------------
-
-   --  These parameters provide information about the target that is used
-   --  by the compiler. They are in the private part of System, where they
-   --  can be accessed using the special circuitry in the Targparm unit
-   --  whose source should be consulted for more detailed descriptions
-   --  of the individual switch values.
-
-   Backend_Divide_Checks     : constant Boolean := False;
-   Backend_Overflow_Checks   : constant Boolean := True;
-   Command_Line_Args         : constant Boolean := True;
-   Configurable_Run_Time     : constant Boolean := False;
-   Denorm                    : constant Boolean := False;
-   Duration_32_Bits          : constant Boolean := False;
-   Exit_Status_Supported     : constant Boolean := True;
-   Fractional_Fixed_Ops      : constant Boolean := False;
-   Frontend_Layout           : constant Boolean := False;
-   Machine_Overflows         : constant Boolean := False;
-   Machine_Rounds            : constant Boolean := True;
-   Preallocated_Stacks       : constant Boolean := False;
-   Signed_Zeros              : constant Boolean := True;
-   Stack_Check_Default       : constant Boolean := True;
-   Stack_Check_Probes        : constant Boolean := True;
-   Stack_Check_Limits        : constant Boolean := False;
-   Support_Aggregates        : constant Boolean := True;
-   Support_Composite_Assign  : constant Boolean := True;
-   Support_Composite_Compare : constant Boolean := True;
-   Support_Long_Shifts       : constant Boolean := True;
-   Always_Compatible_Rep     : constant Boolean := True;
-   Suppress_Standard_Library : constant Boolean := False;
-   Use_Ada_Main_Program_Name : constant Boolean := False;
-   ZCX_By_Default            : constant Boolean := True;
-
-   --  Note: Denorm is False because denormals are only handled properly
-   --  if the -mieee switch is set, and we do not require this usage.
-
-   ---------------------------
-   -- Underlying Priorities --
-   ---------------------------
-
-   --  Important note: this section of the file must come AFTER the
-   --  definition of the system implementation parameters to ensure
-   --  that the value of these parameters is available for analysis
-   --  of the declarations here (using Rtsfind at compile time).
-
-   --  The underlying priorities table provides a generalized mechanism
-   --  for mapping from Ada priorities to system priorities. In some
-   --  cases a 1-1 mapping is not the convenient or optimal choice.
-
-   --  For Dec Unix 4.0d, we use a default 1-to-1 mapping that provides
-   --  the full range of 64 priorities available from the operating system.
-
-   --  On DU prior to 4.0d, less than 64 priorities are available so there
-   --  are two possibilities:
-
-   --    Limit your range of priorities to the range provided by the
-   --    OS (e.g 16 .. 32 on 4.0b)
-
-   --    Replace the standard table as described below
-
-   --  To replace the default values of the Underlying_Priorities mapping,
-   --  copy this source file into your build directory, edit the file to
-   --  reflect your desired behavior, and recompile with the command:
-
-   --     $ gcc -c -O3 -gnatpgn system.ads
-
-   --  then recompile the run-time parts that depend on this package:
-
-   --     $ gnatmake -a -gnatn -O3 <your application>
-
-   --  then force rebuilding your application if you need different options:
-
-   --     $ gnatmake -f <your options> <your application>
-
-   type Priorities_Mapping is array (Any_Priority) of Integer;
-   pragma Suppress_Initialization (Priorities_Mapping);
-   --  Suppress initialization in case gnat.adc specifies Normalize_Scalars
-
-   Underlying_Priorities : constant Priorities_Mapping :=
-
-     (Priority'First => 0,
-
-       1 =>  1,  2 =>  2,  3 =>  3,  4 =>  4,  5 =>  5,
-       6 =>  6,  7 =>  7,  8 =>  8,  9 =>  9, 10 => 10,
-      11 => 11, 12 => 12, 13 => 13, 14 => 14, 15 => 15,
-      16 => 16, 17 => 17, 18 => 18, 19 => 19, 20 => 20,
-      21 => 21, 22 => 22, 23 => 23, 24 => 24, 25 => 25,
-      26 => 26, 27 => 27, 28 => 28, 29 => 29,
-
-      Default_Priority => 30,
-
-      31 => 31, 32 => 32, 33 => 33, 34 => 34, 35 => 35,
-      36 => 36, 37 => 37, 38 => 38, 39 => 39, 40 => 40,
-      41 => 41, 42 => 42, 43 => 43, 44 => 44, 45 => 45,
-      46 => 46, 47 => 47, 48 => 48, 49 => 49, 50 => 50,
-      51 => 51, 52 => 52, 53 => 53, 54 => 54, 55 => 55,
-      56 => 56, 57 => 57, 58 => 58, 59 => 59,
-
-      Priority'Last => 60,
-
-      61 => 61, 62 => 62,
-
-      Interrupt_Priority'Last => 63);
-
-end System;
index 18a4f2a29bca2d157c74f219caf9515950702ae2..cb1414a96df77ad7e12a9f90691fbdd242f39970 100644 (file)
@@ -6,7 +6,7 @@
  *                                                                          *
  *                          C Implementation File                           *
  *                                                                          *
- *                     Copyright (C) 2008-2011, AdaCore                     *
+ *                     Copyright (C) 2008-2012, AdaCore                     *
  *                                                                          *
  * GNAT is free software;  you can  redistribute it  and/or modify it under *
  * terms of the  GNU General Public License as published  by the Free Soft- *
@@ -976,9 +976,6 @@ __gnat_setup_winsize (void *desc, int rows, int columns)
  || defined (__DragonFly__)
 #   define FREEBSD
 #endif
-#if defined (__alpha__) && defined (__osf__)
-#   define OSF1
-#endif
 #if defined (__mips) && defined (__sgi)
 #   define IRIX
 #endif
@@ -1048,18 +1045,6 @@ __gnat_setup_winsize (void *desc, int rows, int columns)
 #define USE_CLONE_DEVICE "/dev/ptmx"
 #elif defined (_AIX)
 #define USE_CLONE_DEVICE "/dev/ptc"
-#elif defined (OSF1)
-/* On Tru64, the systems offers various interfaces to open a terminal:
-    - /dev/ptmx: this the system V driver (stream based),
-    - /dev/ptmx_bsd: the non stream based clone device,
-    - the openpty function which use BSD interface.
-
-   Using directly /dev/ptmx_bsd on Tru64 5.1B seems to consume all the
-   available slave ptys (why ?). When using openpty it seems that the function
-   handles the creation of entries in /dev/pts when necessary and so avoid this
-   starvation issue. The pty man entry suggests also to use openpty.
-*/
-#define USE_OPENPTY
 #elif defined (__hpux__)
 /* On HP-UX we use the streamed version. Using the non streamed version is not
    recommanded (through "/dev/ptym/clone"). Indeed it seems that there are
index bb9c90191bf2c434ae26ac4586c36a008efe6826..b5085cd5136668fa198676844c38efa3ee9979b2 100644 (file)
@@ -1,3 +1,10 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
+       handling.
+       * c-pragma.c (handle_pragma_extern_prefix): Remove.
+       (init_pragma): Don't register extern_prefix.
+
 2012-03-12  Richard Guenther  <rguenther@suse.de>
 
        * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
index 608dba6ecd42decc80e87f0fcdbe7959c13df42d..40a0a620dbfd9e6570c4b9744fdc20cf86bcde46 100644 (file)
@@ -1,6 +1,6 @@
 /* Define builtin-in macros for the C family front ends.
-   Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
-   Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+   2011, 2012 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -886,9 +886,6 @@ c_cpp_builtins (cpp_reader *pfile)
   /* Show the availability of some target pragmas.  */
   cpp_define (pfile, "__PRAGMA_REDEFINE_EXTNAME");
 
-  if (targetm.handle_pragma_extern_prefix)
-    cpp_define (pfile, "__PRAGMA_EXTERN_PREFIX");
-
   /* Make the choice of the stack protector runtime visible to source code.
      The macro names and values here were chosen for compatibility with an
      earlier implementation, i.e. ProPolice.  */
index 930423bcff62a1ed59d24f4d091181618240972f..5a8debc75d394bd2b1f15834aaecdb30f28dcb94 100644 (file)
@@ -1,6 +1,6 @@
 /* Handle #pragma, system V.4 style.  Supports #pragma weak and #pragma pack.
    Copyright (C) 1992, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-   2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+   2006, 2007, 2008, 2009, 2010, 2012 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -371,7 +371,7 @@ handle_pragma_weak (cpp_reader * ARG_UNUSED (dummy))
 
 /* GCC supports two #pragma directives for renaming the external
    symbol associated with a declaration (DECL_ASSEMBLER_NAME), for
-   compatibility with the Solaris and Tru64 system headers.  GCC also
+   compatibility with the Solaris and VMS system headers.  GCC also
    has its own notation for this, __asm__("name") annotations.
 
    Corner cases of these features and their interaction:
@@ -497,27 +497,6 @@ add_to_renaming_pragma_list (tree oldname, tree newname)
 /* The current prefix set by #pragma extern_prefix.  */
 GTY(()) tree pragma_extern_prefix;
 
-/* #pragma extern_prefix "prefix" */
-static void
-handle_pragma_extern_prefix (cpp_reader * ARG_UNUSED (dummy))
-{
-  tree prefix, x;
-  enum cpp_ttype t;
-
-  if (pragma_lex (&prefix) != CPP_STRING)
-    GCC_BAD ("malformed #pragma extern_prefix, ignored");
-  t = pragma_lex (&x);
-  if (t != CPP_EOF)
-    warning (OPT_Wpragmas, "junk at end of %<#pragma extern_prefix%>");
-
-  if (targetm.handle_pragma_extern_prefix)
-    /* Note that the length includes the null terminator.  */
-    pragma_extern_prefix = (TREE_STRING_LENGTH (prefix) > 1 ? prefix : NULL);
-  else if (warn_unknown_pragmas > in_system_header)
-    warning (OPT_Wunknown_pragmas,
-            "#pragma extern_prefix not supported on this target");
-}
-
 /* Hook from the front ends to apply the results of one of the preceding
    pragmas that rename variables.  */
 
@@ -1396,7 +1375,6 @@ init_pragma (void)
 
   c_register_pragma_with_expansion (0, "redefine_extname",
                                    handle_pragma_redefine_extname);
-  c_register_pragma (0, "extern_prefix", handle_pragma_extern_prefix);
 
   c_register_pragma_with_expansion (0, "message", handle_pragma_message);
 
index aa30518d254521315472902bc08da5bc9bdf8221..e7b468c76514a66b00efebdea8454043c9105bf6 100644 (file)
@@ -246,8 +246,7 @@ case ${target} in
    arm*-*-*eabi*                       \
  )
      ;;
-   alpha*-dec-osf5.1*                  \
- | arm*-*-ecos-elf                     \
+   arm*-*-ecos-elf                     \
  | arm*-*-elf                          \
  | arm*-*-freebsd*                     \
  | arm*-*-linux*                       \
@@ -788,30 +787,6 @@ alpha*-*-openbsd*)
        # default x-alpha is only appropriate for dec-osf.
        target_cpu_default="MASK_GAS"
        ;;
-alpha*-dec-osf5.1*)
-       if test x$stabs = xyes
-       then
-               tm_file="${tm_file} dbx.h"
-       fi
-       # mips-tfile and mips-tdump are only used with the native assembler
-       # and require the Tru64 UNIX <a.out.h>, so only build native.
-       if test x$gas != xyes && test x${host} = x${target}
-       then
-               extra_passes="mips-tfile mips-tdump"
-       fi
-       use_collect2=yes
-       tmake_file="t-slibgcc"
-       tm_file="${tm_file} alpha/osf5.h"
-       tm_defines="${tm_defines} TARGET_SUPPORT_ARCH=1"
-       extra_options="${extra_options} rpath.opt alpha/osf5.opt"
-       extra_headers=va_list.h
-       use_gcc_stdint=provide
-       case ${enable_threads} in
-         "" | yes | posix)
-           thread_file='posix'
-           ;;
-       esac
-       ;;
 alpha*-dec-*vms*)
        tm_file="${tm_file} vms/vms.h alpha/vms.h"
        tmake_file="${tmake_file} alpha/t-vms"
index 696c79e350750dc299742509d99f5ad57b077394..df865e21531d57f42d1976492ffb41ec1cb62139 100644 (file)
@@ -1,6 +1,6 @@
 # GCC host-specific configuration file.
 # Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2007, 2008, 2009,
-# 2010, 2011 Free Software Foundation, Inc.
+# 2010, 2011, 2012 Free Software Foundation, Inc.
 
 #This file is part of GCC.
 
@@ -108,9 +108,9 @@ case ${host} in
        ;;
     esac
     ;;
-  alpha*-*-linux* | alpha*-dec-osf*)
+  alpha*-*-linux*)
     case ${target} in
-      alpha*-*-linux* | alpha*-dec-osf*)
+      alpha*-*-linux*)
        host_extra_gcc_objs="driver-alpha.o"
        host_xmake_file="${host_xmake_file} alpha/x-alpha"
        ;;
@@ -193,10 +193,6 @@ case ${host} in
     prefix=/gnu
     local_prefix=/gnu/local
     ;;
-  alpha*-dec-osf*)
-    out_host_hook_obj=host-osf.o
-    host_xmake_file="${host_xmake_file} alpha/x-osf"
-    ;;
   alpha*-dec-*vms*)
     host_xm_file="vms/xm-vms.h"
     host_xmake_file=vms/x-vms
index 7305f6fbb26a54326bdc62ad4547d2f4bfee3b0c..bd1408332fbf9f216fed9c809d3597541b4ccd1e 100644 (file)
@@ -1,6 +1,6 @@
 /* Subroutines used for code generation on the DEC Alpha.
    Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
    Free Software Foundation, Inc.
    Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
 
@@ -4673,7 +4673,7 @@ struct GTY(()) machine_function
   /* For OSF.  */
   const char *some_ld_name;
 
-  /* For TARGET_LD_BUGGY_LDGP.  */
+  /* For flag_reorder_blocks_and_partition.  */
   rtx gp_save_rtx;
 
   /* For VMS condition handlers.  */
@@ -7859,10 +7859,8 @@ alpha_start_function (FILE *file, const char *fnname,
   HOST_WIDE_INT sa_size;
   /* Complete stack size needed.  */
   unsigned HOST_WIDE_INT frame_size;
-  /* The maximum debuggable frame size (512 Kbytes using Tru64 as).  */
-  unsigned HOST_WIDE_INT max_frame_size = TARGET_ABI_OSF && !TARGET_GAS
-                                         ? 524288
-                                         : 1UL << 31;
+  /* The maximum debuggable frame size.  */
+  unsigned HOST_WIDE_INT max_frame_size = 1UL << 31;
   /* Offset from base reg to register save area.  */
   HOST_WIDE_INT reg_offset;
   char *entry_label = (char *) alloca (strlen (fnname) + 6);
index 07ffa9fe8b1e7c3f48128508b8eb0137ea91f760..a903024ca8b9dcc388c57f943e930eb6bc6fdbb8 100644 (file)
@@ -1,6 +1,6 @@
 /* Definitions of target machine for GNU compiler, for DEC Alpha.
    Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-   2000, 2001, 2002, 2004, 2005, 2007, 2008, 2009, 2010, 2011
+   2000, 2001, 2002, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012
    Free Software Foundation, Inc.
    Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
 
@@ -161,9 +161,6 @@ extern enum alpha_fp_trap_mode alpha_fptm;
 #ifndef TARGET_PROFILING_NEEDS_GP
 #define TARGET_PROFILING_NEEDS_GP 0
 #endif
-#ifndef TARGET_LD_BUGGY_LDGP
-#define TARGET_LD_BUGGY_LDGP 0
-#endif
 #ifndef TARGET_FIXUP_EV5_PREFETCH
 #define TARGET_FIXUP_EV5_PREFETCH 0
 #endif
index e715cc86422c8c29f2d11ae29735b980857f1896..7280e76075ff33c1f5f02680fc62477e56d00199 100644 (file)
@@ -1,6 +1,6 @@
 ;; Machine description for DEC Alpha for GNU C compiler
 ;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-;; 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
+;; 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012
 ;; Free Software Foundation, Inc.
 ;; Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
 ;;
 ;; calculation, a jump to original landing pad is emitted in the place of the
 ;; original landing pad.  Since landing pad is moved, RA-relative GP
 ;; calculation in the prologue of landing pad breaks.  To solve this problem,
-;; we use alternative GP load approach, as in the case of TARGET_LD_BUGGY_LDGP.
+;; we use alternative GP load approach.
 
 (define_expand "exception_receiver"
   [(unspec_volatile [(match_dup 0)] UNSPECV_EHR)]
   "TARGET_ABI_OSF"
 {
-  if (TARGET_LD_BUGGY_LDGP || flag_reorder_blocks_and_partition)
+  if (flag_reorder_blocks_and_partition)
     operands[0] = alpha_gp_save_rtx ();
   else
     operands[0] = const0_rtx;
 
 (define_insn "*exception_receiver_2"
   [(unspec_volatile [(match_operand:DI 0 "memory_operand" "m")] UNSPECV_EHR)]
-  "TARGET_ABI_OSF 
-   && (TARGET_LD_BUGGY_LDGP || flag_reorder_blocks_and_partition)"
+  "TARGET_ABI_OSF && flag_reorder_blocks_and_partition"
   "ldq $29,%0"
   [(set_attr "type" "ild")])
 
diff --git a/gcc/config/alpha/host-osf.c b/gcc/config/alpha/host-osf.c
deleted file mode 100644 (file)
index 0a554b3..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/* Tru64 UNIX host-specific hook definitions.
-   Copyright (C) 2011 Free Software Foundation, Inc.
-
-   This file is part of GCC.
-
-   GCC is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published
-   by the Free Software Foundation; either version 3, or (at your
-   option) any later version.
-
-   GCC is distributed in the hope that it will be useful, but WITHOUT
-   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with GCC; see the file COPYING3.  If not see
-   <http://www.gnu.org/licenses/>.  */
-
-#include "config.h"
-#include "system.h"
-#include "coretypes.h"
-#include <sys/mman.h>
-/* Inhibit inclusion of <sys/mount.h>, unnecessary and errors out due to
-   use of poisoned bcmp, bcopy.  */
-#define _SYS_MOUNT_H_
-#include <sys/procfs.h>
-#include "hosthooks.h"
-#include "hosthooks-def.h"
-
-
-#undef HOST_HOOKS_GT_PCH_GET_ADDRESS
-#define HOST_HOOKS_GT_PCH_GET_ADDRESS osf_gt_pch_get_address
-#undef HOST_HOOKS_GT_PCH_USE_ADDRESS
-#define HOST_HOOKS_GT_PCH_USE_ADDRESS osf_gt_pch_use_address
-
-/* The mmap ADDR parameter may be ignored without MAP_FIXED set.  Before we
-   give up, check existing mappings with ioctl(PIOCMAP) to see if the space
-   is really free.  */
-
-static void *
-mmap_fixed (void *addr, size_t len, int prot, int flags, int fd, off_t off)
-{
-  void *base;
-
-  base = mmap ((caddr_t) addr, len, prot, flags, fd, off);
-  
-  if (base != addr)
-    {
-      /* PID_MAX is SHRT_MAX on Tru64 UNIX V4.0, but INT_MAX on V5.1.
-        Allow for both.  "/proc/" + INT_MAX + '\0'.  */
-      char pname[6+10+1];
-      int procfd, nmap;
-      prmap_t *pmap;
-      int i, overlap = 0;
-
-      if (base != (void *) MAP_FAILED)
-       munmap ((caddr_t) base, len);
-
-      /* Check if there's any mapping overlapping [addr, addr+len).  */
-
-      snprintf (pname, sizeof (pname), "/proc/%d", getpid ());
-      procfd = open (pname, O_RDONLY);
-      if (procfd == -1)
-       return ((void *) MAP_FAILED);
-      if (ioctl (procfd, PIOCNMAP, &nmap) == -1)
-       return ((void *) MAP_FAILED);
-      pmap = (prmap_t *) xmalloc (sizeof (*pmap) * (nmap+1));
-      if (ioctl (procfd, PIOCMAP, pmap) == -1)
-       return ((void *) MAP_FAILED);
-
-      /* It seems like pmap[] is sorted by address, but can we rely on
-        that?  */
-      for (i = 0; i < nmap; i++)
-       {
-         uintptr_t map_start = (uintptr_t) pmap[i].pr_vaddr;
-         uintptr_t map_end = map_start + pmap[i].pr_size;
-
-         if ((uintptr_t) addr < map_end
-             && (uintptr_t) addr+len > map_start)
-           {
-             overlap = 1;
-             break;
-           }
-       }
-      free (pmap);
-      close (procfd);
-
-      if (!overlap)
-       base = mmap ((caddr_t) addr, len, prot, flags | MAP_FIXED, fd, off);
-      else
-       base = mmap ((caddr_t) addr, len, prot, flags, fd, off);
-    }
-
-  return base;
-}
-
-/* For various ports, try to guess a fixed spot in the vm space that's
-   probably free.  Take the middle between start of text segment and
-   dynamic loader space.  See <sys/machine/addrconf.h> and Tru64 UNIX
-   Assembly Language Programmer's Guide, p.6-18, Figure 6-3: Default Layout
-   of Memory (User Program View).  */
-#define TRY_EMPTY_VM_SPACE     0x20050000000
-
-/* Determine a location where we might be able to reliably allocate
-   SIZE bytes.  FD is the PCH file, though we should return with the
-   file unmapped.  */
-
-static void *
-osf_gt_pch_get_address (size_t size, int fd)
-{
-  void *addr;
-
-  addr = mmap_fixed ((caddr_t) TRY_EMPTY_VM_SPACE, size,
-                    PROT_READ | PROT_WRITE, MAP_PRIVATE, fd, 0);
-
-  /* If we failed the map, that means there's *no* free space.  */
-  if (addr == (void *) MAP_FAILED)
-    return NULL;
-  /* Unmap the area before returning.  */
-  munmap ((caddr_t) addr, size);
-
-  return addr;
-}
-
-/* Map SIZE bytes of FD+OFFSET at BASE.  Return 1 if we succeeded at 
-   mapping the data at BASE, -1 if we couldn't.  */
-
-static int
-osf_gt_pch_use_address (void *base, size_t size, int fd, size_t offset)
-{
-  void *addr;
-
-  /* We're called with size == 0 if we're not planning to load a PCH
-     file at all.  This allows the hook to free any static space that
-     we might have allocated at link time.  */
-  if (size == 0)
-    return -1;
-
-  addr = mmap_fixed ((caddr_t) base, size,
-                    PROT_READ | PROT_WRITE, MAP_PRIVATE, fd, offset);
-
-  return addr == base ? 1 : -1;
-}
-
-\f
-const struct host_hooks host_hooks = HOST_HOOKS_INITIALIZER;
diff --git a/gcc/config/alpha/osf5.h b/gcc/config/alpha/osf5.h
deleted file mode 100644 (file)
index ee21f4b..0000000
+++ /dev/null
@@ -1,279 +0,0 @@
-/* Definitions of target machine for GNU compiler, for DEC Alpha on
-   Tru64 UNIX V5.1.
-   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001,
-   2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011
-   Free Software Foundation, Inc.
-   Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING3.  If not see
-<http://www.gnu.org/licenses/>.  */
-
-/* As of DEC OSF/1 V4.0, as can subtract adjacent labels.  */
-
-#undef TARGET_AS_CAN_SUBTRACT_LABELS
-#define TARGET_AS_CAN_SUBTRACT_LABELS 1
-
-/* The GEM libraries for X_float are present, though not used by C.  */
-
-#undef TARGET_HAS_XFLOATING_LIBS
-#define TARGET_HAS_XFLOATING_LIBS 1
-
-/* Tru64 UNIX V5.1 uses IEEE QUAD format.  */
-#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (MASK_FPREGS | MASK_LONG_DOUBLE_128)
-
-/* The linker appears to perform invalid code optimizations that result
-   in the ldgp emitted for the exception_receiver pattern being incorrectly
-   linked.  */
-#undef TARGET_LD_BUGGY_LDGP
-#define TARGET_LD_BUGGY_LDGP 1
-
-/* Tru64 UNIX V5.1 has the float and long double forms of math functions.  */
-#undef TARGET_C99_FUNCTIONS
-#define TARGET_C99_FUNCTIONS  1
-
-/* Names to predefine in the preprocessor for this target machine.  */
-
-#define TARGET_OS_CPP_BUILTINS()                       \
-    do {                                               \
-       builtin_define_std ("unix");                    \
-       builtin_define_std ("SYSTYPE_BSD");             \
-       builtin_define ("_SYSTYPE_BSD");                \
-       builtin_define ("__osf__");                     \
-       builtin_define ("__digital__");                 \
-       builtin_define ("__arch64__");                  \
-       builtin_define ("_LONGLONG");                   \
-       builtin_assert ("system=unix");                 \
-       builtin_assert ("system=xpg4");                 \
-       /* Tru64 UNIX V5 has a 16 byte long             \
-          double type and requires __X_FLOAT           \
-          to be defined for <math.h>.  */              \
-        if (LONG_DOUBLE_TYPE_SIZE == 128)              \
-          builtin_define ("__X_FLOAT");                        \
-                                                       \
-       /* Tru64 UNIX V4/V5 provide several ISO C94     \
-          features protected by the corresponding      \
-          __STDC_VERSION__ macro.  libstdc++ v3        \
-          needs them as well.  */                      \
-       if (c_dialect_cxx ())                           \
-         builtin_define ("__STDC_VERSION__=199409L");  \
-    } while (0)
-
-/* Accept DEC C flags for multithreaded programs.  We use _PTHREAD_USE_D4
-   instead of PTHREAD_USE_D4 since both have the same effect and the former
-   doesn't invade the users' namespace.  */
-
-#undef CPP_SPEC
-#define CPP_SPEC \
-"%{pthread|threads:-D_REENTRANT} %{threads:-D_PTHREAD_USE_D4}"
-
-/* -mcpu=native handling only makes sense with compiler running on
-   an Alpha chip.  */
-#if defined(__alpha__) || defined(__alpha)
-extern const char *host_detect_local_cpu (int argc, const char **argv);
-# define EXTRA_SPEC_FUNCTIONS                                          \
-  { "local_cpu_detect", host_detect_local_cpu },
-
-# define MCPU_MTUNE_NATIVE_SPECS                                       \
-   " %{mcpu=native:%<mcpu=native %:local_cpu_detect(cpu)}"             \
-   " %{mtune=native:%<mtune=native %:local_cpu_detect(tune)}"
-#else
-# define MCPU_MTUNE_NATIVE_SPECS ""
-#endif
-
-#define DRIVER_SELF_SPECS MCPU_MTUNE_NATIVE_SPECS
-
-/* Under DEC OSF/1 V4, -p and -pg require -lprof1, and -lprof1 requires 
-   -lpdf.  */
-
-#define LIB_SPEC \
-"%{p|pg:-lprof1%{pthread|threads:_r} -lpdf} \
- %{threads: -lpthreads} %{pthread|threads: -lpthread -lmach -lexc} -lc"
-
-/* Pass "-G 8" to ld because Alpha's CC does.  Pass -O3 if we are
-   optimizing, -O1 if we are not.  Pass -S to silence `weak symbol
-   multiply defined' warnings.  Pass -shared, -non_shared or
-   -call_shared as appropriate.  Pass -hidden_symbol so that our
-   constructor and call-frame data structures are not accidentally
-   overridden.  */
-#define LINK_SPEC  \
-  "-G 8 %{O*:-O3} %{!O*:-O1} -S %{static:-non_shared} \
-   %{!static:%{shared:-shared -hidden_symbol _GLOBAL_*} \
-   %{!shared:-call_shared}} %{pg} %{taso} %{rpath*}"
-
-#define STARTFILE_SPEC  \
-  "%{!shared:%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}}"
-
-#define ENDFILE_SPEC \
-  "%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s}"
-
-#define MD_STARTFILE_PREFIX "/usr/lib/cmplrs/cc/"
-
-/* In Tru64 UNIX V5.1, Compaq introduced a new assembler
-   (/usr/lib/cmplrs/cc/adu) which currently (versions between 3.04.29 and
-   3.04.32) breaks mips-tfile.  Passing the undocumented -oldas flag reverts
-   to using the old assembler (/usr/lib/cmplrs/cc/as[01]).
-
-   It is clearly not desirable to depend on this undocumented flag, and
-   Compaq wants -oldas to go away soon, but until they have released a
-   new adu that works with mips-tfile, this is the only option.
-
-   In some versions of the DTK, the assembler driver invokes ld after
-   assembly.  This has been fixed in current versions, but adding -c
-   works as expected for all versions.  */
-
-#define ASM_OLDAS_SPEC "-oldas -c"
-
-/* In OSF/1 v3.2c, the assembler by default does not output file names which
-   causes mips-tfile to fail.  Passing -g to the assembler fixes this problem.
-   ??? Strictly speaking, we need -g only if the user specifies -g.  Passing
-   it always means that we get slightly larger than necessary object files
-   if the user does not specify -g.  If we don't pass -g, then mips-tfile
-   will need to be fixed to work in this case.  Pass -O0 since some
-   optimization are broken and don't help us anyway.  */
-#if ((TARGET_DEFAULT | TARGET_CPU_DEFAULT) & MASK_GAS) != 0
-#define ASM_SPEC "%{malpha-as:-g " ASM_OLDAS_SPEC " %{pg} -O0}"
-#else
-#define ASM_SPEC "%{!mgas:-g " ASM_OLDAS_SPEC " %{pg} -O0}"
-#endif
-
-/* Specify to run a post-processor, mips-tfile after the assembler
-   has run to stuff the ecoff debug information into the object file.
-   This is needed because the Alpha assembler provides no way
-   of specifying such information in the assembly file.  */
-
-#if ((TARGET_DEFAULT | TARGET_CPU_DEFAULT) & MASK_GAS) != 0
-
-#define ASM_FINAL_SPEC "\
-%{malpha-as: %{!mno-mips-tfile: \
-       \n mips-tfile %{v*: -v} \
-               %{K: -I %b.o~} \
-               %{!K: %{save-temps: -I %b.o~}} \
-               %{c:%W{o*}%{!o*:-o %b.o}}%{!c:-o %U.o} \
-               %{,assembler:%i;:%g.s}}}"
-
-#else
-#define ASM_FINAL_SPEC "\
-%{!mgas: %{!mno-mips-tfile: \
-       \n mips-tfile %{v*: -v} \
-               %{K: -I %b.o~} \
-               %{!K: %{save-temps: -I %b.o~}} \
-               %{c:%W{o*}%{!o*:-o %b.o}}%{!c:-o %U.o} \
-               %{,assembler:%i;:%g.s}}}"
-
-#endif
-
-/* Indicate that we have a stamp.h to use.  */
-#ifndef CROSS_DIRECTORY_STRUCTURE
-#define HAVE_STAMP_H 1
-#endif
-
-#define HAVE_ENABLE_EXECUTE_STACK
-
-/* Digital UNIX V4.0E (1091)/usr/include/sys/types.h 4.3.49.9 1997/08/14 */
-#define SIZE_TYPE      "long unsigned int"
-#define PTRDIFF_TYPE   "long int"
-
-#define SIG_ATOMIC_TYPE "int"
-
-#define INT8_TYPE "signed char"
-#define INT16_TYPE "short int"
-#define INT32_TYPE "int"
-#define INT64_TYPE "long int"
-#define UINT8_TYPE "unsigned char"
-#define UINT16_TYPE "short unsigned int"
-#define UINT32_TYPE "unsigned int"
-#define UINT64_TYPE "long unsigned int"
-
-#define INT_LEAST8_TYPE "signed char"
-#define INT_LEAST16_TYPE "short int"
-#define INT_LEAST32_TYPE "int"
-#define INT_LEAST64_TYPE "long int"
-#define UINT_LEAST8_TYPE "unsigned char"
-#define UINT_LEAST16_TYPE "short unsigned int"
-#define UINT_LEAST32_TYPE "unsigned int"
-#define UINT_LEAST64_TYPE "long unsigned int"
-
-#define INT_FAST8_TYPE "signed char"
-#define INT_FAST16_TYPE "int"
-#define INT_FAST32_TYPE "int"
-#define INT_FAST64_TYPE "long int"
-#define UINT_FAST8_TYPE "unsigned char"
-#define UINT_FAST16_TYPE "unsigned int"
-#define UINT_FAST32_TYPE "unsigned int"
-#define UINT_FAST64_TYPE "long unsigned int"
-
-#define INTPTR_TYPE "long int"
-#define UINTPTR_TYPE "long unsigned int"
-
-/* The linker will stick __main into the .init section.  */
-#define HAS_INIT_SECTION
-#define LD_INIT_SWITCH "-init"
-#define LD_FINI_SWITCH "-fini"
-
-/* From Tru64 UNIX Object File and Symbol Table Format Specification,
-   2.3.5 Alignment, p.19.  */
-#define MAX_OFILE_ALIGNMENT (64 * 1024 * BITS_PER_UNIT)
-
-/* Select a format to encode pointers in exception handling data.  CODE
-   is 0 for data, 1 for code labels, 2 for function pointers.  GLOBAL is
-   true if the symbol may be affected by dynamic relocations.
-   
-   We really ought to be using the SREL32 relocations that ECOFF has,
-   but no version of the native assembler supports creating such things,
-   and Compaq has no plans to rectify this.  Worse, the dynamic loader
-   cannot handle unaligned relocations, so we have to make sure that
-   things get padded appropriately.  */
-#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL)                           \
-  (TARGET_GAS                                                               \
-   ? (((GLOBAL) ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4) \
-   : DW_EH_PE_aligned)
-
-/* The Tru64 UNIX assembler warns on .lcomm with SIZE 0, so use 1 in that
-   case.  */
-#undef ASM_OUTPUT_LOCAL
-#define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE,ROUNDED)     \
-( fputs ("\t.lcomm ", (FILE)),                         \
-  assemble_name ((FILE), (NAME)),                      \
-  fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE) ? (SIZE) : 1))
-
-/* This is how we tell the assembler that a symbol is weak.  */
-
-#define ASM_OUTPUT_WEAK_ALIAS(FILE, NAME, VALUE)       \
-  do                                                   \
-    {                                                  \
-      (*targetm.asm_out.globalize_label) (FILE, NAME);  \
-      fputs ("\t.weakext\t", FILE);                    \
-      assemble_name (FILE, NAME);                      \
-      if (VALUE)                                       \
-        {                                              \
-          fputc (' ', FILE);                           \
-          assemble_name (FILE, VALUE);                 \
-        }                                              \
-      fputc ('\n', FILE);                              \
-    }                                                  \
-  while (0)
-
-#define ASM_WEAKEN_LABEL(FILE, NAME) ASM_OUTPUT_WEAK_ALIAS(FILE, NAME, 0)
-
-/* The native assembler doesn't understand parenthesis.  */
-#define TARGET_ASM_OPEN_PAREN ""
-#define TARGET_ASM_CLOSE_PAREN ""
-
-/* Handle #pragma extern_prefix.  */
-#define TARGET_HANDLE_PRAGMA_EXTERN_PREFIX 1
-
-#define TARGET_HAVE_NAMED_SECTIONS false
diff --git a/gcc/config/alpha/osf5.opt b/gcc/config/alpha/osf5.opt
deleted file mode 100644 (file)
index ba70e7c..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-; Tru64 UNIX options.
-
-; Copyright (C) 2011
-; Free Software Foundation, Inc.
-;
-; This file is part of GCC.
-;
-; GCC is free software; you can redistribute it and/or modify it under
-; the terms of the GNU General Public License as published by the Free
-; Software Foundation; either version 3, or (at your option) any later
-; version.
-;
-; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-; WARRANTY; without even the implied warranty of MERCHANTABILITY or
-; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-; for more details.
-;
-; You should have received a copy of the GNU General Public License
-; along with GCC; see the file COPYING3.  If not see
-; <http://www.gnu.org/licenses/>.
-
-; See the GCC internals manual (options.texi) for a description of
-; this file's format.
-
-; Please try to keep this file in ASCII collating order.
-
-K
-Driver
-
-mno-mips-tfile
-Target RejectNegative
-
-pthread
-Driver
-
-taso
-Driver
-
-threads
-Driver
-
-; This comment is to ensure we retain the blank line above.
diff --git a/gcc/config/alpha/va_list.h b/gcc/config/alpha/va_list.h
deleted file mode 100644 (file)
index 26e9515..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* A replacement for Digital Unix's <va_list.h>.
-
-Copyright (C) 1998, 1999 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-<http://www.gnu.org/licenses/>.  */
-
-#ifndef __GNUC_VA_LIST
-#define __GNUC_VA_LIST
-typedef __builtin_va_list __gnuc_va_list;
-#endif
-
-#if !defined(_VA_LIST) && !defined(_HIDDEN_VA_LIST)
-#define _VA_LIST
-typedef __gnuc_va_list va_list;
-
-#elif defined(_HIDDEN_VA_LIST) && !defined(_HIDDEN_VA_LIST_DONE)
-#define _HIDDEN_VA_LIST_DONE
-typedef __gnuc_va_list __va_list;
-
-#elif defined(_HIDDEN_VA_LIST) && defined(_VA_LIST)
-#undef _HIDDEN_VA_LIST
-
-#endif
diff --git a/gcc/config/alpha/x-osf b/gcc/config/alpha/x-osf
deleted file mode 100644 (file)
index 5bb9c90..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-host-osf.o : $(srcdir)/config/alpha/host-osf.c $(CONFIG_H) $(SYSTEM_H) \
-  coretypes.h hosthooks.h hosthooks-def.h $(HOOKS_H)
-       $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
-               $(srcdir)/config/alpha/host-osf.c
index e2a0aea9f09203a4f53ab9fe37b435f936514773..aada28df7dab808f7fba50af8cf78067631758b5 100755 (executable)
@@ -23626,11 +23626,6 @@ case "$target" in
     # with TLS support are in use, native TLS cannot work.
     set_have_as_tls=no
     ;;
-  *-*-osf*)
-    # Tru64 UNIX loader and libc.so lack TLS support, so even if gas and
-    # gld with TLS support are in use, native TLS cannot work.
-    set_have_as_tls=no
-    ;;
   # TLS was introduced in the Solaris 9 FCS release and backported to
   # Solaris 8 patches.  Support for GNU-style TLS on x86 was only
   # introduced in Solaris 9 4/04, replacing the earlier Sun style that Sun
@@ -23818,12 +23813,6 @@ elif test x$gcc_cv_ld != x; then
       gcc_cv_ld_static_dynamic=yes
   else
     case "$target" in
-      # Tru64 UNIX support -noso/-so_archive instead of -Bstatic/-Bdynamic.
-      alpha*-dec-osf*)
-        gcc_cv_ld_static_dynamic=yes
-       gcc_cv_ld_static_option="-noso"
-       gcc_cv_ld_dynamic_option="-so_archive"
-        ;;
       # HP-UX ld uses -a flags to select between shared and archive.
       *-*-hpux*)
        if test x"$gnu_ld" = xno; then
@@ -23944,7 +23933,7 @@ $as_echo "$gcc_cv_lto_plugin" >&6; }
 
 case "$target" in
   # All TARGET_ABI_OSF targets.
-  alpha*-*-osf* | alpha*-*-linux* | alpha*-*-*bsd*)
+  alpha*-*-linux* | alpha*-*-*bsd*)
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for explicit relocation support" >&5
 $as_echo_n "checking assembler for explicit relocation support... " >&6; }
 if test "${gcc_cv_as_alpha_explicit_relocs+set}" = set; then :
index 39302ad76c34721bee55fcd4cc3b71462063d7ae..3686680d8079d8356071d6066ec8a2b0db8772ac 100644 (file)
@@ -3183,11 +3183,6 @@ case "$target" in
     # with TLS support are in use, native TLS cannot work.
     set_have_as_tls=no
     ;;
-  *-*-osf*)
-    # Tru64 UNIX loader and libc.so lack TLS support, so even if gas and
-    # gld with TLS support are in use, native TLS cannot work.
-    set_have_as_tls=no
-    ;;
   # TLS was introduced in the Solaris 9 FCS release and backported to
   # Solaris 8 patches.  Support for GNU-style TLS on x86 was only
   # introduced in Solaris 9 4/04, replacing the earlier Sun style that Sun
@@ -3302,12 +3297,6 @@ elif test x$gcc_cv_ld != x; then
       gcc_cv_ld_static_dynamic=yes
   else
     case "$target" in
-      # Tru64 UNIX support -noso/-so_archive instead of -Bstatic/-Bdynamic.
-      alpha*-dec-osf*)
-        gcc_cv_ld_static_dynamic=yes
-       gcc_cv_ld_static_option="-noso"
-       gcc_cv_ld_dynamic_option="-so_archive"
-        ;;
       # HP-UX ld uses -a flags to select between shared and archive.
       *-*-hpux*)
        if test x"$gnu_ld" = xno; then
@@ -3414,7 +3403,7 @@ AC_MSG_RESULT($gcc_cv_lto_plugin)
 
 case "$target" in
   # All TARGET_ABI_OSF targets.
-  alpha*-*-osf* | alpha*-*-linux* | alpha*-*-*bsd*)
+  alpha*-*-linux* | alpha*-*-*bsd*)
     gcc_GAS_CHECK_FEATURE([explicit relocation support],
        gcc_cv_as_alpha_explicit_relocs, [2,12,0],,
 [      .set nomacro
index c770e35cb7f8001a7e94ac9037d68eb351286451..3a2e1d4d6ed04cf1315921bd63a6f5ab6171aac7 100644 (file)
@@ -14141,10 +14141,9 @@ adding a call to the @code{.init} section.
 @node Symbol-Renaming Pragmas
 @subsection Symbol-Renaming Pragmas
 
-For compatibility with the Solaris and Tru64 UNIX system headers, GCC
+For compatibility with the Solaris system headers, GCC
 supports two @code{#pragma} directives which change the name used in
-assembly for a given declaration.  @code{#pragma extern_prefix} is only
-available on platforms whose system headers need it. To get this effect
+assembly for a given declaration. To get this effect
 on all platforms supported by GCC, use the asm labels extension (@pxref{Asm
 Labels}).
 
@@ -14155,19 +14154,9 @@ Labels}).
 This pragma gives the C function @var{oldname} the assembly symbol
 @var{newname}.  The preprocessor macro @code{__PRAGMA_REDEFINE_EXTNAME}
 will be defined if this pragma is available (currently on all platforms).
-
-@item extern_prefix @var{string}
-@cindex pragma, extern_prefix
-
-This pragma causes all subsequent external function and variable
-declarations to have @var{string} prepended to their assembly symbols.
-This effect may be terminated with another @code{extern_prefix} pragma
-whose argument is an empty string.  The preprocessor macro
-@code{__PRAGMA_EXTERN_PREFIX} will be defined if this pragma is
-available (currently only on Tru64 UNIX)@.
 @end table
 
-These pragmas and the asm labels extension interact in a complicated
+This pragma and the asm labels extension interact in a complicated
 manner.  Here are some corner cases you may want to be aware of.
 
 @enumerate
@@ -14186,17 +14175,6 @@ the name does not change.
 
 @item The @var{oldname} used by @code{#pragma redefine_extname} is
 always the C-language name.
-
-@item If @code{#pragma extern_prefix} is in effect, and a declaration
-occurs with an asm label attached, the prefix is silently ignored for
-that declaration.
-
-@item If @code{#pragma extern_prefix} and @code{#pragma redefine_extname}
-apply to the same declaration, whichever triggered first wins, and a
-warning issues if they contradict each other.  (We would like to have
-@code{#pragma redefine_extname} always win, for consistency with asm
-labels, but if @code{#pragma extern_prefix} triggers first we have no
-way of knowing that that happened.)
 @end enumerate
 
 @node Structure-Packing Pragmas
index 53109ba0d64372af439e77c42d1f96275954dc66..00a8994a215fef720eee1fad230b88fd6e375288 100644 (file)
@@ -2949,7 +2949,6 @@ The @uref{http://www.mingw.org/,,MinGW} project.
 Written Word} offers binaries for
 AIX 4.3.3, 5.1 and 5.2,
 IRIX 6.5,
-Tru64 UNIX 4.0D and 5.1,
 GNU/Linux (i386),
 HP-UX 10.20, 11.00, and 11.11, and
 Solaris/SPARC 2.5.1, 2.6, 7, 8, 9 and 10.
@@ -3160,54 +3159,10 @@ Systems using processors that implement the DEC Alpha architecture and
 are running the DEC/Compaq/HP Unix (DEC OSF/1, Digital UNIX, or Compaq/HP
 Tru64 UNIX) operating system, for example the DEC Alpha AXP systems.
 
-Support for Tru64 UNIX V5.1 has been obsoleted in GCC 4.7, but can still
-be enabled by configuring with @option{--enable-obsolete}.  Support will
-be removed in GCC 4.8.  As of GCC 4.6, support for Tru64 UNIX V4.0 and
-V5.0 has been removed.  As of GCC 3.2, versions before
-@code{alpha*-dec-osf4} are no longer supported.  (These are the versions
-which identify themselves as DEC OSF/1.)
-
-On Tru64 UNIX, virtual memory exhausted bootstrap failures
-may be fixed by reconfiguring Kernel Virtual Memory and Swap parameters
-per the @command{/usr/sbin/sys_check} Tuning Suggestions,
-or applying the patch in
-@uref{http://gcc.gnu.org/ml/gcc/2002-08/msg00822.html}.  Depending on
-the OS version used, you need a data segment size between 512 MB and
-1 GB, so simply use @command{ulimit -Sd unlimited}.
-
-As of GNU binutils 2.21, neither GNU @command{as} nor GNU @command{ld}
-are supported on Tru64 UNIX, so you must not configure GCC with
-@option{--with-gnu-as} or @option{--with-gnu-ld}.
-
-Cross-compilers for the Tru64 UNIX target currently do not work because
-the auxiliary programs @command{mips-tdump} and @command{mips-tfile} can't
-be compiled on anything but Tru64 UNIX.
-
-GCC writes a @samp{.verstamp} directive to the assembler output file
-unless it is built as a cross-compiler.  It gets the version to use from
-the system header file @file{/usr/include/stamp.h}.  If you install a
-new version of Tru64 UNIX, you should rebuild GCC to pick up the new version
-stamp.
-
-GCC now supports both the native (ECOFF) debugging format used by DBX
-and GDB and an encapsulated STABS format for use only with GDB@.  See the
-discussion of the @option{--with-stabs} option of @file{configure} above
-for more information on these formats and how to select them.
-@c FIXME: does this work at all?  If so, perhaps make default.
-
-There is a bug in DEC's assembler that produces incorrect line numbers
-for ECOFF format when the @samp{.align} directive is used.  To work
-around this problem, GCC will not emit such alignment directives
-while writing ECOFF format debugging information even if optimization is
-being performed.  Unfortunately, this has the very undesirable
-side-effect that code addresses when @option{-O} is specified are
-different depending on whether or not @option{-g} is also specified.
-
-To avoid this behavior, specify @option{-gstabs+} and use GDB instead of
-DBX@.  DEC is now aware of this problem with the assembler and hopes to
-provide a fix shortly.
-
-@c FIXME: still applicable?
+Support for Tru64 UNIX V5.1 has been removed in GCC 4.8.  As of GCC 4.6,
+support for Tru64 UNIX V4.0 and V5.0 has been removed.  As of GCC 3.2,
+versions before @code{alpha*-dec-osf4} are no longer supported.  (These
+are the versions which identify themselves as DEC OSF/1.)
 
 @html
 <hr />
index 91e4b047fe53465903cdea3f63cbdcd04308f471..e9da36c26997d8a4e66776b1fac38150e3388055 100644 (file)
@@ -10758,10 +10758,6 @@ Define this macro if macros should be expanded in the
 arguments of @samp{#pragma pack}.
 @end defmac
 
-@deftypevr {Target Hook} bool TARGET_HANDLE_PRAGMA_EXTERN_PREFIX
-True if @code{#pragma extern_prefix} is to be supported.
-@end deftypevr
-
 @defmac TARGET_DEFAULT_PACK_STRUCT
 If your target requires a structure packing default other than 0 (meaning
 the machine default), define this macro to the necessary value (in bytes).
index 0ebc15d5ebfd8a897ae18ac2443cd97ef8f16939..8f9653b56385aca73716e6e084cda825cdf20586 100644 (file)
@@ -10638,8 +10638,6 @@ Define this macro if macros should be expanded in the
 arguments of @samp{#pragma pack}.
 @end defmac
 
-@hook TARGET_HANDLE_PRAGMA_EXTERN_PREFIX
-
 @defmac TARGET_DEFAULT_PACK_STRUCT
 If your target requires a structure packing default other than 0 (meaning
 the machine default), define this macro to the necessary value (in bytes).
index 3fc3910d79ec3c6a84b98420520d428041dda8c6..b2bf3942498bcf06f685b3b846a529b04a7b90ed 100644 (file)
@@ -1,5 +1,5 @@
 @c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-@c 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+@c 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012
 @c Free Software Foundation, Inc.
 @c This is part of the GCC manual.
 @c For copying conditions, see the file gcc.texi.
@@ -20,7 +20,6 @@ where people's opinions differ as to what is best.
 
 @menu
 * Actual Bugs::         Bugs we will fix later.
-* Cross-Compiler Problems:: Common problems of cross compiling with GCC.
 * Interoperation::      Problems using GCC with other compilers,
                         and with certain linkers, assemblers and debuggers.
 * Incompatibilities::   GCC is incompatible with traditional C.
@@ -46,19 +45,6 @@ unmounted while @code{fixincludes} is running.  This would seem to be a
 bug in the automounter.  We don't know any good way to work around it.
 @end itemize
 
-@node Cross-Compiler Problems
-@section Cross-Compiler Problems
-
-You may run into problems with cross compilation on certain machines,
-for several reasons.
-
-@itemize @bullet
-@item
-At present, the program @file{mips-tfile} which adds debug
-support to object files on Tru64 UNIX systems does not work in a cross
-compile environment.
-@end itemize
-
 @node Interoperation
 @section Interoperation
 
index 8d56e105fbee8896a1e66b8c64b621f753825428..8cf47bcc23627738b9e33959ea8a1709e8a195f9 100644 (file)
@@ -1,7 +1,7 @@
 /* Implements exception handling.
    Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
-   Free Software Foundation, Inc.
+   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+   2011, 2012 Free Software Foundation, Inc.
    Contributed by Mike Stump <mrs@cygnus.com>.
 
 This file is part of GCC.
@@ -1419,7 +1419,7 @@ finish_eh_generation (void)
   break_superblocks ();
 
   if (targetm_common.except_unwind_info (&global_options) == UI_SJLJ
-      /* Kludge for Alpha/Tru64 (see alpha_gp_save_rtx).  */
+      /* Kludge for Alpha (see alpha_gp_save_rtx).  */
       || single_succ_edge (ENTRY_BLOCK_PTR)->insns.r)
     commit_edge_insertions ();
 
index 54dc2e7fb06ca023b93b5640d715812cf8751c53..0bb7520a90c93e2db8c64e89c49221ef16ae768b 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2009, 2012
+   Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -59,10 +60,6 @@ typedef __builtin_va_list __gnuc_va_list;
    but must not use that name.  It should use the name __gnuc_va_list,
    which is safe because it is reserved for the implementation.  */
 
-#ifdef _HIDDEN_VA_LIST  /* On OSF1, this means varargs.h is "half-loaded".  */
-#undef _VA_LIST
-#endif
-
 #ifdef _BSD_VA_LIST
 #undef _BSD_VA_LIST
 #endif
diff --git a/gcc/mips-tdump.c b/gcc/mips-tdump.c
deleted file mode 100644 (file)
index 49ebb89..0000000
+++ /dev/null
@@ -1,1525 +0,0 @@
-/* Read and manage MIPS symbol tables from object modules.
-   Copyright (C) 1991, 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2003, 2004,
-   2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
-   Contributed by hartzell@boulder.colorado.edu,
-   Rewritten by meissner@osf.org.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING3.  If not see
-<http://www.gnu.org/licenses/>.  */
-
-#include "config.h"
-#include "system.h"
-#include "version.h"
-#ifdef index
-#undef index
-#endif
-#include <a.out.h>
-
-/* Include getopt.h for the sake of getopt_long.  */
-#include "getopt.h"
-
-/* Macros for mips-tfile.c to encapsulate stabs in ECOFF, and for
-   mips-tdump.c to print them out.
-
-   These must match the corresponding definitions in gdb/mipsread.c.
-   Unfortunately, gcc and gdb do not currently share any directories.  */
-
-#define CODE_MASK 0x8F300
-#define MIPS_IS_STAB(sym) (((sym)->index & 0xFFF00) == CODE_MASK)
-#define MIPS_MARK_STAB(code) ((code)+CODE_MASK)
-#define MIPS_UNMARK_STAB(code) ((code)-CODE_MASK)
-
-#define uchar  unsigned char
-#define ushort unsigned short
-#define uint   unsigned int
-#define ulong  unsigned long
-
-\f
-/* Redefinition of storage classes as an enumeration for better
-   debugging.  */
-
-#ifndef stStaParam
-#define stStaParam     16      /* Fortran static parameters */
-#endif
-
-#ifndef btVoid
-#define btVoid         26      /* void basic type */
-#endif
-
-typedef enum sc {
-  sc_Nil        = scNil,         /* no storage class */
-  sc_Text       = scText,        /* text symbol */
-  sc_Data       = scData,        /* initialized data symbol */
-  sc_Bss        = scBss,         /* un-initialized data symbol */
-  sc_Register   = scRegister,    /* value of symbol is register number */
-  sc_Abs        = scAbs,         /* value of symbol is absolute */
-  sc_Undefined  = scUndefined,   /* who knows? */
-  sc_CdbLocal   = scCdbLocal,    /* variable's value is IN se->va.?? */
-  sc_Bits       = scBits,        /* this is a bit field */
-  sc_CdbSystem  = scCdbSystem,   /* var's value is IN CDB's address space */
-  sc_RegImage   = scRegImage,    /* register value saved on stack */
-  sc_Info       = scInfo,        /* symbol contains debugger information */
-  sc_UserStruct         = scUserStruct,  /* addr in struct user for current process */
-  sc_SData      = scSData,       /* load time only small data */
-  sc_SBss       = scSBss,        /* load time only small common */
-  sc_RData      = scRData,       /* load time only read only data */
-  sc_Var        = scVar,         /* Var parameter (fortran,pascal) */
-  sc_Common     = scCommon,      /* common variable */
-  sc_SCommon    = scSCommon,     /* small common */
-  sc_VarRegister = scVarRegister, /* Var parameter in a register */
-  sc_Variant    = scVariant,     /* Variant record */
-  sc_SUndefined         = scSUndefined,  /* small undefined(external) data */
-  sc_Init       = scInit,        /* .init section symbol */
-  sc_Max        = scMax          /* Max storage class+1 */
-} sc_t;
-
-/* Redefinition of symbol type.  */
-
-typedef enum st {
-  st_Nil       = stNil,        /* Nuthin' special */
-  st_Global    = stGlobal,     /* external symbol */
-  st_Static    = stStatic,     /* static */
-  st_Param     = stParam,      /* procedure argument */
-  st_Local     = stLocal,      /* local variable */
-  st_Label     = stLabel,      /* label */
-  st_Proc      = stProc,       /*     "      "  Procedure */
-  st_Block     = stBlock,      /* beginning of block */
-  st_End       = stEnd,        /* end (of anything) */
-  st_Member    = stMember,     /* member (of anything  - struct/union/enum */
-  st_Typedef   = stTypedef,    /* type definition */
-  st_File      = stFile,       /* file name */
-  st_RegReloc  = stRegReloc,   /* register relocation */
-  st_Forward   = stForward,    /* forwarding address */
-  st_StaticProc        = stStaticProc, /* load time only static procs */
-  st_StaParam  = stStaParam,   /* Fortran static parameters */
-  st_Constant  = stConstant,   /* const */
-#ifdef stStruct
-  st_Struct    = stStruct,     /* struct */
-  st_Union     = stUnion,      /* union */
-  st_Enum      = stEnum,       /* enum */
-#endif
-  st_Str       = stStr,        /* string */
-  st_Number    = stNumber,     /* pure number (i.e. 4 NOR 2+2) */
-  st_Expr      = stExpr,       /* 2+2 vs. 4 */
-  st_Type      = stType,       /* post-coercion SER */
-  st_Max       = stMax         /* max type+1 */
-} st_t;
-
-/* Redefinition of type qualifiers.  */
-
-typedef enum tq {
-  tq_Nil       = tqNil,        /* bt is what you see */
-  tq_Ptr       = tqPtr,        /* pointer */
-  tq_Proc      = tqProc,       /* procedure */
-  tq_Array     = tqArray,      /* duh */
-  tq_Far       = tqFar,        /* longer addressing - 8086/8 land */
-  tq_Vol       = tqVol,        /* volatile */
-  tq_Max       = tqMax         /* Max type qualifier+1 */
-} tq_t;
-
-/* Redefinition of basic types.  */
-
-typedef enum bt {
-  bt_Nil       = btNil,        /* undefined */
-  bt_Adr       = btAdr,        /* address - integer same size as pointer */
-  bt_Char      = btChar,       /* character */
-  bt_UChar     = btUChar,      /* unsigned character */
-  bt_Short     = btShort,      /* short */
-  bt_UShort    = btUShort,     /* unsigned short */
-  bt_Int       = btInt,        /* int */
-  bt_UInt      = btUInt,       /* unsigned int */
-  bt_Long      = btLong,       /* long */
-  bt_ULong     = btULong,      /* unsigned long */
-  bt_Float     = btFloat,      /* float (real) */
-  bt_Double    = btDouble,     /* Double (real) */
-  bt_Struct    = btStruct,     /* Structure (Record) */
-  bt_Union     = btUnion,      /* Union (variant) */
-  bt_Enum      = btEnum,       /* Enumerated */
-  bt_Typedef   = btTypedef,    /* defined via a typedef, isymRef points */
-  bt_Range     = btRange,      /* subrange of int */
-  bt_Set       = btSet,        /* pascal sets */
-  bt_Complex   = btComplex,    /* fortran complex */
-  bt_DComplex  = btDComplex,   /* fortran double complex */
-  bt_Indirect  = btIndirect,   /* forward or unnamed typedef */
-  bt_FixedDec  = btFixedDec,   /* Fixed Decimal */
-  bt_FloatDec  = btFloatDec,   /* Float Decimal */
-  bt_String    = btString,     /* Varying Length Character String */
-  bt_Bit       = btBit,        /* Aligned Bit String */
-  bt_Picture   = btPicture,    /* Picture */
-  bt_Void      = btVoid,       /* void */
-  bt_Max       = btMax         /* Max basic type+1 */
-} bt_t;
-
-/* Redefinition of the language codes.  */
-
-typedef enum lang {
-  lang_C        = langC,
-  lang_Pascal   = langPascal,
-  lang_Fortran  = langFortran,
-  lang_Assembler = langAssembler,
-  lang_Machine  = langMachine,
-  lang_Nil      = langNil,
-  lang_Ada      = langAda,
-  lang_Pl1      = langPl1,
-  lang_Cobol    = langCobol
-} lang_t;
-
-/* Redefinition of the debug level codes.  */
-
-typedef enum glevel {
-  glevel_0     = GLEVEL_0,
-  glevel_1     = GLEVEL_1,
-  glevel_2     = GLEVEL_2,
-  glevel_3     = GLEVEL_3
-} glevel_t;
-
-\f
-/* Keep track of the active scopes.  */
-typedef struct scope {
-  struct scope *prev;          /* previous scope */
-  ulong open_sym;              /* symbol opening scope */
-  sc_t sc;                     /* storage class */
-  st_t st;                     /* symbol type */
-} scope_t;
-
-struct filehdr global_hdr;     /* a.out header */
-
-int     errors         = 0;    /* # of errors */
-int     want_aux       = 0;    /* print aux table */
-int     want_line      = 0;    /* print line numbers */
-int     want_rfd       = 0;    /* print relative file desc's */
-int     want_scope     = 0;    /* print scopes for every symbol */
-int     tfile          = 0;    /* no global header file */
-int     version        = 0;    /* print version # */
-int     verbose        = 0;
-int     tfile_fd;              /* file descriptor of .T file */
-off_t   tfile_offset;          /* current offset in .T file */
-scope_t        *cur_scope      = 0;    /* list of active scopes */
-scope_t        *free_scope     = 0;    /* list of freed scopes */
-HDRR    sym_hdr;               /* symbolic header */
-char   *l_strings;             /* local strings */
-char   *e_strings;             /* external strings */
-SYMR   *l_symbols;             /* local symbols */
-EXTR   *e_symbols;             /* external symbols */
-LINER  *lines;                 /* line numbers */
-DNR    *dense_nums;            /* dense numbers */
-OPTR   *opt_symbols;           /* optimization symbols */
-AUXU   *aux_symbols;           /* Auxiliary symbols */
-char   *aux_used;              /* map of which aux syms are used */
-FDR    *file_desc;             /* file tables */
-ulong  *rfile_desc;            /* relative file tables */
-PDR    *proc_desc;             /* procedure tables */
-
-/* Forward reference for functions.  */
-static void *read_seek (void *, size_t, off_t, const char *);
-static void read_tfile (void);
-static void print_global_hdr (struct filehdr *);
-static void print_sym_hdr (HDRR *);
-static void print_file_desc (FDR *, int);
-static void print_symbol (SYMR *, int, const char *, AUXU *, int, FDR *);
-static void print_aux (AUXU, int, int);
-static void emit_aggregate (char *, AUXU, AUXU, const char *, FDR *);
-static const char *st_to_string (st_t);
-static const char *sc_to_string (sc_t);
-static const char *glevel_to_string (glevel_t);
-static const char *lang_to_string (lang_t);
-static const char *type_to_string (AUXU *, int, FDR *);
-
-extern char *optarg;
-extern int   optind;
-extern int   opterr;
-
-/* Create a table of debugging stab-codes and corresponding names.  */
-
-#define __define_stab(NAME, CODE, STRING) {(int)CODE, STRING},
-const struct {const short code; const char string[10];} stab_names[]  = {
-#include "stab.def"
-#undef __define_stab
-};
-
-/* Command line options for getopt_long.  */
-
-static const struct option options[] =
-{
-  { "version", 0, 0, 'V' },
-  { "verbose", 0, 0, 'v' },
-  { 0, 0, 0, 0 }
-};
-\f
-/* Read some bytes at a specified location, and return a pointer.
-   Read_seek takes a pointer PTR to a buffer or NULL and reads SIZE
-   bytes from offset OFFSET.  In case of errors CONTEXT is used as
-   error message.  */
-
-static void *
-read_seek (void *ptr, size_t size, off_t offset,  const char *context)
-{
-  long read_size = 0;
-
-  if (size == 0)               /* nothing to read */
-    return ptr;
-
-  if (!ptr)
-    ptr = xmalloc (size);
-
-  if ((tfile_offset != offset && lseek (tfile_fd, offset, 0) == -1)
-      || (read_size = read (tfile_fd, ptr, size)) < 0)
-    {
-      perror (context);
-      exit (1);
-    }
-
-  if (read_size != (long) size)
-    {
-      fprintf (stderr, "%s: read %ld bytes, expected %ld bytes\n",
-              context, read_size, (long) size);
-      exit (1);
-    }
-
-  tfile_offset = offset + size;
-  return ptr;
-}
-
-\f
-/* Convert language code to string format.  */
-
-static const char *
-lang_to_string (lang_t lang)
-{
-  switch (lang)
-    {
-    case langC:                return "C";
-    case langPascal:   return "Pascal";
-    case langFortran:  return "Fortran";
-    case langAssembler:        return "Assembler";
-    case langMachine:  return "Machine";
-    case langNil:      return "Nil";
-    case langAda:      return "Ada";
-    case langPl1:      return "Pl1";
-    case langCobol:    return "Cobol";
-    }
-
-  return "Unknown language";
-}
-
-\f
-/* Convert storage class to string.  */
-
-static const char *
-sc_to_string (sc_t storage_class)
-{
-  switch(storage_class)
-    {
-    case sc_Nil:        return "Nil";
-    case sc_Text:       return "Text";
-    case sc_Data:       return "Data";
-    case sc_Bss:        return "Bss";
-    case sc_Register:   return "Register";
-    case sc_Abs:        return "Abs";
-    case sc_Undefined:  return "Undefined";
-    case sc_CdbLocal:   return "CdbLocal";
-    case sc_Bits:       return "Bits";
-    case sc_CdbSystem:  return "CdbSystem";
-    case sc_RegImage:   return "RegImage";
-    case sc_Info:       return "Info";
-    case sc_UserStruct:         return "UserStruct";
-    case sc_SData:      return "SData";
-    case sc_SBss:       return "SBss";
-    case sc_RData:      return "RData";
-    case sc_Var:        return "Var";
-    case sc_Common:     return "Common";
-    case sc_SCommon:    return "SCommon";
-    case sc_VarRegister: return "VarRegister";
-    case sc_Variant:    return "Variant";
-    case sc_SUndefined:         return "SUndefined";
-    case sc_Init:       return "Init";
-    case sc_Max:        return "Max";
-    }
-
-  return "???";
-}
-
-\f
-/* Convert symbol type to string.  */
-
-static const char *
-st_to_string (st_t symbol_type)
-{
-  switch(symbol_type)
-    {
-    case st_Nil:       return "Nil";
-    case st_Global:    return "Global";
-    case st_Static:    return "Static";
-    case st_Param:     return "Param";
-    case st_Local:     return "Local";
-    case st_Label:     return "Label";
-    case st_Proc:      return "Proc";
-    case st_Block:     return "Block";
-    case st_End:       return "End";
-    case st_Member:    return "Member";
-    case st_Typedef:   return "Typedef";
-    case st_File:      return "File";
-    case st_RegReloc:  return "RegReloc";
-    case st_Forward:   return "Forward";
-    case st_StaticProc:        return "StaticProc";
-    case st_Constant:  return "Constant";
-    case st_StaParam:  return "StaticParam";
-#ifdef stStruct
-    case st_Struct:    return "Struct";
-    case st_Union:     return "Union";
-    case st_Enum:      return "Enum";
-#endif
-    case st_Str:       return "String";
-    case st_Number:    return "Number";
-    case st_Expr:      return "Expr";
-    case st_Type:      return "Type";
-    case st_Max:       return "Max";
-    }
-
-  return "???";
-}
-
-\f
-/* Convert debug level to string.  */
-
-static const char *
-glevel_to_string (glevel_t g_level)
-{
-  switch(g_level)
-    {
-    case GLEVEL_0: return "G0";
-    case GLEVEL_1: return "G1";
-    case GLEVEL_2: return "G2";
-    case GLEVEL_3: return "G3";
-    }
-
-  return "??";
-}
-
-\f
-/* Convert the type information to string format.  */
-
-static const char *
-type_to_string (AUXU *aux_ptr, int index, FDR *fdp)
-{
-  AUXU u;
-  struct qual {
-    tq_t type;
-    int  low_bound;
-    int  high_bound;
-    int  stride;
-  } qualifiers[7];
-
-  bt_t basic_type;
-  int i;
-  static char buffer1[1024];
-  static char buffer2[1024];
-  char *p1 = buffer1;
-  char *p2 = buffer2;
-  char *used_ptr = aux_used + (aux_ptr - aux_symbols);
-
-  for (i = 0; i < 7; i++)
-    {
-      qualifiers[i].low_bound = 0;
-      qualifiers[i].high_bound = 0;
-      qualifiers[i].stride = 0;
-    }
-
-  used_ptr[index] = 1;
-  u = aux_ptr[index++];
-  if (u.isym == -1)
-    return "-1 (no type)";
-
-  basic_type = (bt_t) u.ti.bt;
-  qualifiers[0].type = (tq_t) u.ti.tq0;
-  qualifiers[1].type = (tq_t) u.ti.tq1;
-  qualifiers[2].type = (tq_t) u.ti.tq2;
-  qualifiers[3].type = (tq_t) u.ti.tq3;
-  qualifiers[4].type = (tq_t) u.ti.tq4;
-  qualifiers[5].type = (tq_t) u.ti.tq5;
-  qualifiers[6].type = tq_Nil;
-
-  /*
-   * Go get the basic type.
-   */
-  switch (basic_type)
-    {
-    case bt_Nil:               /* undefined */
-      strcpy (p1, "nil");
-      break;
-
-    case bt_Adr:               /* address - integer same size as pointer */
-      strcpy (p1, "address");
-      break;
-
-    case bt_Char:              /* character */
-      strcpy (p1, "char");
-      break;
-
-    case bt_UChar:             /* unsigned character */
-      strcpy (p1, "unsigned char");
-      break;
-
-    case bt_Short:             /* short */
-      strcpy (p1, "short");
-      break;
-
-    case bt_UShort:            /* unsigned short */
-      strcpy (p1, "unsigned short");
-      break;
-
-    case bt_Int:               /* int */
-      strcpy (p1, "int");
-      break;
-
-    case bt_UInt:              /* unsigned int */
-      strcpy (p1, "unsigned int");
-      break;
-
-    case bt_Long:              /* long */
-      strcpy (p1, "long");
-      break;
-
-    case bt_ULong:             /* unsigned long */
-      strcpy (p1, "unsigned long");
-      break;
-
-    case bt_Float:             /* float (real) */
-      strcpy (p1, "float");
-      break;
-
-    case bt_Double:            /* Double (real) */
-      strcpy (p1, "double");
-      break;
-
-      /* Structures add 1-2 aux words:
-        1st word is [ST_RFDESCAPE, offset] pointer to struct def;
-        2nd word is file index if 1st word rfd is ST_RFDESCAPE.  */
-
-    case bt_Struct:            /* Structure (Record) */
-      emit_aggregate (p1, aux_ptr[index], aux_ptr[index+1], "struct", fdp);
-      used_ptr[index] = 1;
-      if (aux_ptr[index].rndx.rfd == ST_RFDESCAPE)
-       used_ptr[++index] = 1;
-
-      index++;                 /* skip aux words */
-      break;
-
-      /* Unions add 1-2 aux words:
-        1st word is [ST_RFDESCAPE, offset] pointer to union def;
-        2nd word is file index if 1st word rfd is ST_RFDESCAPE.  */
-
-    case bt_Union:             /* Union */
-      emit_aggregate (p1, aux_ptr[index], aux_ptr[index+1], "union", fdp);
-      used_ptr[index] = 1;
-      if (aux_ptr[index].rndx.rfd == ST_RFDESCAPE)
-       used_ptr[++index] = 1;
-
-      index++;                 /* skip aux words */
-      break;
-
-      /* Enumerations add 1-2 aux words:
-        1st word is [ST_RFDESCAPE, offset] pointer to enum def;
-        2nd word is file index if 1st word rfd is ST_RFDESCAPE.  */
-
-    case bt_Enum:              /* Enumeration */
-      emit_aggregate (p1, aux_ptr[index], aux_ptr[index+1], "enum", fdp);
-      used_ptr[index] = 1;
-      if (aux_ptr[index].rndx.rfd == ST_RFDESCAPE)
-       used_ptr[++index] = 1;
-
-      index++;                 /* skip aux words */
-      break;
-
-    case bt_Typedef:           /* defined via a typedef, isymRef points */
-      strcpy (p1, "typedef");
-      break;
-
-    case bt_Range:             /* subrange of int */
-      strcpy (p1, "subrange");
-      break;
-
-    case bt_Set:               /* pascal sets */
-      strcpy (p1, "set");
-      break;
-
-    case bt_Complex:           /* fortran complex */
-      strcpy (p1, "complex");
-      break;
-
-    case bt_DComplex:          /* fortran double complex */
-      strcpy (p1, "double complex");
-      break;
-
-    case bt_Indirect:          /* forward or unnamed typedef */
-      strcpy (p1, "forward/unnamed typedef");
-      break;
-
-    case bt_FixedDec:          /* Fixed Decimal */
-      strcpy (p1, "fixed decimal");
-      break;
-
-    case bt_FloatDec:          /* Float Decimal */
-      strcpy (p1, "float decimal");
-      break;
-
-    case bt_String:            /* Varying Length Character String */
-      strcpy (p1, "string");
-      break;
-
-    case bt_Bit:               /* Aligned Bit String */
-      strcpy (p1, "bit");
-      break;
-
-    case bt_Picture:           /* Picture */
-      strcpy (p1, "picture");
-      break;
-
-    case bt_Void:              /* Void */
-      strcpy (p1, "void");
-      break;
-
-    default:
-      sprintf (p1, "Unknown basic type %d", (int) basic_type);
-      break;
-    }
-
-  p1 += strlen (buffer1);
-
-  /*
-   * If this is a bitfield, get the bitsize.
-   */
-  if (u.ti.fBitfield)
-    {
-      int bitsize;
-
-      used_ptr[index] = 1;
-      bitsize = aux_ptr[index++].width;
-      sprintf (p1, " : %d", bitsize);
-      p1 += strlen (buffer1);
-    }
-
-
-  /*
-   * Deal with any qualifiers.
-   */
-  if (qualifiers[0].type != tq_Nil)
-    {
-      /*
-       * Snarf up any array bounds in the correct order.  Arrays
-       * store 5 successive words in the aux. table:
-       *       word 0  RNDXR to type of the bounds (i.e., int)
-       *       word 1  Current file descriptor index
-       *       word 2  low bound
-       *       word 3  high bound (or -1 if [])
-       *       word 4  stride size in bits
-       */
-      for (i = 0; i < 7; i++)
-       {
-         if (qualifiers[i].type == tq_Array)
-           {
-             qualifiers[i].low_bound  = aux_ptr[index+2].dnLow;
-             qualifiers[i].high_bound = aux_ptr[index+3].dnHigh;
-             qualifiers[i].stride     = aux_ptr[index+4].width;
-             used_ptr[index] = 1;
-             used_ptr[index+1] = 1;
-             used_ptr[index+2] = 1;
-             used_ptr[index+3] = 1;
-             used_ptr[index+4] = 1;
-             index += 5;
-           }
-       }
-
-      /*
-       * Now print out the qualifiers.
-       */
-      for (i = 0; i < 6; i++)
-       {
-         switch (qualifiers[i].type)
-           {
-           case tq_Nil:
-           case tq_Max:
-             break;
-
-           case tq_Ptr:
-             strcpy (p2, "ptr to ");
-             p2 += sizeof ("ptr to ")-1;
-             break;
-
-           case tq_Vol:
-             strcpy (p2, "volatile ");
-             p2 += sizeof ("volatile ")-1;
-             break;
-
-           case tq_Far:
-             strcpy (p2, "far ");
-             p2 += sizeof ("far ")-1;
-             break;
-
-           case tq_Proc:
-             strcpy (p2, "func. ret. ");
-             p2 += sizeof ("func. ret. ");
-             break;
-
-           case tq_Array:
-             {
-               int first_array = i;
-               int j;
-
-               /* Print array bounds reversed (i.e., in the order the C
-                  programmer writes them).  C is such a fun language....  */
-
-               while (i < 5 && qualifiers[i+1].type == tq_Array)
-                 i++;
-
-               for (j = i; j >= first_array; j--)
-                 {
-                   strcpy (p2, "array [");
-                   p2 += sizeof ("array [")-1;
-                   if (qualifiers[j].low_bound != 0)
-                     sprintf (p2,
-                              "%ld:%ld {%ld bits}",
-                              (long) qualifiers[j].low_bound,
-                              (long) qualifiers[j].high_bound,
-                              (long) qualifiers[j].stride);
-
-                   else if (qualifiers[j].high_bound != -1)
-                     sprintf (p2,
-                              "%ld {%ld bits}",
-                              (long) (qualifiers[j].high_bound + 1),
-                              (long) (qualifiers[j].stride));
-
-                   else
-                     sprintf (p2, " {%ld bits}", (long) (qualifiers[j].stride));
-
-                   p2 += strlen (p2);
-                   strcpy (p2, "] of ");
-                   p2 += sizeof ("] of ")-1;
-                 }
-             }
-             break;
-           }
-       }
-    }
-
-  strcpy (p2, buffer1);
-  return buffer2;
-}
-
-\f
-/* Print out the global file header for object files.  */
-
-static void
-print_global_hdr (struct filehdr *ptr)
-{
-  char *time = ctime ((time_t *)&ptr->f_timdat);
-  ushort flags = ptr->f_flags;
-
-  printf("Global file header:\n");
-  printf("    %-*s 0x%x\n",    24, "magic number",          (ushort) ptr->f_magic);
-  printf("    %-*s %d\n",      24, "# sections",            (int)    ptr->f_nscns);
-  printf("    %-*s %ld, %s",   24, "timestamp",                     (long)   ptr->f_timdat, time);
-  printf("    %-*s %ld\n",     24, "symbolic header offset", (long)   ptr->f_symptr);
-  printf("    %-*s %ld\n",     24, "symbolic header size",   (long)   ptr->f_nsyms);
-  printf("    %-*s %ld\n",     24, "optional header",       (long)   ptr->f_opthdr);
-  printf("    %-*s 0x%x",     24, "flags",                  (ushort) flags);
-
-  if ((flags & F_RELFLG) != 0)
-    printf (", F_RELFLG");
-
-  if ((flags & F_EXEC) != 0)
-    printf (", F_EXEC");
-
-  if ((flags & F_LNNO) != 0)
-    printf (", F_LNNO");
-
-  if ((flags & F_LSYMS) != 0)
-    printf (", F_LSYMS");
-
-  if ((flags & F_MINMAL) != 0)
-    printf (", F_MINMAL");
-
-  if ((flags & F_UPDATE) != 0)
-    printf (", F_UPDATE");
-
-  if ((flags & F_SWABD) != 0)
-    printf (", F_SWABD");
-
-  if ((flags & F_AR16WR) != 0)
-    printf (", F_AR16WR");
-
-  if ((flags & F_AR32WR) != 0)
-    printf (", F_AR32WR");
-
-  if ((flags & F_AR32W) != 0)
-    printf (", F_AR32W");
-
-  if ((flags & F_PATCH) != 0)
-    printf (", F_PATCH/F_NODF");
-
-  printf ("\n\n");
-}
-
-\f
-/* Print out the symbolic header.  */
-
-static void
-print_sym_hdr (HDRR *sym_ptr)
-{
-  int width = 20;
-
-  printf("Symbolic header, magic number = 0x%04x, vstamp = %d.%d:\n\n",
-        sym_ptr->magic & 0xffff,
-        (sym_ptr->vstamp & 0xffff) >> 8,
-        sym_ptr->vstamp & 0xff);
-
-  printf("    %-*s %11s %11s %11s\n", width, "Info", "Offset", "Number", "Bytes");
-  printf("    %-*s %11s %11s %11s\n", width, "====", "======", "======", "=====\n");
-
-  printf("    %-*s %11ld %11ld %11ld [%d]\n", width, "Line numbers",
-        (long) sym_ptr->cbLineOffset,
-        (long) sym_ptr->cbLine,
-        (long) sym_ptr->cbLine,
-        (int) sym_ptr->ilineMax);
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "Dense numbers",
-        (long) sym_ptr->cbDnOffset,
-        (long) sym_ptr->idnMax,
-        (long) (sym_ptr->idnMax * sizeof (DNR)));
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "Procedures Tables",
-        (long) sym_ptr->cbPdOffset,
-        (long) sym_ptr->ipdMax,
-        (long) (sym_ptr->ipdMax * sizeof (PDR)));
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "Local Symbols",
-        (long) sym_ptr->cbSymOffset,
-        (long) sym_ptr->isymMax,
-        (long) (sym_ptr->isymMax * sizeof (SYMR)));
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "Optimization Symbols",
-        (long) sym_ptr->cbOptOffset,
-        (long) sym_ptr->ioptMax,
-        (long) (sym_ptr->ioptMax * sizeof (OPTR)));
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "Auxiliary Symbols",
-        (long) sym_ptr->cbAuxOffset,
-        (long) sym_ptr->iauxMax,
-        (long) (sym_ptr->iauxMax * sizeof (AUXU)));
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "Local Strings",
-        (long) sym_ptr->cbSsOffset,
-        (long) sym_ptr->issMax,
-        (long) sym_ptr->issMax);
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "External Strings",
-        (long) sym_ptr->cbSsExtOffset,
-        (long) sym_ptr->issExtMax,
-        (long) sym_ptr->issExtMax);
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "File Tables",
-        (long) sym_ptr->cbFdOffset,
-        (long) sym_ptr->ifdMax,
-        (long) (sym_ptr->ifdMax * sizeof (FDR)));
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "Relative Files",
-        (long) sym_ptr->cbRfdOffset,
-        (long) sym_ptr->crfd,
-        (long) (sym_ptr->crfd * sizeof (ulong)));
-
-  printf("    %-*s %11ld %11ld %11ld\n", width, "External Symbols",
-        (long) sym_ptr->cbExtOffset,
-        (long) sym_ptr->iextMax,
-        (long) (sym_ptr->iextMax * sizeof (EXTR)));
-}
-
-\f
-/* Print out a symbol.  */
-
-static void
-print_symbol (SYMR *sym_ptr, int number, const char *strbase, AUXU *aux_base,
-             int ifd, FDR *fdp)
-{
-  sc_t storage_class = (sc_t) sym_ptr->sc;
-  st_t symbol_type   = (st_t) sym_ptr->st;
-  ulong index       = sym_ptr->index;
-  char *used_ptr     = aux_used + (aux_base - aux_symbols);
-  scope_t *scope_ptr;
-
-  printf ("\n    Symbol# %d: \"%s\"\n", number, sym_ptr->iss + strbase);
-
-  if (aux_base != (AUXU *) 0 && index != indexNil)
-    switch (symbol_type)
-      {
-      case st_Nil:
-      case st_Label:
-       break;
-
-      case st_File:
-      case st_Block:
-       printf ("      End+1 symbol: %ld\n", index);
-       if (want_scope)
-         {
-           if (free_scope == (scope_t *) 0)
-             scope_ptr = (scope_t *) xmalloc (sizeof (scope_t));
-           else
-             {
-               scope_ptr = free_scope;
-               free_scope = scope_ptr->prev;
-             }
-           scope_ptr->open_sym = number;
-           scope_ptr->st = symbol_type;
-           scope_ptr->sc = storage_class;
-           scope_ptr->prev = cur_scope;
-           cur_scope = scope_ptr;
-         }
-       break;
-
-      case st_End:
-       if (storage_class == sc_Text || storage_class == sc_Info)
-         printf ("      First symbol: %ld\n", index);
-       else
-         {
-           used_ptr[index] = 1;
-           printf ("      First symbol: %ld\n", (long) aux_base[index].isym);
-         }
-
-       if (want_scope)
-         {
-           if (cur_scope == (scope_t *) 0)
-             printf ("      Can't pop end scope\n");
-           else
-             {
-               scope_ptr = cur_scope;
-               cur_scope = scope_ptr->prev;
-               scope_ptr->prev = free_scope;
-               free_scope = scope_ptr;
-             }
-         }
-       break;
-
-      case st_Proc:
-      case st_StaticProc:
-       if (MIPS_IS_STAB(sym_ptr))
-         ;
-       else if (ifd == -1)             /* local symbol */
-         {
-           used_ptr[index] = used_ptr[index+1] = 1;
-           printf ("      End+1 symbol: %-7ld   Type:  %s\n",
-                   (long) aux_base[index].isym,
-                   type_to_string (aux_base, index+1, fdp));
-         }
-       else                    /* global symbol */
-         printf ("      Local symbol: %ld\n", index);
-
-       if (want_scope)
-         {
-           if (free_scope == (scope_t *) 0)
-             scope_ptr = (scope_t *) xmalloc (sizeof (scope_t));
-           else
-             {
-               scope_ptr = free_scope;
-               free_scope = scope_ptr->prev;
-             }
-           scope_ptr->open_sym = number;
-           scope_ptr->st = symbol_type;
-           scope_ptr->sc = storage_class;
-           scope_ptr->prev = cur_scope;
-           cur_scope = scope_ptr;
-         }
-       break;
-
-#ifdef stStruct
-      case st_Struct:
-      case st_Union:
-      case st_Enum:
-       printf ("      End+1 symbol: %lu\n", index);
-       break;
-#endif
-
-      default:
-       if (!MIPS_IS_STAB (sym_ptr))
-         {
-           used_ptr[index] = 1;
-           printf ("      Type: %s\n",
-                   type_to_string (aux_base, index, fdp));
-         }
-       break;
-      }
-
-  if (want_scope)
-    {
-      printf ("      Scopes:  ");
-      if (cur_scope == (scope_t *) 0)
-       printf (" none\n");
-      else
-       {
-         for (scope_ptr = cur_scope;
-              scope_ptr != (scope_t *) 0;
-              scope_ptr = scope_ptr->prev)
-           {
-             const char *sclass;
-             if (scope_ptr->st == st_Proc || scope_ptr->st == st_StaticProc)
-               sclass = "func.";
-             else if (scope_ptr->st == st_File)
-               sclass = "file";
-             else if (scope_ptr->st == st_Block && scope_ptr->sc == sc_Text)
-               sclass = "block";
-             else if (scope_ptr->st == st_Block && scope_ptr->sc == sc_Info)
-               sclass = "type";
-             else
-               sclass = "???";
-
-             printf (" %ld [%s]", scope_ptr->open_sym, sclass);
-           }
-         printf ("\n");
-       }
-    }
-
-  printf ("      Value: %-13ld    ",
-         (long)sym_ptr->value);
-  if (ifd == -1)
-    printf ("String index: %ld\n", (long)sym_ptr->iss);
-  else
-    printf ("String index: %-11ld Ifd: %d\n",
-           (long)sym_ptr->iss, ifd);
-
-  printf ("      Symbol type: %-11sStorage class: %-11s",
-         st_to_string (symbol_type), sc_to_string (storage_class));
-
-  if (MIPS_IS_STAB(sym_ptr))
-    {
-      int i = ARRAY_SIZE (stab_names);
-      const char *stab_name = "stab";
-      short code = MIPS_UNMARK_STAB(sym_ptr->index);
-
-      while (--i >= 0)
-       if (stab_names[i].code == code)
-         {
-           stab_name = stab_names[i].string;
-           break;
-         }
-      printf ("Index: 0x%lx (%s)\n", (long)sym_ptr->index, stab_name);
-    }
-  else if (sym_ptr->st == stLabel && sym_ptr->index != indexNil)
-    printf ("Index: %ld (line#)\n", (long)sym_ptr->index);
-  else
-    printf ("Index: %ld\n", (long)sym_ptr->index);
-
-}
-
-\f
-/* Print out a word from the aux. table in various formats.  */
-
-static void
-print_aux (AUXU u, int auxi, int used)
-{
-  printf ("\t%s#%-5d %11ld, [%4ld/%7ld], [%2d %1d:%1d %1x:%1x:%1x:%1x:%1x:%1x]\n",
-         (used) ? "  " : "* ",
-         auxi,
-         (long) u.isym,
-         (long) u.rndx.rfd,
-         (long) u.rndx.index,
-         u.ti.bt,
-         u.ti.fBitfield,
-         u.ti.continued,
-         u.ti.tq0,
-         u.ti.tq1,
-         u.ti.tq2,
-         u.ti.tq3,
-         u.ti.tq4,
-         u.ti.tq5);
-}
-
-\f
-/* Write aggregate information to a string.  */
-
-static void
-emit_aggregate (char *string, AUXU u, AUXU u2, const char *which, FDR *fdp)
-{
-  unsigned int ifd = u.rndx.rfd;
-  unsigned int index = u.rndx.index;
-  const char *name;
-
-  if (ifd == ST_RFDESCAPE)
-    ifd = u2.isym;
-
-  /* An ifd of -1 is an opaque type.  An escaped index of 0 is a
-     struct return type of a procedure compiled without -g.  */
-  if (ifd == 0xffffffff
-      || (u.rndx.rfd == ST_RFDESCAPE && index == 0))
-    name = "<undefined>";
-  else if (index == indexNil)
-    name = "<no name>";
-  else
-    {
-      if (fdp == 0 || sym_hdr.crfd == 0)
-       fdp = &file_desc[ifd];
-      else
-       fdp = &file_desc[rfile_desc[fdp->rfdBase + ifd]];
-      name = &l_strings[fdp->issBase + l_symbols[index + fdp->isymBase].iss];
-    }
-
-  sprintf (string,
-          "%s %s { ifd = %u, index = %u }",
-          which, name, ifd, index);
-}
-
-\f
-/* Print out information about a file descriptor, and the symbols,
-   procedures, and line numbers within it.  */
-
-static void
-print_file_desc (FDR *fdp, int number)
-{
-  char *str_base;
-  AUXU *aux_base;
-  int symi, pdi;
-  int width = 20;
-  char *used_base;
-
-  str_base = l_strings + fdp->issBase;
-  aux_base = aux_symbols + fdp->iauxBase;
-  used_base = aux_used + (aux_base - aux_symbols);
-
-  printf ("\nFile #%d, \"%s\"\n\n",
-         number,
-         fdp->rss != issNil ? str_base + fdp->rss : "<unknown>");
-
-  printf ("    Name index  = %-10ld Readin      = %s\n",
-         (long) fdp->rss, (fdp->fReadin) ? "Yes" : "No");
-
-  printf ("    Merge       = %-10s Endian      = %s\n",
-         (fdp->fMerge)  ? "Yes" : "No",
-         (fdp->fBigendian) ? "BIG" : "LITTLE");
-
-  printf ("    Debug level = %-10s Language    = %s\n",
-         glevel_to_string ((glevel_t) fdp->glevel),
-         lang_to_string((lang_t) fdp->lang));
-
-  printf ("    Adr         = 0x%08lx\n\n", (long) fdp->adr);
-
-  printf("    %-*s %11s %11s %11s %11s\n", width, "Info", "Start", "Number", "Size", "Offset");
-  printf("    %-*s %11s %11s %11s %11s\n", width, "====", "=====", "======", "====", "======");
-
-  printf("    %-*s %11lu %11lu %11lu %11lu\n",
-        width, "Local strings",
-        (ulong) fdp->issBase,
-        (ulong) fdp->cbSs,
-        (ulong) fdp->cbSs,
-        (ulong) (fdp->issBase + sym_hdr.cbSsOffset));
-
-  printf("    %-*s %11lu %11lu %11lu %11lu\n",
-        width, "Local symbols",
-        (ulong) fdp->isymBase,
-        (ulong) fdp->csym,
-        (ulong) (fdp->csym * sizeof (SYMR)),
-        (ulong) (fdp->isymBase * sizeof (SYMR) + sym_hdr.cbSymOffset));
-
-  printf("    %-*s %11lu %11lu %11lu %11lu\n",
-        width, "Line numbers",
-        (ulong) fdp->cbLineOffset,
-        (ulong) fdp->cline,
-        (ulong) fdp->cbLine,
-        (ulong) (fdp->cbLineOffset + sym_hdr.cbLineOffset));
-
-  printf("    %-*s %11lu %11lu %11lu %11lu\n",
-        width, "Optimization symbols",
-        (ulong) fdp->ioptBase,
-        (ulong) fdp->copt,
-        (ulong) (fdp->copt * sizeof (OPTR)),
-        (ulong) (fdp->ioptBase * sizeof (OPTR) + sym_hdr.cbOptOffset));
-
-  printf("    %-*s %11lu %11lu %11lu %11lu\n",
-        width, "Procedures",
-        (ulong) fdp->ipdFirst,
-        (ulong) fdp->cpd,
-        (ulong) (fdp->cpd * sizeof (PDR)),
-        (ulong) (fdp->ipdFirst * sizeof (PDR) + sym_hdr.cbPdOffset));
-
-  printf("    %-*s %11lu %11lu %11lu %11lu\n",
-        width, "Auxiliary symbols",
-        (ulong) fdp->iauxBase,
-        (ulong) fdp->caux,
-        (ulong) (fdp->caux * sizeof (AUXU)),
-        (ulong) (fdp->iauxBase * sizeof(AUXU) + sym_hdr.cbAuxOffset));
-
-  printf("    %-*s %11lu %11lu %11lu %11lu\n",
-        width, "Relative Files",
-        (ulong) fdp->rfdBase,
-        (ulong) fdp->crfd,
-        (ulong) (fdp->crfd * sizeof (ulong)),
-        (ulong) (fdp->rfdBase * sizeof(ulong) + sym_hdr.cbRfdOffset));
-
-
-  if (want_scope && cur_scope != (scope_t *) 0)
-    printf ("\n    Warning scope does not start at 0!\n");
-
-  /*
-   * print the info about the symbol table.
-   */
-  printf ("\n    There are %lu local symbols, starting at %lu\n",
-         (ulong) fdp->csym,
-         (ulong) (fdp->isymBase + sym_hdr.cbSymOffset));
-
-  for(symi = fdp->isymBase; symi < (fdp->csym + fdp->isymBase); symi++)
-    print_symbol (&l_symbols[symi],
-                 symi - fdp->isymBase,
-                 str_base,
-                 aux_base,
-                 -1,
-                 fdp);
-
-  if (want_scope && cur_scope != (scope_t *) 0)
-    printf ("\n    Warning scope does not end at 0!\n");
-
-  /*
-   * print the aux. table if desired.
-   */
-
-  if (want_aux && fdp->caux != 0)
-    {
-      int auxi;
-
-      printf ("\n    There are %lu auxiliary table entries, starting at %lu.\n\n",
-             (ulong) fdp->caux,
-             (ulong) (fdp->iauxBase + sym_hdr.cbAuxOffset));
-
-      for (auxi = fdp->iauxBase; auxi < (fdp->caux + fdp->iauxBase); auxi++)
-       print_aux (aux_base[auxi], auxi, used_base[auxi]);
-    }
-
-  /*
-   * print the relative file descriptors.
-   */
-  if (want_rfd && fdp->crfd != 0)
-    {
-      ulong *rfd_ptr, i;
-
-      printf ("\n    There are %lu relative file descriptors, starting at %lu.\n",
-             (ulong) fdp->crfd,
-             (ulong) fdp->rfdBase);
-
-      rfd_ptr = rfile_desc + fdp->rfdBase;
-      for (i = 0; i < (ulong) fdp->crfd; i++)
-       {
-         printf ("\t#%-5ld %11ld, 0x%08lx\n", i, *rfd_ptr, *rfd_ptr);
-         rfd_ptr++;
-       }
-    }
-
-  /*
-   * do the procedure descriptors.
-   */
-  printf ("\n    There are %lu procedure descriptor entries, ", (ulong) fdp->cpd);
-  printf ("starting at %lu.\n", (ulong) fdp->ipdFirst);
-
-  for (pdi = fdp->ipdFirst; pdi < (fdp->cpd + fdp->ipdFirst); pdi++)
-    {
-      PDR *proc_ptr = &proc_desc[pdi];
-      printf ("\n\tProcedure descriptor %d:\n", (pdi - fdp->ipdFirst));
-
-      if (l_symbols != 0)
-       printf ("\t    Name index   = %-11ld Name          = \"%s\"\n",
-               (long) l_symbols[proc_ptr->isym + fdp->isymBase].iss,
-               l_symbols[proc_ptr->isym + fdp->isymBase].iss + str_base);
-
-      printf ("\t    .mask 0x%08lx,%-9ld .fmask 0x%08lx,%ld\n",
-             (long) proc_ptr->regmask,
-             (long) proc_ptr->regoffset,
-             (long) proc_ptr->fregmask,
-             (long) proc_ptr->fregoffset);
-
-      printf ("\t    .frame $%d,%ld,$%d\n",
-             (int)  proc_ptr->framereg,
-             (long) proc_ptr->frameoffset,
-             (int)  proc_ptr->pcreg);
-
-      printf ("\t    Opt. start   = %-11ld Symbols start = %ld\n",
-             (long) proc_ptr->iopt,
-             (long) proc_ptr->isym);
-
-      printf ("\t    First line # = %-11ld Last line #   = %ld\n",
-             (long) proc_ptr->lnLow,
-             (long) proc_ptr->lnHigh);
-
-      printf ("\t    Line Offset  = %-11ld Address       = 0x%08lx\n",
-             (long) proc_ptr->cbLineOffset,
-             (long) proc_ptr->adr);
-
-      /*
-       * print the line number entries.
-       */
-
-      if (want_line && fdp->cline != 0)
-       {
-         int delta, count;
-         long cur_line = proc_ptr->lnLow;
-         uchar *line_ptr = (((uchar *)lines) + proc_ptr->cbLineOffset
-                            + fdp->cbLineOffset);
-         uchar *line_end;
-
-         if (pdi == fdp->cpd + fdp->ipdFirst - 1)      /* last procedure */
-           line_end = ((uchar *)lines) + fdp->cbLine + fdp->cbLineOffset;
-         else                                          /* not last proc.  */
-           line_end = (((uchar *)lines) + proc_desc[pdi+1].cbLineOffset
-                       + fdp->cbLineOffset);
-
-         printf ("\n\tThere are %lu bytes holding line numbers, starting at %lu.\n",
-                 (ulong) (line_end - line_ptr),
-                 (ulong) (fdp->ilineBase + sym_hdr.cbLineOffset));
-
-         while (line_ptr < line_end)
-           {                                           /* sign extend nibble */
-             delta = ((*line_ptr >> 4) ^ 0x8) - 0x8;
-             count = (*line_ptr & 0xf) + 1;
-             if (delta != -8)
-               line_ptr++;
-             else
-               {
-                 delta = (((line_ptr[1]) & 0xff) << 8) + ((line_ptr[2]) & 0xff);
-                 delta = (delta ^ 0x8000) - 0x8000;
-                 line_ptr += 3;
-               }
-
-             cur_line += delta;
-             printf ("\t    Line %11ld,   delta %5d,   count %2d\n",
-                     cur_line,
-                     delta,
-                     count);
-           }
-       }
-    }
-}
-
-\f
-/* Read in the portions of the .T file that we will print out.  */
-
-static void
-read_tfile (void)
-{
-  short magic;
-  off_t sym_hdr_offset = 0;
-
-  read_seek (&magic, sizeof (magic), 0, "Magic number");
-  if (!tfile)
-    {
-      /* Print out the global header, since this is not a T-file.  */
-
-      read_seek (&global_hdr, sizeof (global_hdr), 0, "Global file header");
-
-      print_global_hdr (&global_hdr);
-
-      if (global_hdr.f_symptr == 0)
-       {
-         printf ("No symbolic header, Goodbye!\n");
-         exit (1);
-       }
-
-      sym_hdr_offset = global_hdr.f_symptr;
-    }
-
-  read_seek (&sym_hdr, sizeof (sym_hdr), sym_hdr_offset, "Symbolic header");
-
-  print_sym_hdr (&sym_hdr);
-
-  lines = (LINER *) read_seek (NULL, sym_hdr.cbLine, sym_hdr.cbLineOffset,
-                              "Line numbers");
-
-  dense_nums = (DNR *) read_seek (NULL, sym_hdr.idnMax * sizeof (DNR),
-                                 sym_hdr.cbDnOffset, "Dense numbers");
-
-  proc_desc = (PDR *) read_seek (NULL, sym_hdr.ipdMax * sizeof (PDR),
-                                sym_hdr.cbPdOffset, "Procedure tables");
-
-  l_symbols = (SYMR *) read_seek (NULL, sym_hdr.isymMax * sizeof (SYMR),
-                                 sym_hdr.cbSymOffset, "Local symbols");
-
-  opt_symbols = (OPTR *) read_seek (NULL, sym_hdr.ioptMax * sizeof (OPTR),
-                                   sym_hdr.cbOptOffset,
-                                   "Optimization symbols");
-
-  aux_symbols = (AUXU *) read_seek (NULL, sym_hdr.iauxMax * sizeof (AUXU),
-                                   sym_hdr.cbAuxOffset, "Auxiliary symbols");
-
-  if (sym_hdr.iauxMax > 0)
-    aux_used = (char *) xcalloc (sym_hdr.iauxMax, 1);
-
-  l_strings = (char *) read_seek (NULL, sym_hdr.issMax,
-                                 sym_hdr.cbSsOffset, "Local string table");
-
-  e_strings = (char *) read_seek (NULL, sym_hdr.issExtMax,
-                                 sym_hdr.cbSsExtOffset,
-                                 "External string table");
-
-  file_desc = (FDR *) read_seek (NULL, sym_hdr.ifdMax * sizeof (FDR),
-                                sym_hdr.cbFdOffset, "File tables");
-
-  rfile_desc = (ulong *) read_seek (NULL, sym_hdr.crfd * sizeof (ulong),
-                                   sym_hdr.cbRfdOffset,
-                                   "Relative file tables");
-
-  e_symbols = (EXTR *) read_seek (NULL, sym_hdr.iextMax * sizeof (EXTR),
-                                 sym_hdr.cbExtOffset, "External symbols");
-}
-
-\f
-
-extern int main (int, char **);
-
-int
-main (int argc, char **argv)
-{
-  int i, opt;
-
-  /*
-   * Process arguments
-   */
-  while ((opt = getopt_long (argc, argv, "alrsvt", options, NULL)) != -1)
-    switch (opt)
-      {
-      default: errors++;       break;
-      case 'a': want_aux++;    break;  /* print aux table */
-      case 'l': want_line++;   break;  /* print line numbers */
-      case 'r': want_rfd++;    break;  /* print relative fd's */
-      case 's':        want_scope++;   break;  /* print scope info */
-      case 'v': verbose++;     break;  /* print version # */
-      case 'V': version++;     break;  /* print version # */
-      case 't': tfile++;       break;  /* this is a tfile (without header),
-                                          and not a .o */
-      }
-
-  if (version)
-    {
-      printf ("mips-tdump %s%s\n", pkgversion_string, version_string);
-      fputs ("Copyright (C) 2012 Free Software Foundation, Inc.\n", stdout);
-      fputs ("This is free software; see the source for copying conditions.  There is NO\n\
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n",
-             stdout);
-      exit (0);
-    }
-
-  if (optind != argc - 1)
-    errors++;
-
-  if (verbose || errors)
-    fprintf (stderr, "mips-tdump (GCC) %s\n", version_string);
-
-  if (errors)
-    {
-      fprintf (stderr, "Calling Sequence:\n");
-      fprintf (stderr, "\t%s [-alrst] <object-or-T-file>\n", argv[0]);
-      fprintf (stderr, "\n");
-      fprintf (stderr, "switches:\n");
-      fprintf (stderr, "\t-a Print out auxiliary table.\n");
-      fprintf (stderr, "\t-l Print out line numbers.\n");
-      fprintf (stderr, "\t-r Print out relative file descriptors.\n");
-      fprintf (stderr, "\t-s Print out the current scopes for an item.\n");
-      fprintf (stderr, "\t-t Assume there is no global header (ie, a T-file).\n");
-      fprintf (stderr, "\t-v Print program version.\n");
-      return 1;
-    }
-
-  /*
-   * Open and process the input file.
-   */
-  tfile_fd = open (argv[optind], O_RDONLY);
-  if (tfile_fd < 0)
-    {
-      perror (argv[optind]);
-      return 1;
-    }
-
-  read_tfile ();
-
-  /*
-   * Print any global aux words if any.
-   */
-  if (want_aux)
-    {
-      long last_aux_in_use;
-
-      if (sym_hdr.ifdMax != 0 && file_desc[0].iauxBase != 0)
-       {
-         printf ("\nGlobal auxiliary entries before first file:\n");
-         for (i = 0; i < file_desc[0].iauxBase; i++)
-           print_aux (aux_symbols[i], 0, aux_used[i]);
-       }
-
-      if (sym_hdr.ifdMax == 0)
-       last_aux_in_use = 0;
-      else
-       last_aux_in_use
-         = (file_desc[sym_hdr.ifdMax-1].iauxBase
-            + file_desc[sym_hdr.ifdMax-1].caux - 1);
-
-      if (last_aux_in_use < sym_hdr.iauxMax-1)
-       {
-         printf ("\nGlobal auxiliary entries after last file:\n");
-         for (i = last_aux_in_use; i < sym_hdr.iauxMax; i++)
-           print_aux (aux_symbols[i], i - last_aux_in_use, aux_used[i]);
-       }
-    }
-
-  /*
-   * Print the information for each file.
-   */
-  for (i = 0; i < sym_hdr.ifdMax; i++)
-    print_file_desc (&file_desc[i], i);
-
-  /*
-   * Print the external symbols.
-   */
-  want_scope = 0;              /* scope info is meaning for extern symbols */
-  printf ("\nThere are %lu external symbols, starting at %lu\n",
-         (ulong) sym_hdr.iextMax,
-         (ulong) sym_hdr.cbExtOffset);
-
-  for(i = 0; i < sym_hdr.iextMax; i++)
-    print_symbol (&e_symbols[i].asym, i, e_strings,
-                 aux_symbols + file_desc[e_symbols[i].ifd].iauxBase,
-                 e_symbols[i].ifd,
-                 &file_desc[e_symbols[i].ifd]);
-
-  /*
-   * Print unused aux symbols now.
-   */
-
-  if (want_aux)
-    {
-      int first_time = 1;
-
-      for (i = 0; i < sym_hdr.iauxMax; i++)
-       {
-         if (! aux_used[i])
-           {
-             if (first_time)
-               {
-                 printf ("\nThe following auxiliary table entries were unused:\n\n");
-                 first_time = 0;
-               }
-
-             printf ("    #%-5d %11ld  0x%08lx  %s\n",
-                     i,
-                     (long) aux_symbols[i].isym,
-                     (long) aux_symbols[i].isym,
-                     type_to_string (aux_symbols, i, (FDR *) 0));
-           }
-       }
-    }
-
-  return 0;
-}
diff --git a/gcc/mips-tfile.c b/gcc/mips-tfile.c
deleted file mode 100644 (file)
index 25f732a..0000000
+++ /dev/null
@@ -1,5419 +0,0 @@
-/* Update the symbol table (the .T file) in a ECOFF object to
-   contain debugging information specified by the GNU compiler
-   in the form of comments (the mips assembler does not support
-   assembly access to debug information).
-   Copyright (C) 1991, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
-   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-   Free Software Foundation, Inc.
-   Contributed by Michael Meissner (meissner@cygnus.com).
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING3.  If not see
-<http://www.gnu.org/licenses/>.  */
-
-\f
-/* Here is a brief description of the MIPS ECOFF symbol table.  The
-   MIPS symbol table has the following pieces:
-
-       Symbolic Header
-           |
-           +-- Auxiliary Symbols
-           |
-           +-- Dense number table
-           |
-           +-- Optimizer Symbols
-           |
-           +-- External Strings
-           |
-           +-- External Symbols
-           |
-           +-- Relative file descriptors
-           |
-           +-- File table
-                   |
-                   +-- Procedure table
-                   |
-                   +-- Line number table
-                   |
-                   +-- Local Strings
-                   |
-                   +-- Local Symbols
-
-   The symbolic header points to each of the other tables, and also
-   contains the number of entries.  It also contains a magic number
-   and MIPS compiler version number, such as 2.0.
-
-   The auxiliary table is a series of 32 bit integers, that are
-   referenced as needed from the local symbol table.  Unlike standard
-   COFF, the aux. information does not follow the symbol that uses
-   it, but rather is a separate table.  In theory, this would allow
-   the MIPS compilers to collapse duplicate aux. entries, but I've not
-   noticed this happening with the 1.31 compiler suite.  The different
-   types of aux. entries are:
-
-    1) dnLow: Low bound on array dimension.
-
-    2) dnHigh: High bound on array dimension.
-
-    3) isym: Index to the local symbol which is the start of the
-       function for the end of function first aux. entry.
-
-    4) width: Width of structures and bitfields.
-
-    5) count: Count of ranges for variant part.
-
-    6) rndx: A relative index into the symbol table.  The relative
-       index field has two parts: rfd which is a pointer into the
-       relative file index table or ST_RFDESCAPE which says the next
-       aux. entry is the file number, and index: which is the pointer
-       into the local symbol within a given file table.  This is for
-       things like references to types defined in another file.
-
-    7) Type information: This is like the COFF type bits, except it
-       is 32 bits instead of 16; they still have room to add new
-       basic types; and they can handle more than 6 levels of array,
-       pointer, function, etc.  Each type information field contains
-       the following structure members:
-
-           a)  fBitfield: a bit that says this is a bitfield, and the
-               size in bits follows as the next aux. entry.
-
-           b)  continued: a bit that says the next aux. entry is a
-               continuation of the current type information (in case
-               there are more than 6 levels of array/ptr/function).
-
-           c)  bt: an integer containing the base type before adding
-               array, pointer, function, etc. qualifiers.  The
-               current base types that I have documentation for are:
-
-                       btNil           -- undefined
-                       btAdr           -- address - integer same size as ptr
-                       btChar          -- character
-                       btUChar         -- unsigned character
-                       btShort         -- short
-                       btUShort        -- unsigned short
-                       btInt           -- int
-                       btUInt          -- unsigned int
-                       btLong          -- long
-                       btULong         -- unsigned long
-                       btFloat         -- float (real)
-                       btDouble        -- Double (real)
-                       btStruct        -- Structure (Record)
-                       btUnion         -- Union (variant)
-                       btEnum          -- Enumerated
-                       btTypedef       -- defined via a typedef isymRef
-                       btRange         -- subrange of int
-                       btSet           -- pascal sets
-                       btComplex       -- fortran complex
-                       btDComplex      -- fortran double complex
-                       btIndirect      -- forward or unnamed typedef
-                       btFixedDec      -- Fixed Decimal
-                       btFloatDec      -- Float Decimal
-                       btString        -- Varying Length Character String
-                       btBit           -- Aligned Bit String
-                       btPicture       -- Picture
-                       btVoid          -- Void (MIPS cc revision >= 2.00)
-
-           d)  tq0 - tq5: type qualifier fields as needed.  The
-               current type qualifier fields I have documentation for
-               are:
-
-                       tqNil           -- no more qualifiers
-                       tqPtr           -- pointer
-                       tqProc          -- procedure
-                       tqArray         -- array
-                       tqFar           -- 8086 far pointers
-                       tqVol           -- volatile
-
-
-   The dense number table is used in the front ends, and disappears by
-   the time the .o is created.
-
-   With the 1.31 compiler suite, the optimization symbols don't seem
-   to be used as far as I can tell.
-
-   The linker is the first entity that creates the relative file
-   descriptor table, and I believe it is used so that the individual
-   file table pointers don't have to be rewritten when the objects are
-   merged together into the program file.
-
-   Unlike COFF, the basic symbol & string tables are split into
-   external and local symbols/strings.  The relocation information
-   only goes off of the external symbol table, and the debug
-   information only goes off of the internal symbol table.  The
-   external symbols can have links to an appropriate file index and
-   symbol within the file to give it the appropriate type information.
-   Because of this, the external symbols are actually larger than the
-   internal symbols (to contain the link information), and contain the
-   local symbol structure as a member, though this member is not the
-   first member of the external symbol structure (!).  I suspect this
-   split is to make strip easier to deal with.
-
-   Each file table has offsets for where the line numbers, local
-   strings, local symbols, and procedure table starts from within the
-   global tables, and the indices are reset to 0 for each of those
-   tables for the file.
-
-   The procedure table contains the binary equivalents of the .ent
-   (start of the function address), .frame (what register is the
-   virtual frame pointer, constant offset from the register to obtain
-   the VFP, and what register holds the return address), .mask/.fmask
-   (bitmask of saved registers, and where the first register is stored
-   relative to the VFP) assembler directives.  It also contains the
-   low and high bounds of the line numbers if debugging is turned on.
-
-   The line number table is a compressed form of the normal COFF line
-   table.  Each line number entry is either 1 or 3 bytes long, and
-   contains a signed delta from the previous line, and an unsigned
-   count of the number of instructions this statement takes.
-
-   The local symbol table contains the following fields:
-
-    1) iss: index to the local string table giving the name of the
-       symbol.
-
-    2) value: value of the symbol (address, register number, etc.).
-
-    3) st: symbol type.  The current symbol types are:
-
-           stNil         -- Nuthin' special
-           stGlobal      -- external symbol
-           stStatic      -- static
-           stParam       -- procedure argument
-           stLocal       -- local variable
-           stLabel       -- label
-           stProc        -- External Procedure
-           stBlock       -- beginning of block
-           stEnd         -- end (of anything)
-           stMember      -- member (of anything)
-           stTypedef     -- type definition
-           stFile        -- file name
-           stRegReloc    -- register relocation
-           stForward     -- forwarding address
-           stStaticProc  -- Static procedure
-           stConstant    -- const
-
-    4) sc: storage class.  The current storage classes are:
-
-           scText        -- text symbol
-           scData        -- initialized data symbol
-           scBss         -- un-initialized data symbol
-           scRegister    -- value of symbol is register number
-           scAbs         -- value of symbol is absolute
-           scUndefined   -- who knows?
-           scCdbLocal    -- variable's value is IN se->va.??
-           scBits        -- this is a bit field
-           scCdbSystem   -- value is IN debugger's address space
-           scRegImage    -- register value saved on stack
-           scInfo        -- symbol contains debugger information
-           scUserStruct  -- addr in struct user for current process
-           scSData       -- load time only small data
-           scSBss        -- load time only small common
-           scRData       -- load time only read only data
-           scVar         -- Var parameter (fortranpascal)
-           scCommon      -- common variable
-           scSCommon     -- small common
-           scVarRegister -- Var parameter in a register
-           scVariant     -- Variant record
-           scSUndefined  -- small undefined(external) data
-           scInit        -- .init section symbol
-
-    5) index: pointer to a local symbol or aux. entry.
-
-
-
-   For the following program:
-
-       #include <stdio.h>
-
-       main(){
-               printf("Hello World!\n");
-               return 0;
-       }
-
-   Mips-tdump produces the following information:
-
-   Global file header:
-       magic number             0x162
-       # sections               2
-       timestamp                645311799, Wed Jun 13 17:16:39 1990
-       symbolic header offset   284
-       symbolic header size     96
-       optional header          56
-       flags                    0x0
-
-   Symbolic header, magic number = 0x7009, vstamp = 1.31:
-
-       Info                      Offset      Number       Bytes
-       ====                      ======      ======      =====
-
-       Line numbers                 380           4           4 [13]
-       Dense numbers                  0           0           0
-       Procedures Tables            384           1          52
-       Local Symbols                436          16         192
-       Optimization Symbols           0           0           0
-       Auxiliary Symbols            628          39         156
-       Local Strings                784          80          80
-       External Strings             864         144         144
-       File Tables                 1008           2         144
-       Relative Files                 0           0           0
-       External Symbols            1152          20         320
-
-   File #0, "hello2.c"
-
-       Name index  = 1          Readin      = No
-       Merge       = No         Endian      = LITTLE
-       Debug level = G2         Language    = C
-       Adr         = 0x00000000
-
-       Info                       Start      Number        Size      Offset
-       ====                       =====      ======        ====      ======
-       Local strings                  0          15          15         784
-       Local symbols                  0           6          72         436
-       Line numbers                   0          13          13         380
-       Optimization symbols           0           0           0           0
-       Procedures                     0           1          52         384
-       Auxiliary symbols              0          14          56         628
-       Relative Files                 0           0           0           0
-
-    There are 6 local symbols, starting at 436
-
-       Symbol# 0: "hello2.c"
-           End+1 symbol  = 6
-           String index  = 1
-           Storage class = Text        Index  = 6
-           Symbol type   = File        Value  = 0
-
-       Symbol# 1: "main"
-           End+1 symbol  = 5
-           Type          = int
-           String index  = 10
-           Storage class = Text        Index  = 12
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 2: ""
-           End+1 symbol  = 4
-           String index  = 0
-           Storage class = Text        Index  = 4
-           Symbol type   = Block       Value  = 8
-
-       Symbol# 3: ""
-           First symbol  = 2
-           String index  = 0
-           Storage class = Text        Index  = 2
-           Symbol type   = End         Value  = 28
-
-       Symbol# 4: "main"
-           First symbol  = 1
-           String index  = 10
-           Storage class = Text        Index  = 1
-           Symbol type   = End         Value  = 52
-
-       Symbol# 5: "hello2.c"
-           First symbol  = 0
-           String index  = 1
-           Storage class = Text        Index  = 0
-           Symbol type   = End         Value  = 0
-
-    There are 14 auxiliary table entries, starting at 628.
-
-       * #0               0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #1              24, [  24/      0], [ 6 0:0 0:0:0:0:0:0]
-       * #2               8, [   8/      0], [ 2 0:0 0:0:0:0:0:0]
-       * #3              16, [  16/      0], [ 4 0:0 0:0:0:0:0:0]
-       * #4              24, [  24/      0], [ 6 0:0 0:0:0:0:0:0]
-       * #5              32, [  32/      0], [ 8 0:0 0:0:0:0:0:0]
-       * #6              40, [  40/      0], [10 0:0 0:0:0:0:0:0]
-       * #7              44, [  44/      0], [11 0:0 0:0:0:0:0:0]
-       * #8              12, [  12/      0], [ 3 0:0 0:0:0:0:0:0]
-       * #9              20, [  20/      0], [ 5 0:0 0:0:0:0:0:0]
-       * #10             28, [  28/      0], [ 7 0:0 0:0:0:0:0:0]
-       * #11             36, [  36/      0], [ 9 0:0 0:0:0:0:0:0]
-         #12              5, [   5/      0], [ 1 1:0 0:0:0:0:0:0]
-         #13             24, [  24/      0], [ 6 0:0 0:0:0:0:0:0]
-
-    There are 1 procedure descriptor entries, starting at 0.
-
-       Procedure descriptor 0:
-           Name index   = 10          Name          = "main"
-           .mask 0x80000000,-4        .fmask 0x00000000,0
-           .frame $29,24,$31
-           Opt. start   = -1          Symbols start = 1
-           First line # = 3           Last line #   = 6
-           Line Offset  = 0           Address       = 0x00000000
-
-       There are 4 bytes holding line numbers, starting at 380.
-           Line           3,   delta     0,   count  2
-           Line           4,   delta     1,   count  3
-           Line           5,   delta     1,   count  2
-           Line           6,   delta     1,   count  6
-
-   File #1, "/usr/include/stdio.h"
-
-    Name index  = 1          Readin      = No
-    Merge       = Yes        Endian      = LITTLE
-    Debug level = G2         Language    = C
-    Adr         = 0x00000000
-
-    Info                       Start      Number        Size      Offset
-    ====                       =====      ======        ====      ======
-    Local strings                 15          65          65         799
-    Local symbols                  6          10         120         508
-    Line numbers                   0           0           0         380
-    Optimization symbols           0           0           0           0
-    Procedures                     1           0           0         436
-    Auxiliary symbols             14          25         100         684
-    Relative Files                 0           0           0           0
-
-    There are 10 local symbols, starting at 442
-
-       Symbol# 0: "/usr/include/stdio.h"
-           End+1 symbol  = 10
-           String index  = 1
-           Storage class = Text        Index  = 10
-           Symbol type   = File        Value  = 0
-
-       Symbol# 1: "_iobuf"
-           End+1 symbol  = 9
-           String index  = 22
-           Storage class = Info        Index  = 9
-           Symbol type   = Block       Value  = 20
-
-       Symbol# 2: "_cnt"
-           Type          = int
-           String index  = 29
-           Storage class = Info        Index  = 4
-           Symbol type   = Member      Value  = 0
-
-       Symbol# 3: "_ptr"
-           Type          = ptr to char
-           String index  = 34
-           Storage class = Info        Index  = 15
-           Symbol type   = Member      Value  = 32
-
-       Symbol# 4: "_base"
-           Type          = ptr to char
-           String index  = 39
-           Storage class = Info        Index  = 16
-           Symbol type   = Member      Value  = 64
-
-       Symbol# 5: "_bufsiz"
-           Type          = int
-           String index  = 45
-           Storage class = Info        Index  = 4
-           Symbol type   = Member      Value  = 96
-
-       Symbol# 6: "_flag"
-           Type          = short
-           String index  = 53
-           Storage class = Info        Index  = 3
-           Symbol type   = Member      Value  = 128
-
-       Symbol# 7: "_file"
-           Type          = char
-           String index  = 59
-           Storage class = Info        Index  = 2
-           Symbol type   = Member      Value  = 144
-
-       Symbol# 8: ""
-           First symbol  = 1
-           String index  = 0
-           Storage class = Info        Index  = 1
-           Symbol type   = End         Value  = 0
-
-       Symbol# 9: "/usr/include/stdio.h"
-           First symbol  = 0
-           String index  = 1
-           Storage class = Text        Index  = 0
-           Symbol type   = End         Value  = 0
-
-    There are 25 auxiliary table entries, starting at 642.
-
-       * #14             -1, [4095/1048575], [63 1:1 f:f:f:f:f:f]
-         #15          65544, [   8/     16], [ 2 0:0 1:0:0:0:0:0]
-         #16          65544, [   8/     16], [ 2 0:0 1:0:0:0:0:0]
-       * #17         196656, [  48/     48], [12 0:0 3:0:0:0:0:0]
-       * #18           8191, [4095/      1], [63 1:1 0:0:0:0:f:1]
-       * #19              1, [   1/      0], [ 0 1:0 0:0:0:0:0:0]
-       * #20          20479, [4095/      4], [63 1:1 0:0:0:0:f:4]
-       * #21              1, [   1/      0], [ 0 1:0 0:0:0:0:0:0]
-       * #22              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #23              2, [   2/      0], [ 0 0:1 0:0:0:0:0:0]
-       * #24            160, [ 160/      0], [40 0:0 0:0:0:0:0:0]
-       * #25              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #26              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #27              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #28              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #29              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #30              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #31              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #32              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #33              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #34              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #35              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #36              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #37              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-       * #38              0, [   0/      0], [ 0 0:0 0:0:0:0:0:0]
-
-    There are 0 procedure descriptor entries, starting at 1.
-
-   There are 20 external symbols, starting at 1152
-
-       Symbol# 0: "_iob"
-           Type          = array [3 {160}] of struct _iobuf { ifd = 1, index = 1 }
-           String index  = 0           Ifd    = 1
-           Storage class = Nil         Index  = 17
-           Symbol type   = Global      Value  = 60
-
-       Symbol# 1: "fopen"
-           String index  = 5           Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 2: "fdopen"
-           String index  = 11          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 3: "freopen"
-           String index  = 18          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 4: "popen"
-           String index  = 26          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 5: "tmpfile"
-           String index  = 32          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 6: "ftell"
-           String index  = 40          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 7: "rewind"
-           String index  = 46          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 8: "setbuf"
-           String index  = 53          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 9: "setbuffer"
-           String index  = 60          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 10: "setlinebuf"
-           String index  = 70          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 11: "fgets"
-           String index  = 81          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 12: "gets"
-           String index  = 87          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 13: "ctermid"
-           String index  = 92          Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 14: "cuserid"
-           String index  = 100         Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 15: "tempnam"
-           String index  = 108         Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 16: "tmpnam"
-           String index  = 116         Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 17: "sprintf"
-           String index  = 123         Ifd    = 1
-           Storage class = Nil         Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 18: "main"
-           Type          = int
-           String index  = 131         Ifd    = 0
-           Storage class = Text        Index  = 1
-           Symbol type   = Proc        Value  = 0
-
-       Symbol# 19: "printf"
-           String index  = 136         Ifd    = 0
-           Storage class = Undefined   Index  = 1048575
-           Symbol type   = Proc        Value  = 0
-
-   The following auxiliary table entries were unused:
-
-    #0               0  0x00000000  void
-    #2               8  0x00000008  char
-    #3              16  0x00000010  short
-    #4              24  0x00000018  int
-    #5              32  0x00000020  long
-    #6              40  0x00000028  float
-    #7              44  0x0000002c  double
-    #8              12  0x0000000c  unsigned char
-    #9              20  0x00000014  unsigned short
-    #10             28  0x0000001c  unsigned int
-    #11             36  0x00000024  unsigned long
-    #14              0  0x00000000  void
-    #15             24  0x00000018  int
-    #19             32  0x00000020  long
-    #20             40  0x00000028  float
-    #21             44  0x0000002c  double
-    #22             12  0x0000000c  unsigned char
-    #23             20  0x00000014  unsigned short
-    #24             28  0x0000001c  unsigned int
-    #25             36  0x00000024  unsigned long
-    #26             48  0x00000030  struct no name { ifd = -1, index = 1048575 }
-
-*/
-\f
-
-#include "config.h"
-#include "system.h"
-#include "version.h"
-#include "intl.h"
-
-/* Include getopt.h for the sake of getopt_long.  */
-#include "getopt.h"
-
-/* Macros for mips-tfile.c to encapsulate stabs in ECOFF, and for
-   mips-tdump.c to print them out.
-
-   These must match the corresponding definitions in gdb/mipsread.c.
-   Unfortunately, gcc and gdb do not currently share any directories.  */
-
-#define CODE_MASK 0x8F300
-#define MIPS_IS_STAB(sym) (((sym)->index & 0xFFF00) == CODE_MASK)
-#define MIPS_MARK_STAB(code) ((code)+CODE_MASK)
-#define MIPS_UNMARK_STAB(code) ((code)-CODE_MASK)
-
-/* The following might be called from obstack or malloc,
-   so they can't be static.  */
-
-extern void pfatal_with_name (const char *) ATTRIBUTE_NORETURN;
-extern void botch (const char *) ATTRIBUTE_NORETURN;
-
-extern void fatal (const char *format, ...) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
-extern void error (const char *format, ...) ATTRIBUTE_PRINTF_1;
-\f
-/* The local and global symbols have a field index, so undo any defines
-   of index -> strchr.  */
-
-#undef index
-
-#include <a.out.h>
-#include "gstab.h"
-
-#define IS_ASM_IDENT(ch) \
-  (ISIDNUM (ch) || (ch) == '.' || (ch) == '$')
-
-\f
-/* Redefinition of storage classes as an enumeration for better
-   debugging.  */
-
-typedef enum sc {
-  sc_Nil        = scNil,         /* no storage class */
-  sc_Text       = scText,        /* text symbol */
-  sc_Data       = scData,        /* initialized data symbol */
-  sc_Bss        = scBss,         /* un-initialized data symbol */
-  sc_Register   = scRegister,    /* value of symbol is register number */
-  sc_Abs        = scAbs,         /* value of symbol is absolute */
-  sc_Undefined  = scUndefined,   /* who knows? */
-  sc_CdbLocal   = scCdbLocal,    /* variable's value is IN se->va.?? */
-  sc_Bits       = scBits,        /* this is a bit field */
-  sc_CdbSystem  = scCdbSystem,   /* value is IN CDB's address space */
-  sc_RegImage   = scRegImage,    /* register value saved on stack */
-  sc_Info       = scInfo,        /* symbol contains debugger information */
-  sc_UserStruct         = scUserStruct,  /* addr in struct user for current process */
-  sc_SData      = scSData,       /* load time only small data */
-  sc_SBss       = scSBss,        /* load time only small common */
-  sc_RData      = scRData,       /* load time only read only data */
-  sc_Var        = scVar,         /* Var parameter (fortran,pascal) */
-  sc_Common     = scCommon,      /* common variable */
-  sc_SCommon    = scSCommon,     /* small common */
-  sc_VarRegister = scVarRegister, /* Var parameter in a register */
-  sc_Variant    = scVariant,     /* Variant record */
-  sc_SUndefined         = scSUndefined,  /* small undefined(external) data */
-  sc_Init       = scInit,        /* .init section symbol */
-  sc_Max        = scMax          /* Max storage class+1 */
-} sc_t;
-
-/* Redefinition of symbol type.  */
-
-typedef enum st {
-  st_Nil       = stNil,        /* Nuthin' special */
-  st_Global    = stGlobal,     /* external symbol */
-  st_Static    = stStatic,     /* static */
-  st_Param     = stParam,      /* procedure argument */
-  st_Local     = stLocal,      /* local variable */
-  st_Label     = stLabel,      /* label */
-  st_Proc      = stProc,       /*     "      "  Procedure */
-  st_Block     = stBlock,      /* beginning of block */
-  st_End       = stEnd,        /* end (of anything) */
-  st_Member    = stMember,     /* member (of anything  - struct/union/enum */
-  st_Typedef   = stTypedef,    /* type definition */
-  st_File      = stFile,       /* file name */
-  st_RegReloc  = stRegReloc,   /* register relocation */
-  st_Forward   = stForward,    /* forwarding address */
-  st_StaticProc        = stStaticProc, /* load time only static procs */
-  st_Constant  = stConstant,   /* const */
-  st_Str       = stStr,        /* string */
-  st_Number    = stNumber,     /* pure number (i.e. 4 NOR 2+2) */
-  st_Expr      = stExpr,       /* 2+2 vs. 4 */
-  st_Type      = stType,       /* post-coercion SER */
-  st_Max       = stMax         /* max type+1 */
-} st_t;
-
-/* Redefinition of type qualifiers.  */
-
-typedef enum tq {
-  tq_Nil       = tqNil,        /* bt is what you see */
-  tq_Ptr       = tqPtr,        /* pointer */
-  tq_Proc      = tqProc,       /* procedure */
-  tq_Array     = tqArray,      /* duh */
-  tq_Far       = tqFar,        /* longer addressing - 8086/8 land */
-  tq_Vol       = tqVol,        /* volatile */
-  tq_Max       = tqMax         /* Max type qualifier+1 */
-} tq_t;
-
-/* Redefinition of basic types.  */
-
-typedef enum bt {
-  bt_Nil       = btNil,        /* undefined */
-  bt_Adr       = btAdr,        /* address - integer same size as pointer */
-  bt_Char      = btChar,       /* character */
-  bt_UChar     = btUChar,      /* unsigned character */
-  bt_Short     = btShort,      /* short */
-  bt_UShort    = btUShort,     /* unsigned short */
-  bt_Int       = btInt,        /* int */
-  bt_UInt      = btUInt,       /* unsigned int */
-  bt_Long      = btLong,       /* long */
-  bt_ULong     = btULong,      /* unsigned long */
-  bt_Float     = btFloat,      /* float (real) */
-  bt_Double    = btDouble,     /* Double (real) */
-  bt_Struct    = btStruct,     /* Structure (Record) */
-  bt_Union     = btUnion,      /* Union (variant) */
-  bt_Enum      = btEnum,       /* Enumerated */
-  bt_Typedef   = btTypedef,    /* defined via a typedef, isymRef points */
-  bt_Range     = btRange,      /* subrange of int */
-  bt_Set       = btSet,        /* pascal sets */
-  bt_Complex   = btComplex,    /* fortran complex */
-  bt_DComplex  = btDComplex,   /* fortran double complex */
-  bt_Indirect  = btIndirect,   /* forward or unnamed typedef */
-  bt_FixedDec  = btFixedDec,   /* Fixed Decimal */
-  bt_FloatDec  = btFloatDec,   /* Float Decimal */
-  bt_String    = btString,     /* Varying Length Character String */
-  bt_Bit       = btBit,        /* Aligned Bit String */
-  bt_Picture   = btPicture,    /* Picture */
-
-#ifdef btVoid
-  bt_Void      = btVoid,       /* Void */
-#else
-#define bt_Void        bt_Nil
-#endif
-
-  bt_Max       = btMax         /* Max basic type+1 */
-} bt_t;
-
-\f
-
-/* Basic COFF storage classes.  */
-enum coff_storage {
-  C_EFCN       = -1,
-  C_NULL       = 0,
-  C_AUTO       = 1,
-  C_EXT                = 2,
-  C_STAT       = 3,
-  C_REG                = 4,
-  C_EXTDEF     = 5,
-  C_LABEL      = 6,
-  C_ULABEL     = 7,
-  C_MOS                = 8,
-  C_ARG                = 9,
-  C_STRTAG     = 10,
-  C_MOU                = 11,
-  C_UNTAG      = 12,
-  C_TPDEF      = 13,
-  C_USTATIC    = 14,
-  C_ENTAG      = 15,
-  C_MOE                = 16,
-  C_REGPARM    = 17,
-  C_FIELD      = 18,
-  C_BLOCK      = 100,
-  C_FCN                = 101,
-  C_EOS                = 102,
-  C_FILE       = 103,
-  C_LINE       = 104,
-  C_ALIAS      = 105,
-  C_HIDDEN     = 106,
-  C_MAX                = 107
-} coff_storage_t;
-
-/* Regular COFF fundamental type.  */
-typedef enum coff_type {
-  T_NULL       = 0,
-  T_ARG                = 1,
-  T_CHAR       = 2,
-  T_SHORT      = 3,
-  T_INT                = 4,
-  T_LONG       = 5,
-  T_FLOAT      = 6,
-  T_DOUBLE     = 7,
-  T_STRUCT     = 8,
-  T_UNION      = 9,
-  T_ENUM       = 10,
-  T_MOE                = 11,
-  T_UCHAR      = 12,
-  T_USHORT     = 13,
-  T_UINT       = 14,
-  T_ULONG      = 15,
-  T_MAX                = 16
-} coff_type_t;
-
-/* Regular COFF derived types.  */
-typedef enum coff_dt {
-  DT_NON       = 0,
-  DT_PTR       = 1,
-  DT_FCN       = 2,
-  DT_ARY       = 3,
-  DT_MAX       = 4
-} coff_dt_t;
-
-#define N_BTMASK       017     /* bitmask to isolate basic type */
-#define N_TMASK                003     /* bitmask to isolate derived type */
-#define N_BT_SHIFT     4       /* # bits to shift past basic type */
-#define N_TQ_SHIFT     2       /* # bits to shift derived types */
-#define        N_TQ            6       /* # of type qualifiers */
-
-/* States for whether to hash type or not.  */
-typedef enum hash_state {
-  hash_no      = 0,            /* don't hash type */
-  hash_yes     = 1,            /* ok to hash type, or use previous hash */
-  hash_record  = 2             /* ok to record hash, but don't use prev.  */
-} hash_state_t;
-
-
-/* Types of different sized allocation requests.  */
-enum alloc_type {
-  alloc_type_none,             /* dummy value */
-  alloc_type_scope,            /* nested scopes linked list */
-  alloc_type_vlinks,           /* glue linking pages in varray */
-  alloc_type_shash,            /* string hash element */
-  alloc_type_thash,            /* type hash element */
-  alloc_type_tag,              /* struct/union/tag element */
-  alloc_type_forward,          /* element to hold unknown tag */
-  alloc_type_thead,            /* head of type hash list */
-  alloc_type_varray,           /* general varray allocation */
-  alloc_type_last              /* last+1 element for array bounds */
-};
-
-\f
-#define WORD_ALIGN(x)  (((x) + (sizeof (long) - 1)) & ~ (sizeof (long) - 1))
-#define DWORD_ALIGN(x) (((x) + 7) & ~7)
-
-
-/* Structures to provide n-number of virtual arrays, each of which can
-   grow linearly, and which are written in the object file as sequential
-   pages.  On systems with a BSD malloc that define USE_MALLOC, the
-   MAX_CLUSTER_PAGES should be 1 less than a power of two, since malloc
-   adds its overhead, and rounds up to the next power of 2.  Pages are
-   linked together via a linked list.  */
-
-#ifndef PAGE_SIZE
-#define PAGE_SIZE 32768                /* size of varray pages */
-#endif
-
-#define PAGE_USIZE ((size_t) PAGE_SIZE)
-
-
-#ifndef MAX_CLUSTER_PAGES      /* # pages to get from system */
-#ifndef USE_MALLOC             /* in one memory request */
-#define MAX_CLUSTER_PAGES 64
-#else
-#define MAX_CLUSTER_PAGES 63
-#endif
-#endif
-
-
-/* Linked list connecting separate page allocations.  */
-typedef struct vlinks {
-  struct vlinks        *prev;          /* previous set of pages */
-  struct vlinks *next;         /* next set of pages */
-  union  page   *datum;                /* start of page */
-  unsigned long         start_index;   /* starting index # of page */
-} vlinks_t;
-
-
-/* Virtual array header.  */
-typedef struct varray {
-  vlinks_t     *first;                 /* first page link */
-  vlinks_t     *last;                  /* last page link */
-  unsigned long         num_allocated;         /* # objects allocated */
-  unsigned short object_size;          /* size in bytes of each object */
-  unsigned short objects_per_page;     /* # objects that can fit on a page */
-  unsigned short objects_last_page;    /* # objects allocated on last page */
-} varray_t;
-
-#ifndef MALLOC_CHECK
-#define OBJECTS_PER_PAGE(type) (PAGE_SIZE / sizeof (type))
-#else
-#define OBJECTS_PER_PAGE(type) ((sizeof (type) > 1) ? 1 : PAGE_SIZE)
-#endif
-
-#define INIT_VARRAY(type) {    /* macro to initialize a varray */      \
-  (vlinks_t *) 0,              /* first */                             \
-  (vlinks_t *) 0,              /* last */                              \
-  0,                           /* num_allocated */                     \
-  sizeof (type),               /* object_size */                       \
-  OBJECTS_PER_PAGE (type),     /* objects_per_page */                  \
-  OBJECTS_PER_PAGE (type),     /* objects_last_page */                 \
-}
-
-#define INITIALIZE_VARRAY(x,type)                      \
-do {                                                   \
-  (x)->object_size = sizeof (type);                    \
-  (x)->objects_per_page = OBJECTS_PER_PAGE (type);     \
-  (x)->objects_last_page = OBJECTS_PER_PAGE (type);    \
-} while (0)
-
-/* Master type for indexes within the symbol table.  */
-typedef unsigned long symint_t;
-
-
-/* Linked list support for nested scopes (file, block, structure, etc.).  */
-typedef struct scope {
-  struct scope *prev;          /* previous scope level */
-  struct scope *free;          /* free list pointer */
-  SYMR         *lsym;          /* pointer to local symbol node */
-  symint_t      lnumber;       /* lsym index */
-  st_t          type;          /* type of the node */
-} scope_t;
-
-
-/* Forward reference list for tags referenced, but not yet defined.  */
-typedef struct forward {
-  struct forward *next;                /* next forward reference */
-  struct forward *free;                /* free list pointer */
-  AUXU          *ifd_ptr;      /* pointer to store file index */
-  AUXU          *index_ptr;    /* pointer to store symbol index */
-  AUXU          *type_ptr;     /* pointer to munge type info */
-} forward_t;
-
-
-/* Linked list support for tags.  The first tag in the list is always
-   the current tag for that block.  */
-typedef struct tag {
-  struct tag    *free;         /* free list pointer */
-  struct shash  *hash_ptr;     /* pointer to the hash table head */
-  struct tag    *same_name;    /* tag with same name in outer scope */
-  struct tag    *same_block;   /* next tag defined in the same block.  */
-  struct forward *forward_ref; /* list of forward references */
-  bt_t           basic_type;   /* bt_Struct, bt_Union, or bt_Enum */
-  symint_t       ifd;          /* file # tag defined in */
-  symint_t       indx;         /* index within file's local symbols */
-} tag_t;
-
-
-/* Head of a block's linked list of tags.  */
-typedef struct thead {
-  struct thead *prev;          /* previous block */
-  struct thead *free;          /* free list pointer */
-  struct tag   *first_tag;     /* first tag in block defined */
-} thead_t;
-
-
-/* Union containing pointers to each the small structures which are freed up.  */
-typedef union small_free {
-  scope_t      *f_scope;       /* scope structure */
-  thead_t      *f_thead;       /* tag head structure */
-  tag_t                *f_tag;         /* tag element structure */
-  forward_t    *f_forward;     /* forward tag reference */
-} small_free_t;
-
-
-/* String hash table support.  The size of the hash table must fit
-   within a page.  */
-
-#define SHASH_SIZE 511
-
-#define HASH_LEN_MAX ((1 << 12) - 1)   /* Max length we can store */
-
-typedef struct shash {
-  struct shash *next;          /* next hash value */
-  char         *string;        /* string we are hashing */
-  symint_t      len;           /* string length */
-  symint_t      indx;          /* index within string table */
-  EXTR         *esym_ptr;      /* global symbol pointer */
-  SYMR         *sym_ptr;       /* local symbol pointer */
-  SYMR         *end_ptr;       /* symbol pointer to end block */
-  tag_t                *tag_ptr;       /* tag pointer */
-  PDR          *proc_ptr;      /* procedure descriptor pointer */
-} shash_t;
-
-
-/* Type hash table support.  The size of the hash table must fit
-   within a page with the other extended file descriptor information.
-   Because unique types which are hashed are fewer in number than
-   strings, we use a smaller hash value.  */
-
-#define THASH_SIZE 55
-
-typedef struct thash {
-  struct thash *next;          /* next hash value */
-  AUXU          type;          /* type we are hashing */
-  symint_t      indx;          /* index within string table */
-} thash_t;
-
-
-/* Extended file descriptor that contains all of the support necessary
-   to add things to each file separately.  */
-typedef struct efdr {
-  FDR           fdr;           /* File header to be written out */
-  FDR          *orig_fdr;      /* original file header */
-  char         *name;          /* filename */
-  int           name_len;      /* length of the filename */
-  symint_t      void_type;     /* aux. pointer to 'void' type */
-  symint_t      int_type;      /* aux. pointer to 'int' type */
-  scope_t      *cur_scope;     /* current nested scopes */
-  symint_t      file_index;    /* current file number */
-  int           nested_scopes; /* # nested scopes */
-  varray_t      strings;       /* local strings */
-  varray_t      symbols;       /* local symbols */
-  varray_t      procs;         /* procedures */
-  varray_t      aux_syms;      /* auxiliary symbols */
-  struct efdr  *next_file;     /* next file descriptor */
-                               /* string/type hash tables */
-  shash_t      **shash_head;   /* string hash table */
-  thash_t      *thash_head[THASH_SIZE];
-} efdr_t;
-
-/* Pre-initialized extended file structure.  */
-static int init_file_initialized = 0;
-static efdr_t init_file;
-
-static efdr_t *first_file;                     /* first file descriptor */
-static efdr_t **last_file_ptr = &first_file;   /* file descriptor tail */
-
-
-/* Union of various things that are held in pages.  */
-typedef union page {
-  char         byte    [ PAGE_SIZE ];
-  unsigned char        ubyte   [ PAGE_SIZE ];
-  efdr_t       file    [ PAGE_SIZE / sizeof (efdr_t)    ];
-  FDR          ofile   [ PAGE_SIZE / sizeof (FDR)       ];
-  PDR          proc    [ PAGE_SIZE / sizeof (PDR)       ];
-  SYMR         sym     [ PAGE_SIZE / sizeof (SYMR)      ];
-  EXTR         esym    [ PAGE_SIZE / sizeof (EXTR)      ];
-  AUXU         aux     [ PAGE_SIZE / sizeof (AUXU)      ];
-  DNR          dense   [ PAGE_SIZE / sizeof (DNR)       ];
-  scope_t      scope   [ PAGE_SIZE / sizeof (scope_t)   ];
-  vlinks_t     vlinks  [ PAGE_SIZE / sizeof (vlinks_t)  ];
-  shash_t      shash   [ PAGE_SIZE / sizeof (shash_t)   ];
-  thash_t      thash   [ PAGE_SIZE / sizeof (thash_t)   ];
-  tag_t                tag     [ PAGE_SIZE / sizeof (tag_t)     ];
-  forward_t    forward [ PAGE_SIZE / sizeof (forward_t) ];
-  thead_t      thead   [ PAGE_SIZE / sizeof (thead_t)   ];
-} page_t;
-
-
-/* Structure holding allocation information for small sized structures.  */
-typedef struct alloc_info {
-  const char   *alloc_name;    /* name of this allocation type (must be first) */
-  page_t       *cur_page;      /* current page being allocated from */
-  small_free_t  free_list;     /* current free list if any */
-  int           unallocated;   /* number of elements unallocated on page */
-  int           total_alloc;   /* total number of allocations */
-  int           total_free;    /* total number of frees */
-  int           total_pages;   /* total number of pages allocated */
-} alloc_info_t;
-
-/* Type information collected together.  */
-typedef struct type_info {
-  bt_t       basic_type;               /* basic type */
-  coff_type_t orig_type;               /* original COFF-based type */
-  int        num_tq;                   /* # type qualifiers */
-  int        num_dims;                 /* # dimensions */
-  int        num_sizes;                /* # sizes */
-  int        extra_sizes;              /* # extra sizes not tied with dims */
-  tag_t *     tag_ptr;                 /* tag pointer */
-  int        bitfield;                 /* symbol is a bitfield */
-  int        unknown_tag;              /* this is an unknown tag */
-  tq_t       type_qualifiers[N_TQ];    /* type qualifiers (ptr, func, array)*/
-  symint_t    dimensions     [N_TQ];   /* dimensions for each array */
-  symint_t    sizes         [N_TQ+2];  /* sizes of each array slice + size of
-                                          struct/union/enum + bitfield size */
-} type_info_t;
-
-/* Pre-initialized type_info struct.  */
-static type_info_t type_info_init = {
-  bt_Nil,                              /* basic type */
-  T_NULL,                              /* original COFF-based type */
-  0,                                   /* # type qualifiers */
-  0,                                   /* # dimensions */
-  0,                                   /* # sizes */
-  0,                                   /* sizes not tied with dims */
-  NULL,                                        /* ptr to tag */
-  0,                                   /* bitfield */
-  0,                                   /* unknown tag */
-  {                                    /* type qualifiers */
-    tq_Nil,
-    tq_Nil,
-    tq_Nil,
-    tq_Nil,
-    tq_Nil,
-    tq_Nil,
-  },
-  {                                    /* dimensions */
-    0,
-    0,
-    0,
-    0,
-    0,
-    0
-  },
-  {                                    /* sizes */
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-  },
-};
-
-
-/* Global virtual arrays & hash table for external strings as well as
-   for the tags table and global tables for file descriptors, and
-   dense numbers.  */
-
-static varray_t file_desc      = INIT_VARRAY (efdr_t);
-static varray_t dense_num      = INIT_VARRAY (DNR);
-static varray_t tag_strings    = INIT_VARRAY (char);
-static varray_t ext_strings    = INIT_VARRAY (char);
-static varray_t ext_symbols    = INIT_VARRAY (EXTR);
-
-static shash_t *orig_str_hash[SHASH_SIZE];
-static shash_t *ext_str_hash [SHASH_SIZE];
-static shash_t *tag_hash     [SHASH_SIZE];
-
-/* Static types for int and void.  Also, remember the last function's
-   type (which is set up when we encounter the declaration for the
-   function, and used when the end block for the function is emitted.  */
-
-static type_info_t int_type_info;
-static type_info_t void_type_info;
-static type_info_t last_func_type_info;
-static EXTR      *last_func_eptr;
-
-
-/* Convert COFF basic type to ECOFF basic type.  The T_NULL type
-   really should use bt_Void, but this causes the current ecoff GDB to
-   issue unsupported type messages, and the Ultrix 4.00 dbx (aka MIPS
-   2.0) doesn't understand it, even though the compiler generates it.
-   Maybe this will be fixed in 2.10 or 2.20 of the MIPS compiler
-   suite, but for now go with what works.  */
-
-static const bt_t map_coff_types[ (int) T_MAX ] = {
-  bt_Nil,                      /* T_NULL */
-  bt_Nil,                      /* T_ARG */
-  bt_Char,                     /* T_CHAR */
-  bt_Short,                    /* T_SHORT */
-  bt_Int,                      /* T_INT */
-  bt_Long,                     /* T_LONG */
-  bt_Float,                    /* T_FLOAT */
-  bt_Double,                   /* T_DOUBLE */
-  bt_Struct,                   /* T_STRUCT */
-  bt_Union,                    /* T_UNION */
-  bt_Enum,                     /* T_ENUM */
-  bt_Enum,                     /* T_MOE */
-  bt_UChar,                    /* T_UCHAR */
-  bt_UShort,                   /* T_USHORT */
-  bt_UInt,                     /* T_UINT */
-  bt_ULong                     /* T_ULONG */
-};
-
-/* Convert COFF storage class to ECOFF storage class.  */
-static const sc_t map_coff_storage[ (int) C_MAX ] = {
-  sc_Nil,                      /*   0: C_NULL */
-  sc_Abs,                      /*   1: C_AUTO    auto var */
-  sc_Undefined,                        /*   2: C_EXT     external */
-  sc_Data,                     /*   3: C_STAT    static */
-  sc_Register,                 /*   4: C_REG     register */
-  sc_Undefined,                        /*   5: C_EXTDEF  ??? */
-  sc_Text,                     /*   6: C_LABEL   label */
-  sc_Text,                     /*   7: C_ULABEL  user label */
-  sc_Info,                     /*   8: C_MOS     member of struct */
-  sc_Abs,                      /*   9: C_ARG     argument */
-  sc_Info,                     /*  10: C_STRTAG  struct tag */
-  sc_Info,                     /*  11: C_MOU     member of union */
-  sc_Info,                     /*  12: C_UNTAG   union tag */
-  sc_Info,                     /*  13: C_TPDEF   typedef */
-  sc_Data,                     /*  14: C_USTATIC ??? */
-  sc_Info,                     /*  15: C_ENTAG   enum tag */
-  sc_Info,                     /*  16: C_MOE     member of enum */
-  sc_Register,                 /*  17: C_REGPARM register parameter */
-  sc_Bits,                     /*  18; C_FIELD   bitfield */
-  sc_Nil,                      /*  19 */
-  sc_Nil,                      /*  20 */
-  sc_Nil,                      /*  21 */
-  sc_Nil,                      /*  22 */
-  sc_Nil,                      /*  23 */
-  sc_Nil,                      /*  24 */
-  sc_Nil,                      /*  25 */
-  sc_Nil,                      /*  26 */
-  sc_Nil,                      /*  27 */
-  sc_Nil,                      /*  28 */
-  sc_Nil,                      /*  29 */
-  sc_Nil,                      /*  30 */
-  sc_Nil,                      /*  31 */
-  sc_Nil,                      /*  32 */
-  sc_Nil,                      /*  33 */
-  sc_Nil,                      /*  34 */
-  sc_Nil,                      /*  35 */
-  sc_Nil,                      /*  36 */
-  sc_Nil,                      /*  37 */
-  sc_Nil,                      /*  38 */
-  sc_Nil,                      /*  39 */
-  sc_Nil,                      /*  40 */
-  sc_Nil,                      /*  41 */
-  sc_Nil,                      /*  42 */
-  sc_Nil,                      /*  43 */
-  sc_Nil,                      /*  44 */
-  sc_Nil,                      /*  45 */
-  sc_Nil,                      /*  46 */
-  sc_Nil,                      /*  47 */
-  sc_Nil,                      /*  48 */
-  sc_Nil,                      /*  49 */
-  sc_Nil,                      /*  50 */
-  sc_Nil,                      /*  51 */
-  sc_Nil,                      /*  52 */
-  sc_Nil,                      /*  53 */
-  sc_Nil,                      /*  54 */
-  sc_Nil,                      /*  55 */
-  sc_Nil,                      /*  56 */
-  sc_Nil,                      /*  57 */
-  sc_Nil,                      /*  58 */
-  sc_Nil,                      /*  59 */
-  sc_Nil,                      /*  60 */
-  sc_Nil,                      /*  61 */
-  sc_Nil,                      /*  62 */
-  sc_Nil,                      /*  63 */
-  sc_Nil,                      /*  64 */
-  sc_Nil,                      /*  65 */
-  sc_Nil,                      /*  66 */
-  sc_Nil,                      /*  67 */
-  sc_Nil,                      /*  68 */
-  sc_Nil,                      /*  69 */
-  sc_Nil,                      /*  70 */
-  sc_Nil,                      /*  71 */
-  sc_Nil,                      /*  72 */
-  sc_Nil,                      /*  73 */
-  sc_Nil,                      /*  74 */
-  sc_Nil,                      /*  75 */
-  sc_Nil,                      /*  76 */
-  sc_Nil,                      /*  77 */
-  sc_Nil,                      /*  78 */
-  sc_Nil,                      /*  79 */
-  sc_Nil,                      /*  80 */
-  sc_Nil,                      /*  81 */
-  sc_Nil,                      /*  82 */
-  sc_Nil,                      /*  83 */
-  sc_Nil,                      /*  84 */
-  sc_Nil,                      /*  85 */
-  sc_Nil,                      /*  86 */
-  sc_Nil,                      /*  87 */
-  sc_Nil,                      /*  88 */
-  sc_Nil,                      /*  89 */
-  sc_Nil,                      /*  90 */
-  sc_Nil,                      /*  91 */
-  sc_Nil,                      /*  92 */
-  sc_Nil,                      /*  93 */
-  sc_Nil,                      /*  94 */
-  sc_Nil,                      /*  95 */
-  sc_Nil,                      /*  96 */
-  sc_Nil,                      /*  97 */
-  sc_Nil,                      /*  98 */
-  sc_Nil,                      /*  99 */
-  sc_Text,                     /* 100: C_BLOCK  block start/end */
-  sc_Text,                     /* 101: C_FCN    function start/end */
-  sc_Info,                     /* 102: C_EOS    end of struct/union/enum */
-  sc_Nil,                      /* 103: C_FILE   file start */
-  sc_Nil,                      /* 104: C_LINE   line number */
-  sc_Nil,                      /* 105: C_ALIAS  combined type info */
-  sc_Nil,                      /* 106: C_HIDDEN ??? */
-};
-
-/* Convert COFF storage class to ECOFF symbol type.  */
-static const st_t map_coff_sym_type[ (int) C_MAX ] = {
-  st_Nil,                      /*   0: C_NULL */
-  st_Local,                    /*   1: C_AUTO    auto var */
-  st_Global,                   /*   2: C_EXT     external */
-  st_Static,                   /*   3: C_STAT    static */
-  st_Local,                    /*   4: C_REG     register */
-  st_Global,                   /*   5: C_EXTDEF  ??? */
-  st_Label,                    /*   6: C_LABEL   label */
-  st_Label,                    /*   7: C_ULABEL  user label */
-  st_Member,                   /*   8: C_MOS     member of struct */
-  st_Param,                    /*   9: C_ARG     argument */
-  st_Block,                    /*  10: C_STRTAG  struct tag */
-  st_Member,                   /*  11: C_MOU     member of union */
-  st_Block,                    /*  12: C_UNTAG   union tag */
-  st_Typedef,                  /*  13: C_TPDEF   typedef */
-  st_Static,                   /*  14: C_USTATIC ??? */
-  st_Block,                    /*  15: C_ENTAG   enum tag */
-  st_Member,                   /*  16: C_MOE     member of enum */
-  st_Param,                    /*  17: C_REGPARM register parameter */
-  st_Member,                   /*  18; C_FIELD   bitfield */
-  st_Nil,                      /*  19 */
-  st_Nil,                      /*  20 */
-  st_Nil,                      /*  21 */
-  st_Nil,                      /*  22 */
-  st_Nil,                      /*  23 */
-  st_Nil,                      /*  24 */
-  st_Nil,                      /*  25 */
-  st_Nil,                      /*  26 */
-  st_Nil,                      /*  27 */
-  st_Nil,                      /*  28 */
-  st_Nil,                      /*  29 */
-  st_Nil,                      /*  30 */
-  st_Nil,                      /*  31 */
-  st_Nil,                      /*  32 */
-  st_Nil,                      /*  33 */
-  st_Nil,                      /*  34 */
-  st_Nil,                      /*  35 */
-  st_Nil,                      /*  36 */
-  st_Nil,                      /*  37 */
-  st_Nil,                      /*  38 */
-  st_Nil,                      /*  39 */
-  st_Nil,                      /*  40 */
-  st_Nil,                      /*  41 */
-  st_Nil,                      /*  42 */
-  st_Nil,                      /*  43 */
-  st_Nil,                      /*  44 */
-  st_Nil,                      /*  45 */
-  st_Nil,                      /*  46 */
-  st_Nil,                      /*  47 */
-  st_Nil,                      /*  48 */
-  st_Nil,                      /*  49 */
-  st_Nil,                      /*  50 */
-  st_Nil,                      /*  51 */
-  st_Nil,                      /*  52 */
-  st_Nil,                      /*  53 */
-  st_Nil,                      /*  54 */
-  st_Nil,                      /*  55 */
-  st_Nil,                      /*  56 */
-  st_Nil,                      /*  57 */
-  st_Nil,                      /*  58 */
-  st_Nil,                      /*  59 */
-  st_Nil,                      /*  60 */
-  st_Nil,                      /*  61 */
-  st_Nil,                      /*  62 */
-  st_Nil,                      /*  63 */
-  st_Nil,                      /*  64 */
-  st_Nil,                      /*  65 */
-  st_Nil,                      /*  66 */
-  st_Nil,                      /*  67 */
-  st_Nil,                      /*  68 */
-  st_Nil,                      /*  69 */
-  st_Nil,                      /*  70 */
-  st_Nil,                      /*  71 */
-  st_Nil,                      /*  72 */
-  st_Nil,                      /*  73 */
-  st_Nil,                      /*  74 */
-  st_Nil,                      /*  75 */
-  st_Nil,                      /*  76 */
-  st_Nil,                      /*  77 */
-  st_Nil,                      /*  78 */
-  st_Nil,                      /*  79 */
-  st_Nil,                      /*  80 */
-  st_Nil,                      /*  81 */
-  st_Nil,                      /*  82 */
-  st_Nil,                      /*  83 */
-  st_Nil,                      /*  84 */
-  st_Nil,                      /*  85 */
-  st_Nil,                      /*  86 */
-  st_Nil,                      /*  87 */
-  st_Nil,                      /*  88 */
-  st_Nil,                      /*  89 */
-  st_Nil,                      /*  90 */
-  st_Nil,                      /*  91 */
-  st_Nil,                      /*  92 */
-  st_Nil,                      /*  93 */
-  st_Nil,                      /*  94 */
-  st_Nil,                      /*  95 */
-  st_Nil,                      /*  96 */
-  st_Nil,                      /*  97 */
-  st_Nil,                      /*  98 */
-  st_Nil,                      /*  99 */
-  st_Block,                    /* 100: C_BLOCK  block start/end */
-  st_Proc,                     /* 101: C_FCN    function start/end */
-  st_End,                      /* 102: C_EOS    end of struct/union/enum */
-  st_File,                     /* 103: C_FILE   file start */
-  st_Nil,                      /* 104: C_LINE   line number */
-  st_Nil,                      /* 105: C_ALIAS  combined type info */
-  st_Nil,                      /* 106: C_HIDDEN ??? */
-};
-
-/* Map COFF derived types to ECOFF type qualifiers.  */
-static const tq_t map_coff_derived_type[ (int) DT_MAX ] = {
-  tq_Nil,                      /* 0: DT_NON    no more qualifiers */
-  tq_Ptr,                      /* 1: DT_PTR    pointer */
-  tq_Proc,                     /* 2: DT_FCN    function */
-  tq_Array,                    /* 3: DT_ARY    array */
-};
-
-
-/* Keep track of different sized allocation requests.  */
-static alloc_info_t alloc_counts[ (int) alloc_type_last ];
-
-\f
-/* Pointers and such to the original symbol table that is read in.  */
-static struct filehdr orig_file_header;                /* global object file header */
-
-static HDRR     orig_sym_hdr;                  /* symbolic header on input */
-static char    *orig_linenum;                  /* line numbers */
-static DNR     *orig_dense;                    /* dense numbers */
-static PDR     *orig_procs;                    /* procedures */
-static SYMR    *orig_local_syms;               /* local symbols */
-static OPTR    *orig_opt_syms;                 /* optimization symbols */
-static AUXU    *orig_aux_syms;                 /* auxiliary symbols */
-static char    *orig_local_strs;               /* local strings */
-static char    *orig_ext_strs;                 /* external strings */
-static FDR     *orig_files;                    /* file descriptors */
-static symint_t        *orig_rfds;                     /* relative file desc's */
-static EXTR    *orig_ext_syms;                 /* external symbols */
-
-/* Macros to convert an index into a given object within the original
-   symbol table.  */
-#define CHECK(num,max,str) \
-  (((unsigned long) num > (unsigned long) max) ? out_of_bounds (num, max, str, __LINE__) : 0)
-
-#define ORIG_LINENUM(indx)     (CHECK ((indx), orig_sym_hdr.cbLine,    "line#"), (indx) + orig_linenum)
-#define ORIG_DENSE(indx)       (CHECK ((indx), orig_sym_hdr.idnMax,    "dense"), (indx) + orig_dense)
-#define ORIG_PROCS(indx)       (CHECK ((indx), orig_sym_hdr.ipdMax,    "procs"), (indx) + orig_procs)
-#define ORIG_FILES(indx)       (CHECK ((indx), orig_sym_hdr.ifdMax,    "funcs"), (indx) + orig_files)
-#define ORIG_LSYMS(indx)       (CHECK ((indx), orig_sym_hdr.isymMax,   "lsyms"), (indx) + orig_local_syms)
-#define ORIG_LSTRS(indx)       (CHECK ((indx), orig_sym_hdr.issMax,    "lstrs"), (indx) + orig_local_strs)
-#define ORIG_ESYMS(indx)       (CHECK ((indx), orig_sym_hdr.iextMax,   "esyms"), (indx) + orig_ext_syms)
-#define ORIG_ESTRS(indx)       (CHECK ((indx), orig_sym_hdr.issExtMax, "estrs"), (indx) + orig_ext_strs)
-#define ORIG_OPT(indx)         (CHECK ((indx), orig_sym_hdr.ioptMax,   "opt"),   (indx) + orig_opt_syms)
-#define ORIG_AUX(indx)         (CHECK ((indx), orig_sym_hdr.iauxMax,   "aux"),   (indx) + orig_aux_syms)
-#define ORIG_RFDS(indx)                (CHECK ((indx), orig_sym_hdr.crfd,      "rfds"),  (indx) + orig_rfds)
-
-/* Various other statics.  */
-static HDRR    symbolic_header;                /* symbolic header */
-static efdr_t  *cur_file_ptr   = (efdr_t *) 0; /* current file desc. header */
-static PDR     *cur_proc_ptr   = (PDR *) 0;    /* current procedure header */
-static SYMR    *cur_oproc_begin        = (SYMR *) 0;   /* original proc. sym begin info */
-static SYMR    *cur_oproc_end  = (SYMR *) 0;   /* original proc. sym end info */
-static PDR     *cur_oproc_ptr  = (PDR *) 0;    /* current original procedure*/
-static thead_t *cur_tag_head   = (thead_t *) 0;/* current tag head */
-static unsigned long file_offset       = 0;    /* current file offset */
-static unsigned long max_file_offset   = 0;    /* maximum file offset */
-static FILE    *object_stream  = (FILE *) 0;   /* file desc. to output .o */
-static FILE    *obj_in_stream  = (FILE *) 0;   /* file desc. to input .o */
-static const char *progname    = (const char *) 0;/* program name for errors */
-static const char *input_name  = "stdin";      /* name of input file */
-static char    *object_name    = (char *) 0;   /* tmp. name of object file */
-static char    *obj_in_name    = (char *) 0;   /* name of input object file */
-static char    *cur_line_start = (char *) 0;   /* current line read in */
-static char    *cur_line_ptr   = (char *) 0;   /* ptr within current line */
-static unsigned        cur_line_nbytes = 0;            /* # bytes for current line */
-static unsigned        cur_line_alloc  = 0;            /* # bytes total in buffer */
-static long    line_number     = 0;            /* current input line number */
-static int     debug           = 0;            /* trace functions */
-static int     version         = 0;            /* print version # */
-static int     verbose         = 0;
-static int     had_errors      = 0;            /* != 0 if errors were found */
-static int     rename_output   = 0;            /* != 0 if rename output file*/
-static int     delete_input    = 0;            /* != 0 if delete input after done */
-static int     stabs_seen      = 0;            /* != 0 if stabs have been seen */
-
-
-/* Pseudo symbol to use when putting stabs into the symbol table.  */
-#ifndef STABS_SYMBOL
-#define STABS_SYMBOL "@stabs"
-#endif
-
-static const char stabs_symbol[] = STABS_SYMBOL;
-
-\f
-/* Forward reference for functions.  See the definition for more details.  */
-
-static int out_of_bounds (symint_t, symint_t, const char *, int);
-static shash_t *hash_string (const char *, ptrdiff_t, shash_t **, symint_t *);
-static symint_t        add_string (varray_t *, shash_t **, const char *, const char *,
-                           shash_t **);
-static symint_t        add_local_symbol (const char *, const char *, st_t, sc_t,
-                                 symint_t, symint_t);
-static symint_t        add_ext_symbol (EXTR *, int);
-static symint_t        add_aux_sym_symint (symint_t);
-static symint_t        add_aux_sym_rndx (int, symint_t);
-static symint_t        add_aux_sym_tir (type_info_t *, hash_state_t, thash_t **);
-static tag_t * get_tag (const char *, const char *, symint_t, bt_t);
-static void add_unknown_tag (tag_t *);
-static void add_procedure (const char *, const char *);
-static void initialize_init_file (void);
-static void add_file (const char *, const char *);
-static void add_bytes (varray_t *, char *, size_t);
-static void add_varray_page (varray_t *);
-static void update_headers (void);
-static void write_varray (varray_t *, off_t, const char *);
-static void write_object (void);
-static const char *st_to_string (st_t);
-static const char *sc_to_string (sc_t);
-static char *read_line (void);
-static void parse_input (void);
-static void mark_stabs (const char *);
-static void parse_begin (const char *);
-static void parse_bend (const char *);
-static void parse_def (const char *);
-static void parse_end (const char *);
-static void parse_ent (const char *);
-static void parse_file (const char *);
-static void parse_stabs_common (const char *, const char *, const char *);
-static void parse_stabs (const char *);
-static void parse_stabn (const char *);
-static page_t  *read_seek (size_t, off_t, const char *);
-static void copy_object (void);
-
-static void catch_signal (int) ATTRIBUTE_NORETURN;
-static page_t *allocate_page (void);
-static page_t *allocate_multiple_pages (size_t);
-static void    free_multiple_pages (page_t *, size_t);
-
-#ifndef MALLOC_CHECK
-static page_t  *allocate_cluster (size_t);
-#endif
-
-static forward_t *allocate_forward (void);
-static scope_t *allocate_scope (void);
-static shash_t *allocate_shash (void);
-static tag_t  *allocate_tag (void);
-static thash_t *allocate_thash (void);
-static thead_t *allocate_thead (void);
-static vlinks_t *allocate_vlinks (void);
-
-static void free_forward (forward_t *);
-static void free_scope (scope_t *);
-static void free_tag (tag_t *);
-static void free_thead (thead_t *);
-
-extern char *optarg;
-extern int   optind;
-extern int   opterr;
-\f
-/* List of assembler pseudo ops and beginning sequences that need
-   special actions.  Someday, this should be a hash table, and such,
-   but for now a linear list of names and calls to memcmp will
-   do......  */
-
-typedef struct _pseudo_ops {
-  const char *const name;                      /* pseudo-op in ascii */
-  const int len;                               /* length of name to compare */
-  void (*const func) (const char *);   /* function to handle line */
-} pseudo_ops_t;
-
-static const pseudo_ops_t pseudo_ops[] = {
-  { "#.def",   sizeof("#.def")-1,      parse_def },
-  { "#.begin", sizeof("#.begin")-1,    parse_begin },
-  { "#.bend",  sizeof("#.bend")-1,     parse_bend },
-  { ".end",    sizeof(".end")-1,       parse_end },
-  { ".ent",    sizeof(".ent")-1,       parse_ent },
-  { ".file",   sizeof(".file")-1,      parse_file },
-  { "#.stabs", sizeof("#.stabs")-1,    parse_stabs },
-  { "#.stabn", sizeof("#.stabn")-1,    parse_stabn },
-  { ".stabs",  sizeof(".stabs")-1,     parse_stabs },
-  { ".stabn",  sizeof(".stabn")-1,     parse_stabn },
-  { "#@stabs", sizeof("#@stabs")-1,    mark_stabs },
-};
-
-\f
-/* Command line options for getopt_long.  */
-
-static const struct option options[] =
-{
-  { "version", 0, 0, 'V' },
-  { "verbose", 0, 0, 'v' },
-  { 0, 0, 0, 0 }
-};
-\f
-/* Add a page to a varray object.  */
-
-static void
-add_varray_page (varray_t *vp)
-{
-  vlinks_t *new_links = allocate_vlinks ();
-
-#ifdef MALLOC_CHECK
-  if (vp->object_size > 1)
-    new_links->datum = xcalloc (1, vp->object_size);
-  else
-#endif
-    new_links->datum = allocate_page ();
-
-  alloc_counts[ (int) alloc_type_varray ].total_alloc++;
-  alloc_counts[ (int) alloc_type_varray ].total_pages++;
-
-  new_links->start_index = vp->num_allocated;
-  vp->objects_last_page = 0;
-
-  if (vp->first == (vlinks_t *) 0)             /* first allocation? */
-    vp->first = vp->last = new_links;
-  else
-    {                                          /* 2nd or greater allocation */
-      new_links->prev = vp->last;
-      vp->last->next = new_links;
-      vp->last = new_links;
-    }
-}
-
-\f
-/* Compute hash code (from tree.c) */
-
-#define HASHBITS 30
-
-static shash_t *
-hash_string (const char *text, ptrdiff_t hash_len, shash_t **hash_tbl,
-            symint_t *ret_hash_index)
-{
-  unsigned long hi;
-  ptrdiff_t i;
-  shash_t *ptr;
-  int first_ch = *text;
-
-  hi = hash_len;
-  for (i = 0; i < hash_len; i++)
-    hi = ((hi & 0x003fffff) * 613) + (text[i] & 0xff);
-
-  hi &= (1 << HASHBITS) - 1;
-  hi %= SHASH_SIZE;
-
-  if (ret_hash_index != (symint_t *) 0)
-    *ret_hash_index = hi;
-
-  for (ptr = hash_tbl[hi]; ptr != (shash_t *) 0; ptr = ptr->next)
-    if ((symint_t) hash_len == ptr->len
-       && first_ch == ptr->string[0]
-       && memcmp (text, ptr->string, hash_len) == 0)
-      break;
-
-  return ptr;
-}
-
-\f
-/* Add a string (and null pad) to one of the string tables.  A
-   consequence of hashing strings, is that we don't let strings cross
-   page boundaries.  The extra nulls will be ignored.  VP is a string
-   virtual array, HASH_TBL a pointer to the hash table, the string
-   starts at START and the position one byte after the string is given
-   with END_P1, the resulting hash pointer is returned in RET_HASH.  */
-
-static symint_t
-add_string (varray_t *vp, shash_t **hash_tbl, const char *start,
-           const char *end_p1, shash_t **ret_hash)
-{
-  ptrdiff_t len = end_p1 - start;
-  shash_t *hash_ptr;
-  symint_t hi;
-
-  if (len >= (ptrdiff_t) PAGE_USIZE)
-    fatal ("string too big (%ld bytes)", (long) len);
-
-  hash_ptr = hash_string (start, len, hash_tbl, &hi);
-  if (hash_ptr == (shash_t *) 0)
-    {
-      char *p;
-
-      if (vp->objects_last_page + len >= (long) PAGE_USIZE)
-       {
-         vp->num_allocated
-           = ((vp->num_allocated + PAGE_USIZE - 1) / PAGE_USIZE) * PAGE_USIZE;
-         add_varray_page (vp);
-       }
-
-      hash_ptr = allocate_shash ();
-      hash_ptr->next = hash_tbl[hi];
-      hash_tbl[hi] = hash_ptr;
-
-      hash_ptr->len = len;
-      hash_ptr->indx = vp->num_allocated;
-      hash_ptr->string = p = & vp->last->datum->byte[ vp->objects_last_page ];
-
-      vp->objects_last_page += len+1;
-      vp->num_allocated += len+1;
-
-      while (len-- > 0)
-       *p++ = *start++;
-
-      *p = '\0';
-    }
-
-  if (ret_hash != (shash_t **) 0)
-    *ret_hash = hash_ptr;
-
-  return hash_ptr->indx;
-}
-
-\f
-/* Add a local symbol.  The symbol string starts at STR_START and the
-   first byte after it is marked by STR_END_P1.  The symbol has type
-   TYPE and storage class STORAGE and value VALUE.  INDX is an index
-   to local/aux. symbols.  */
-
-static symint_t
-add_local_symbol (const char *str_start, const char *str_end_p1, st_t type,
-                 sc_t storage,  symint_t value, symint_t indx)
-{
-  symint_t ret;
-  SYMR *psym;
-  scope_t *pscope;
-  thead_t *ptag_head;
-  tag_t *ptag;
-  tag_t *ptag_next;
-  varray_t *vp = &cur_file_ptr->symbols;
-  int scope_delta = 0;
-  shash_t *hash_ptr = (shash_t *) 0;
-
-  if (vp->objects_last_page == vp->objects_per_page)
-    add_varray_page (vp);
-
-  psym = &vp->last->datum->sym[ vp->objects_last_page++ ];
-
-  psym->value = value;
-  psym->st = (unsigned) type;
-  psym->sc = (unsigned) storage;
-  psym->index = indx;
-  psym->iss = (str_start == (const char *) 0)
-               ? 0
-               : add_string (&cur_file_ptr->strings,
-                             &cur_file_ptr->shash_head[0],
-                             str_start,
-                             str_end_p1,
-                             &hash_ptr);
-
-  ret = vp->num_allocated++;
-
-  if (MIPS_IS_STAB (psym))
-    return ret;
-
-  /* Save the symbol within the hash table if this is a static
-     item, and it has a name.  */
-  if (hash_ptr != (shash_t *) 0
-      && (type == st_Global || type == st_Static || type == st_Label
-         || type == st_Proc || type == st_StaticProc))
-    hash_ptr->sym_ptr = psym;
-
-  /* push or pop a scope if appropriate.  */
-  switch (type)
-    {
-    default:
-      break;
-
-    case st_File:                      /* beginning of file */
-    case st_Proc:                      /* procedure */
-    case st_StaticProc:                        /* static procedure */
-    case st_Block:                     /* begin scope */
-      pscope = allocate_scope ();
-      pscope->prev = cur_file_ptr->cur_scope;
-      pscope->lsym = psym;
-      pscope->lnumber = ret;
-      pscope->type = type;
-      cur_file_ptr->cur_scope = pscope;
-
-      if (type != st_File)
-       scope_delta = 1;
-
-      /* For every block type except file, struct, union, or
-        enumeration blocks, push a level on the tag stack.  We omit
-        file types, so that tags can span file boundaries.  */
-      if (type != st_File && storage != sc_Info)
-       {
-         ptag_head = allocate_thead ();
-         ptag_head->first_tag = 0;
-         ptag_head->prev = cur_tag_head;
-         cur_tag_head = ptag_head;
-       }
-      break;
-
-    case st_End:
-      pscope = cur_file_ptr->cur_scope;
-      if (pscope == (scope_t *) 0)
-       error ("internal error, too many st_End's");
-
-      else
-       {
-         st_t begin_type = (st_t) pscope->lsym->st;
-
-         if (begin_type != st_File)
-           scope_delta = -1;
-
-         /* Except for file, structure, union, or enumeration end
-            blocks remove all tags created within this scope.  */
-         if (begin_type != st_File && storage != sc_Info)
-           {
-             ptag_head = cur_tag_head;
-             cur_tag_head = ptag_head->prev;
-
-             for (ptag = ptag_head->first_tag;
-                  ptag != (tag_t *) 0;
-                  ptag = ptag_next)
-               {
-                 if (ptag->forward_ref != (forward_t *) 0)
-                   add_unknown_tag (ptag);
-
-                 ptag_next = ptag->same_block;
-                 ptag->hash_ptr->tag_ptr = ptag->same_name;
-                 free_tag (ptag);
-               }
-
-             free_thead (ptag_head);
-           }
-
-         cur_file_ptr->cur_scope = pscope->prev;
-         psym->index = pscope->lnumber;        /* blk end gets begin sym # */
-
-         if (storage != sc_Info)
-           psym->iss = pscope->lsym->iss;      /* blk end gets same name */
-
-         if (begin_type == st_File || begin_type == st_Block)
-           pscope->lsym->index = ret+1;        /* block begin gets next sym # */
-
-         /* Functions push two or more aux words as follows:
-            1st word: index+1 of the end symbol
-            2nd word: type of the function (plus any aux words needed).
-            Also, tie the external pointer back to the function begin symbol.  */
-         else
-           {
-             symint_t type;
-             pscope->lsym->index = add_aux_sym_symint (ret+1);
-             type = add_aux_sym_tir (&last_func_type_info,
-                                     hash_no,
-                                     &cur_file_ptr->thash_head[0]);
-             if (last_func_eptr)
-               {
-                 last_func_eptr->ifd = cur_file_ptr->file_index;
-
-                 /* The index for an external st_Proc symbol is the index
-                    of the st_Proc symbol in the local symbol table.  */
-                 last_func_eptr->asym.index = psym->index;
-               }
-           }
-
-         free_scope (pscope);
-       }
-    }
-
-  cur_file_ptr->nested_scopes += scope_delta;
-
-  if (debug && type != st_File
-      && (debug > 2 || type == st_Block || type == st_End
-         || type == st_Proc || type == st_StaticProc))
-    {
-      const char *sc_str = sc_to_string (storage);
-      const char *st_str = st_to_string (type);
-      int depth = cur_file_ptr->nested_scopes + (scope_delta < 0);
-
-      fprintf (stderr,
-              "\tlsym\tv= %10ld, depth= %2d, sc= %-12s",
-              value, depth, sc_str);
-
-      if (str_start && str_end_p1 - str_start > 0)
-       fprintf (stderr, " st= %-11s name= %.*s\n",
-                st_str, (int) (str_end_p1 - str_start), str_start);
-      else
-       {
-         size_t len = strlen (st_str);
-         fprintf (stderr, " st= %.*s\n", (int) (len-1), st_str);
-       }
-    }
-
-  return ret;
-}
-
-\f
-/* Add an external symbol with symbol pointer ESYM and file index
-   IFD.  */
-
-static symint_t
-add_ext_symbol (EXTR *esym, int ifd)
-{
-  const char *str_start;               /* first byte in string */
-  const char *str_end_p1;              /* first byte after string */
-  EXTR *psym;
-  varray_t *vp = &ext_symbols;
-  shash_t *hash_ptr = (shash_t *) 0;
-
-  str_start = ORIG_ESTRS (esym->asym.iss);
-  str_end_p1 = str_start + strlen (str_start);
-
-  if (debug > 1)
-    {
-      long value = esym->asym.value;
-      const char *sc_str = sc_to_string ((sc_t) esym->asym.sc);
-      const char *st_str = st_to_string ((st_t) esym->asym.st);
-
-      fprintf (stderr,
-              "\tesym\tv= %10ld, ifd= %2d, sc= %-12s",
-              value, ifd, sc_str);
-
-      if (str_start && str_end_p1 - str_start > 0)
-       fprintf (stderr, " st= %-11s name= %.*s\n",
-                st_str, (int) (str_end_p1 - str_start), str_start);
-      else
-       fprintf (stderr, " st= %s\n", st_str);
-    }
-
-  if (vp->objects_last_page == vp->objects_per_page)
-    add_varray_page (vp);
-
-  psym = &vp->last->datum->esym[ vp->objects_last_page++ ];
-
-  *psym = *esym;
-  psym->ifd = ifd;
-  psym->asym.index = indexNil;
-  psym->asym.iss   = (str_start == (const char *) 0)
-                       ? 0
-                       : add_string (&ext_strings,
-                                     &ext_str_hash[0],
-                                     str_start,
-                                     str_end_p1,
-                                     &hash_ptr);
-
-  hash_ptr->esym_ptr = psym;
-  return vp->num_allocated++;
-}
-
-\f
-/* Add an auxiliary symbol (passing a symint).  */
-
-static symint_t
-add_aux_sym_symint (symint_t aux_word)
-{
-  AUXU *aux_ptr;
-  efdr_t *file_ptr = cur_file_ptr;
-  varray_t *vp = &file_ptr->aux_syms;
-
-  if (vp->objects_last_page == vp->objects_per_page)
-    add_varray_page (vp);
-
-  aux_ptr = &vp->last->datum->aux[ vp->objects_last_page++ ];
-  aux_ptr->isym = aux_word;
-
-  return vp->num_allocated++;
-}
-
-
-/* Add an auxiliary symbol (passing a file/symbol index combo).  */
-
-static symint_t
-add_aux_sym_rndx (int file_index, symint_t sym_index)
-{
-  AUXU *aux_ptr;
-  efdr_t *file_ptr = cur_file_ptr;
-  varray_t *vp = &file_ptr->aux_syms;
-
-  if (vp->objects_last_page == vp->objects_per_page)
-    add_varray_page (vp);
-
-  aux_ptr = &vp->last->datum->aux[ vp->objects_last_page++ ];
-  aux_ptr->rndx.rfd   = file_index;
-  aux_ptr->rndx.index = sym_index;
-
-  return vp->num_allocated++;
-}
-
-\f
-/* Add an auxiliary symbol (passing the basic type and possibly
-   type qualifiers).  */
-
-static symint_t
-add_aux_sym_tir (type_info_t *t, hash_state_t state, thash_t **hash_tbl)
-{
-  AUXU *aux_ptr;
-  efdr_t *file_ptr = cur_file_ptr;
-  varray_t *vp = &file_ptr->aux_syms;
-  static AUXU init_aux;
-  symint_t ret;
-  int i;
-  AUXU aux;
-
-  aux = init_aux;
-  aux.ti.bt = (int) t->basic_type;
-  aux.ti.continued = 0;
-  aux.ti.fBitfield = t->bitfield;
-
-  aux.ti.tq0 = (int) t->type_qualifiers[0];
-  aux.ti.tq1 = (int) t->type_qualifiers[1];
-  aux.ti.tq2 = (int) t->type_qualifiers[2];
-  aux.ti.tq3 = (int) t->type_qualifiers[3];
-  aux.ti.tq4 = (int) t->type_qualifiers[4];
-  aux.ti.tq5 = (int) t->type_qualifiers[5];
-
-
-  /* For anything that adds additional information, we must not hash,
-     so check here, and reset our state.  */
-
-  if (state != hash_no
-      && (t->type_qualifiers[0] == tq_Array
-         || t->type_qualifiers[1] == tq_Array
-         || t->type_qualifiers[2] == tq_Array
-         || t->type_qualifiers[3] == tq_Array
-         || t->type_qualifiers[4] == tq_Array
-         || t->type_qualifiers[5] == tq_Array
-         || t->basic_type == bt_Struct
-         || t->basic_type == bt_Union
-         || t->basic_type == bt_Enum
-         || t->bitfield
-         || t->num_dims > 0))
-    state = hash_no;
-
-  /* See if we can hash this type, and save some space, but some types
-     can't be hashed (because they contain arrays or continuations),
-     and others can be put into the hash list, but cannot use existing
-     types because other aux entries precede this one.  */
-
-  if (state != hash_no)
-    {
-      thash_t *hash_ptr;
-      symint_t hi;
-
-      hi = aux.isym & ((1 << HASHBITS) - 1);
-      hi %= THASH_SIZE;
-
-      for (hash_ptr = hash_tbl[hi];
-          hash_ptr != (thash_t *) 0;
-          hash_ptr = hash_ptr->next)
-       {
-         if (aux.isym == hash_ptr->type.isym)
-           break;
-       }
-
-      if (hash_ptr != (thash_t *) 0 && state == hash_yes)
-       return hash_ptr->indx;
-
-      if (hash_ptr == (thash_t *) 0)
-       {
-         hash_ptr = allocate_thash ();
-         hash_ptr->next = hash_tbl[hi];
-         hash_ptr->type = aux;
-         hash_ptr->indx = vp->num_allocated;
-         hash_tbl[hi] = hash_ptr;
-       }
-    }
-
-  /* Everything is set up, add the aux symbol.  */
-  if (vp->objects_last_page == vp->objects_per_page)
-    add_varray_page (vp);
-
-  aux_ptr = &vp->last->datum->aux[ vp->objects_last_page++ ];
-  *aux_ptr = aux;
-
-  ret = vp->num_allocated++;
-
-  /* Add bitfield length if it exists.
-
-     NOTE:  Mips documentation claims bitfield goes at the end of the
-     AUX record, but the DECstation compiler emits it here.
-     (This would only make a difference for enum bitfields.)
-
-     Also note:  We use the last size given since gcc may emit 2
-     for an enum bitfield.  */
-
-  if (t->bitfield)
-    (void) add_aux_sym_symint ((symint_t) t->sizes[t->num_sizes-1]);
-
-
-  /* Add tag information if needed.  Structure, union, and enum
-     references add 2 aux symbols: a [file index, symbol index]
-     pointer to the structure type, and the current file index.  */
-
-  if (t->basic_type == bt_Struct
-      || t->basic_type == bt_Union
-      || t->basic_type == bt_Enum)
-    {
-      symint_t file_index = t->tag_ptr->ifd;
-      symint_t sym_index  = t->tag_ptr->indx;
-
-      if (t->unknown_tag)
-       {
-         (void) add_aux_sym_rndx (ST_RFDESCAPE, sym_index);
-         (void) add_aux_sym_symint ((symint_t)-1);
-       }
-      else if (sym_index != indexNil)
-       {
-         (void) add_aux_sym_rndx (ST_RFDESCAPE, sym_index);
-         (void) add_aux_sym_symint (file_index);
-       }
-      else
-       {
-         forward_t *forward_ref = allocate_forward ();
-
-         forward_ref->type_ptr = aux_ptr;
-         forward_ref->next = t->tag_ptr->forward_ref;
-         t->tag_ptr->forward_ref = forward_ref;
-
-         (void) add_aux_sym_rndx (ST_RFDESCAPE, sym_index);
-         forward_ref->index_ptr
-           = &vp->last->datum->aux[ vp->objects_last_page - 1];
-
-         (void) add_aux_sym_symint (file_index);
-         forward_ref->ifd_ptr
-           = &vp->last->datum->aux[ vp->objects_last_page - 1];
-       }
-    }
-
-  /* Add information about array bounds if they exist.  */
-  for (i = 0; i < t->num_dims; i++)
-    {
-      (void) add_aux_sym_rndx (ST_RFDESCAPE,
-                              cur_file_ptr->int_type);
-
-      (void) add_aux_sym_symint (cur_file_ptr->file_index);    /* file index*/
-      (void) add_aux_sym_symint ((symint_t) 0);                        /* low bound */
-      (void) add_aux_sym_symint (t->dimensions[i] - 1);                /* high bound*/
-      (void) add_aux_sym_symint ((t->dimensions[i] == 0)       /* stride */
-                             ? 0
-                             : (t->sizes[i] * 8) / t->dimensions[i]);
-    };
-
-  /* NOTE:  Mips documentation claims that the bitfield width goes here.
-     But it needs to be emitted earlier.  */
-
-  return ret;
-}
-
-\f
-/* Add a tag to the tag table (unless it already exists).  */
-
-static tag_t *
-get_tag (const char *tag_start,                /* 1st byte of tag name */
-        const char *tag_end_p1,        /* 1st byte after tag name */
-        symint_t indx,         /* index of tag start block */
-        bt_t basic_type)               /* bt_Struct, bt_Union, or bt_Enum */
-
-{
-  shash_t *hash_ptr;
-  tag_t *tag_ptr;
-  hash_ptr = hash_string (tag_start,
-                         tag_end_p1 - tag_start,
-                         &tag_hash[0],
-                         (symint_t *) 0);
-
-  if (hash_ptr != (shash_t *) 0
-      && hash_ptr->tag_ptr != (tag_t *) 0)
-  {
-    tag_ptr = hash_ptr->tag_ptr;
-    if (indx != indexNil)
-      {
-       tag_ptr->basic_type = basic_type;
-       tag_ptr->ifd        = cur_file_ptr->file_index;
-       tag_ptr->indx       = indx;
-      }
-    return tag_ptr;
-  }
-
-  (void) add_string (&tag_strings,
-                    &tag_hash[0],
-                    tag_start,
-                    tag_end_p1,
-                    &hash_ptr);
-
-  tag_ptr = allocate_tag ();
-  tag_ptr->forward_ref = (forward_t *) 0;
-  tag_ptr->hash_ptr    = hash_ptr;
-  tag_ptr->same_name   = hash_ptr->tag_ptr;
-  tag_ptr->basic_type  = basic_type;
-  tag_ptr->indx                = indx;
-  tag_ptr->ifd         = (indx == indexNil
-                          ? (symint_t) -1 : cur_file_ptr->file_index);
-  tag_ptr->same_block  = cur_tag_head->first_tag;
-
-  cur_tag_head->first_tag = tag_ptr;
-  hash_ptr->tag_ptr      = tag_ptr;
-
-  return tag_ptr;
-}
-
-\f
-/* Add an unknown {struct, union, enum} tag.  */
-
-static void
-add_unknown_tag (tag_t *ptag)
-{
-  shash_t *hash_ptr    = ptag->hash_ptr;
-  char *name_start     = hash_ptr->string;
-  char *name_end_p1    = name_start + hash_ptr->len;
-  forward_t *f_next    = ptag->forward_ref;
-  forward_t *f_cur;
-  int sym_index;
-  int file_index       = cur_file_ptr->file_index;
-
-  if (debug > 1)
-    {
-      const char *agg_type = "{unknown aggregate type}";
-      switch (ptag->basic_type)
-       {
-       case bt_Struct: agg_type = "struct";    break;
-       case bt_Union:  agg_type = "union";     break;
-       case bt_Enum:   agg_type = "enum";      break;
-       default:                                break;
-       }
-
-      fprintf (stderr, "unknown %s %.*s found\n",
-              agg_type, (int) hash_ptr->len, name_start);
-    }
-
-  sym_index = add_local_symbol (name_start,
-                               name_end_p1,
-                               st_Block,
-                               sc_Info,
-                               (symint_t) 0,
-                               (symint_t) 0);
-
-  (void) add_local_symbol (name_start,
-                          name_end_p1,
-                          st_End,
-                          sc_Info,
-                          (symint_t) 0,
-                          (symint_t) 0);
-
-  while (f_next != (forward_t *) 0)
-    {
-      f_cur  = f_next;
-      f_next = f_next->next;
-
-      f_cur->ifd_ptr->isym = file_index;
-      f_cur->index_ptr->rndx.index = sym_index;
-
-      free_forward (f_cur);
-    }
-
-  return;
-}
-
-\f
-/* Add a procedure to the current file's list of procedures, and record
-   this is the current procedure.  If the assembler created a PDR for
-   this procedure, use that to initialize the current PDR.  */
-
-static void
-add_procedure (const char *func_start,  /* 1st byte of func name */
-              const char *func_end_p1) /* 1st byte after func name */
-{
-  PDR *new_proc_ptr;
-  efdr_t *file_ptr = cur_file_ptr;
-  varray_t *vp = &file_ptr->procs;
-  symint_t value = 0;
-  st_t proc_type = st_Proc;
-  shash_t *shash_ptr = hash_string (func_start,
-                                   func_end_p1 - func_start,
-                                   &orig_str_hash[0],
-                                   (symint_t *) 0);
-
-  if (debug)
-    fputc ('\n', stderr);
-
-  if (vp->objects_last_page == vp->objects_per_page)
-    add_varray_page (vp);
-
-  cur_proc_ptr = new_proc_ptr = &vp->last->datum->proc[ vp->objects_last_page++ ];
-
-  vp->num_allocated++;
-
-
-  /* Did the assembler create this procedure?  If so, get the PDR information.  */
-  cur_oproc_ptr = (PDR *) 0;
-  if (shash_ptr != (shash_t *) 0)
-    {
-      PDR *old_proc_ptr = shash_ptr->proc_ptr;
-      SYMR *sym_ptr = shash_ptr->sym_ptr;
-
-      if (old_proc_ptr != (PDR *) 0
-         && sym_ptr != (SYMR *) 0
-         && ((st_t) sym_ptr->st == st_Proc || (st_t) sym_ptr->st == st_StaticProc))
-       {
-         cur_oproc_begin = sym_ptr;
-         cur_oproc_end = shash_ptr->end_ptr;
-         value = sym_ptr->value;
-
-         cur_oproc_ptr = old_proc_ptr;
-         proc_type = (st_t) sym_ptr->st;
-         *new_proc_ptr = *old_proc_ptr;        /* initialize */
-       }
-    }
-
-  if (cur_oproc_ptr == (PDR *) 0)
-    error ("did not find a PDR block for %.*s",
-          (int) (func_end_p1 - func_start), func_start);
-
-  /* Determine the start of symbols.  */
-  new_proc_ptr->isym = file_ptr->symbols.num_allocated;
-
-  /* Push the start of the function.  */
-  (void) add_local_symbol (func_start, func_end_p1,
-                          proc_type, sc_Text,
-                          value,
-                          (symint_t) 0);
-}
-
-\f
-/* Initialize the init_file structure.  */
-
-static void
-initialize_init_file (void)
-{
-  union {
-    unsigned char c[4];
-    int i;
-  } endian_test;
-
-  memset (&init_file, 0, sizeof (init_file));
-
-  init_file.fdr.lang = langC;
-  init_file.fdr.fMerge = 1;
-  init_file.fdr.glevel = GLEVEL_2;
-
-  /* mips-tfile doesn't attempt to perform byte swapping and always writes
-     out integers in its native ordering.  For cross-compilers, this need
-     not be the same as either the host or the target.  The simplest thing
-     to do is skip the configury and perform an introspective test.  */
-  /* ??? Despite the name, mips-tfile is currently only used on alpha/Tru64
-     and would/may require significant work to be used in cross-compiler
-     configurations, so we could simply admit defeat and hard code this as
-     little-endian, i.e. init_file.fdr.fBigendian = 0.  */
-  endian_test.i = 1;
-  if (endian_test.c[3])
-    init_file.fdr.fBigendian = 1;
-
-  INITIALIZE_VARRAY (&init_file.strings, char);
-  INITIALIZE_VARRAY (&init_file.symbols, SYMR);
-  INITIALIZE_VARRAY (&init_file.procs, PDR);
-  INITIALIZE_VARRAY (&init_file.aux_syms, AUXU);
-
-  init_file_initialized = 1;
-}
-
-/* Add a new filename, and set up all of the file relative
-   virtual arrays (strings, symbols, aux syms, etc.).  Record
-   where the current file structure lives.  */
-
-static void
-add_file (const char *file_start,  /* first byte in string */
-         const char *file_end_p1) /* first byte after string */
-{
-  static char zero_bytes[2] = { '\0', '\0' };
-
-  ptrdiff_t len = file_end_p1 - file_start;
-  int first_ch = *file_start;
-  efdr_t *file_ptr;
-
-  if (debug)
-    fprintf (stderr, "\tfile\t%.*s\n", (int) len, file_start);
-
-  /* See if the file has already been created.  */
-  for (file_ptr = first_file;
-       file_ptr != (efdr_t *) 0;
-       file_ptr = file_ptr->next_file)
-    {
-      if (first_ch == file_ptr->name[0]
-         && file_ptr->name[len] == '\0'
-         && memcmp (file_start, file_ptr->name, len) == 0)
-       {
-         cur_file_ptr = file_ptr;
-         break;
-       }
-    }
-
-  /* If this is a new file, create it.  */
-  if (file_ptr == (efdr_t *) 0)
-    {
-      if (file_desc.objects_last_page == file_desc.objects_per_page)
-       add_varray_page (&file_desc);
-
-      if (! init_file_initialized)
-       initialize_init_file ();
-
-      file_ptr = cur_file_ptr
-       = &file_desc.last->datum->file[ file_desc.objects_last_page++ ];
-      *file_ptr = init_file;
-
-      file_ptr->file_index = file_desc.num_allocated++;
-
-      /* Allocate the string hash table.  */
-      file_ptr->shash_head = (shash_t **) allocate_page ();
-
-      /* Make sure 0 byte in string table is null  */
-      add_string (&file_ptr->strings,
-                 &file_ptr->shash_head[0],
-                 &zero_bytes[0],
-                 &zero_bytes[0],
-                 (shash_t **) 0);
-
-      if (file_end_p1 - file_start > (long) PAGE_USIZE-2)
-       fatal ("filename goes over one page boundary");
-
-      /* Push the start of the filename. We assume that the filename
-         will be stored at string offset 1.  */
-      (void) add_local_symbol (file_start, file_end_p1, st_File, sc_Text,
-                              (symint_t) 0, (symint_t) 0);
-      file_ptr->fdr.rss = 1;
-      file_ptr->name = &file_ptr->strings.last->datum->byte[1];
-      file_ptr->name_len = file_end_p1 - file_start;
-
-      /* Update the linked list of file descriptors.  */
-      *last_file_ptr = file_ptr;
-      last_file_ptr = &file_ptr->next_file;
-
-      /* Add void & int types to the file (void should be first to catch
-        errant 0's within the index fields).  */
-      file_ptr->void_type = add_aux_sym_tir (&void_type_info,
-                                            hash_yes,
-                                            &cur_file_ptr->thash_head[0]);
-
-      file_ptr->int_type = add_aux_sym_tir (&int_type_info,
-                                           hash_yes,
-                                           &cur_file_ptr->thash_head[0]);
-    }
-}
-
-\f
-/* Add a stream of random bytes to a varray.  */
-
-static void
-add_bytes (varray_t *vp,       /* virtual array to add too */
-          char *input_ptr,     /* start of the bytes */
-          size_t nitems)       /* # items to move */
-{
-  size_t move_items;
-  size_t move_bytes;
-  char *ptr;
-
-  while (nitems > 0)
-    {
-      if (vp->objects_last_page >= vp->objects_per_page)
-       add_varray_page (vp);
-
-      ptr = &vp->last->datum->byte[ vp->objects_last_page * vp->object_size ];
-      move_items = vp->objects_per_page - vp->objects_last_page;
-      if (move_items > nitems)
-       move_items = nitems;
-
-      move_bytes = move_items * vp->object_size;
-      nitems -= move_items;
-
-      if (move_bytes >= 32)
-       {
-         (void) memcpy (ptr, input_ptr, move_bytes);
-         input_ptr += move_bytes;
-       }
-      else
-       {
-         while (move_bytes-- > 0)
-           *ptr++ = *input_ptr++;
-       }
-    }
-}
-
-\f
-/* Convert storage class to string.  */
-
-static const char *
-sc_to_string (sc_t storage_class)
-{
-  switch (storage_class)
-    {
-    case sc_Nil:        return "Nil,";
-    case sc_Text:       return "Text,";
-    case sc_Data:       return "Data,";
-    case sc_Bss:        return "Bss,";
-    case sc_Register:   return "Register,";
-    case sc_Abs:        return "Abs,";
-    case sc_Undefined:  return "Undefined,";
-    case sc_CdbLocal:   return "CdbLocal,";
-    case sc_Bits:       return "Bits,";
-    case sc_CdbSystem:  return "CdbSystem,";
-    case sc_RegImage:   return "RegImage,";
-    case sc_Info:       return "Info,";
-    case sc_UserStruct:         return "UserStruct,";
-    case sc_SData:      return "SData,";
-    case sc_SBss:       return "SBss,";
-    case sc_RData:      return "RData,";
-    case sc_Var:        return "Var,";
-    case sc_Common:     return "Common,";
-    case sc_SCommon:    return "SCommon,";
-    case sc_VarRegister: return "VarRegister,";
-    case sc_Variant:    return "Variant,";
-    case sc_SUndefined:         return "SUndefined,";
-    case sc_Init:       return "Init,";
-    case sc_Max:        return "Max,";
-    }
-
-  return "???,";
-}
-
-\f
-/* Convert symbol type to string.  */
-
-static const char *
-st_to_string (st_t symbol_type)
-{
-  switch (symbol_type)
-    {
-    case st_Nil:       return "Nil,";
-    case st_Global:    return "Global,";
-    case st_Static:    return "Static,";
-    case st_Param:     return "Param,";
-    case st_Local:     return "Local,";
-    case st_Label:     return "Label,";
-    case st_Proc:      return "Proc,";
-    case st_Block:     return "Block,";
-    case st_End:       return "End,";
-    case st_Member:    return "Member,";
-    case st_Typedef:   return "Typedef,";
-    case st_File:      return "File,";
-    case st_RegReloc:  return "RegReloc,";
-    case st_Forward:   return "Forward,";
-    case st_StaticProc:        return "StaticProc,";
-    case st_Constant:  return "Constant,";
-    case st_Str:       return "String,";
-    case st_Number:    return "Number,";
-    case st_Expr:      return "Expr,";
-    case st_Type:      return "Type,";
-    case st_Max:       return "Max,";
-    }
-
-  return "???,";
-}
-
-\f
-/* Read a line from standard input, and return the start of the buffer
-   (which is grows if the line is too big).  We split lines at the
-   semi-colon, and return each logical line independently.  */
-
-static char *
-read_line (void)
-{
-  static   int line_split_p    = 0;
-  int string_p         = 0;
-  int comment_p        = 0;
-  int ch;
-  char *ptr;
-
-  if (cur_line_start == (char *) 0)
-    {                          /* allocate initial page */
-      cur_line_start = (char *) allocate_page ();
-      cur_line_alloc = PAGE_SIZE;
-    }
-
-  if (!line_split_p)
-    line_number++;
-
-  line_split_p = 0;
-  cur_line_nbytes = 0;
-
-  for (ptr = cur_line_start; (ch = getchar ()) != EOF; *ptr++ = ch)
-    {
-      if (++cur_line_nbytes >= cur_line_alloc-1)
-       {
-         int num_pages = cur_line_alloc / PAGE_SIZE;
-         char *old_buffer = cur_line_start;
-
-         cur_line_alloc += PAGE_SIZE;
-         cur_line_start = (char *) allocate_multiple_pages (num_pages+1);
-         memcpy (cur_line_start, old_buffer, num_pages * PAGE_SIZE);
-
-         ptr = cur_line_start + cur_line_nbytes - 1;
-       }
-
-      if (ch == '\n')
-       {
-         *ptr++ = '\n';
-         *ptr = '\0';
-         cur_line_ptr = cur_line_start;
-         return cur_line_ptr;
-       }
-
-      else if (ch == '\0')
-       error ("null character found in input");
-
-      else if (!comment_p)
-       {
-         if (ch == '"')
-           string_p = !string_p;
-
-         else if (ch == '#')
-           comment_p++;
-
-         else if (ch == ';' && !string_p)
-           {
-             line_split_p = 1;
-             *ptr++ = '\n';
-             *ptr = '\0';
-             cur_line_ptr = cur_line_start;
-             return cur_line_ptr;
-           }
-       }
-    }
-
-  if (ferror (stdin))
-    pfatal_with_name (input_name);
-
-  cur_line_ptr = (char *) 0;
-  return (char *) 0;
-}
-
-\f
-/* Parse #.begin directives which have a label as the first argument
-   which gives the location of the start of the block.  */
-
-static void
-parse_begin (const char *start)
-{
-  const char *end_p1;                  /* end of label */
-  int ch;
-  shash_t *hash_ptr;                   /* hash pointer to lookup label */
-
-  if (cur_file_ptr == (efdr_t *) 0)
-    {
-      error ("#.begin directive without a preceding .file directive");
-      return;
-    }
-
-  if (cur_proc_ptr == (PDR *) 0)
-    {
-      error ("#.begin directive without a preceding .ent directive");
-      return;
-    }
-
-  for (end_p1 = start; (ch = *end_p1) != '\0' && !ISSPACE (ch); end_p1++)
-    ;
-
-  hash_ptr = hash_string (start,
-                         end_p1 - start,
-                         &orig_str_hash[0],
-                         (symint_t *) 0);
-
-  if (hash_ptr == (shash_t *) 0)
-    {
-      error ("label %.*s not found for #.begin",
-            (int) (end_p1 - start), start);
-      return;
-    }
-
-  if (cur_oproc_begin == (SYMR *) 0)
-    {
-      error ("procedure table %.*s not found for #.begin",
-            (int) (end_p1 - start), start);
-      return;
-    }
-
-  (void) add_local_symbol ((const char *) 0, (const char *) 0,
-                          st_Block, sc_Text,
-                          (symint_t) hash_ptr->sym_ptr->value - cur_oproc_begin->value,
-                          (symint_t) 0);
-}
-
-\f
-/* Parse #.bend directives which have a label as the first argument
-   which gives the location of the end of the block.  */
-
-static void
-parse_bend (const char *start)
-{
-  const char *end_p1;                  /* end of label */
-  int ch;
-  shash_t *hash_ptr;                   /* hash pointer to lookup label */
-
-  if (cur_file_ptr == (efdr_t *) 0)
-    {
-      error ("#.begin directive without a preceding .file directive");
-      return;
-    }
-
-  if (cur_proc_ptr == (PDR *) 0)
-    {
-      error ("#.bend directive without a preceding .ent directive");
-      return;
-    }
-
-  for (end_p1 = start; (ch = *end_p1) != '\0' && !ISSPACE (ch); end_p1++)
-    ;
-
-  hash_ptr = hash_string (start,
-                         end_p1 - start,
-                         &orig_str_hash[0],
-                         (symint_t *) 0);
-
-  if (hash_ptr == (shash_t *) 0)
-    {
-      error ("label %.*s not found for #.bend", (int) (end_p1 - start), start);
-      return;
-    }
-
-  if (cur_oproc_begin == (SYMR *) 0)
-    {
-      error ("procedure table %.*s not found for #.bend",
-            (int) (end_p1 - start), start);
-      return;
-    }
-
-  (void) add_local_symbol ((const char *) 0, (const char *) 0,
-                          st_End, sc_Text,
-                          (symint_t) hash_ptr->sym_ptr->value - cur_oproc_begin->value,
-                          (symint_t) 0);
-}
-
-\f
-/* Parse #.def directives, which are contain standard COFF subdirectives
-   to describe the debugging format.  These subdirectives include:
-
-       .scl    specify storage class
-       .val    specify a value
-       .endef  specify end of COFF directives
-       .type   specify the type
-       .size   specify the size of an array
-       .dim    specify an array dimension
-       .tag    specify a tag for a struct, union, or enum.  */
-
-static void
-parse_def (const char *name_start)
-{
-  const char *dir_start;                       /* start of current directive*/
-  const char *dir_end_p1;                      /* end+1 of current directive*/
-  const char *arg_start;                       /* start of current argument */
-  const char *arg_end_p1;                      /* end+1 of current argument */
-  const char *name_end_p1;                     /* end+1 of label */
-  const char *tag_start          = 0;                  /* start of tag name */
-  const char *tag_end_p1  = 0;                 /* end+1 of tag name */
-  sc_t storage_class     = sc_Nil;
-  st_t symbol_type       = st_Nil;
-  type_info_t t;
-  EXTR *eptr             = (EXTR *) 0;         /* ext. sym equivalent to def*/
-  int is_function        = 0;                  /* != 0 if function */
-  symint_t value         = 0;
-  symint_t indx                  = cur_file_ptr->void_type;
-  int error_line         = 0;
-  symint_t arg_number;
-  symint_t temp_array[ N_TQ ];
-  int arg_was_number;
-  int ch, i;
-  ptrdiff_t len;
-
-  static int inside_enumeration = 0;           /* is this an enumeration? */
-
-
-  /* Initialize the type information.  */
-  t = type_info_init;
-
-
-  /* Search for the end of the name being defined.  */
-  /* Allow spaces and such in names for G++ templates, which produce stabs
-     that look like:
-
-     #.def   SMANIP<long unsigned int>; .scl 10; .type 0x8; .size 8; .endef */
-
-  for (name_end_p1 = name_start; (ch = *name_end_p1) != ';' && ch != '\0'; name_end_p1++)
-    ;
-
-  if (ch == '\0')
-    {
-      error_line = __LINE__;
-      goto bomb_out;
-    }
-
-  /* Parse the remaining subdirectives now.  */
-  dir_start = name_end_p1+1;
-  for (;;)
-    {
-      while ((ch = *dir_start) == ' ' || ch == '\t')
-       ++dir_start;
-
-      if (ch != '.')
-       {
-         error_line = __LINE__;
-         goto bomb_out;
-       }
-
-      /* Are we done? */
-      if (dir_start[1] == 'e'
-         && memcmp (dir_start, ".endef", sizeof (".endef")-1) == 0)
-       break;
-
-      /* Pick up the subdirective now.  */
-      for (dir_end_p1 = dir_start+1;
-          (ch = *dir_end_p1) != ' ' && ch != '\t';
-          dir_end_p1++)
-       {
-         if (ch == '\0' || ISSPACE (ch))
-           {
-             error_line = __LINE__;
-             goto bomb_out;
-           }
-       }
-
-      /* Pick up the subdirective argument now.  */
-      arg_was_number = arg_number = 0;
-      arg_end_p1 = 0;
-      arg_start = dir_end_p1+1;
-      ch = *arg_start;
-      while (ch == ' ' || ch == '\t')
-       ch = *++arg_start;
-
-      if (ISDIGIT (ch) || ch == '-' || ch == '+')
-       {
-         int ch2;
-         arg_number = strtol (arg_start, (char **) &arg_end_p1, 0);
-         /* It's only a number if followed by ';' or ','. */
-         if (arg_end_p1 != arg_start && (((ch2 = *arg_end_p1) == ';') || ch2 == ','))
-           arg_was_number++;
-       }
-
-      else if (ch == '\0' || ISSPACE (ch))
-       {
-         error_line = __LINE__;
-         goto bomb_out;
-       }
-
-      if (!arg_was_number)
-       {
-         /* Allow spaces and such in names for G++ templates.  */
-         for (arg_end_p1 = arg_start+1;
-              (ch = *arg_end_p1) != ';' && ch != '\0';
-              arg_end_p1++)
-           ;
-
-         if (ch == '\0')
-           {
-             error_line = __LINE__;
-             goto bomb_out;
-           }
-       }
-
-      /* Classify the directives now.  */
-      len = dir_end_p1 - dir_start;
-      switch (dir_start[1])
-       {
-       default:
-         error_line = __LINE__;
-         goto bomb_out;
-
-       case 'd':
-         if (len == sizeof (".dim")-1
-             && memcmp (dir_start, ".dim", sizeof (".dim")-1) == 0
-             && arg_was_number)
-           {
-             symint_t *t_ptr = &temp_array[ N_TQ-1 ];
-
-             *t_ptr = arg_number;
-             while (*arg_end_p1 == ',' && arg_was_number)
-               {
-                 arg_start = arg_end_p1+1;
-                 ch = *arg_start;
-                 while (ch == ' ' || ch == '\t')
-                   ch = *++arg_start;
-
-                 arg_was_number = 0;
-                 if (ISDIGIT (ch) || ch == '-' || ch == '+')
-                   {
-                     int ch2;
-                     arg_number = strtol (arg_start, (char **) &arg_end_p1, 0);
-                     if (arg_end_p1 != arg_start && (((ch2 = *arg_end_p1) == ';') || ch2 == ','))
-                       arg_was_number++;
-
-                     if (t_ptr == &temp_array[0])
-                       {
-                         error_line = __LINE__;
-                         goto bomb_out;
-                       }
-
-                     *--t_ptr = arg_number;
-                   }
-               }
-
-             /* Reverse order of dimensions.  */
-             while (t_ptr <= &temp_array[ N_TQ-1 ])
-               {
-                 if (t.num_dims >= N_TQ-1)
-                   {
-                     error_line = __LINE__;
-                     goto bomb_out;
-                   }
-
-                 t.dimensions[ t.num_dims++ ] = *t_ptr++;
-               }
-             break;
-           }
-         else
-           {
-             error_line = __LINE__;
-             goto bomb_out;
-           }
-
-
-       case 's':
-         if (len == sizeof (".scl")-1
-             && memcmp (dir_start, ".scl", sizeof (".scl")-1) == 0
-             && arg_was_number
-             && arg_number < ((symint_t) C_MAX))
-           {
-             /* If the symbol is a static or external, we have
-                already gotten the appropriate type and class, so
-                make sure we don't override those values.  This is
-                needed because there are some type and classes that
-                are not in COFF, such as short data, etc.  */
-             if (symbol_type == st_Nil)
-               {
-                 symbol_type   = map_coff_sym_type[arg_number];
-                 storage_class = map_coff_storage [arg_number];
-               }
-             break;
-           }
-
-         else if (len == sizeof (".size")-1
-                  && memcmp (dir_start, ".size", sizeof (".size")-1) == 0
-                  && arg_was_number)
-           {
-             symint_t *t_ptr = &temp_array[ N_TQ-1 ];
-
-             *t_ptr = arg_number;
-             while (*arg_end_p1 == ',' && arg_was_number)
-               {
-                 arg_start = arg_end_p1+1;
-                 ch = *arg_start;
-                 while (ch == ' ' || ch == '\t')
-                   ch = *++arg_start;
-
-                 arg_was_number = 0;
-                 if (ISDIGIT (ch) || ch == '-' || ch == '+')
-                   {
-                     int ch2;
-                     arg_number = strtol (arg_start, (char **) &arg_end_p1, 0);
-                     if (arg_end_p1 != arg_start && (((ch2 = *arg_end_p1) == ';') || ch2 == ','))
-                       arg_was_number++;
-
-                     if (t_ptr == &temp_array[0])
-                       {
-                         error_line = __LINE__;
-                         goto bomb_out;
-                       }
-
-                     *--t_ptr = arg_number;
-                   }
-               }
-
-             /* Reverse order of sizes.  */
-             while (t_ptr <= &temp_array[ N_TQ-1 ])
-               {
-                 if (t.num_sizes >= N_TQ-1)
-                   {
-                     error_line = __LINE__;
-                     goto bomb_out;
-                   }
-
-                 t.sizes[ t.num_sizes++ ] = *t_ptr++;
-               }
-             break;
-           }
-
-         else
-           {
-             error_line = __LINE__;
-             goto bomb_out;
-           }
-
-
-       case 't':
-         if (len == sizeof (".type")-1
-             && memcmp (dir_start, ".type", sizeof (".type")-1) == 0
-             && arg_was_number)
-           {
-             tq_t *tq_ptr = &t.type_qualifiers[0];
-
-             t.orig_type = (coff_type_t) (arg_number & N_BTMASK);
-             t.basic_type = map_coff_types [(int) t.orig_type];
-             for (i = N_TQ-1; i >= 0; i--)
-               {
-                 int dt = (arg_number >> ((i * N_TQ_SHIFT) + N_BT_SHIFT)
-                           & N_TMASK);
-
-                 if (dt != (int) DT_NON)
-                   *tq_ptr++ = map_coff_derived_type [dt];
-               }
-
-             /* If this is a function, ignore it, so that we don't get
-                two entries (one from the .ent, and one for the .def
-                that precedes it).  Save the type information so that
-                the end block can properly add it after the begin block
-                index.  For MIPS knows what reason, we must strip off
-                the function type at this point.  */
-             if (tq_ptr != &t.type_qualifiers[0] && tq_ptr[-1] == tq_Proc)
-               {
-                 is_function = 1;
-                 tq_ptr[-1] = tq_Nil;
-               }
-
-             break;
-           }
-
-         else if (len == sizeof (".tag")-1
-             && memcmp (dir_start, ".tag", sizeof (".tag")-1) == 0)
-           {
-             tag_start = arg_start;
-             tag_end_p1 = arg_end_p1;
-             break;
-           }
-
-         else
-           {
-             error_line = __LINE__;
-             goto bomb_out;
-           }
-
-
-       case 'v':
-         if (len == sizeof (".val")-1
-             && memcmp (dir_start, ".val", sizeof (".val")-1) == 0)
-           {
-             if (arg_was_number)
-               value = arg_number;
-
-             /* If the value is not an integer value, it must be the
-                name of a static or global item.  Look up the name in
-                the original symbol table to pick up the storage
-                class, symbol type, etc.  */
-             else
-               {
-                 shash_t *orig_hash_ptr;       /* hash within orig sym table*/
-                 shash_t *ext_hash_ptr;        /* hash within ext. sym table*/
-
-                 ext_hash_ptr = hash_string (arg_start,
-                                             arg_end_p1 - arg_start,
-                                             &ext_str_hash[0],
-                                             (symint_t *) 0);
-
-                 if (ext_hash_ptr != (shash_t *) 0
-                     && ext_hash_ptr->esym_ptr != (EXTR *) 0)
-                   eptr = ext_hash_ptr->esym_ptr;
-
-                 orig_hash_ptr = hash_string (arg_start,
-                                              arg_end_p1 - arg_start,
-                                              &orig_str_hash[0],
-                                              (symint_t *) 0);
-
-                 if ((orig_hash_ptr == (shash_t *) 0
-                      || orig_hash_ptr->sym_ptr == (SYMR *) 0)
-                     && eptr == (EXTR *) 0)
-                   {
-                     fprintf (stderr, "warning, %.*s not found in original or external symbol tables, value defaults to 0\n",
-                              (int) (arg_end_p1 - arg_start),
-                              arg_start);
-                     value = 0;
-                   }
-                 else
-                   {
-                     SYMR *ptr = (orig_hash_ptr != (shash_t *) 0
-                                  && orig_hash_ptr->sym_ptr != (SYMR *) 0)
-                                       ? orig_hash_ptr->sym_ptr
-                                       : &eptr->asym;
-
-                     symbol_type = (st_t) ptr->st;
-                     storage_class = (sc_t) ptr->sc;
-                     value = ptr->value;
-                   }
-               }
-             break;
-           }
-         else
-           {
-             error_line = __LINE__;
-             goto bomb_out;
-           }
-       }
-
-      /* Set up to find next directive.  */
-      dir_start = arg_end_p1 + 1;
-    }
-
-
-  if (storage_class == sc_Bits)
-    {
-      t.bitfield = 1;
-      t.extra_sizes = 1;
-    }
-  else
-    t.extra_sizes = 0;
-
-  if (t.num_dims > 0)
-    {
-      int num_real_sizes = t.num_sizes - t.extra_sizes;
-      int diff = t.num_dims - num_real_sizes;
-      int i = t.num_dims - 1;
-      int j;
-
-      if (num_real_sizes != 1 || diff < 0)
-       {
-         error_line = __LINE__;
-         goto bomb_out;
-       }
-
-      /* If this is an array, make sure the same number of dimensions
-        and sizes were passed, creating extra sizes for multiply
-        dimensioned arrays if not passed.  */
-
-      if (diff)
-       {
-         for (j = ARRAY_SIZE (t.sizes) - 1; j >= 0; j--)
-           t.sizes[ j ] = ((j-diff) >= 0) ? t.sizes[ j-diff ] : 0;
-
-         t.num_sizes = i + 1;
-         for ( i--; i >= 0; i-- )
-           {
-             if (t.dimensions[ i+1 ])
-               t.sizes[ i ] = t.sizes[ i+1 ] / t.dimensions[ i+1 ];
-             else
-               t.sizes[ i ] = t.sizes[ i+1 ];
-           }
-       }
-    }
-
-  /* Except for enumeration members & begin/ending of scopes, put the
-     type word in the aux. symbol table.  */
-
-  if (symbol_type == st_Block || symbol_type == st_End)
-    indx = 0;
-
-  else if (inside_enumeration)
-    indx = cur_file_ptr->void_type;
-
-  else
-    {
-      if (t.basic_type == bt_Struct
-         || t.basic_type == bt_Union
-         || t.basic_type == bt_Enum)
-       {
-         if (tag_start == (char *) 0)
-           {
-             error ("no tag specified for %.*s",
-                    (int) (name_end_p1 - name_start),
-                    name_start);
-             return;
-           }
-
-         t.tag_ptr = get_tag (tag_start, tag_end_p1,  (symint_t) indexNil,
-                              t.basic_type);
-       }
-
-      if (is_function)
-       {
-         last_func_type_info = t;
-         last_func_eptr = eptr;
-         return;
-       }
-
-      indx = add_aux_sym_tir (&t,
-                             hash_yes,
-                             &cur_file_ptr->thash_head[0]);
-    }
-
-
-  /* If this is an external or static symbol, update the appropriate
-     external symbol.  */
-
-  if (eptr != (EXTR *) 0
-      && (eptr->asym.index == indexNil || cur_proc_ptr == (PDR *) 0))
-    {
-      eptr->ifd = cur_file_ptr->file_index;
-      eptr->asym.index = indx;
-    }
-
-
-  /* Do any last minute adjustments that are necessary.  */
-  switch (symbol_type)
-    {
-    default:
-      break;
-
-
-      /* For the beginning of structs, unions, and enumerations, the
-        size info needs to be passed in the value field.  */
-
-    case st_Block:
-      if (t.num_sizes - t.num_dims - t.extra_sizes != 1)
-       {
-         error_line = __LINE__;
-         goto bomb_out;
-       }
-
-      else
-       value = t.sizes[0];
-
-      inside_enumeration = (t.orig_type == T_ENUM);
-      break;
-
-
-      /* For the end of structs, unions, and enumerations, omit the
-        name which is always ".eos".  This needs to be done last, so
-        that any error reporting above gives the correct name.  */
-
-    case st_End:
-      name_start = name_end_p1 = 0;
-      value = inside_enumeration = 0;
-      break;
-
-
-      /* Members of structures and unions that aren't bitfields, need
-        to adjust the value from a byte offset to a bit offset.
-        Members of enumerations do not have the value adjusted, and
-        can be distinguished by indx == indexNil.  For enumerations,
-        update the maximum enumeration value.  */
-
-    case st_Member:
-      if (!t.bitfield && !inside_enumeration)
-       value *= 8;
-
-      break;
-    }
-
-
-  /* Add the symbol, except for global symbols outside of functions,
-     for which the external symbol table is fine enough.  */
-
-  if (eptr == (EXTR *) 0
-      || eptr->asym.st == (int) st_Nil
-      || cur_proc_ptr != (PDR *) 0)
-    {
-      symint_t isym = add_local_symbol (name_start, name_end_p1,
-                                       symbol_type, storage_class,
-                                       value,
-                                       indx);
-
-      /* Deal with struct, union, and enum tags.  */
-      if (symbol_type == st_Block)
-        {
-         /* Create or update the tag information.  */
-         tag_t *tag_ptr = get_tag (name_start,
-                                   name_end_p1,
-                                   isym,
-                                   t.basic_type);
-
-         /* If there are any forward references, fill in the appropriate
-            file and symbol indexes.  */
-
-         symint_t file_index  = cur_file_ptr->file_index;
-         forward_t *f_next = tag_ptr->forward_ref;
-         forward_t *f_cur;
-
-         while (f_next != (forward_t *) 0)
-           {
-             f_cur  = f_next;
-             f_next = f_next->next;
-
-             f_cur->ifd_ptr->isym = file_index;
-             f_cur->index_ptr->rndx.index = isym;
-
-             free_forward (f_cur);
-           }
-
-         tag_ptr->forward_ref = (forward_t *) 0;
-        }
-    }
-
-  /* Normal return  */
-  return;
-
-  /* Error return, issue message.  */
-bomb_out:
-  if (error_line)
-    error ("compiler error, badly formed #.def (internal line # = %d)", error_line);
-  else
-    error ("compiler error, badly formed #.def");
-
-  return;
-}
-
-\f
-/* Parse .end directives.  */
-
-static void
-parse_end (const char *start)
-{
-  const char *start_func, *end_func_p1;
-  int ch;
-  symint_t value;
-  FDR *orig_fdr;
-
-  if (cur_file_ptr == (efdr_t *) 0)
-    {
-      error (".end directive without a preceding .file directive");
-      return;
-    }
-
-  if (cur_proc_ptr == (PDR *) 0)
-    {
-      error (".end directive without a preceding .ent directive");
-      return;
-    }
-
-  /* Get the function name, skipping whitespace.  */
-  for (start_func = start; ISSPACE ((unsigned char)*start_func); start_func++)
-    ;
-
-  ch = *start_func;
-  if (!IS_ASM_IDENT (ch))
-    {
-      error (".end directive has no name");
-      return;
-    }
-
-  for (end_func_p1 = start_func; IS_ASM_IDENT (ch); ch = *++end_func_p1)
-    ;
-
-
-  /* Get the value field for creating the end from the original object
-     file (which we find by locating the procedure start, and using the
-     pointer to the end+1 block and backing up.  The index points to a
-     two word aux. symbol, whose first word is the index of the end
-     symbol, and the second word is the type of the function return
-     value.  */
-
-  orig_fdr = cur_file_ptr->orig_fdr;
-  value = 0;
-  if (orig_fdr != (FDR *) 0 && cur_oproc_end != (SYMR *) 0)
-    value = cur_oproc_end->value;
-
-  else
-    error ("cannot find .end block for %.*s",
-          (int) (end_func_p1 - start_func), start_func);
-
-  (void) add_local_symbol (start_func, end_func_p1,
-                          st_End, sc_Text,
-                          value,
-                          (symint_t) 0);
-
-  cur_proc_ptr = cur_oproc_ptr = (PDR *) 0;
-}
-
-\f
-/* Parse .ent directives.  */
-
-static void
-parse_ent (const char *start)
-{
-  const char *start_func, *end_func_p1;
-  int ch;
-
-  if (cur_file_ptr == (efdr_t *) 0)
-    {
-      error (".ent directive without a preceding .file directive");
-      return;
-    }
-
-  if (cur_proc_ptr != (PDR *) 0)
-    {
-      error ("second .ent directive found before .end directive");
-      return;
-    }
-
-  for (start_func = start; ISSPACE ((unsigned char)*start_func); start_func++)
-    ;
-
-  ch = *start_func;
-  if (!IS_ASM_IDENT (ch))
-    {
-      error (".ent directive has no name");
-      return;
-    }
-
-  for (end_func_p1 = start_func; IS_ASM_IDENT (ch); ch = *++end_func_p1)
-    ;
-
-  (void) add_procedure (start_func, end_func_p1);
-}
-
-\f
-/* Parse .file directives.  */
-
-static void
-parse_file (const char *start)
-{
-  char *p;
-  char *start_name, *end_name_p1;
-
-  (void) strtol (start, &p, 0);
-  if (start == p
-      || (start_name = strchr (p, '"')) == (char *) 0
-      || (end_name_p1 = strrchr (++start_name, '"')) == (char *) 0)
-    {
-      error ("invalid .file directive");
-      return;
-    }
-
-  if (cur_proc_ptr != (PDR *) 0)
-    {
-      error ("no way to handle .file within .ent/.end section");
-      return;
-    }
-
-  add_file (start_name, end_name_p1);
-}
-
-\f
-/* Make sure the @stabs symbol is emitted.  */
-
-static void
-mark_stabs (const char *start ATTRIBUTE_UNUSED)
-{
-  if (!stabs_seen)
-    {
-      /* Add a dummy @stabs symbol.  */
-      stabs_seen = 1;
-      (void) add_local_symbol (stabs_symbol,
-                              stabs_symbol + sizeof (stabs_symbol),
-                              (st_t) stNil, (sc_t) scInfo, -1,
-                              MIPS_MARK_STAB (0));
-
-    }
-}
-
-\f
-/* Parse .stabs directives.
-
-   .stabs directives have five fields:
-       "string"        a string, encoding the type information.
-       code            a numeric code, defined in <stab.h>
-       0               a zero
-       0               a zero or line number
-       value           a numeric value or an address.
-
-    If the value is relocatable, we transform this into:
-       iss             points as an index into string space
-       value           value from lookup of the name
-       st              st from lookup of the name
-       sc              sc from lookup of the name
-       index           code|CODE_MASK
-
-    If the value is not relocatable, we transform this into:
-       iss             points as an index into string space
-       value           value
-       st              st_Nil
-       sc              sc_Nil
-       index           code|CODE_MASK
-
-    .stabn directives have four fields (string is null):
-       code            a numeric code, defined in <stab.h>
-       0               a zero
-       0               a zero or a line number
-       value           a numeric value or an address.  */
-
-static void
-parse_stabs_common (const char *string_start,  /* start of string or NULL */
-                   const char *string_end,     /* end+1 of string or NULL */
-                   const char *rest)           /* rest of the directive.  */
-{
-  efdr_t *save_file_ptr = cur_file_ptr;
-  symint_t code;
-  symint_t value;
-  char *p;
-  st_t st;
-  sc_t sc;
-  int ch;
-
-  if (stabs_seen == 0)
-    mark_stabs ("");
-
-  /* Read code from stabs.  */
-  if (!ISDIGIT (*rest))
-    {
-      error ("invalid .stabs/.stabn directive, code is non-numeric");
-      return;
-    }
-
-  code = strtol (rest, &p, 0);
-
-  /* Line number stabs are handled differently, since they have two values,
-     the line number and the address of the label.  We use the index field
-     (aka code) to hold the line number, and the value field to hold the
-     address.  The symbol type is st_Label, which should be different from
-     the other stabs, so that gdb can recognize it.  */
-
-  if (code == (int) N_SLINE)
-    {
-      SYMR *sym_ptr, dummy_symr;
-      shash_t *shash_ptr;
-
-      /* Skip ,0, */
-      if (p[0] != ',' || p[1] != '0' || p[2] != ',' || !ISDIGIT (p[3]))
-       {
-         error ("invalid line number .stabs/.stabn directive");
-         return;
-       }
-
-      code = strtol (p+3, &p, 0);
-      ch = *++p;
-      if (p[-1] != ',' || ISDIGIT (ch) || !IS_ASM_IDENT (ch))
-       {
-         error ("invalid line number .stabs/.stabn directive");
-         return;
-       }
-
-      dummy_symr.index = code;
-      if (dummy_symr.index != code)
-       {
-         error ("line number (%lu) for .stabs/.stabn directive cannot fit in index field (20 bits)",
-                code);
-
-         return;
-       }
-
-      shash_ptr = hash_string (p,
-                              strlen (p) - 1,
-                              &orig_str_hash[0],
-                              (symint_t *) 0);
-
-      if (shash_ptr == (shash_t *) 0
-         || (sym_ptr = shash_ptr->sym_ptr) == (SYMR *) 0)
-       {
-         error ("invalid .stabs/.stabn directive, value not found");
-         return;
-       }
-
-      if ((st_t) sym_ptr->st != st_Label)
-       {
-         error ("invalid line number .stabs/.stabn directive");
-         return;
-       }
-
-      st = st_Label;
-      sc = (sc_t) sym_ptr->sc;
-      value = sym_ptr->value;
-    }
-  else
-    {
-      /* Skip ,<num>,<num>, */
-      if (*p++ != ',')
-       goto failure;
-      for (; ISDIGIT (*p); p++)
-       ;
-      if (*p++ != ',')
-       goto failure;
-      for (; ISDIGIT (*p); p++)
-       ;
-      if (*p++ != ',')
-       goto failure;
-      ch = *p;
-      if (!IS_ASM_IDENT (ch) && ch != '-')
-       {
-       failure:
-         error ("invalid .stabs/.stabn directive, bad character");
-         return;
-       }
-
-      if (ISDIGIT (ch) || ch == '-')
-       {
-         st = st_Nil;
-         sc = sc_Nil;
-         value = strtol (p, &p, 0);
-         if (*p != '\n')
-           {
-             error ("invalid .stabs/.stabn directive, stuff after numeric value");
-             return;
-           }
-       }
-      else if (!IS_ASM_IDENT (ch))
-       {
-         error ("invalid .stabs/.stabn directive, bad character");
-         return;
-       }
-      else
-       {
-         SYMR *sym_ptr;
-         shash_t *shash_ptr;
-         const char *start, *end_p1;
-
-         start = p;
-         if ((end_p1 = strchr (start, '+')) == (char *) 0)
-           {
-             if ((end_p1 = strchr (start, '-')) == (char *) 0)
-               end_p1 = start + strlen (start) - 1;
-           }
-
-         shash_ptr = hash_string (start,
-                                  end_p1 - start,
-                                  &orig_str_hash[0],
-                                  (symint_t *) 0);
-
-         if (shash_ptr == (shash_t *) 0
-             || (sym_ptr = shash_ptr->sym_ptr) == (SYMR *) 0)
-           {
-             shash_ptr = hash_string (start,
-                                      end_p1 - start,
-                                      &ext_str_hash[0],
-                                      (symint_t *) 0);
-
-             if (shash_ptr == (shash_t *) 0
-                 || shash_ptr->esym_ptr == (EXTR *) 0)
-               {
-                 error ("invalid .stabs/.stabn directive, value not found");
-                 return;
-               }
-             else
-               sym_ptr = &(shash_ptr->esym_ptr->asym);
-           }
-
-         /* Traditionally, N_LBRAC and N_RBRAC are *not* relocated.  */
-         if (code == (int) N_LBRAC || code == (int) N_RBRAC)
-           {
-             sc = (sc_t) scNil;
-             st = (st_t) stNil;
-           }
-         else
-           {
-             sc = (sc_t) sym_ptr->sc;
-             st = (st_t) sym_ptr->st;
-           }
-         value = sym_ptr->value;
-
-         ch = *end_p1++;
-         if (ch != '\n')
-           {
-             if (((!ISDIGIT (*end_p1)) && (*end_p1 != '-'))
-                 || ((ch != '+') && (ch != '-')))
-               {
-                 error ("invalid .stabs/.stabn directive, badly formed value");
-                 return;
-               }
-             if (ch == '+')
-               value += strtol (end_p1, &p, 0);
-             else if (ch == '-')
-               value -= strtol (end_p1, &p, 0);
-
-             if (*p != '\n')
-               {
-                 error ("invalid .stabs/.stabn directive, stuff after numeric value");
-                 return;
-               }
-           }
-       }
-      code = MIPS_MARK_STAB (code);
-    }
-
-  (void) add_local_symbol (string_start, string_end, st, sc, value, code);
-  /* Restore normal file type.  */
-  cur_file_ptr = save_file_ptr;
-}
-
-
-static void
-parse_stabs (const char *start)
-{
-  const char *end = strchr (start+1, '"');
-
-  if (*start != '"' || end == (const char *) 0 || end[1] != ',')
-    {
-      error ("invalid .stabs directive, no string");
-      return;
-    }
-
-  parse_stabs_common (start+1, end, end+2);
-}
-
-
-static void
-parse_stabn (const char *start)
-{
-  parse_stabs_common ((const char *) 0, (const char *) 0, start);
-}
-
-\f
-/* Parse the input file, and write the lines to the output file
-   if needed.  */
-
-static void
-parse_input (void)
-{
-  char *p;
-  size_t i;
-  thead_t *ptag_head;
-  tag_t *ptag;
-  tag_t *ptag_next;
-
-  if (debug)
-    fprintf (stderr, "\tinput\n");
-
-  /* Add a dummy scope block around the entire compilation unit for
-     structures defined outside of blocks.  */
-  ptag_head = allocate_thead ();
-  ptag_head->first_tag = 0;
-  ptag_head->prev = cur_tag_head;
-  cur_tag_head = ptag_head;
-
-  while ((p = read_line ()) != (char *) 0)
-    {
-      /* Skip leading blanks.  */
-      while (ISSPACE ((unsigned char)*p))
-       p++;
-
-      /* See if it's a directive we handle.  If so, dispatch handler.  */
-      for (i = 0; i < ARRAY_SIZE (pseudo_ops); i++)
-       if (memcmp (p, pseudo_ops[i].name, pseudo_ops[i].len) == 0
-           && ISSPACE ((unsigned char)(p[pseudo_ops[i].len])))
-         {
-           p += pseudo_ops[i].len;     /* skip to first argument */
-           while (ISSPACE ((unsigned char)*p))
-             p++;
-
-           (*pseudo_ops[i].func)( p );
-           break;
-         }
-    }
-
-  /* Process any tags at global level.  */
-  ptag_head = cur_tag_head;
-  cur_tag_head = ptag_head->prev;
-
-  for (ptag = ptag_head->first_tag;
-       ptag != (tag_t *) 0;
-       ptag = ptag_next)
-    {
-      if (ptag->forward_ref != (forward_t *) 0)
-       add_unknown_tag (ptag);
-
-      ptag_next = ptag->same_block;
-      ptag->hash_ptr->tag_ptr = ptag->same_name;
-      free_tag (ptag);
-    }
-
-  free_thead (ptag_head);
-
-}
-
-\f
-/* Update the global headers with the final offsets in preparation
-   to write out the .T file.  */
-
-static void
-update_headers (void)
-{
-  symint_t i;
-  efdr_t *file_ptr;
-
-  /* Set up the symbolic header.  */
-  file_offset = sizeof (symbolic_header) + orig_file_header.f_symptr;
-  symbolic_header.magic = orig_sym_hdr.magic;
-  symbolic_header.vstamp = orig_sym_hdr.vstamp;
-
-  /* Set up global counts.  */
-  symbolic_header.issExtMax = ext_strings.num_allocated;
-  symbolic_header.idnMax    = dense_num.num_allocated;
-  symbolic_header.ifdMax    = file_desc.num_allocated;
-  symbolic_header.iextMax   = ext_symbols.num_allocated;
-  symbolic_header.ilineMax  = orig_sym_hdr.ilineMax;
-  symbolic_header.ioptMax   = orig_sym_hdr.ioptMax;
-  symbolic_header.cbLine    = orig_sym_hdr.cbLine;
-  symbolic_header.crfd      = orig_sym_hdr.crfd;
-
-
-  /* Loop through each file, figuring out how many local syms,
-     line numbers, etc. there are.  Also, put out end symbol
-     for the filename.  */
-
-  for (file_ptr = first_file;
-       file_ptr != (efdr_t *) 0;
-       file_ptr = file_ptr->next_file)
-    {
-      SYMR *sym_start;
-      SYMR *sym;
-      SYMR *sym_end_p1;
-      FDR *fd_ptr = file_ptr->orig_fdr;
-
-      cur_file_ptr = file_ptr;
-
-      /* Copy st_Static symbols from the original local symbol table if
-        they did not get added to the new local symbol table.
-        This happens with stabs-in-ecoff or if the source file is
-        compiled without debugging.  */
-      sym_start = ORIG_LSYMS (fd_ptr->isymBase);
-      sym_end_p1 = sym_start + fd_ptr->csym;
-      for (sym = sym_start; sym < sym_end_p1; sym++)
-       {
-         if ((st_t) sym->st == st_Static)
-           {
-             char *str = ORIG_LSTRS (fd_ptr->issBase + sym->iss);
-             size_t len = strlen (str);
-             shash_t *hash_ptr;
-
-             /* Ignore internal labels.  */
-             if (str[0] == '$' && str[1] == 'L')
-               continue;
-             hash_ptr = hash_string (str,
-                                     (ptrdiff_t) len,
-                                     &file_ptr->shash_head[0],
-                                     (symint_t *) 0);
-             if (hash_ptr == (shash_t *) 0)
-               {
-                 (void) add_local_symbol (str, str + len,
-                                          (st_t) sym->st, (sc_t) sym->sc,
-                                          (symint_t) sym->value,
-                                          (symint_t) indexNil);
-               }
-           }
-       }
-      (void) add_local_symbol ((const char *) 0, (const char *) 0,
-                              st_End, sc_Text,
-                              (symint_t) 0,
-                              (symint_t) 0);
-
-      file_ptr->fdr.cpd = file_ptr->procs.num_allocated;
-      file_ptr->fdr.ipdFirst = symbolic_header.ipdMax;
-      symbolic_header.ipdMax += file_ptr->fdr.cpd;
-
-      file_ptr->fdr.csym = file_ptr->symbols.num_allocated;
-      file_ptr->fdr.isymBase = symbolic_header.isymMax;
-      symbolic_header.isymMax += file_ptr->fdr.csym;
-
-      file_ptr->fdr.caux = file_ptr->aux_syms.num_allocated;
-      file_ptr->fdr.iauxBase = symbolic_header.iauxMax;
-      symbolic_header.iauxMax += file_ptr->fdr.caux;
-
-      file_ptr->fdr.cbSs = file_ptr->strings.num_allocated;
-      file_ptr->fdr.issBase = symbolic_header.issMax;
-      symbolic_header.issMax += file_ptr->fdr.cbSs;
-    }
-
-/* Align ecoff symbol tables to avoid OSF1/1.3 nm complaints.  */
-#define ALIGN_SYMTABLE_OFFSET(OFFSET) (((OFFSET) + 7) & ~7)
-
-  file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-  i = WORD_ALIGN (symbolic_header.cbLine);     /* line numbers */
-  if (i > 0)
-    {
-      symbolic_header.cbLineOffset = file_offset;
-      file_offset += i;
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.ioptMax;                 /* optimization symbols */
-  if (((long) i) > 0)
-    {
-      symbolic_header.cbOptOffset = file_offset;
-      file_offset += i * sizeof (OPTR);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.idnMax;                  /* dense numbers */
-  if (i > 0)
-    {
-      symbolic_header.cbDnOffset = file_offset;
-      file_offset += i * sizeof (DNR);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.ipdMax;                  /* procedure tables */
-  if (i > 0)
-    {
-      symbolic_header.cbPdOffset = file_offset;
-      file_offset += i * sizeof (PDR);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.isymMax;                 /* local symbols */
-  if (i > 0)
-    {
-      symbolic_header.cbSymOffset = file_offset;
-      file_offset += i * sizeof (SYMR);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.iauxMax;                 /* aux syms.  */
-  if (i > 0)
-    {
-      symbolic_header.cbAuxOffset = file_offset;
-      file_offset += i * sizeof (TIR);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = WORD_ALIGN (symbolic_header.issMax);     /* local strings */
-  if (i > 0)
-    {
-      symbolic_header.cbSsOffset = file_offset;
-      file_offset += i;
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = WORD_ALIGN (symbolic_header.issExtMax);  /* external strings */
-  if (i > 0)
-    {
-      symbolic_header.cbSsExtOffset = file_offset;
-      file_offset += i;
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.ifdMax;                  /* file tables */
-  if (i > 0)
-    {
-      symbolic_header.cbFdOffset = file_offset;
-      file_offset += i * sizeof (FDR);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.crfd;                    /* relative file descriptors */
-  if (i > 0)
-    {
-      symbolic_header.cbRfdOffset = file_offset;
-      file_offset += i * sizeof (symint_t);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-
-  i = symbolic_header.iextMax;                 /* external symbols */
-  if (i > 0)
-    {
-      symbolic_header.cbExtOffset = file_offset;
-      file_offset += i * sizeof (EXTR);
-      file_offset = ALIGN_SYMTABLE_OFFSET (file_offset);
-    }
-}
-
-\f
-/* Write out a varray at a given location.  */
-
-static void
-write_varray (varray_t *vp,    /* virtual array */
-             off_t offset,    /* offset to write varray to */
-             const char *str) /* string to print out when tracing */
-{
-  int num_write, sys_write;
-  vlinks_t *ptr;
-
-  if (vp->num_allocated == 0)
-    return;
-
-  if (debug)
-    fprintf (stderr, "\twarray\tvp = " HOST_PTR_PRINTF
-           ", offset = %7lu, size = %7lu, %s\n",
-            (void *) vp, (unsigned long) offset,
-            vp->num_allocated * vp->object_size, str);
-
-  if (file_offset != (unsigned long) offset
-      && fseek (object_stream, (long) offset, SEEK_SET) < 0)
-    pfatal_with_name (object_name);
-
-  for (ptr = vp->first; ptr != (vlinks_t *) 0; ptr = ptr->next)
-    {
-      num_write = (ptr->next == (vlinks_t *) 0)
-       ? vp->objects_last_page * vp->object_size
-       : vp->objects_per_page  * vp->object_size;
-
-      sys_write = fwrite (ptr->datum, 1, num_write, object_stream);
-      if (sys_write <= 0)
-       pfatal_with_name (object_name);
-
-      else if (sys_write != num_write)
-       fatal ("wrote %d bytes to %s, system returned %d",
-              num_write,
-              object_name,
-              sys_write);
-
-      file_offset += num_write;
-    }
-}
-
-\f
-/* Write out the symbol table in the object file.  */
-
-static void
-write_object (void)
-{
-  int sys_write;
-  efdr_t *file_ptr;
-  off_t offset;
-
-  if (debug)
-    fprintf (stderr, "\n\twrite\tvp = " HOST_PTR_PRINTF
-           ", offset = %7u, size = %7lu, %s\n",
-            (void *) &symbolic_header, 0,
-            (unsigned long) sizeof (symbolic_header), "symbolic header");
-
-  sys_write = fwrite (&symbolic_header,
-                     1,
-                     sizeof (symbolic_header),
-                     object_stream);
-
-  if (sys_write < 0)
-    pfatal_with_name (object_name);
-
-  else if (sys_write != sizeof (symbolic_header))
-    fatal ("wrote %d bytes to %s, system returned %d",
-          (int) sizeof (symbolic_header),
-          object_name,
-          sys_write);
-
-
-  file_offset = sizeof (symbolic_header) + orig_file_header.f_symptr;
-
-  if (symbolic_header.cbLine > 0)              /* line numbers */
-    {
-      long sys_write;
-
-      if (file_offset != (unsigned long) symbolic_header.cbLineOffset
-         && fseek (object_stream, symbolic_header.cbLineOffset, SEEK_SET) != 0)
-       pfatal_with_name (object_name);
-
-      if (debug)
-       fprintf (stderr, "\twrite\tvp = " HOST_PTR_PRINTF
-               ", offset = %7lu, size = %7lu, %s\n",
-                (void *) &orig_linenum, (long) symbolic_header.cbLineOffset,
-                (long) symbolic_header.cbLine, "Line numbers");
-
-      sys_write = fwrite (orig_linenum,
-                         1,
-                         symbolic_header.cbLine,
-                         object_stream);
-
-      if (sys_write <= 0)
-       pfatal_with_name (object_name);
-
-      else if (sys_write != symbolic_header.cbLine)
-       fatal ("wrote %ld bytes to %s, system returned %ld",
-              (long) symbolic_header.cbLine,
-              object_name,
-              sys_write);
-
-      file_offset = symbolic_header.cbLineOffset + symbolic_header.cbLine;
-    }
-
-  if (symbolic_header.ioptMax > 0)             /* optimization symbols */
-    {
-      long sys_write;
-      long num_write = symbolic_header.ioptMax * sizeof (OPTR);
-
-      if (file_offset != (unsigned long) symbolic_header.cbOptOffset
-         && fseek (object_stream, symbolic_header.cbOptOffset, SEEK_SET) != 0)
-       pfatal_with_name (object_name);
-
-      if (debug)
-       fprintf (stderr, "\twrite\tvp = " HOST_PTR_PRINTF
-               ", offset = %7lu, size = %7lu, %s\n",
-                (void *) &orig_opt_syms, (long) symbolic_header.cbOptOffset,
-                num_write, "Optimizer symbols");
-
-      sys_write = fwrite (orig_opt_syms,
-                         1,
-                         num_write,
-                         object_stream);
-
-      if (sys_write <= 0)
-       pfatal_with_name (object_name);
-
-      else if (sys_write != num_write)
-       fatal ("wrote %ld bytes to %s, system returned %ld",
-              num_write,
-              object_name,
-              sys_write);
-
-      file_offset = symbolic_header.cbOptOffset + num_write;
-    }
-
-  if (symbolic_header.idnMax > 0)              /* dense numbers */
-    write_varray (&dense_num, (off_t) symbolic_header.cbDnOffset, "Dense numbers");
-
-  if (symbolic_header.ipdMax > 0)              /* procedure tables */
-    {
-      offset = symbolic_header.cbPdOffset;
-      for (file_ptr = first_file;
-          file_ptr != (efdr_t *) 0;
-          file_ptr = file_ptr->next_file)
-       {
-         write_varray (&file_ptr->procs, offset, "Procedure tables");
-         offset = file_offset;
-       }
-    }
-
-  if (symbolic_header.isymMax > 0)             /* local symbols */
-    {
-      offset = symbolic_header.cbSymOffset;
-      for (file_ptr = first_file;
-          file_ptr != (efdr_t *) 0;
-          file_ptr = file_ptr->next_file)
-       {
-         write_varray (&file_ptr->symbols, offset, "Local symbols");
-         offset = file_offset;
-       }
-    }
-
-  if (symbolic_header.iauxMax > 0)             /* aux symbols */
-    {
-      offset = symbolic_header.cbAuxOffset;
-      for (file_ptr = first_file;
-          file_ptr != (efdr_t *) 0;
-          file_ptr = file_ptr->next_file)
-       {
-         write_varray (&file_ptr->aux_syms, offset, "Aux. symbols");
-         offset = file_offset;
-       }
-    }
-
-  if (symbolic_header.issMax > 0)              /* local strings */
-    {
-      offset = symbolic_header.cbSsOffset;
-      for (file_ptr = first_file;
-          file_ptr != (efdr_t *) 0;
-          file_ptr = file_ptr->next_file)
-       {
-         write_varray (&file_ptr->strings, offset, "Local strings");
-         offset = file_offset;
-       }
-    }
-
-  if (symbolic_header.issExtMax > 0)           /* external strings */
-    write_varray (&ext_strings, symbolic_header.cbSsExtOffset, "External strings");
-
-  if (symbolic_header.ifdMax > 0)              /* file tables */
-    {
-      offset = symbolic_header.cbFdOffset;
-      if (file_offset != (unsigned long) offset
-         && fseek (object_stream, (long) offset, SEEK_SET) < 0)
-       pfatal_with_name (object_name);
-
-      file_offset = offset;
-      for (file_ptr = first_file;
-          file_ptr != (efdr_t *) 0;
-          file_ptr = file_ptr->next_file)
-       {
-         if (debug)
-           fprintf (stderr, "\twrite\tvp = " HOST_PTR_PRINTF
-                   ", offset = %7lu, size = %7lu, %s\n",
-                    (void *) &file_ptr->fdr, file_offset,
-                    (unsigned long) sizeof (FDR), "File header");
-
-         sys_write = fwrite (&file_ptr->fdr,
-                             1,
-                             sizeof (FDR),
-                             object_stream);
-
-         if (sys_write < 0)
-           pfatal_with_name (object_name);
-
-         else if (sys_write != sizeof (FDR))
-           fatal ("wrote %d bytes to %s, system returned %d",
-                  (int) sizeof (FDR),
-                  object_name,
-                  sys_write);
-
-         file_offset = offset += sizeof (FDR);
-       }
-    }
-
-  if (symbolic_header.crfd > 0)                        /* relative file descriptors */
-    {
-      long sys_write;
-      symint_t num_write = symbolic_header.crfd * sizeof (symint_t);
-
-      if (file_offset != (unsigned long) symbolic_header.cbRfdOffset
-         && fseek (object_stream, symbolic_header.cbRfdOffset, SEEK_SET) != 0)
-       pfatal_with_name (object_name);
-
-      if (debug)
-       fprintf (stderr, "\twrite\tvp = " HOST_PTR_PRINTF
-               ", offset = %7lu, size = %7lu, %s\n",
-                (void *) &orig_rfds, (long) symbolic_header.cbRfdOffset,
-                num_write, "Relative file descriptors");
-
-      sys_write = fwrite (orig_rfds,
-                         1,
-                         num_write,
-                         object_stream);
-
-      if (sys_write <= 0)
-       pfatal_with_name (object_name);
-
-      else if (sys_write != (long) num_write)
-       fatal ("wrote %lu bytes to %s, system returned %ld",
-              num_write,
-              object_name,
-              sys_write);
-
-      file_offset = symbolic_header.cbRfdOffset + num_write;
-    }
-
-  if (symbolic_header.issExtMax > 0)           /* external symbols */
-    write_varray (&ext_symbols, (off_t) symbolic_header.cbExtOffset, "External symbols");
-
-  if (fclose (object_stream) != 0)
-    pfatal_with_name (object_name);
-}
-
-\f
-/* Read some bytes at a specified location, and return a pointer.  */
-
-static page_t *
-read_seek (size_t size,                /* # bytes to read */
-          off_t offset,        /* offset to read at */
-          const char *str)     /* name for tracing */
-{
-  page_t *ptr;
-  long sys_read = 0;
-
-  if (size == 0)               /* nothing to read */
-    return (page_t *) 0;
-
-  if (debug)
-    fprintf (stderr,
-            "\trseek\tsize = %7lu, offset = %7lu, currently at %7lu, %s\n",
-            (unsigned long) size, (unsigned long) offset, file_offset, str);
-
-#ifndef MALLOC_CHECK
-  ptr = allocate_multiple_pages ((size + PAGE_USIZE - 1) / PAGE_USIZE);
-#else
-  ptr = xcalloc (1, size);
-#endif
-
-  /* If we need to seek, and the distance is nearby, just do some reads,
-     to speed things up.  */
-  if (file_offset != (unsigned long) offset)
-    {
-      symint_t difference = offset - file_offset;
-
-      if (difference < 8)
-       {
-         char small_buffer[8];
-
-         sys_read = fread (small_buffer, 1, difference, obj_in_stream);
-         if (sys_read <= 0)
-           pfatal_with_name (obj_in_name);
-
-         if ((symint_t) sys_read != difference)
-           fatal ("wanted to read %lu bytes from %s, system returned %ld",
-                  (unsigned long) size,
-                  obj_in_name,
-                  sys_read);
-       }
-      else if (fseek (obj_in_stream, offset, SEEK_SET) < 0)
-       pfatal_with_name (obj_in_name);
-    }
-
-  sys_read = fread (ptr, 1, size, obj_in_stream);
-  if (sys_read <= 0)
-    pfatal_with_name (obj_in_name);
-
-  if (sys_read != (long) size)
-    fatal ("wanted to read %lu bytes from %s, system returned %ld",
-          (unsigned long) size,
-          obj_in_name,
-          sys_read);
-
-  file_offset = offset + size;
-
-  if (file_offset > max_file_offset)
-    max_file_offset = file_offset;
-
-  return ptr;
-}
-
-\f
-/* Read the existing object file (and copy to the output object file
-   if it is different from the input object file), and remove the old
-   symbol table.  */
-
-static void
-copy_object (void)
-{
-  char buffer[ PAGE_SIZE ];
-  int sys_read;
-  int remaining;
-  int num_write;
-  int sys_write;
-  int fd, es;
-  int delete_ifd = 0;
-  int *remap_file_number;
-  struct stat stat_buf;
-
-  if (debug)
-    fprintf (stderr, "\tcopy\n");
-
-  if (fstat (fileno (obj_in_stream), &stat_buf) != 0
-      || fseek (obj_in_stream, 0L, SEEK_SET) != 0)
-    pfatal_with_name (obj_in_name);
-
-  sys_read = fread (&orig_file_header,
-                   1,
-                   sizeof (struct filehdr),
-                   obj_in_stream);
-
-  if (sys_read < 0)
-    pfatal_with_name (obj_in_name);
-
-  else if (sys_read == 0 && feof (obj_in_stream))
-    return;                    /* create a .T file sans file header */
-
-  else if (sys_read < (int) sizeof (struct filehdr))
-    fatal ("wanted to read %d bytes from %s, system returned %d",
-          (int) sizeof (struct filehdr),
-          obj_in_name,
-          sys_read);
-
-
-  if (orig_file_header.f_nsyms != sizeof (HDRR))
-    fatal ("%s symbolic header wrong size (%ld bytes, should be %ld)",
-          input_name, (long) orig_file_header.f_nsyms, (long) sizeof (HDRR));
-
-
-  /* Read in the current symbolic header.  */
-  if (fseek (obj_in_stream, (long) orig_file_header.f_symptr, SEEK_SET) != 0)
-    pfatal_with_name (input_name);
-
-  sys_read = fread (&orig_sym_hdr,
-                   1,
-                   sizeof (orig_sym_hdr),
-                   obj_in_stream);
-
-  if (sys_read < 0)
-    pfatal_with_name (object_name);
-
-  else if (sys_read < (int) sizeof (struct filehdr))
-    fatal ("wanted to read %d bytes from %s, system returned %d",
-          (int) sizeof (struct filehdr),
-          obj_in_name,
-          sys_read);
-
-
-  /* Read in each of the sections if they exist in the object file.
-     We read things in the order the mips assembler creates the
-     sections, so in theory no extra seeks are done.
-
-     For simplicity sake, round each read up to a page boundary,
-     we may want to revisit this later....  */
-
-  file_offset =  orig_file_header.f_symptr + sizeof (struct filehdr);
-
-  if (orig_sym_hdr.cbLine > 0)                 /* line numbers */
-    orig_linenum = (char *) read_seek (orig_sym_hdr.cbLine,
-                                      orig_sym_hdr.cbLineOffset,
-                                      "Line numbers");
-
-  if (orig_sym_hdr.ipdMax > 0)                 /* procedure tables */
-    orig_procs = (PDR *) read_seek (orig_sym_hdr.ipdMax * sizeof (PDR),
-                                   orig_sym_hdr.cbPdOffset,
-                                   "Procedure tables");
-
-  if (orig_sym_hdr.isymMax > 0)                        /* local symbols */
-    orig_local_syms = (SYMR *) read_seek (orig_sym_hdr.isymMax * sizeof (SYMR),
-                                         orig_sym_hdr.cbSymOffset,
-                                         "Local symbols");
-
-  if (orig_sym_hdr.iauxMax > 0)                        /* aux symbols */
-    orig_aux_syms = (AUXU *) read_seek (orig_sym_hdr.iauxMax * sizeof (AUXU),
-                                       orig_sym_hdr.cbAuxOffset,
-                                       "Aux. symbols");
-
-  if (orig_sym_hdr.issMax > 0)                 /* local strings */
-    orig_local_strs = (char *) read_seek (orig_sym_hdr.issMax,
-                                         orig_sym_hdr.cbSsOffset,
-                                         "Local strings");
-
-  if (orig_sym_hdr.issExtMax > 0)              /* external strings */
-    orig_ext_strs = (char *) read_seek (orig_sym_hdr.issExtMax,
-                                       orig_sym_hdr.cbSsExtOffset,
-                                       "External strings");
-
-  if (orig_sym_hdr.ifdMax > 0)                 /* file tables */
-    orig_files = (FDR *) read_seek (orig_sym_hdr.ifdMax * sizeof (FDR),
-                                   orig_sym_hdr.cbFdOffset,
-                                   "File tables");
-
-  if (orig_sym_hdr.crfd > 0)                   /* relative file descriptors */
-    orig_rfds = (symint_t *) read_seek (orig_sym_hdr.crfd * sizeof (symint_t),
-                                       orig_sym_hdr.cbRfdOffset,
-                                       "Relative file descriptors");
-
-  if (orig_sym_hdr.issExtMax > 0)              /* external symbols */
-    orig_ext_syms = (EXTR *) read_seek (orig_sym_hdr.iextMax * sizeof (EXTR),
-                                       orig_sym_hdr.cbExtOffset,
-                                       "External symbols");
-
-  if (orig_sym_hdr.idnMax > 0)                 /* dense numbers */
-    {
-      orig_dense = (DNR *) read_seek (orig_sym_hdr.idnMax * sizeof (DNR),
-                                     orig_sym_hdr.cbDnOffset,
-                                     "Dense numbers");
-
-      add_bytes (&dense_num, (char *) orig_dense, orig_sym_hdr.idnMax);
-    }
-
-  if (orig_sym_hdr.ioptMax > 0)                        /* opt symbols */
-    orig_opt_syms = (OPTR *) read_seek (orig_sym_hdr.ioptMax * sizeof (OPTR),
-                                       orig_sym_hdr.cbOptOffset,
-                                       "Optimizer symbols");
-
-
-
-  /* The symbol table should be last.  */
-  if (max_file_offset != (unsigned long) stat_buf.st_size)
-    fatal ("symbol table is not last (symbol table ends at %ld, .o ends at %ld",
-          max_file_offset,
-          (long) stat_buf.st_size);
-
-
-  /* If the first original file descriptor is a dummy which the assembler
-     put out, but there are no symbols in it, skip it now.  */
-  if (orig_sym_hdr.ifdMax > 1
-      && orig_files->csym == 2
-      && orig_files->caux == 0)
-    {
-      char *filename = orig_local_strs + (orig_files->issBase + orig_files->rss);
-      char *suffix = strrchr (filename, '.');
-
-      if (suffix != (char *) 0 && strcmp (suffix, ".s") == 0)
-       delete_ifd = 1;
-    }
-
-
-  /* Create array to map original file numbers to the new file numbers
-     (in case there are duplicate filenames, we collapse them into one
-     file section, the MIPS assembler may or may not collapse them).  */
-
-  remap_file_number = (int *) alloca (sizeof (int) * orig_sym_hdr.ifdMax);
-
-  for (fd = delete_ifd; fd < orig_sym_hdr.ifdMax; fd++)
-    {
-      FDR *fd_ptr = ORIG_FILES (fd);
-      char *filename = ORIG_LSTRS (fd_ptr->issBase + fd_ptr->rss);
-
-      /* file support itself.  */
-      add_file (filename, filename + strlen (filename));
-      remap_file_number[fd] = cur_file_ptr->file_index;
-    }
-
-  if (delete_ifd > 0)          /* just in case */
-    remap_file_number[0] = remap_file_number[1];
-
-
-  /* Loop, adding each of the external symbols.  These must be in
-     order or otherwise we would have to change the relocation
-     entries.  We don't just call add_bytes, because we need to have
-     the names put into the external hash table.  We set the type to
-     'void' for now, and parse_def will fill in the correct type if it
-     is in the symbol table.  We must add the external symbols before
-     the locals, since the locals do lookups against the externals.  */
-
-  if (debug)
-    fprintf (stderr, "\tehash\n");
-
-  for (es = 0; es < orig_sym_hdr.iextMax; es++)
-    {
-      EXTR *eptr = orig_ext_syms + es;
-      int ifd = eptr->ifd;
-
-      (void) add_ext_symbol (eptr, ((long) ifd < orig_sym_hdr.ifdMax)
-                            ? remap_file_number[ ifd ] : ifd );
-    }
-
-
-  /* For each of the files in the object file, copy the symbols, and such
-     into the varrays for the new object file.  */
-
-  for (fd = delete_ifd; fd < orig_sym_hdr.ifdMax; fd++)
-    {
-      FDR *fd_ptr = ORIG_FILES (fd);
-      char *filename = ORIG_LSTRS (fd_ptr->issBase + fd_ptr->rss);
-      SYMR *sym_start;
-      SYMR *sym;
-      SYMR *sym_end_p1;
-      PDR *proc_start;
-      PDR *proc;
-      PDR *proc_end_p1;
-
-      /* file support itself.  */
-      add_file (filename, filename + strlen (filename));
-      cur_file_ptr->orig_fdr = fd_ptr;
-
-      /* Copy stuff that's just passed through (such as line #'s) */
-      cur_file_ptr->fdr.adr         = fd_ptr->adr;
-      cur_file_ptr->fdr.ilineBase    = fd_ptr->ilineBase;
-      cur_file_ptr->fdr.cline       = fd_ptr->cline;
-      cur_file_ptr->fdr.rfdBase             = fd_ptr->rfdBase;
-      cur_file_ptr->fdr.crfd        = fd_ptr->crfd;
-      cur_file_ptr->fdr.cbLineOffset = fd_ptr->cbLineOffset;
-      cur_file_ptr->fdr.cbLine      = fd_ptr->cbLine;
-      cur_file_ptr->fdr.fMerge      = fd_ptr->fMerge;
-      cur_file_ptr->fdr.fReadin             = fd_ptr->fReadin;
-      cur_file_ptr->fdr.glevel      = fd_ptr->glevel;
-
-      if (debug)
-       fprintf (stderr, "\thash\tstart, filename %s\n", filename);
-
-      /* For each of the static and global symbols defined, add them
-        to the hash table of original symbols, so we can look up
-        their values.  */
-
-      sym_start = ORIG_LSYMS (fd_ptr->isymBase);
-      sym_end_p1 = sym_start + fd_ptr->csym;
-      for (sym = sym_start; sym < sym_end_p1; sym++)
-       {
-         switch ((st_t) sym->st)
-           {
-           default:
-             break;
-
-           case st_Global:
-           case st_Static:
-           case st_Label:
-           case st_Proc:
-           case st_StaticProc:
-             {
-               auto symint_t hash_index;
-               char *str = ORIG_LSTRS (fd_ptr->issBase + sym->iss);
-               size_t len = strlen (str);
-               shash_t *shash_ptr = hash_string (str,
-                                                 (ptrdiff_t) len,
-                                                 &orig_str_hash[0],
-                                                 &hash_index);
-
-               if (shash_ptr != (shash_t *) 0)
-                 error ("internal error, %s is already in original symbol table", str);
-
-               else
-                 {
-                   shash_ptr = allocate_shash ();
-                   shash_ptr->next = orig_str_hash[hash_index];
-                   orig_str_hash[hash_index] = shash_ptr;
-
-                   shash_ptr->len = len;
-                   shash_ptr->indx = indexNil;
-                   shash_ptr->string = str;
-                   shash_ptr->sym_ptr = sym;
-                 }
-             }
-             break;
-
-           case st_End:
-             if ((sc_t) sym->sc == sc_Text)
-               {
-                 char *str = ORIG_LSTRS (fd_ptr->issBase + sym->iss);
-
-                 if (*str != '\0')
-                   {
-                     size_t len = strlen (str);
-                     shash_t *shash_ptr = hash_string (str,
-                                                       (ptrdiff_t) len,
-                                                       &orig_str_hash[0],
-                                                       (symint_t *) 0);
-
-                     if (shash_ptr != (shash_t *) 0)
-                       shash_ptr->end_ptr = sym;
-                   }
-               }
-             break;
-
-           }
-       }
-
-      if (debug)
-       {
-         fprintf (stderr, "\thash\tdone,  filename %s\n", filename);
-         fprintf (stderr, "\tproc\tstart, filename %s\n", filename);
-       }
-
-      /* Go through each of the procedures in this file, and add the
-        procedure pointer to the hash entry for the given name.  */
-
-      proc_start = ORIG_PROCS (fd_ptr->ipdFirst);
-      proc_end_p1 = proc_start + fd_ptr->cpd;
-      for (proc = proc_start; proc < proc_end_p1; proc++)
-       {
-         SYMR *proc_sym = ORIG_LSYMS (fd_ptr->isymBase + proc->isym);
-         char *str = ORIG_LSTRS (fd_ptr->issBase + proc_sym->iss);
-         size_t len = strlen (str);
-         shash_t *shash_ptr = hash_string (str,
-                                           (ptrdiff_t) len,
-                                           &orig_str_hash[0],
-                                           (symint_t *) 0);
-
-         if (shash_ptr == (shash_t *) 0)
-           error ("internal error, function %s is not in original symbol table", str);
-
-         else
-           shash_ptr->proc_ptr = proc;
-       }
-
-      if (debug)
-       fprintf (stderr, "\tproc\tdone,  filename %s\n", filename);
-
-    }
-  cur_file_ptr = first_file;
-
-
-  /* Copy all of the object file up to the symbol table.  Originally
-     we were going to use ftruncate, but that doesn't seem to work
-     on Ultrix 3.1....  */
-
-  if (fseek (obj_in_stream, (long) 0, SEEK_SET) != 0)
-    pfatal_with_name (obj_in_name);
-
-  if (fseek (object_stream, (long) 0, SEEK_SET) != 0)
-    pfatal_with_name (object_name);
-
-  for (remaining = orig_file_header.f_symptr;
-       remaining > 0;
-       remaining -= num_write)
-    {
-      num_write
-       = (remaining <= (int) sizeof (buffer))
-         ? remaining : (int) sizeof (buffer);
-      sys_read = fread (buffer, 1, num_write, obj_in_stream);
-      if (sys_read <= 0)
-       pfatal_with_name (obj_in_name);
-
-      else if (sys_read != num_write)
-       fatal ("wanted to read %d bytes from %s, system returned %d",
-              num_write,
-              obj_in_name,
-              sys_read);
-
-      sys_write = fwrite (buffer, 1, num_write, object_stream);
-      if (sys_write <= 0)
-       pfatal_with_name (object_name);
-
-      else if (sys_write != num_write)
-       fatal ("wrote %d bytes to %s, system returned %d",
-              num_write,
-              object_name,
-              sys_write);
-    }
-}
-
-\f
-/* Ye olde main program.  */
-
-extern int main (int, char **);
-
-int
-main (int argc, char **argv)
-{
-  int iflag = 0;
-  char *num_end;
-  int option;
-  int i;
-
-  progname = lbasename (argv[0]);
-
-  (void) signal (SIGSEGV, catch_signal);
-  (void) signal (SIGBUS,  catch_signal);
-  (void) signal (SIGABRT, catch_signal);
-
-#ifndef lint
-  if (sizeof (efdr_t) > PAGE_USIZE)
-    fatal ("efdr_t has a sizeof %d bytes, when it should be less than %d",
-          (int) sizeof (efdr_t),
-          (int) PAGE_USIZE);
-
-  if (sizeof (page_t) != PAGE_USIZE)
-    fatal ("page_t has a sizeof %d bytes, when it should be %d",
-          (int) sizeof (page_t),
-          (int) PAGE_USIZE);
-
-#endif
-
-  alloc_counts[ alloc_type_none    ].alloc_name = "none";
-  alloc_counts[ alloc_type_scope   ].alloc_name = "scope";
-  alloc_counts[ alloc_type_vlinks  ].alloc_name = "vlinks";
-  alloc_counts[ alloc_type_shash   ].alloc_name = "shash";
-  alloc_counts[ alloc_type_thash   ].alloc_name = "thash";
-  alloc_counts[ alloc_type_tag     ].alloc_name = "tag";
-  alloc_counts[ alloc_type_forward ].alloc_name = "forward";
-  alloc_counts[ alloc_type_thead   ].alloc_name = "thead";
-  alloc_counts[ alloc_type_varray  ].alloc_name = "varray";
-
-  int_type_info  = type_info_init;
-  int_type_info.basic_type = bt_Int;
-
-  void_type_info = type_info_init;
-  void_type_info.basic_type = bt_Void;
-
-  while ((option = getopt_long (argc, argv, "d:i:I:o:v", options, NULL)) != -1)
-    switch (option)
-      {
-      default:
-       had_errors++;
-       break;
-
-      case 'd':
-       debug = strtol (optarg, &num_end, 0);
-       if ((unsigned) debug > 4 || num_end == optarg)
-         had_errors++;
-
-       break;
-
-      case 'I':
-       if (rename_output || obj_in_name != (char *) 0)
-         had_errors++;
-       else
-         rename_output = 1;
-
-       /* Fall through to 'i' case.  */
-
-      case 'i':
-       if (obj_in_name == (char *) 0)
-         {
-           obj_in_name = optarg;
-           iflag++;
-         }
-       else
-         had_errors++;
-       break;
-
-      case 'o':
-       if (object_name == (char *) 0)
-         object_name = optarg;
-       else
-         had_errors++;
-       break;
-
-      case 'v':
-       verbose++;
-       break;
-
-      case 'V':
-       version++;
-       break;
-      }
-
-  if (version)
-    {
-      printf (_("mips-tfile %s%s\n"), pkgversion_string, version_string);
-      fputs ("Copyright (C) 2012 Free Software Foundation, Inc.\n", stdout);
-      fputs (_("This is free software; see the source for copying conditions.  There is NO\n\
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"),
-            stdout);
-      exit (0);
-    }
-
-  if (obj_in_name == (char *) 0 && optind <= argc - 2)
-    obj_in_name = argv[--argc];
-
-  if (object_name == (char *) 0 && optind <= argc - 2)
-    object_name = argv[--argc];
-
-  /* If there is an output name, but no input name use
-     the same file for both, deleting the name between
-     opening it for input and opening it for output.  */
-  if (obj_in_name == (char *) 0 && object_name != (char *) 0)
-    {
-      obj_in_name = object_name;
-      delete_input = 1;
-    }
-
-  if (optind != argc - 1)
-    had_errors++;
-
-  if (verbose || had_errors)
-    fprintf (stderr, _("mips-tfile (GCC) %s\n"), version_string);
-
-  if (object_name == (char *) 0 || had_errors)
-    {
-      fprintf (stderr, _("Calling Sequence:\n"));
-      fprintf (stderr, _("\tmips-tfile [-d <num>] [-v] [-i <o-in-file>] -o <o-out-file> <s-file> (or)\n"));
-      fprintf (stderr, _("\tmips-tfile [-d <num>] [-v] [-I <o-in-file>] -o <o-out-file> <s-file> (or)\n"));
-      fprintf (stderr, _("\tmips-tfile [-d <num>] [-v] <s-file> <o-in-file> <o-out-file>\n"));
-      fprintf (stderr, "\n");
-      fprintf (stderr, _("Debug levels are:\n"));
-      fprintf (stderr, _("    1\tGeneral debug + trace functions/blocks.\n"));
-      fprintf (stderr, _("    2\tDebug level 1 + trace externals.\n"));
-      fprintf (stderr, _("    3\tDebug level 2 + trace all symbols.\n"));
-      fprintf (stderr, _("    4\tDebug level 3 + trace memory allocations.\n"));
-      return 1;
-    }
-
-  if (obj_in_name == (char *) 0)
-    obj_in_name = object_name;
-
-  if (rename_output && rename (object_name, obj_in_name) != 0)
-    {
-      char *buffer = (char *) allocate_multiple_pages (4);
-      int len;
-      int len2;
-      int in_fd;
-      int out_fd;
-
-      /* Rename failed, copy input file */
-      in_fd = open (object_name, O_RDONLY, 0666);
-      if (in_fd < 0)
-       pfatal_with_name (object_name);
-
-      out_fd = open (obj_in_name, O_WRONLY | O_CREAT | O_TRUNC, 0666);
-      if (out_fd < 0)
-       pfatal_with_name (obj_in_name);
-
-      while ((len = read (in_fd, buffer, 4*PAGE_SIZE)) > 0)
-       {
-         len2 = write (out_fd, buffer, len);
-         if (len2 < 0)
-           pfatal_with_name (object_name);
-
-         if (len != len2)
-           fatal ("wrote %d bytes to %s, expected to write %d", len2, obj_in_name, len);
-       }
-
-      free_multiple_pages ((page_t *) buffer, 4);
-
-      if (len < 0)
-       pfatal_with_name (object_name);
-
-      if (close (in_fd) < 0)
-       pfatal_with_name (object_name);
-
-      if (close (out_fd) < 0)
-       pfatal_with_name (obj_in_name);
-    }
-
-  /* Must open input before output, since the output may be the same file, and
-     we need to get the input handle before truncating it.  */
-  obj_in_stream = fopen (obj_in_name, "r");
-  if (obj_in_stream == (FILE *) 0)
-    pfatal_with_name (obj_in_name);
-
-  if (delete_input && unlink (obj_in_name) != 0)
-    pfatal_with_name (obj_in_name);
-
-  object_stream = fopen (object_name, "w");
-  if (object_stream == (FILE *) 0)
-    pfatal_with_name (object_name);
-
-  if (strcmp (argv[optind], "-") != 0)
-    {
-      input_name = argv[optind];
-      if (freopen (argv[optind], "r", stdin) != stdin)
-       pfatal_with_name (argv[optind]);
-    }
-
-  copy_object ();                      /* scan & copy object file */
-  parse_input ();                      /* scan all of input */
-
-  update_headers ();                   /* write out tfile */
-  write_object ();
-
-  if (debug)
-    {
-      fprintf (stderr, "\n\tAllocation summary:\n\n");
-      for (i = (int) alloc_type_none; i < (int) alloc_type_last; i++)
-       if (alloc_counts[i].total_alloc)
-         {
-           fprintf (stderr,
-                    "\t%s\t%5d allocation(s), %5d free(s), %2d page(s)\n",
-                    alloc_counts[i].alloc_name,
-                    alloc_counts[i].total_alloc,
-                    alloc_counts[i].total_free,
-                    alloc_counts[i].total_pages);
-         }
-    }
-
-  return (had_errors) ? 1 : 0;
-}
-
-\f
-/* Catch a signal and exit without dumping core.  */
-
-static void
-catch_signal (int signum)
-{
-  (void) signal (signum, SIG_DFL);     /* just in case...  */
-  fatal ("%s", strsignal (signum));
-}
-
-/* Print a fatal error message.  NAME is the text.
-   Also include a system error message based on `errno'.  */
-
-void
-pfatal_with_name (const char *msg)
-{
-  int save_errno = errno;              /* just in case....  */
-  if (line_number > 0)
-    fprintf (stderr, "%s, %s:%ld ", progname, input_name, line_number);
-  else
-    fprintf (stderr, "%s:", progname);
-
-  errno = save_errno;
-  if (errno == 0)
-    fprintf (stderr, "[errno = 0] %s\n", msg);
-  else
-    perror (msg);
-
-  exit (1);
-}
-
-\f
-/* Procedure to die with an out of bounds error message.  It has
-   type int, so it can be used with an ?: expression within the
-   ORIG_xxx macros, but the function never returns.  */
-
-static int
-out_of_bounds (symint_t indx,  /* index that is out of bounds */
-              symint_t max,    /* maximum index */
-              const char *str, /* string to print out */
-              int prog_line)   /* line number within mips-tfile.c */
-{
-  if (indx < max)              /* just in case */
-    return 0;
-
-  fprintf (stderr, "%s, %s:%ld index %lu is out of bounds for %s, max is %lu, mips-tfile.c line# %d\n",
-          progname, input_name, line_number, indx, str, max, prog_line);
-
-  exit (1);
-  return 0;                    /* turn off warning messages */
-}
-
-\f
-/* Allocate a cluster of pages.  USE_MALLOC says that malloc does not
-   like sbrk's behind its back (or sbrk isn't available).  If we use
-   sbrk, we assume it gives us zeroed pages.  */
-
-#ifndef MALLOC_CHECK
-#ifdef USE_MALLOC
-
-static page_t *
-allocate_cluster (size_t npages)
-{
-  page_t *value = xcalloc (npages, PAGE_USIZE);
-
-  if (debug > 3)
-    fprintf (stderr, "\talloc\tnpages = %d, value = 0x%.8x\n", npages, value);
-
-  return value;
-}
-
-#else /* USE_MALLOC */
-
-static page_t *
-allocate_cluster (size_t npages)
-{
-  page_t *ptr = (page_t *) sbrk (0);   /* current sbreak */
-  unsigned long offset = ((unsigned long) ptr) & (PAGE_SIZE - 1);
-
-  if (offset != 0)                     /* align to a page boundary */
-    {
-      if (sbrk (PAGE_USIZE - offset) == (char *)-1)
-       pfatal_with_name ("allocate_cluster");
-
-      ptr = (page_t *) (((char *) ptr) + PAGE_SIZE - offset);
-    }
-
-  if (sbrk (npages * PAGE_USIZE) == (char *) -1)
-    pfatal_with_name ("allocate_cluster");
-
-  if (debug > 3)
-    fprintf (stderr, "\talloc\tnpages = %lu, value = " HOST_PTR_PRINTF "\n",
-            (unsigned long) npages, (void *) ptr);
-
-  return ptr;
-}
-
-#endif /* USE_MALLOC */
-
-
-static page_t  *cluster_ptr    = NULL;
-static unsigned         pages_left     = 0;
-
-#endif /* MALLOC_CHECK */
-
-
-/* Allocate some pages (which is initialized to 0).  */
-
-static page_t *
-allocate_multiple_pages (size_t npages)
-{
-#ifndef MALLOC_CHECK
-  if (pages_left == 0 && npages < MAX_CLUSTER_PAGES)
-    {
-      pages_left = MAX_CLUSTER_PAGES;
-      cluster_ptr = allocate_cluster (MAX_CLUSTER_PAGES);
-    }
-
-  if (npages <= pages_left)
-    {
-      page_t *ptr = cluster_ptr;
-      cluster_ptr += npages;
-      pages_left -= npages;
-      return ptr;
-    }
-
-  return allocate_cluster (npages);
-
-#else  /* MALLOC_CHECK */
-  return xcalloc (npages, PAGE_SIZE);
-
-#endif /* MALLOC_CHECK */
-}
-
-
-/* Release some pages.  */
-
-static void
-free_multiple_pages (page_t *page_ptr, size_t npages)
-{
-#ifndef MALLOC_CHECK
-  if (pages_left == 0)
-    {
-      cluster_ptr = page_ptr;
-      pages_left = npages;
-    }
-
-  else if ((page_ptr + npages) == cluster_ptr)
-    {
-      cluster_ptr -= npages;
-      pages_left += npages;
-    }
-
-  /* otherwise the page is not freed.  If more than call is
-     done, we probably should worry about it, but at present,
-     the free pages is done right after an allocate.  */
-
-#else  /* MALLOC_CHECK */
-  free (page_ptr);
-
-#endif /* MALLOC_CHECK */
-}
-
-
-/* Allocate one page (which is initialized to 0).  */
-
-static page_t *
-allocate_page (void)
-{
-#ifndef MALLOC_CHECK
-  if (pages_left == 0)
-    {
-      pages_left = MAX_CLUSTER_PAGES;
-      cluster_ptr = allocate_cluster (MAX_CLUSTER_PAGES);
-    }
-
-  pages_left--;
-  return cluster_ptr++;
-
-#else  /* MALLOC_CHECK */
-  return xcalloc (1, PAGE_SIZE);
-
-#endif /* MALLOC_CHECK */
-}
-
-\f
-/* Allocate scoping information.  */
-
-static scope_t *
-allocate_scope (void)
-{
-  scope_t *ptr;
-  static scope_t initial_scope;
-
-#ifndef MALLOC_CHECK
-  ptr = alloc_counts[ (int) alloc_type_scope ].free_list.f_scope;
-  if (ptr != (scope_t *) 0)
-    alloc_counts[ (int) alloc_type_scope ].free_list.f_scope = ptr->free;
-
-  else
-    {
-      int unallocated  = alloc_counts[ (int) alloc_type_scope ].unallocated;
-      page_t *cur_page = alloc_counts[ (int) alloc_type_scope ].cur_page;
-
-      if (unallocated == 0)
-       {
-         unallocated = PAGE_SIZE / sizeof (scope_t);
-         alloc_counts[ (int) alloc_type_scope ].cur_page = cur_page = allocate_page ();
-         alloc_counts[ (int) alloc_type_scope ].total_pages++;
-       }
-
-      ptr = &cur_page->scope[ --unallocated ];
-      alloc_counts[ (int) alloc_type_scope ].unallocated = unallocated;
-    }
-
-#else
-  ptr = xmalloc (sizeof (scope_t));
-
-#endif
-
-  alloc_counts[ (int) alloc_type_scope ].total_alloc++;
-  *ptr = initial_scope;
-  return ptr;
-}
-
-/* Free scoping information.  */
-
-static void
-free_scope (scope_t *ptr)
-{
-  alloc_counts[ (int) alloc_type_scope ].total_free++;
-
-#ifndef MALLOC_CHECK
-  ptr->free = alloc_counts[ (int) alloc_type_scope ].free_list.f_scope;
-  alloc_counts[ (int) alloc_type_scope ].free_list.f_scope = ptr;
-
-#else
-  free (ptr);
-#endif
-
-}
-
-\f
-/* Allocate links for pages in a virtual array.  */
-
-static vlinks_t *
-allocate_vlinks (void)
-{
-  vlinks_t *ptr;
-  static vlinks_t initial_vlinks;
-
-#ifndef MALLOC_CHECK
-  int unallocated      = alloc_counts[ (int) alloc_type_vlinks ].unallocated;
-  page_t *cur_page     = alloc_counts[ (int) alloc_type_vlinks ].cur_page;
-
-  if (unallocated == 0)
-    {
-      unallocated = PAGE_SIZE / sizeof (vlinks_t);
-      alloc_counts[ (int) alloc_type_vlinks ].cur_page = cur_page = allocate_page ();
-      alloc_counts[ (int) alloc_type_vlinks ].total_pages++;
-    }
-
-  ptr = &cur_page->vlinks[ --unallocated ];
-  alloc_counts[ (int) alloc_type_vlinks ].unallocated = unallocated;
-
-#else
-  ptr = xmalloc (sizeof (vlinks_t));
-
-#endif
-
-  alloc_counts[ (int) alloc_type_vlinks ].total_alloc++;
-  *ptr = initial_vlinks;
-  return ptr;
-}
-
-\f
-/* Allocate string hash buckets.  */
-
-static shash_t *
-allocate_shash (void)
-{
-  shash_t *ptr;
-  static shash_t initial_shash;
-
-#ifndef MALLOC_CHECK
-  int unallocated      = alloc_counts[ (int) alloc_type_shash ].unallocated;
-  page_t *cur_page     = alloc_counts[ (int) alloc_type_shash ].cur_page;
-
-  if (unallocated == 0)
-    {
-      unallocated = PAGE_SIZE / sizeof (shash_t);
-      alloc_counts[ (int) alloc_type_shash ].cur_page = cur_page = allocate_page ();
-      alloc_counts[ (int) alloc_type_shash ].total_pages++;
-    }
-
-  ptr = &cur_page->shash[ --unallocated ];
-  alloc_counts[ (int) alloc_type_shash ].unallocated = unallocated;
-
-#else
-  ptr = xmalloc (sizeof (shash_t));
-
-#endif
-
-  alloc_counts[ (int) alloc_type_shash ].total_alloc++;
-  *ptr = initial_shash;
-  return ptr;
-}
-
-\f
-/* Allocate type hash buckets.  */
-
-static thash_t *
-allocate_thash (void)
-{
-  thash_t *ptr;
-  static thash_t initial_thash;
-
-#ifndef MALLOC_CHECK
-  int unallocated      = alloc_counts[ (int) alloc_type_thash ].unallocated;
-  page_t *cur_page     = alloc_counts[ (int) alloc_type_thash ].cur_page;
-
-  if (unallocated == 0)
-    {
-      unallocated = PAGE_SIZE / sizeof (thash_t);
-      alloc_counts[ (int) alloc_type_thash ].cur_page = cur_page = allocate_page ();
-      alloc_counts[ (int) alloc_type_thash ].total_pages++;
-    }
-
-  ptr = &cur_page->thash[ --unallocated ];
-  alloc_counts[ (int) alloc_type_thash ].unallocated = unallocated;
-
-#else
-  ptr = xmalloc (sizeof (thash_t));
-
-#endif
-
-  alloc_counts[ (int) alloc_type_thash ].total_alloc++;
-  *ptr = initial_thash;
-  return ptr;
-}
-
-\f
-/* Allocate structure, union, or enum tag information.  */
-
-static tag_t *
-allocate_tag (void)
-{
-  tag_t *ptr;
-  static tag_t initial_tag;
-
-#ifndef MALLOC_CHECK
-  ptr = alloc_counts[ (int) alloc_type_tag ].free_list.f_tag;
-  if (ptr != (tag_t *) 0)
-    alloc_counts[ (int) alloc_type_tag ].free_list.f_tag = ptr->free;
-
-  else
-    {
-      int unallocated  = alloc_counts[ (int) alloc_type_tag ].unallocated;
-      page_t *cur_page = alloc_counts[ (int) alloc_type_tag ].cur_page;
-
-      if (unallocated == 0)
-       {
-         unallocated = PAGE_SIZE / sizeof (tag_t);
-         alloc_counts[ (int) alloc_type_tag ].cur_page = cur_page = allocate_page ();
-         alloc_counts[ (int) alloc_type_tag ].total_pages++;
-       }
-
-      ptr = &cur_page->tag[ --unallocated ];
-      alloc_counts[ (int) alloc_type_tag ].unallocated = unallocated;
-    }
-
-#else
-  ptr = xmalloc (sizeof (tag_t));
-
-#endif
-
-  alloc_counts[ (int) alloc_type_tag ].total_alloc++;
-  *ptr = initial_tag;
-  return ptr;
-}
-
-/* Free scoping information.  */
-
-static void
-free_tag (tag_t *ptr)
-{
-  alloc_counts[ (int) alloc_type_tag ].total_free++;
-
-#ifndef MALLOC_CHECK
-  ptr->free = alloc_counts[ (int) alloc_type_tag ].free_list.f_tag;
-  alloc_counts[ (int) alloc_type_tag ].free_list.f_tag = ptr;
-
-#else
-  free (ptr);
-#endif
-
-}
-
-\f
-/* Allocate forward reference to a yet unknown tag.  */
-
-static forward_t *
-allocate_forward (void)
-{
-  forward_t *ptr;
-  static forward_t initial_forward;
-
-#ifndef MALLOC_CHECK
-  ptr = alloc_counts[ (int) alloc_type_forward ].free_list.f_forward;
-  if (ptr != (forward_t *) 0)
-    alloc_counts[ (int) alloc_type_forward ].free_list.f_forward = ptr->free;
-
-  else
-    {
-      int unallocated  = alloc_counts[ (int) alloc_type_forward ].unallocated;
-      page_t *cur_page = alloc_counts[ (int) alloc_type_forward ].cur_page;
-
-      if (unallocated == 0)
-       {
-         unallocated = PAGE_SIZE / sizeof (forward_t);
-         alloc_counts[ (int) alloc_type_forward ].cur_page = cur_page = allocate_page ();
-         alloc_counts[ (int) alloc_type_forward ].total_pages++;
-       }
-
-      ptr = &cur_page->forward[ --unallocated ];
-      alloc_counts[ (int) alloc_type_forward ].unallocated = unallocated;
-    }
-
-#else
-  ptr = xmalloc (sizeof (forward_t));
-
-#endif
-
-  alloc_counts[ (int) alloc_type_forward ].total_alloc++;
-  *ptr = initial_forward;
-  return ptr;
-}
-
-/* Free scoping information.  */
-
-static void
-free_forward (forward_t *ptr)
-{
-  alloc_counts[ (int) alloc_type_forward ].total_free++;
-
-#ifndef MALLOC_CHECK
-  ptr->free = alloc_counts[ (int) alloc_type_forward ].free_list.f_forward;
-  alloc_counts[ (int) alloc_type_forward ].free_list.f_forward = ptr;
-
-#else
-  free (ptr);
-#endif
-
-}
-
-\f
-/* Allocate head of type hash list.  */
-
-static thead_t *
-allocate_thead (void)
-{
-  thead_t *ptr;
-  static thead_t initial_thead;
-
-#ifndef MALLOC_CHECK
-  ptr = alloc_counts[ (int) alloc_type_thead ].free_list.f_thead;
-  if (ptr != (thead_t *) 0)
-    alloc_counts[ (int) alloc_type_thead ].free_list.f_thead = ptr->free;
-
-  else
-    {
-      int unallocated  = alloc_counts[ (int) alloc_type_thead ].unallocated;
-      page_t *cur_page = alloc_counts[ (int) alloc_type_thead ].cur_page;
-
-      if (unallocated == 0)
-       {
-         unallocated = PAGE_SIZE / sizeof (thead_t);
-         alloc_counts[ (int) alloc_type_thead ].cur_page = cur_page = allocate_page ();
-         alloc_counts[ (int) alloc_type_thead ].total_pages++;
-       }
-
-      ptr = &cur_page->thead[ --unallocated ];
-      alloc_counts[ (int) alloc_type_thead ].unallocated = unallocated;
-    }
-
-#else
-  ptr = xmalloc (sizeof (thead_t));
-
-#endif
-
-  alloc_counts[ (int) alloc_type_thead ].total_alloc++;
-  *ptr = initial_thead;
-  return ptr;
-}
-
-/* Free scoping information.  */
-
-static void
-free_thead (thead_t *ptr)
-{
-  alloc_counts[ (int) alloc_type_thead ].total_free++;
-
-#ifndef MALLOC_CHECK
-  ptr->free = (thead_t *) alloc_counts[ (int) alloc_type_thead ].free_list.f_thead;
-  alloc_counts[ (int) alloc_type_thead ].free_list.f_thead = ptr;
-
-#else
-  free (ptr);
-#endif
-
-}
-\f
-/* Output an error message and exit.  */
-
-void
-fatal (const char *format, ...)
-{
-  va_list ap;
-
-  va_start (ap, format);
-
-  if (line_number > 0)
-    fprintf (stderr, "%s, %s:%ld ", progname, input_name, line_number);
-  else
-    fprintf (stderr, "%s:", progname);
-
-  vfprintf (stderr, format, ap);
-  va_end (ap);
-  fprintf (stderr, "\n");
-  if (line_number > 0)
-    fprintf (stderr, "line:\t%s\n", cur_line_start);
-
-  exit (1);
-}
-
-void
-error (const char *format, ...)
-{
-  va_list ap;
-
-  va_start (ap, format);
-
-  if (line_number > 0)
-    fprintf (stderr, "%s, %s:%ld ", progname, input_name, line_number);
-  else
-    fprintf (stderr, "%s:", progname);
-
-  vfprintf (stderr, format, ap);
-  fprintf (stderr, "\n");
-  if (line_number > 0)
-    fprintf (stderr, "line:\t%s\n", cur_line_start);
-
-  had_errors++;
-  va_end (ap);
-}
-
-/* More 'friendly' abort that prints the line and file.  */
-
-void
-fancy_abort (const char *file, int line, const char *func)
-{
-  fatal ("abort in %s, at %s:%d", func, file, line);
-}
-\f
-
-/* When `malloc.c' is compiled with `rcheck' defined,
-   it calls this function to report clobberage.  */
-
-void
-botch (const char *s)
-{
-  fatal ("%s", s);
-}
index 189164e173caf5818f3ac31ce0aa9899994320f2..90058318cfce03e34a6fbc61778c405e0af3cb4e 100644 (file)
@@ -1,3 +1,7 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * EXCLUDES (mips-tdump.c, mips-tfile.c): Remove.
+
 2012-03-12  Joseph Myers  <joseph@codesourcery.com>
 
        * sv.po: Update.
index e04b923936305c7367a9c5c5a00422b30ac7faf2..2568218965b6e22502fd205dacb2e50a7068d854 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright (C) 2001, 2004, 2009, 2010, 2011 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2004, 2009, 2010, 2011, 2012
+# Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
@@ -53,8 +54,3 @@ genrecog.c
 gensupport.c
 gensupport.h
 read-md.c
-
-#   These files are not yet internationalized, because they contain
-#   many strings that require a lot of analysis, and are little-used.
-mips-tdump.c
-mips-tfile.c
index 6575acd308b86c5668ea0820d2f4b6468c59064d..16e427e2b4c3376911d53c7773e54d1b6d69867a 100644 (file)
@@ -1,7 +1,7 @@
 /* Get common system includes and various definitions and declarations based
    on autoconf macros.
    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008,
-   2009, 2010, 2011
+   2009, 2010, 2011, 2012
    Free Software Foundation, Inc.
 
 This file is part of GCC.
@@ -890,7 +890,8 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
        TARGET_PROMOTE_FUNCTION_ARGS TARGET_PROMOTE_FUNCTION_RETURN \
        LANG_HOOKS_MISSING_ARGUMENT LANG_HOOKS_HASH_TYPES \
        TARGET_HANDLE_OFAST TARGET_OPTION_OPTIMIZATION \
-        TARGET_IRA_COVER_CLASSES TARGET_HELP
+       TARGET_IRA_COVER_CLASSES TARGET_HELP \
+       TARGET_HANDLE_PRAGMA_EXTERN_PREFIX
 
 /* Arrays that were deleted in favor of a functional interface.  */
  #pragma GCC poison built_in_decls implicit_built_in_decls
index 6084b21dca54eb76324af79833c2fb490a8063b4..d658b118c8842a853dd6b072d56ae7b37520d2ec 100644 (file)
@@ -2721,11 +2721,6 @@ DEFHOOKPOD
  "",
  bool, false)
 
-DEFHOOKPOD
-(handle_pragma_extern_prefix,
-"True if @code{#pragma extern_prefix} is to be supported.",
- bool, 0)
-
 /* True if the target is allowed to reorder memory accesses unless
    synchronization is explicitly requested.  */
 DEFHOOKPOD
index 29981edae1f880ad433f46785fa712e53791e415..8a630a0d76404326ce40ddbbfb3571d49e985982 100644 (file)
@@ -1,3 +1,51 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * g++.dg/abi/rtti3.C: Remove alpha*-dec-osf* handling.
+       * g++.dg/abi/thunk4.C: Likewise.
+       * g++.dg/cdce3.C: Don't skip on*-dec-osf5*.
+       Adapt line numbers.
+       * g++.dg/compat/struct-layout-1_generate.c: Remove alpha*-dec-osf*
+       handling.
+       * g++.dg/cpp0x/constexpr-rom.C: Likewise.
+       * g++.dg/eh/spbp.C: Likewise.
+       * g++.dg/ext/label13.C: Likewise.
+       * g++.dg/guality/guality.exp: Likewise.
+       * g++.dg/other/anon5.C: Likewise.
+       * g++.dg/other/pragma-ep-1.C: Remove.
+       * g++.dg/warn/miss-format-1.C: Remove alpha*-dec-osf* handling.
+       * g++.dg/warn/pr31246.C: Likewise.
+       * g++.dg/warn/weak1.C: Likewise.
+       * g++.old-deja/g++.eh/badalloc1.C: Likewise.
+       * g++.old-deja/g++.ext/attrib5.C: Likewise.
+       * gcc.c-torture/compile/limits-declparen.c: Likewise.
+       * gcc.c-torture/compile/limits-pointer.c: Likewise.
+       * gcc.c-torture/execute/20001229-1.c: Remove __osf__ handling.
+       * gcc.dg/attr-weakref-1.c: Remove alpha*-dec-osf* handling.
+       * gcc.dg/c99-stdint-6.c: Remove alpha*-dec-osf5* handling.
+       * gcc.dg/c99-tgmath-1.c: Likewise.
+       * gcc.dg/c99-tgmath-2.c: Likewise.
+       * gcc.dg/c99-tgmath-3.c: Likewise.
+       * gcc.dg/c99-tgmath-4.c: Likewise.
+       * gcc.dg/compat/struct-layout-1_generate.c: Remove alpha*-dec-osf*
+       handling.
+       * gcc.dg/debug/pr49032.c: Likewise.
+       * gcc.dg/guality/guality.exp: Likewise.
+       * gcc.dg/intmax_t-1.c: Likewise.
+       * gcc.dg/pr48616.c: Likewise.
+       * gcc.dg/pragma-ep-1.c: Remove.
+       * gcc.dg/pragma-ep-2.c: Remove.
+       * gcc.dg/pragma-ep-3.c: Remove.
+       * gcc.dg/torture/pr47917.c: Remove alpha*-dec-osf5* handling.
+       * gcc.dg/tree-ssa/pr42585.c: Remove alpha*-dec-osf* handling.
+       * gcc.misc-tests/gcov-14.c: Likewise.
+       * gfortran.dg/guality/guality.exp: Likewise.
+       * lib/target-supports.exp (check_weak_available): Likewise.
+       (add_options_for_tls): Likewise.
+       (check_ascii_locale_available): Likewise.
+       * obj-c++.dg/dwarf-2.mm: Likewise.
+       * objc.dg/dwarf-1.m: Likewise.
+       * objc.dg/dwarf-2.m: Likewise.
+
 2012-03-12  Jakub Jelinek  <jakub@redhat.com>
 
        PR tree-optimization/51721
index 60dc9b8d628c1ab543a37ec6470df703ea0b9001..c03e4611c0b47dee8e18826f4a235fd2125d8957 100644 (file)
@@ -3,12 +3,10 @@
 
 // { dg-require-weak "" }
 // { dg-skip-if "Linkonce not weak" { *-*-mingw* *-*-cygwin } { "*" } { "" } }
-// { dg-final { scan-assembler ".weak\[ \t\]_?_ZTSPP1A" { target { ! { *-*-darwin* alpha*-dec-osf* } } } } }
-// { dg-final { scan-assembler-not ".weak\[ \t\]_?_ZTIPP1A" { target { ! { *-*-darwin* alpha*-dec-osf* } } } } }
+// { dg-final { scan-assembler ".weak\[ \t\]_?_ZTSPP1A" { target { ! { *-*-darwin* } } } } }
+// { dg-final { scan-assembler-not ".weak\[ \t\]_?_ZTIPP1A" { target { ! { *-*-darwin* } } } } }
 // { dg-final { scan-assembler ".weak_definition\[ \t\]_?_ZTSPP1A" { target { *-*-darwin* } } } }
 // { dg-final { scan-assembler-not ".weak_definition\[ \t\]_?_ZTIPP1A" { target { *-*-darwin* } } } }
-// { dg-final { scan-assembler ".weakext\[ \t\]_?_ZTSPP1A" { target { alpha*-dec-osf* } } } }
-// { dg-final { scan-assembler-not ".weakext\[ \t\]_?_ZTIPP1A" { target { alpha*-dec-osf* } } } }
 
 struct A;
 
index cd9eac3ea103490b09d17a2cbf2536310f11be7a..fa5fbd4327714d323b7f0012100bd34226ba9855 100644 (file)
@@ -1,8 +1,7 @@
 // { dg-require-weak "" }
 // { dg-skip-if "Linkonce not weak" { *-*-mingw* *-*-cygwin } { "*" } { "" } }
-// { dg-final { scan-assembler ".weak\[ \t\]_?_ZThn._N7Derived3FooEv" { target { ! { *-*-darwin* alpha*-dec-osf* } } } } }
+// { dg-final { scan-assembler ".weak\[ \t\]_?_ZThn._N7Derived3FooEv" { target { ! { *-*-darwin* } } } } }
 // { dg-final { scan-assembler ".weak_definition\[ \t\]_?_ZThn._N7Derived3FooEv" { target { *-*-darwin* } } } }
-// { dg-final { scan-assembler ".weakext\[ \t\]_?_ZThn._N7Derived3FooEv" { target { alpha*-dec-osf* } } } }
 
 struct Base 
 {
index 1174b19268439689baa577f389a29d1eb3e28541..726e9ec5123f4464d56157364aa8ca53aa3be3bc 100644 (file)
@@ -1,12 +1,12 @@
 /* { dg-do run } */
 /* { dg-require-effective-target c99_runtime } */
-/* { dg-skip-if "exp2* missing despite C99 runtime" { alpha*-dec-osf5* } } */
 /* { dg-options "-O2 -fmath-errno -fdump-tree-cdce-details -lm" } */
 /* { dg-additional-options "-DLARGE_LONG_DOUBLE" { target large_long_double } } */
 /* { dg-additional-options "-DGNU_EXTENSION" { target pow10 } } */
 /* { dg-add-options ieee } */
+/* { dg-final { scan-tree-dump  "cdce3.C:92: note: function call is shrink-wrapped into error conditions\." "cdce" { target pow10 } } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:93: note: function call is shrink-wrapped into error conditions\." "cdce" { target pow10 } } } */
-/* { dg-final { scan-tree-dump  "cdce3.C:94: note: function call is shrink-wrapped into error conditions\." "cdce" { target pow10 } } } */
+/* { dg-final { scan-tree-dump  "cdce3.C:95: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:96: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:97: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:98: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
@@ -20,7 +20,6 @@
 /* { dg-final { scan-tree-dump  "cdce3.C:106: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:107: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:108: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
-/* { dg-final { scan-tree-dump  "cdce3.C:109: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
 /* { dg-final { cleanup-tree-dump "cdce" } } */
 
 #include <stdlib.h>
index 5ad3f4409f6537ce8a6e07a8357322c5daa06f0d..2cf08946e36ae5c7cb5e17b7b19128e2cc0dd0c7 100644 (file)
@@ -1,5 +1,5 @@
 /* Structure layout test generator.
-   Copyright (C) 2004, 2005, 2007, 2008, 2009, 2011
+   Copyright (C) 2004, 2005, 2007, 2008, 2009, 2011, 2012
    Free Software Foundation, Inc.
    Contributed by Jakub Jelinek <jakub@redhat.com>.
 
@@ -46,7 +46,7 @@ along with GCC; see the file COPYING3.  If not see
 const char *dg_options[] = {
 "/* { dg-options \"%s-I%s\" } */\n",
 "/* { dg-options \"%s-I%s -mno-mmx -Wno-abi\" { target i?86-*-* x86_64-*-* } } */\n",
-"/* { dg-options \"%s-I%s -fno-common\" { target alpha*-dec-osf* hppa*-*-hpux* powerpc*-*-darwin* *-*-mingw32* *-*-cygwin* } } */\n",
+"/* { dg-options \"%s-I%s -fno-common\" { target hppa*-*-hpux* powerpc*-*-darwin* *-*-mingw32* *-*-cygwin* } } */\n",
 "/* { dg-options \"%s-I%s -mno-mmx -fno-common -Wno-abi\" { target i?86-*-darwin* x86_64-*-darwin* i?86-*-mingw32* x86_64-*-mingw32* i?86-*-cygwin* } } */\n",
 "/* { dg-options \"%s-I%s -mno-base-addresses\" { target mmix-*-* } } */\n",
 "/* { dg-options \"%s-I%s -mlongcalls -mtext-section-literals\" { target xtensa*-*-* } } */\n"
index 5213d5930acc79b1435a6462686699207d473f8d..0536b356185809079c37e7a80e295a9398392eab 100644 (file)
@@ -1,6 +1,6 @@
 // PR c++/49673: check that test_data goes into .rodata
 // { dg-options -std=c++0x }
-// { dg-additional-options -G0 { target { { alpha*-*-* frv*-*-* ia64-*-* lm32*-*-* m32r*-*-* microblaze*-*-* mips*-*-* powerpc*-*-* rs6000*-*-* score*-*-* } && { ! { *-*-darwin* *-*-aix* alpha*-*-osf* alpha*-*-*vms* } } } } }
+// { dg-additional-options -G0 { target { { alpha*-*-* frv*-*-* ia64-*-* lm32*-*-* m32r*-*-* microblaze*-*-* mips*-*-* powerpc*-*-* rs6000*-*-* score*-*-* } && { ! { *-*-darwin* *-*-aix* alpha*-*-*vms* } } } } }
 // { dg-final { scan-assembler "\\.rdata" { target mips*-*-* } } }
 // { dg-final { scan-assembler "rodata" { target { { *-*-linux-gnu || *-*-elf } && { ! mips*-*-* } } } } }
 
index a781622ef4ebb94edd46dba2f8a7bb03384c1ba4..181e65d213fb7cce6bb434ca216c1506bca26d58 100644 (file)
@@ -1,6 +1,6 @@
 /* { dg-do run } */
 /* { dg-options "-gdwarf-2" } */
-/* { dg-skip-if "No Dwarf" { { *-*-aix* alpha*-dec-osf* hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
+/* { dg-skip-if "No Dwarf" { { *-*-aix* hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
 
 /* This was a bug on x86-darwin, where the register numbering for SP
    and BP was swapped (it's easy to do because on that port it's
index db349b5cbf3d1e9b69ebdbca82c4b0cc6063447a..6551c0a41d4ef65772f56fd54c63d4fe0d008d5d 100644 (file)
@@ -8,7 +8,7 @@ struct C
   C();
 };
 
-C::C() // { dg-bogus "can never be copied" "" { xfail { { *-apple-darwin* alpha*-dec-osf* } || { hppa*-*-hpux* && { ! lp64 } } } } }
+C::C() // { dg-bogus "can never be copied" "" { xfail { { *-apple-darwin* } || { hppa*-*-hpux* && { ! lp64 } } } } }
 {
   static void *labelref = &&label;
   goto *labelref;
index 749691dab7ec6af4b1b8a3388b5f7e39546054e8..9a1785036ef1648d226993d7f9d743d9775231aa 100644 (file)
@@ -4,8 +4,7 @@ load_lib g++-dg.exp
 load_lib gcc-gdb-test.exp
 
 # Disable on darwin until radr://7264615 is resolved.
-# Disable on Tru64 UNIX (PR testsuite/48251).
-if { [istarget *-*-darwin*] || [istarget alpha*-dec-osf*] } {
+if { [istarget *-*-darwin*] } {
   return
 }
 
index e8ebe0cc2b43a1feacd7835f5ef0bc0002d957f9..b2b979ff668cf9f95f3d1f65b5ffe0ca9c7674a5 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/34094
-// { dg-do link { target { ! { *-*-darwin* *-*-hpux* *-*-solaris2.* alpha*-dec-osf* mips-sgi-irix* } } } }
+// { dg-do link { target { ! { *-*-darwin* *-*-hpux* *-*-solaris2.* mips-sgi-irix* } } } }
 // { dg-options "-g" }
 
 namespace {
diff --git a/gcc/testsuite/g++.dg/other/pragma-ep-1.C b/gcc/testsuite/g++.dg/other/pragma-ep-1.C
deleted file mode 100644 (file)
index 9362943..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* { dg-do compile { target *-*-osf5* } } */
-/* { dg-final { scan-assembler "xyzzy_one" } } */
-/* { dg-final { scan-assembler "xyzzy_two" } } */
-/* { dg-final { scan-assembler "xyzzz_three" } } */
-/* { dg-final { scan-assembler "four" } } */
-/* { dg-final { scan-assembler-not "_four" } } */
-
-#ifndef __PRAGMA_EXTERN_PREFIX
-#error
-#endif
-
-#pragma extern_prefix "xyzzy_"
-
-extern "C" int one(void);
-extern "C" int two(void);
-
-#pragma extern_prefix "xyzzz_"
-
-extern "C" int three(void);
-
-#pragma extern_prefix ""
-
-extern "C" int four(void);
-
-int (*p[])(void) = {
-  one, two, three, four
-};
index a35cd9ca9afd0f4e85f4e641b6e1614c8131ff35..0d8954d128861d2044b71efdde849b6574b2e528 100644 (file)
@@ -4,7 +4,7 @@
 /* { dg-options "-Wmissing-format-attribute" } */
 /* { dg-options "-Wmissing-format-attribute -Wno-abi" { target arm_eabi } } */
 /* VxWorks does not provide vscanf, either in kernel or RTP mode.  */
-/* { dg-error "not declared" "" { target { *-*-solaris2.8 *-*-vxworks* alpha*-dec-osf* } } 26 } */
+/* { dg-error "not declared" "" { target { *-*-solaris2.8 *-*-vxworks* } } 26 } */
 
 #include <stdio.h>
 #include <stdarg.h>
@@ -23,7 +23,7 @@ bar (const char *fmt, ...)
 {
   va_list ap;
   va_start (ap, fmt);
-  vscanf (fmt, ap); /* { dg-warning "candidate" "scanf attribute warning" { xfail *-*-solaris2.8 *-*-vxworks* alpha*-dec-osf* } } */
+  vscanf (fmt, ap); /* { dg-warning "candidate" "scanf attribute warning" { xfail *-*-solaris2.8 *-*-vxworks* } } */
   va_end (ap);
 }
 
index a96dc96c19713b696520d4df229c5d1cd5d5c291..f3603af478772c116746ce90f473ed16e598ef0b 100644 (file)
@@ -1,7 +1,6 @@
 // PR 31246
 // { dg-do compile }
 // { dg-options "-Wunreachable-code -D_GLIBCXX_DEBUG" }
-// { dg-xfail-if "lack of weak symbols" { alpha*-dec-osf* } }
 #include <vector>
 
 int main()
index 8a50030bc9d3799c56e075ec76d485817a7e96e2..efce90a2bcf0fe0a90f4e4fd0fde47e24eee9a2a 100644 (file)
@@ -1,8 +1,7 @@
 // { dg-do run }
 // { dg-require-weak "" }
-// The PA HP-UX and Tru64 UNIX dynamic loaders don't support unsatisfied
-// weak symbols.
-// { dg-skip-if "No unsat" { alpha*-dec-osf* hppa*-*-hpux* } { "*" } { "" } }
+// The PA HP-UX dynamic loader doesn't support unsatisfied weak symbols.
+// { dg-skip-if "No unsat" { hppa*-*-hpux* } { "*" } { "" } }
 // The darwin loader does, but they do need to exist at link time.
 // { dg-skip-if "No link unsat" { *-*-darwin* } { "*" } { "" } }
 // For kernel modules and static RTPs, the loader treats undefined weak
index cd902fbc3c04480a4381523c8f5edac0845afb66..c0341019845f402e1aaacd21f9b1ad8a9a371bda 100644 (file)
@@ -3,7 +3,7 @@
 // itself call malloc(), and will fail if there is no more
 // memory available.
 // { dg-do run { xfail { { xstormy16-*-* *-*-darwin[3-7]* } || vxworks_rtp } } }
-// Copyright (C) 2000, 2002, 2003, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2002, 2003, 2010, 2012 Free Software Foundation, Inc.
 // Contributed by Nathan Sidwell 6 June 2000 <nathan@codesourcery.com>
 
 // Check we can throw a bad_alloc exception when malloc dies.
@@ -18,9 +18,9 @@ extern "C" void *memcpy(void *, const void *, size_t);
 #ifdef STACK_SIZE
 const int arena_size = 256;
 #else
-#if defined(__FreeBSD__) || defined(__sun__) || defined(__hpux__) || defined(__osf__)
-// FreeBSD, Solaris, HP-UX and Tru64 UNIX with threads require even more
-// space at initialization time.  FreeBSD 5 now requires over 131072 bytes.
+#if defined(__FreeBSD__) || defined(__sun__) || defined(__hpux__)
+// FreeBSD, Solaris and HP-UX require even more space at initialization time.
+// FreeBSD 5 now requires over 131072 bytes.
 const int arena_size = 262144;
 #else
 const int arena_size = 32768;
index fcc3c61677a178156710b1f8d47356d32063ca6d..65c0d6dadcbac17533f2abca4efcfcee81b1ccf1 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-do run { xfail alpha*-dec-osf* i?86-pc-cygwin } }
+// { dg-do run { xfail i?86-pc-cygwin } }
 // Test that attributes weak and alias coexist.
 // { dg-require-weak "" }
 // { dg-require-alias "" }
index ee855800667b34458db5aa083e081987521bb9d8..41bf9c5cdc1cb381243f597ad93c72520064d154 100644 (file)
@@ -1,4 +1,3 @@
-/* { dg-xfail-if "" { alpha*-dec-osf5* } { "-g" } { "" } } */
 #define PTR1 (* (* (* (* (* (* (* (* (* (*
 #define PTR2 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1
 #define PTR3 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2
index 43515556616d54f7a67a900411d616e0ed538f41..1e50ea7cf341f49828b9f738dffc448ac6c14c91 100644 (file)
@@ -1,4 +1,3 @@
-/* { dg-xfail-if "" { alpha*-dec-osf5* } { "-g" } { "" } } */
 #define PTR1 * * * * * * * * * *
 #define PTR2 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1 PTR1
 #define PTR3 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2
index 39b58af62e7aed6bafb358edf76212cda8de6aa6..69ce6dab86df8dd091d63f320ebe6b3bf285827b 100644 (file)
@@ -7,8 +7,7 @@
    So: If we know how, ask the kernel to deliver SIGBUS instead so
    that the test case visibly fails.  */
    
-#if defined(__alpha__) && (defined(__linux__) || defined(__osf__))
-#ifdef __linux__
+#if defined(__alpha__) && defined(__linux__)
 #include <asm/sysinfo.h>
 #include <asm/unistd.h>
 
@@ -19,11 +18,6 @@ setsysinfo(unsigned long op, void *buffer, unsigned long size,
   syscall(__NR_osf_setsysinfo, op, buffer, size, start, arg, flag);
 }
 
-#else
-#include <sys/sysinfo.h>
-#include <sys/proc.h>
-#endif
-   
 static void __attribute__((constructor))
 trap_unaligned(void)
 {
index 31d5379e47c786ad368b54578fa691d0447959d2..898bc4169a038f8097f323c8093a259e2256028d 100644 (file)
@@ -2,10 +2,9 @@
 // { dg-require-weak "" }
 // On darwin, we use attr-weakref-1-darwin.c.
 // This test requires support for undefined weak symbols.  This support
-// is not available on alpha*-dec-osf* and hppa*-*-hpux*.  The test is
-// skipped rather than xfailed to suppress the warning that would otherwise
-// arise.
-// { dg-skip-if "" { "alpha*-dec-osf*" "*-*-darwin*" "hppa*-*-hpux*" } "*" { "" } }
+// is not available on hppa*-*-hpux*.  The test is skipped rather than
+// xfailed to suppress the warning that would otherwise arise.
+// { dg-skip-if "" { "*-*-darwin*" "hppa*-*-hpux*" } "*" { "" } }
 // For kernel modules and static RTPs, the loader treats undefined weak
 // symbols in the same way as undefined strong symbols.  The test
 // therefore fails to load, so skip it.
index 2563eeb581aef72d41ecbbf76f3145f8eeee97df..3fe1473e0112d608d8713bf1715eea7b138e72d1 100644 (file)
@@ -3,7 +3,6 @@
 /* { dg-do compile { target inttypes_types } } */
 /* { dg-options "-std=iso9899:1999 -pedantic-errors" } */
 /* { dg-options "-std=gnu99 -pedantic-errors -DNO_FAST_TYPES" { target *-*-solaris2.[89]* } } */
-/* { dg-options "-std=gnu99 -pedantic-errors -DNO_LEAST_TYPES -DNO_FAST_TYPES -DNO_MAX_TYPES" { target alpha*-dec-osf5* } } */
 
 #include <inttypes.h>
 #ifndef SIGNAL_SUPPRESS
index f33b4c5a9ea74787c06db45d37297f15161001e9..c7d848c7a6c13f04ab3af1273d87cde8c9707c57 100644 (file)
@@ -3,7 +3,6 @@
 /* { dg-do preprocess { target c99_runtime } } */
 /* { dg-options "-std=iso9899:1999" } */
 /* { dg-add-options c99_runtime } */
-/* { dg-skip-if "<complex.h> missing" { alpha*-dec-osf5* } } */
 
 /* Test that tgmath defines the macros it's supposed to. */
 #include <tgmath.h>
index fa8d80166bd3969c68ca751a9591d94c29bb08fd..d4f1f87cfa93bed1f1bff928d5049c07ad762ec7 100644 (file)
@@ -3,7 +3,6 @@
 /* { dg-do compile { target c99_runtime } } */
 /* { dg-options "-std=iso9899:1999" } */
 /* { dg-add-options c99_runtime } */
-/* { dg-skip-if "<complex.h> missing" { alpha*-dec-osf5* } } */
 
 /* Test that invoking type-generic sin on a float invokes sinf. */
 #include <tgmath.h>
index 83e34a23055a181de427502600ee44275b5d75f0..3e983042751f34eaed7d1a1aff7fb96ac2c0e668 100644 (file)
@@ -3,7 +3,6 @@
 /* { dg-do compile { target c99_runtime } } */
 /* { dg-options "-std=iso9899:1999" } */
 /* { dg-add-options c99_runtime } */
-/* { dg-skip-if "<complex.h> missing" { alpha*-dec-osf5* } } */
 
 /* Test that invoking type-generic exp on a complex invokes cexp. */
 #include <tgmath.h>
index 90653260d158671e1c23db04c067091b18e0d024..d8dc043c261b4bba2cb58d18c9e933c85d485296 100644 (file)
@@ -3,7 +3,6 @@
 /* { dg-do compile { target c99_runtime } } */
 /* { dg-options "-std=iso9899:1999" } */
 /* { dg-add-options c99_runtime } */
-/* { dg-skip-if "<complex.h> missing" { alpha*-dec-osf5* } } */
 
 /* Test that invoking type-generic pow on complex float invokes cpowf. */
 #include <tgmath.h>
index 76878ff954cdcbcbece2f83aa964a17d9302a9af..b6ae34e000306e2a53b872262e25f89ea38d7491 100644 (file)
@@ -1,5 +1,5 @@
 /* Structure layout test generator.
-   Copyright (C) 2004, 2005, 2007, 2008, 2009, 2011
+   Copyright (C) 2004, 2005, 2007, 2008, 2009, 2011, 2012
    Free Software Foundation, Inc.
    Contributed by Jakub Jelinek <jakub@redhat.com>.
 
@@ -47,7 +47,7 @@ const char *dg_options[] = {
 "/* { dg-options \"%s-I%s\" } */\n",
 "/* { dg-options \"%s-I%s -Wno-abi\" } */\n",
 "/* { dg-options \"%s-I%s -mno-mmx -Wno-abi\" { target i?86-*-* x86_64-*-* } } */\n",
-"/* { dg-options \"%s-I%s -fno-common\" { target alpha*-dec-osf* hppa*-*-hpux* powerpc*-*-darwin* } } */\n",
+"/* { dg-options \"%s-I%s -fno-common\" { target hppa*-*-hpux* powerpc*-*-darwin* } } */\n",
 "/* { dg-options \"%s-I%s -mno-mmx -fno-common -Wno-abi\" { target i?86-*-darwin* x86_64-*-darwin* } } */\n",
 "/* { dg-options \"%s-I%s -mno-base-addresses\" { target mmix-*-* } } */\n",
 "/* { dg-options \"%s-I%s -mlongcalls -mtext-section-literals\" { target xtensa*-*-* } } */\n"
index 9074c75645265144956c8517c1e9d40edca1f056..3985040d71210f30015c7c92621e9420497e8cb0 100644 (file)
@@ -1,7 +1,5 @@
 /* PR debug/49032 */
 /* { dg-do link } */
-/* Prune mips-tfile warning on alpha*-dec-osf* with -gcoff* -O*.  */
-/* { dg-prune-output "warning, s not found in .*symbol tables" } */
 
 static int s = 42;
 
index 5e3284d5d11539bad6d97221dee205c4d0e555ec..49e2ac5a5500ec543893c669eb8b6eb14016f79d 100644 (file)
@@ -4,8 +4,7 @@ load_lib gcc-dg.exp
 load_lib gcc-gdb-test.exp
 
 # Disable on darwin until radr://7264615 is resolved.
-# Disable on Tru64 UNIX (PR testsuite/48251).
-if { [istarget *-*-darwin*] || [istarget alpha*-dec-osf*] } {
+if { [istarget *-*-darwin*] } {
   return
 }
 
index 2f21c63f0297822c1c647e32316a33b0ef9c087e..00b503c250906bb76c784a21c7005fdd352ec11a 100644 (file)
@@ -1,7 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-Wall" } */
 /* { dg-error "" "" { target { { *arm*-*-*elf* xtensa*-*-elf* } || vxworks_kernel } } 0 } */
-/* { dg-skip-if "No *intmax_t in <inttypes.h>" { alpha*-dec-osf* } } */
 
 /* Compile with -Wall to get a warning if built-in and system intmax_t don't
    match.  */
index 303f9a3dd3a16ff8548310a6fd5384bf6e4991cc..4517d79211903f26567fd5b30f122f72c07a2bde 100644 (file)
@@ -1,7 +1,7 @@
 /* PR tree-optimization/48616 */
 /* { dg-do run } */
 /* { dg-options "-O2 -ftree-vectorize" } */
-/* { dg-additional-options "-fno-common" { target alpha*-dec-osf* hppa*-*-hpux* } } */
+/* { dg-additional-options "-fno-common" { target hppa*-*-hpux* } } */
 
 extern void abort (void);
 int a[4] __attribute__((aligned (32)));
diff --git a/gcc/testsuite/gcc.dg/pragma-ep-1.c b/gcc/testsuite/gcc.dg/pragma-ep-1.c
deleted file mode 100644 (file)
index e110ff9..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* { dg-do compile { target *-*-osf5* } } */
-/* { dg-final { scan-assembler "xyzzy_one" } } */
-/* { dg-final { scan-assembler "xyzzy_two" } } */
-/* { dg-final { scan-assembler "xyzzz_three" } } */
-/* { dg-final { scan-assembler "four" } } */
-/* { dg-final { scan-assembler-not "_four" } } */
-
-#ifndef __PRAGMA_EXTERN_PREFIX
-#error
-#endif
-
-#pragma extern_prefix "xyzzy_"
-
-extern int one(void);
-extern int two(void);
-
-#pragma extern_prefix "xyzzz_"
-
-extern int three(void);
-
-#pragma extern_prefix ""
-
-extern int four(void);
-
-int (*p[]) (void) = {
-  one, two, three, four
-};
diff --git a/gcc/testsuite/gcc.dg/pragma-ep-2.c b/gcc/testsuite/gcc.dg/pragma-ep-2.c
deleted file mode 100644 (file)
index 1151d9b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/* { dg-do compile { target *-*-osf5* } } */
-
-#pragma extern_prefix                  /* { dg-warning "malformed" } */
-#pragma extern_prefix foo              /* { dg-warning "malformed" } */
-#pragma extern_prefix "foo" 1          /* { dg-warning "junk" } */
-
-int bar; /* silence `ISO C forbids an empty translation unit' warning */
diff --git a/gcc/testsuite/gcc.dg/pragma-ep-3.c b/gcc/testsuite/gcc.dg/pragma-ep-3.c
deleted file mode 100644 (file)
index a3e1e6e..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-/* { dg-do compile { target alpha*-*-osf5* } } */
-/* { dg-final { scan-assembler ",Xfoo" } } */
-
-#pragma extern_prefix "X"
-void foo(void) __attribute__((noreturn));
-void foo(void) __attribute__((noreturn));
-void bar()
-{
-  foo();
-}
index d3649fb7409d77e73f6a383b19cd33c8a91c1d09..97e3765793963d3b63d4830fdbf83ff88bc26f04 100644 (file)
@@ -1,6 +1,5 @@
 /* { dg-do run } */
 /* { dg-options "-std=c99" } */
-/* { dg-options "-std=c99 -D_ISO_C_SOURCE=19990L" { target alpha*-dec-osf5* } } */
 /* { dg-options "-std=c99 -D_XOPEN_SOURCE=500" { target mips-sgi-irix6.5 *-*-solaris2.[89] } } */
 /* { dg-options "-std=gnu99" { target *-*-hpux* } } */
 /* { dg-additional-options "-D__USE_MINGW_ANSI_STDIO=1" { target *-*-mingw* } } */
index b1bc4f7a39ef59e5add4cc273ff5a492c9794a9e..d01b8abdda700eba36e24b38528930b13659c214 100644 (file)
@@ -35,6 +35,6 @@ Cyc_string_ungetc (int ignore, struct _fat_ptr *sptr)
 /* Whether the structs are totally scalarized or not depends on the
    MOVE_RATIO macro defintion in the back end.  The scalarization will
    not take place when using small values for MOVE_RATIO.  */
-/* { dg-final { scan-tree-dump-times "struct _fat_ptr _ans" 0 "optimized" { target { ! "alpha*-dec-osf* arm-*-* powerpc*-*-* s390*-*-* sh*-*-*" } } } } */
-/* { dg-final { scan-tree-dump-times "struct _fat_ptr _T2" 0 "optimized" { target { ! "alpha*-dec-osf* arm-*-* powerpc*-*-* s390*-*-* sh*-*-*" } } } } */
+/* { dg-final { scan-tree-dump-times "struct _fat_ptr _ans" 0 "optimized" { target { ! "arm-*-* powerpc*-*-* s390*-*-* sh*-*-*" } } } } */
+/* { dg-final { scan-tree-dump-times "struct _fat_ptr _T2" 0 "optimized" { target { ! "arm-*-* powerpc*-*-* s390*-*-* sh*-*-*" } } } } */
 /* { dg-final { cleanup-tree-dump "optimized" } } */
index 564b08eaa996024894e918515a09502e9d08cb51..5b9cd4189c1fa49d8473499d4d44c9c1e34c7773 100644 (file)
@@ -5,7 +5,6 @@
 /* { dg-additional-options "-flat_namespace -undefined suppress" { target *-*-darwin* }  } */
 /* { dg-require-weak "" } */
 /* { dg-do run { target native } } */
-/* { dg-skip-if "undefined weak not supported" { alpha*-dec-osf* } } */
 /* { dg-skip-if "undefined weak not supported" { { hppa*-*-hpux* } && { ! lp64 } } } */
 
 extern int __attribute__ ((weak)) Foo ();
index 8bb19a54b154c6402ff64c669e0e190005c1b9b5..2444d8de7b8ce0857439fa12c4a04ade83cbb423 100644 (file)
@@ -4,8 +4,7 @@ load_lib gfortran-dg.exp
 load_lib gcc-gdb-test.exp
 
 # Disable on darwin until radr://7264615 is resolved.
-# Disable on Tru64 UNIX (PR testsuite/48251).
-if { [istarget *-*-darwin*] || [istarget alpha*-dec-osf*] } {
+if { [istarget *-*-darwin*] } {
   return
 }
 
index 7741f91cf3061bfc4ba285fdbc2e2687cff28b6c..85cef99119c9bb184c4e1b3b86f4d5181213bc3e 100644 (file)
@@ -233,12 +233,6 @@ proc check_weak_available { } {
         return 1
     }
 
-    # DEC OSF/1/Digital UNIX/Tru64 UNIX supports it
-
-    if { [istarget alpha*-dec-osf*] } {
-       return 1
-    }
-
     # Windows targets Cygwin and MingW32 support it
 
     if { [istarget *-*-cygwin*] || [istarget *-*-mingw*] } {
@@ -584,11 +578,6 @@ proc check_effective_target_pcc_bitfield_type_matters { } {
 # Add to FLAGS all the target-specific flags needed to use thread-local storage.
 
 proc add_options_for_tls { flags } {
-    # Tru64 UNIX uses emutls, which relies on a couple of pthread functions
-    # which only live in libpthread, so always pass -pthread for TLS.
-    if { [istarget alpha*-dec-osf*] } {
-       return "$flags -pthread"
-    }
     # On Solaris 8 and 9, __tls_get_addr/___tls_get_addr only lives in
     # libthread, so always pass -pthread for native TLS.
     # Need to duplicate native TLS check from
@@ -993,8 +982,8 @@ proc check_iconv_available { test_what } {
 # Return 1 if an ASCII locale is supported on this host, 0 otherwise.
 
 proc check_ascii_locale_available { } {
-    if { ([ishost alpha*-dec-osf*] || [ishost mips-sgi-irix*]) } {
-       # Neither Tru64 UNIX nor IRIX support an ASCII locale.
+    if { ([ishost mips-sgi-irix*]) } {
+       # IRIX doesn't support an ASCII locale.
        return 0
     } else {
        return 1
index f936b6baef4ae4358816b8e907e83791825333fa..3720a8871edb8ffff68ebf1685860356ab0be6b9 100644 (file)
@@ -1,4 +1,4 @@
 /* { dg-options "-gdwarf-2 -dA" } */
-/* { dg-skip-if "No Dwarf" { { alpha*-dec-osf* hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
+/* { dg-skip-if "No Dwarf" { { hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
 /* { dg-final { scan-assembler "0x11\[^0-9a-f\].*DW_AT_language" } } */
 int x;
index c04b613502e8d92a45bfc489c9a0d8740f9c4086..3bfabbae475aa4de87e634b742da50d26ecb3cb3 100644 (file)
@@ -1,6 +1,6 @@
 /* { dg-options "-gdwarf-2 -dA" } */
 /* { dg-final { scan-assembler "\"id.0\".*DW_AT_name" } } */
-/* { dg-skip-if "No Dwarf" { { *-*-aix* alpha*-dec-osf* hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
+/* { dg-skip-if "No Dwarf" { { *-*-aix* hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
 @interface foo
   id x;
 @end
index bedc520a65b2507d39df2475cccabefe7e7828a9..967f515901304a89d0f20e30a8b90ae576420b52 100644 (file)
@@ -1,4 +1,4 @@
 /* { dg-options "-gdwarf-2 -dA -gno-strict-dwarf" } */
 /* { dg-final { scan-assembler "0x10\[^0-9a-f\].*DW_AT_language" } } */
-/* { dg-skip-if "No Dwarf" { { *-*-aix* alpha*-dec-osf* hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
+/* { dg-skip-if "No Dwarf" { { *-*-aix* hppa*-*-hpux* } && { ! hppa*64*-*-* } } { "*" } { "" } } */
 int x;
index 8667058788f45541e242e4c84885bfb57c59395b..bb648163ece4ff583bc500c8764d99eeebc7e7c7 100755 (executable)
@@ -2076,9 +2076,6 @@ case "${target}" in
     mlib-tgt-specific.adb<mlib-tgt-specific-aix.adb \
     indepsw.adb<indepsw-aix.adb"
     ;;
-  alpha*-dec-osf*)
-    TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-tru64.adb"
-    ;;
   alpha*-dec-vms* | alpha*-dec-openvms* | alpha*-dec-vms* \
   | alpha*-hp-vms* | alpha*-hp-openvms* | alpha*-hp-vms*)
     TOOLS_TARGET_PAIRS="\
index 450cb72724305c7ef777ea8f73b4fcddf13f6bf6..443528e5b8e4a4ece5a4db86c077c47185347987 100644 (file)
@@ -1,5 +1,5 @@
 # Configure script for libada.
-#   Copyright 2003, 2004, 2009 Free Software Foundation, Inc.
+#   Copyright 2003, 2004, 2009, 2012 Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -116,9 +116,6 @@ case "${target}" in
     mlib-tgt-specific.adb<mlib-tgt-specific-aix.adb \
     indepsw.adb<indepsw-aix.adb"
     ;;
-  alpha*-dec-osf*)
-    TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-tru64.adb"
-    ;;
   alpha*-dec-vms* | alpha*-dec-openvms* | alpha*-dec-vms* \
   | alpha*-hp-vms* | alpha*-hp-openvms* | alpha*-hp-vms*)
     TOOLS_TARGET_PAIRS="\
index a3294848a7612d26d37789b78d58d5f0a1001268..0037eaa43e48a24d9f6957caaf7ebed3c3efebdf 100644 (file)
@@ -1,3 +1,16 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config.host: Remove alpha*-dec-osf5.1* handling.
+       * config/alpha/gthr-posix.c: Remove.
+       * config/alpha/libgcc-osf5.ver: Remove.
+       * config/alpha/osf5-unwind.h: Remove.
+       * config/alpha/t-osf-pthread: Remove.
+       * config/alpha/t-slibgcc-osf: Remove.
+       * config/t-crtfm (crtfastmath.o): Remove -frandom-seed.
+       * gthr-posix.h [!_REENTRANT && __osf__] (_REENTRANT): Don't define.
+       [__osf__ && _PTHREAD_USE_MANGLED_NAMES_]: Remove.
+       * mkmap-flat.awk: Remove osf_export handling.
+
 2012-03-12  Richard Guenther  <rguenther@suse.de>
 
        * gthr.h (__GTHREAD_MUTEX_INIT_FUNCTION): Adjust specification.
index 257622a09ff708286b8edf12f67c0f277badc2a3..2fe4e34b559b489a42e81e77bc9545bcd96fd4db 100644 (file)
@@ -266,8 +266,7 @@ case ${host} in
 esac
 
 case ${host} in
-*-*-darwin* | *-*-freebsd* | *-*-netbsd* | *-*-openbsd* | *-*-solaris2* | \
-  alpha*-dec-osf5.1*)
+*-*-darwin* | *-*-freebsd* | *-*-netbsd* | *-*-openbsd* | *-*-solaris2*)
   enable_execute_stack=enable-execute-stack-mprotect.c
   ;;
 i[34567]86-*-mingw* | x86_64-*-mingw*)
@@ -294,16 +293,6 @@ alpha*-*-netbsd*)
 alpha*-*-openbsd*)
        tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
        ;;
-alpha*-dec-osf5.1*)
-       tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee t-crtfm t-slibgcc alpha/t-slibgcc-osf"
-       case ${target_thread_file} in
-         posix)
-           tmake_file="${tmake_file} alpha/t-osf-pthread"
-           ;;
-       esac
-       extra_parts="${extra_parts} crtfastmath.o"
-       md_unwind_header=alpha/osf5-unwind.h
-       ;;
 alpha64-dec-*vms*)
        tmake_file="$tmake_file alpha/t-alpha alpha/t-ieee alpha/t-vms t-slibgcc-vms"
        extra_parts="$extra_parts vms-dwarf2.o vms-dwarf2eh.o"
diff --git a/libgcc/config/alpha/gthr-posix.c b/libgcc/config/alpha/gthr-posix.c
deleted file mode 100644 (file)
index 02681a4..0000000
+++ /dev/null
@@ -1,266 +0,0 @@
-/* POSIX threads dummy routines for systems without weak definitions.  */
-/* Compile this one with gcc.  */
-/* Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009, 2011
-   Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-<http://www.gnu.org/licenses/>.  */
-
-#include "tconfig.h"
-#include "tm.h"
-#include "libgcc_tm.h"
-# define __gthrw_pragma(pragma) _Pragma (#pragma)
-/* Define so we provide weak definitions of functions used by libobjc only.  */
-#define _LIBOBJC_WEAK
-#include "gthr.h"
-
-int
-pthread_once (pthread_once_t *once ATTRIBUTE_UNUSED,
-             void (*func) (void) ATTRIBUTE_UNUSED)
-{
-  return -1;
-}
-
-int
-pthread_key_create (pthread_key_t *key ATTRIBUTE_UNUSED,
-                   void (*dtor) (void *) ATTRIBUTE_UNUSED)
-{
-  return -1;
-}
-
-int
-pthread_key_delete (pthread_key_t key ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-void *
-pthread_getspecific (pthread_key_t key ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_setspecific (pthread_key_t key ATTRIBUTE_UNUSED,
-                    const void *ptr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_create (pthread_t *thread ATTRIBUTE_UNUSED,
-               const pthread_attr_t *attr ATTRIBUTE_UNUSED,
-               void *(*start_routine) (void *) ATTRIBUTE_UNUSED,
-               void *arg ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_join (pthread_t thread ATTRIBUTE_UNUSED,
-             void **value_ptr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-void
-pthread_exit (void *value_ptr ATTRIBUTE_UNUSED)
-{
-}
-
-int
-pthread_detach (pthread_t thread ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_cancel (pthread_t thread ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_mutex_lock (pthread_mutex_t *mutex ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_mutex_trylock (pthread_mutex_t *mutex ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-#ifdef _POSIX_TIMEOUTS
-#if _POSIX_TIMEOUTS >= 0
-int
-pthread_mutex_timedlock (pthread_mutex_t *mutex ATTRIBUTE_UNUSED,
-                        const struct timespec *abs_timeout ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-#endif
-#endif /* _POSIX_TIMEOUTS */
-
-int
-pthread_mutex_unlock (pthread_mutex_t *mutex ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_mutexattr_init (pthread_mutexattr_t *attr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_mutexattr_settype (pthread_mutexattr_t *attr ATTRIBUTE_UNUSED,
-                          int type ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_mutexattr_destroy (pthread_mutexattr_t *attr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_cond_broadcast (pthread_cond_t *cond ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_cond_destroy (pthread_cond_t *cond ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_cond_init (pthread_cond_t *cond ATTRIBUTE_UNUSED,
-                  const pthread_condattr_t *attr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_cond_signal (pthread_cond_t *cond ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_cond_wait (pthread_cond_t *cond ATTRIBUTE_UNUSED,
-                  pthread_mutex_t *mutex ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_cond_timedwait (pthread_cond_t *cond ATTRIBUTE_UNUSED,
-                       pthread_mutex_t *mutex ATTRIBUTE_UNUSED,
-                       const struct timespec *abstime ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_mutex_init (pthread_mutex_t *mutex ATTRIBUTE_UNUSED,
-                   const pthread_mutexattr_t *attr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_mutex_destroy (pthread_mutex_t *mutex ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-pthread_t
-pthread_self (void)
-{
-  return (pthread_t) 0;
-}
-
-#ifdef _POSIX_PRIORITY_SCHEDULING
-#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
-int
-sched_get_priority_max (int policy ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-sched_get_priority_min (int policy ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
-#endif /* _POSIX_PRIORITY_SCHEDULING */
-
-int
-sched_yield (void)
-{
-  return 0;
-}
-
-int
-pthread_attr_destroy (pthread_attr_t *attr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_attr_init (pthread_attr_t *attr ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_attr_setdetachstate (pthread_attr_t *attr ATTRIBUTE_UNUSED,
-                            int detachstate ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
-int
-pthread_getschedparam (pthread_t thread ATTRIBUTE_UNUSED,
-                      int *policy ATTRIBUTE_UNUSED,
-                      struct sched_param *param ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-
-int
-pthread_setschedparam (pthread_t thread ATTRIBUTE_UNUSED,
-                      int policy ATTRIBUTE_UNUSED,
-                      const struct sched_param *param ATTRIBUTE_UNUSED)
-{
-  return 0;
-}
-#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
-
diff --git a/libgcc/config/alpha/libgcc-osf5.ver b/libgcc/config/alpha/libgcc-osf5.ver
deleted file mode 100644 (file)
index 4266928..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright (C) 2011 Free Software Foundation, Inc.
-#
-# This file is part of GCC.
-#
-# GCC is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3, or (at your option)
-# any later version.
-#
-# GCC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3.  If not see
-# <http://www.gnu.org/licenses/>.
-
-# Tru64 UNIX specific additions to libgcc-std.ver.
-
-GCC_4.7.0 {
-  __udiv_qrnnd
-  # Beware *not* to hide the POSIX threads related symbols provided by
-  # gthr-posix.c, as this would prevent their preemption by real symbols.
-  __pthread_cancel
-  __pthread_cond_broadcast
-  __pthread_cond_destroy
-  __pthread_cond_init
-  __pthread_cond_signal
-  __pthread_cond_timedwait
-  __pthread_cond_wait
-  __pthread_create
-  __pthread_detach
-  __pthread_exit
-  __pthread_getspecific
-  __pthread_join
-  __pthread_mutex_destroy
-  __pthread_mutex_init
-  __pthread_mutex_lock
-  __pthread_mutex_trylock
-  __pthread_mutex_unlock
-  __pthread_once
-  __pthread_self
-  __pthread_setspecific
-  pthread_attr_destroy
-  pthread_attr_init
-  pthread_attr_setdetachstate
-  pthread_getschedparam
-  pthread_key_create
-  pthread_key_delete
-  pthread_mutexattr_destroy
-  pthread_mutexattr_init
-  pthread_mutexattr_settype
-  pthread_setschedparam
-  sched_get_priority_max
-  sched_get_priority_min
-  sched_yield
-}
diff --git a/libgcc/config/alpha/osf5-unwind.h b/libgcc/config/alpha/osf5-unwind.h
deleted file mode 100644 (file)
index c649099..0000000
+++ /dev/null
@@ -1,329 +0,0 @@
-/* DWARF2 EH unwinding support for Alpha Tru64.
-   Copyright (C) 2010 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING3.  If not see
-<http://www.gnu.org/licenses/>.  */
-
-/* This file implements the MD_FALLBACK_FRAME_STATE_FOR macro, triggered when
-   the GCC table based unwinding process hits a frame for which no unwind info
-   has been registered. This typically occurs when raising an exception from a
-   signal handler, because the handler is actually called from the OS kernel.
-
-   The basic idea is to detect that we are indeed trying to unwind past a
-   signal handler and to fill out the GCC internal unwinding structures for
-   the OS kernel frame as if it had been directly called from the interrupted
-   context.
-
-   This is all assuming that the code to set the handler asked the kernel to
-   pass a pointer to such context information.  */
-
-/* --------------------------------------------------------------------------
-   -- Basic principles of operation:
-   --------------------------------------------------------------------------
-
-   1/ We first need a way to detect if we are trying to unwind past a signal
-      handler.
-
-   The typical method that is used on most platforms is to look at the code
-   around the return address we have and check if it matches the OS code
-   calling a handler.  To determine what this code is expected to be, get a
-   breakpoint into a real signal handler and look at the code around the
-   return address.  Depending on the library versions the pattern of the
-   signal handler is different; this is the reason why we check against more
-   than one pattern.
-
-   On this target, the return address is right after the call and every
-   instruction is 4 bytes long.  For the simple case of a null dereference in
-   a single-threaded app, it went like:
-
-   # Check that we indeed have something we expect: the instruction right
-   # before the return address is within a __sigtramp function and is a call.
-
-   [... run gdb and break at the signal handler entry ...]
-
-   (gdb) x /i $ra-4
-   <__sigtramp+160>: jsr     ra,(a3),0x3ff800d0ed4 <_fpdata+36468>
-
-   # Look at the code around that return address, and eventually observe a
-   # significantly large chunk of *constant* code right before the call:
-
-   (gdb) x /10i  $ra-44
-   <__sigtramp+120>: lda     gp,-27988(gp)
-   <__sigtramp+124>: ldq     at,-18968(gp)
-   <__sigtramp+128>: lda     t0,-1
-   <__sigtramp+132>: stq     t0,0(at)
-   <__sigtramp+136>: ldq     at,-18960(gp)
-   <__sigtramp+140>: ldl     t1,8(at)
-   <__sigtramp+144>: ldq     at,-18960(gp)
-   <__sigtramp+148>: stl     t1,12(at)
-   <__sigtramp+152>: ldq     at,-18960(gp)
-   <__sigtramp+156>: stl     t0,8(at)
-
-   # The hexadecimal equivalent that we will have to match is:
-
-   (gdb) x /10x  $ra-44
-   <__sigtramp+120>: 0x23bd92ac    0xa79db5e8    0x203fffff   0xb43c0000
-   <__sigtramp+136>: 0xa79db5f0    0xa05c0008    0xa79db5f0   0xb05c000c
-   <__sigtramp+152>: 0xa79db5f0    0xb03c0008
-
-   The problem observed on this target with this approach is that although
-   we found a constant set of instruction patterns there were some
-   gp-related offsets that made the machine code to differ from one
-   installation to another.  This problem could have been overcome by masking
-   these offsets, but we found that it would be simpler and more efficient to
-   check whether the return address was part of a signal handler, by comparing
-   it against some expected code offset from __sigtramp.
-
-   # Check that we indeed have something we expect: the instruction
-   # right before the return address is within a __sigtramp
-   # function and is a call. We also need to obtain the offset
-   # between the return address and the start address of __sigtramp.
-
-   [... run gdb and break at the signal handler entry ...]
-
-   (gdb) x /2i $ra-4
-   <__sigtramp+160>: jsr     ra,(a3),0x3ff800d0ed4 <_fpdata+36468>
-   <__sigtramp+164>: ldah    gp,16381(ra)
-
-   (gdb) p (long)$ra - (long)&__sigtramp
-   $2 = 164
-
-   --------------------------------------------------------------------------
-
-   2/ Once we know we are going through a signal handler, we need a way to
-      retrieve information about the interrupted run-time context.
-
-   On this platform, the third handler's argument is a pointer to a structure
-   describing this context (struct sigcontext *). We unfortunately have no
-   direct way to transfer this value here, so a couple of tricks are required
-   to compute it.
-
-   As documented at least in some header files (e.g. sys/machine/context.h),
-   the structure the handler gets a pointer to is located on the stack.  As of
-   today, while writing this macro, we have unfortunately not been able to
-   find a detailed description of the full stack layout at handler entry time,
-   so we'll have to resort to empirism :)
-
-   When unwinding here, we have the handler's CFA at hand, as part of the
-   current unwinding context which is one of our arguments.  We presume that
-   for each call to a signal handler by the same kernel routine, the context's
-   structure location on the stack is always at the same offset from the
-   handler's CFA, and we compute that offset from bare observation:
-
-   For the simple case of a bare null dereference in a single-threaded app,
-   computing the offset was done using GNAT like this:
-
-   # Break on the first handler's instruction, before the prologue to have the
-   # CFA in $sp, and get there:
-
-   (gdb) b *&__gnat_error_handler
-   Breakpoint 1 at 0x120016090: file init.c, line 378.
-
-   (gdb) r
-   Program received signal SIGSEGV, Segmentation fault.
-
-   (gdb) c
-   Breakpoint 1, __gnat_error_handler (sig=..., sip=..., context=...)
-
-   # The displayed argument value are meaningless because we stopped before
-   # their final "homing". We know they are passed through $a0, $a1 and $a2
-   # from the ABI, though, so ...
-
-   # Observe that $sp and the context pointer are in the same (stack) area,
-   # and compute the offset:
-
-   (gdb) p /x $sp
-   $2 = 0x11fffbc80
-
-   (gdb) p /x $a2
-   $3 = 0x11fffbcf8
-
-   (gdb) p /x (long)$a2 - (long)$sp
-   $4 = 0x78
-
-   --------------------------------------------------------------------------
-
-   3/ Once we know we are unwinding through a signal handler and have the
-      address of the structure describing the interrupted context at hand, we
-      have to fill the internal frame-state/unwind-context structures properly
-      to allow the unwinding process to proceed.
-
-   Roughly, we are provided with an *unwinding* CONTEXT, describing the state
-   of some point P in the call chain we are unwinding through.  The macro we
-   implement has to fill a "frame state" structure FS that describe the P's
-   caller state, by way of *rules* to compute its CFA, return address, and
-   **saved** registers *locations*. 
-
-   For the case we are going to deal with, the caller is some kernel code
-   calling a signal handler, and:
-
-   o The saved registers are all in the interrupted run-time context,
-
-   o The CFA is the stack pointer value when the kernel code is entered, that
-     is, the stack pointer value at the interruption point, also part of the
-     interrupted run-time context.
-
-   o We want the return address to appear as the address of the active
-     instruction at the interruption point, so that the unwinder proceeds as
-     if the interruption had been a regular call.  This address is also part
-     of the interrupted run-time context.
-
-   --
-
-   Also, note that there is an important difference between the return address
-   we need to claim for the kernel frame and the value of the return address
-   register at the interruption point.
-
-   The latter might be required to be able to unwind past the interrupted
-   routine, for instance if it is interrupted before saving the incoming
-   register value in its own frame, which may typically happen during stack
-   probes for stack-checking purposes.
-
-   It is then essential that the rules stated to locate the kernel frame
-   return address don't clobber the rules describing where is saved the return
-   address register at the interruption point, so some scratch register state
-   entry should be used for the former. We have DWARF_ALT_FRAME_RETURN_COLUMN
-   at hand exactly for that purpose.
-
-   --------------------------------------------------------------------------
-
-   4/ Depending on the context (single-threaded or multi-threaded app, ...),
-   the code calling the handler and the handler-cfa to interrupted-context
-   offset might change, so we use a simple generic data structure to track
-   the possible variants.  */
-
-/* This is the structure to wrap information about each possible sighandler
-   caller we may have to identify.  */
-
-typedef struct {
-  /* Expected return address when being called from a sighandler.  */
-  void *ra_value;
-
-  /* Offset to get to the sigcontext structure from the handler's CFA
-     when the pattern matches.  */
-  int cfa_to_context_offset;
-
-} sighandler_call_t;
-
-/* Helper macro for MD_FALLBACK_FRAME_STATE_FOR below.
-
-   Look at RA to see if it matches within a sighandler caller.
-   Set SIGCTX to the corresponding sigcontext structure (computed from
-   CFA) if it does, or to 0 otherwise.  */
-
-#define COMPUTE_SIGCONTEXT_FOR(RA,CFA,SIGCTX)                              \
-do {                                                                       \
-  /* Define and register the applicable patterns.  */                      \
-  extern void __sigtramp (void);                                           \
-                                                                           \
-  sighandler_call_t sighandler_calls [] = {                                \
-    {__sigtramp + 164, 0x78}                                               \
-  };                                                                       \
-                                                                           \
-  int n_patterns_to_match                                                  \
-    = sizeof (sighandler_calls) / sizeof (sighandler_call_t);              \
-                                                                           \
-  int pn;  /* pattern number  */                                           \
-                                                                           \
-  int match = 0;  /* Did last pattern match ?  */                          \
-                                                                           \
-  /* Try to match each pattern in turn.  */                                \
-  for (pn = 0; !match && pn < n_patterns_to_match; pn ++)                  \
-    match = ((RA) == sighandler_calls[pn].ra_value);                       \
-                                                                           \
-  (SIGCTX) = (struct sigcontext *)                                         \
-    (match ? ((CFA) + sighandler_calls[pn - 1].cfa_to_context_offset) : 0); \
-} while (0);
-
-#include <sys/context_t.h>
-
-#define REG_SP  30  /* hard reg for stack pointer */
-#define REG_RA  26  /* hard reg for return address */
-
-#define MD_FALLBACK_FRAME_STATE_FOR alpha_fallback_frame_state
-
-static _Unwind_Reason_Code
-alpha_fallback_frame_state (struct _Unwind_Context *context,
-                           _Unwind_FrameState *fs)
-{
-  /* Return address and CFA of the frame we're attempting to unwind through,
-     possibly a signal handler.  */
-  void *ctx_ra  = (void *)context->ra;
-  void *ctx_cfa = (void *)context->cfa;
-
-  /* CFA of the intermediate abstract kernel frame between the interrupted
-     code and the signal handler, if we're indeed unwinding through a signal
-     handler.  */
-  void *k_cfa;
-
-  /* Pointer to the sigcontext structure pushed by the kernel when we're
-     unwinding through a signal handler.  */
-  struct sigcontext *sigctx;
-  int i;
-
-  COMPUTE_SIGCONTEXT_FOR (ctx_ra, ctx_cfa, sigctx);
-
-  if (sigctx == 0)
-    return _URC_END_OF_STACK;
-
-  /* The kernel frame's CFA is exactly the stack pointer value at the
-     interruption point.  */
-  k_cfa = (void *) sigctx->sc_regs [REG_SP];
-
-  /* State the rules to compute the CFA we have the value of: use the
-     previous CFA and offset by the difference between the two.  See
-     uw_update_context_1 for the supporting details.  */
-  fs->regs.cfa_how = CFA_REG_OFFSET;
-  fs->regs.cfa_reg = __builtin_dwarf_sp_column ();
-  fs->regs.cfa_offset = k_cfa - ctx_cfa;
-
-  /* Fill the internal frame_state structure with information stating
-     where each register of interest in the saved context can be found
-     from the CFA.  */
-
-  /* The general registers are in sigctx->sc_regs.  Leave out r31, which
-     is read-as-zero. It makes no sense restoring it, and we are going to
-     use the state entry for the kernel return address rule below.
-
-     This loop must cover at least all the callee-saved registers, and
-     we just don't bother specializing the set here.  */
-  for (i = 0; i <= 30; i ++)
-    {
-      fs->regs.reg[i].how = REG_SAVED_OFFSET;
-      fs->regs.reg[i].loc.offset
-       = (void *) &sigctx->sc_regs[i] - (void *) k_cfa;
-    }
-
-  /* Ditto for the floating point registers in sigctx->sc_fpregs.  */
-  for (i = 0; i <= 31; i ++)
-    {
-      fs->regs.reg[32+i].how = REG_SAVED_OFFSET;
-      fs->regs.reg[32+i].loc.offset
-       = (void *) &sigctx->sc_fpregs[i] - (void *) k_cfa;
-    }
-
-  /* State the rules to find the kernel's code "return address", which
-     is the address of the active instruction when the signal was caught,
-     in sigctx->sc_pc. Use DWARF_ALT_FRAME_RETURN_COLUMN since the return
-     address register is a general register and should be left alone.  */
-  fs->retaddr_column = DWARF_ALT_FRAME_RETURN_COLUMN;
-  fs->regs.reg[DWARF_ALT_FRAME_RETURN_COLUMN].how = REG_SAVED_OFFSET;
-  fs->regs.reg[DWARF_ALT_FRAME_RETURN_COLUMN].loc.offset
-    = (void *) &sigctx->sc_pc - (void *) k_cfa;
-  fs->signal_frame = 1;
-
-  return _URC_NO_REASON;
-}
diff --git a/libgcc/config/alpha/t-osf-pthread b/libgcc/config/alpha/t-osf-pthread
deleted file mode 100644 (file)
index 9a175db..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# Compile libgcc2 with POSIX threads supports
-HOST_LIBGCC2_CFLAGS += -pthread
-
-# Provide dummy POSIX threads functions
-LIB2ADD += $(srcdir)/config/alpha/gthr-posix.c
diff --git a/libgcc/config/alpha/t-slibgcc-osf b/libgcc/config/alpha/t-slibgcc-osf
deleted file mode 100644 (file)
index 66e5cf1..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright (C) 2000, 2001, 2003, 2004, 2005, 2011
-# Free Software Foundation, Inc.
-#
-# This file is part of GCC.
-#
-# GCC is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3, or (at your option)
-# any later version.
-#
-# GCC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3.  If not see
-# <http://www.gnu.org/licenses/>.
-
-# Build a shared libgcc library with the Tru64 UNIX linker.
-
-SHLIB_LDFLAGS = -Wl,-msym -Wl,-set_version,gcc.1 -Wl,-soname,$(SHLIB_SONAME) \
-       -Wl,-hidden -Wl,-input,$(SHLIB_MAP)
-
-SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
-SHLIB_MKMAP_OPTS = -v osf_export=1
-# Needed so mkmap-flat.awk can parse the nm output.
-SHLIB_NM_FLAGS = -Bg
-SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/alpha/libgcc-osf5.ver
index 1d3b8ecfc3587b6dcef45c31b857b0360ceefa14..61e62696bfd843f65d619c7d437e040dc4f4c3af 100644 (file)
@@ -1,5 +1,2 @@
-# -frandom-seed is necessary to avoid bootstrap comparison failures due to
-# changing mangled names of the constructor on Tru64 Unix, but harmless
-# otherwise.
 crtfastmath.o: $(srcdir)/config/$(cpu_type)/crtfastmath.c
-       $(gcc_compile) -frandom-seed=gcc-crtfastmath -c $<
+       $(gcc_compile) -c $<
index 6c9af1a476582898b614c16a9bff1a402cc120b5..67d79ff3e7c293086137d82787dc94c89b166809 100644 (file)
@@ -1,7 +1,7 @@
 /* Threads compatibility routines for libgcc2 and libobjc.  */
 /* Compile this one with gcc.  */
 /* Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-   2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+   2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -33,11 +33,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #define __GTHREADS 1
 #define __GTHREADS_CXX0X 1
 
-/* Some implementations of <pthread.h> require this to be defined.  */
-#if !defined(_REENTRANT) && defined(__osf__)
-#define _REENTRANT 1
-#endif
-
 #include <pthread.h>
 
 #if ((defined(_LIBOBJC) || defined(_LIBOBJC_WEAK)) \
@@ -105,39 +100,6 @@ typedef struct timespec __gthread_time_t;
 /* Typically, __gthrw_foo is a weak reference to symbol foo.  */
 #define __gthrw(name) __gthrw2(__gthrw_ ## name,name,name)
 
-/* On Tru64, /usr/include/pthread.h uses #pragma extern_prefix "__" to
-   map a subset of the POSIX pthread API to mangled versions of their
-   names.  */
-#if defined(__osf__) && defined(_PTHREAD_USE_MANGLED_NAMES_)
-#define __gthrw3(name) __gthrw2(__gthrw_ ## name, __ ## name, name)
-__gthrw3(pthread_once)
-__gthrw3(pthread_getspecific)
-__gthrw3(pthread_setspecific)
-
-__gthrw3(pthread_create)
-__gthrw3(pthread_join)
-__gthrw3(pthread_detach)
-__gthrw3(pthread_equal)
-__gthrw3(pthread_self)
-__gthrw3(pthread_cancel)
-__gthrw3(sched_yield)
-
-__gthrw3(pthread_mutex_lock)
-__gthrw3(pthread_mutex_trylock)
-#if _GTHREAD_USE_MUTEX_TIMEDLOCK
-__gthrw3(pthread_mutex_timedlock)
-#endif
-__gthrw3(pthread_mutex_unlock)
-__gthrw3(pthread_mutex_init)
-__gthrw3(pthread_mutex_destroy)
-
-__gthrw3(pthread_cond_init)
-__gthrw3(pthread_cond_broadcast)
-__gthrw3(pthread_cond_signal)
-__gthrw3(pthread_cond_wait)
-__gthrw3(pthread_cond_timedwait)
-__gthrw3(pthread_cond_destroy)
-#else
 __gthrw(pthread_once)
 __gthrw(pthread_getspecific)
 __gthrw(pthread_setspecific)
@@ -167,7 +129,6 @@ __gthrw(pthread_cond_signal)
 __gthrw(pthread_cond_wait)
 __gthrw(pthread_cond_timedwait)
 __gthrw(pthread_cond_destroy)
-#endif
 
 __gthrw(pthread_key_create)
 __gthrw(pthread_key_delete)
@@ -178,11 +139,7 @@ __gthrw(pthread_mutexattr_destroy)
 
 #if defined(_LIBOBJC) || defined(_LIBOBJC_WEAK)
 /* Objective-C.  */
-#if defined(__osf__) && defined(_PTHREAD_USE_MANGLED_NAMES_)
-__gthrw3(pthread_exit)
-#else
 __gthrw(pthread_exit)
-#endif /* __osf__ && _PTHREAD_USE_MANGLED_NAMES_ */
 #ifdef _POSIX_PRIORITY_SCHEDULING
 #ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
 __gthrw(sched_get_priority_max)
index ec5e1fdf5135c7b6cb20cd6ce79f241674eed2bf..234de223c644b4bdd21f808a75a8187ad85782fb 100644 (file)
@@ -1,5 +1,6 @@
 # Generate a flat list of symbols to export.
-#      Copyright (C) 2007, 2008, 2009, 2011  Free Software Foundation, Inc.
+#      Copyright (C) 2007, 2008, 2009, 2011, 2012
+#      Free Software Foundation, Inc.
 #      Contributed by Richard Henderson <rth@cygnus.com>
 #
 # This file is part of GCC.
@@ -20,8 +21,6 @@
 
 # Options:
 #   "-v leading_underscore=1" : Symbols in map need leading underscore.
-#   "-v osf_export=1"        : Create -input file for Tru64 UNIX linker
-#                              instead of map file.
 #   "-v pe_dll=1"             : Create .DEF file for Windows PECOFF
 #                               DLL link instead of map file.
 
@@ -100,10 +99,6 @@ END {
   }
 
   for (sym in export)
-    if (def[sym] || (pe_dll && def["_" sym])) {
-      if (!osf_export)
-       print sym;
-      else
-       print "-exported_symbol " sym;
-    }
+    if (def[sym] || (pe_dll && def["_" sym]))
+      print sym;
 }
index a5094358aaccc3f3ab1c87861d88bd4da8662f36..ef81d3104c56baf774670634b684ef6a0d9244ea 100644 (file)
@@ -1,3 +1,11 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.ac: Remove Tru64 reference.
+       * acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Remove alpha*-dec-osf*
+       handling.
+       * configure: Regenerate.
+       * intrinsics/c99_functions.c [__osf__]: Remove.
+
 2012-03-10  Tobias Burnus  <burnus@net-b.de>
 
        * libgfortran.h (descriptor_dimension, GFC_DIMENSION_LBOUND,
index 645b248deb4293bc4150468f9ce7791df5475668..d4acf76ba4202925034d0097aec8a1fc11511a7a 100644 (file)
@@ -99,7 +99,7 @@ void foo (void);
              [Define to 1 if the target supports #pragma weak])
   fi
   case "$host" in
-    *-*-darwin* | *-*-hpux* | *-*-cygwin* | *-*-mingw* | alpha*-dec-osf* )
+    *-*-darwin* | *-*-hpux* | *-*-cygwin* | *-*-mingw* )
       AC_DEFINE(GTHREAD_USE_WEAK, 0,
                [Define to 0 if the target shouldn't use #pragma weak])
       ;;
index 0498238c7391f022c5f4fe230b392b32d604d419..ff524eef4eef0ed66f8725d5d8350cb163ca9623 100755 (executable)
@@ -25196,7 +25196,7 @@ $as_echo "#define HAVE_FEENABLEEXCEPT 1" >>confdefs.h
 fi
 
 
-# At least for glibc and Tru64, clock_gettime is in librt.  But don't
+# At least for glibc, clock_gettime is in librt.  But don't
 # pull that in if it still doesn't give us the function we want.  This
 # test is copied from libgomp, and modified to not link in -lrt as
 # libgfortran calls clock_gettime via a weak reference if it's found
@@ -25564,7 +25564,7 @@ $as_echo "#define SUPPORTS_WEAK 1" >>confdefs.h
 
   fi
   case "$host" in
-    *-*-darwin* | *-*-hpux* | *-*-cygwin* | *-*-mingw* | alpha*-dec-osf* )
+    *-*-darwin* | *-*-hpux* | *-*-cygwin* | *-*-mingw* )
 
 $as_echo "#define GTHREAD_USE_WEAK 0" >>confdefs.h
 
index af987bd29165f1df21535aa2d043cbba521d1e0a..7011a937bbadd5e8a0d42ad1e57ec166a863414b 100644 (file)
@@ -484,7 +484,7 @@ LIBGFOR_CHECK_FLOAT128
 # Check for GNU libc feenableexcept
 AC_CHECK_LIB([m],[feenableexcept],[have_feenableexcept=yes AC_DEFINE([HAVE_FEENABLEEXCEPT],[1],[libm includes feenableexcept])])
 
-# At least for glibc and Tru64, clock_gettime is in librt.  But don't
+# At least for glibc, clock_gettime is in librt.  But don't
 # pull that in if it still doesn't give us the function we want.  This
 # test is copied from libgomp, and modified to not link in -lrt as
 # libgfortran calls clock_gettime via a weak reference if it's found
index a95f09ac01d79e7417a7064bce99d2b7e213ac62..b65723c9baaa5e8d51c435b3b670eaaa83f4c2c0 100644 (file)
@@ -1,5 +1,5 @@
 /* Implementation of various C99 functions 
-   Copyright (C) 2004, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2009, 2010, 2012 Free Software Foundation, Inc.
 
 This file is part of the GNU Fortran 95 runtime library (libgfortran).
 
@@ -41,19 +41,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #define cabsl __gfc_cabsl
 #endif
         
-/* Tru64's <math.h> declares a non-C99 compliant implementation of cabs,
-   which takes two floating point arguments instead of a single complex.
-   To work around this we redirect cabs{,f,l} calls to __gfc_cabs{,f,l}.  */
-
-#ifdef __osf__
-#undef HAVE_CABS
-#undef HAVE_CABSF
-#undef HAVE_CABSL
-#define cabs __gfc_cabs
-#define cabsf __gfc_cabsf
-#define cabsl __gfc_cabsl
-#endif
-
 /* On a C99 system "I" (with I*I = -1) should be defined in complex.h;
    if not, we define a fallback version here.  */
 #ifndef I
index 44fabda7b360b770783fc09c5aab1211d0f1ab07..315e43482a234a852fdc83a63a6e9e35f6820a6d 100644 (file)
@@ -1,3 +1,10 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.tgt (alpha*-dec-osf*): Remove.
+
+       * config/osf/sem.h: Remove.
+       * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
+
 2012-02-29  Eric Botcazou  <ebotcazou@adacore.com>
 
        * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
diff --git a/libgomp/config/osf/sem.h b/libgomp/config/osf/sem.h
deleted file mode 100644 (file)
index 7dcb542..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright (C) 2011 Free Software Foundation, Inc.
-
-   This file is part of the GNU OpenMP Library (libgomp).
-
-   Libgomp is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3, or (at your option)
-   any later version.
-
-   Libgomp is distributed in the hope that it will be useful, but WITHOUT ANY
-   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-   FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
-   more details.
-
-   Under Section 7 of GPL version 3, you are granted additional
-   permissions described in the GCC Runtime Library Exception, version
-   3.1, as published by the Free Software Foundation.
-
-   You should have received a copy of the GNU General Public License and
-   a copy of the GCC Runtime Library Exception along with this program;
-   see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-/* This is a variant of config/posix/sem.h for Tru64 UNIX.  The librt
-   sem_init implementation assumes int (4-byte) alignment for sem_t, while
-   the type only requires short (2-byte) alignment.  This mismatch causes
-   lots of unaligned access warnings from the kernel, so enforce that
-   alignment.  */
-
-#ifndef GOMP_SEM_H
-#define GOMP_SEM_H 1
-
-#include <semaphore.h>
-
-typedef sem_t gomp_sem_t __attribute__((aligned (__alignof__ (int))));
-
-static inline void gomp_sem_init (gomp_sem_t *sem, int value)
-{
-  sem_init (sem, 0, value);
-}
-
-extern void gomp_sem_wait (gomp_sem_t *sem);
-
-static inline void gomp_sem_post (gomp_sem_t *sem)
-{
-  sem_post (sem);
-}
-
-static inline void gomp_sem_destroy (gomp_sem_t *sem)
-{
-  sem_destroy (sem);
-}
-#endif /* GOMP_SEM_H  */
index 8cd715e645fe52ff0d6df5b0ccf83ebbb91c1db0..258af015f15951e8fa206853756d409f39b31ba5 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2008, 2009, 2012 Free Software Foundation, Inc.
    Contributed by Richard Henderson <rth@redhat.com>.
 
    This file is part of the GNU OpenMP Library (libgomp).
    to do better and streamline the locking as well as reduce the size
    of the types exported.  */
 
-/* We need Unix98 extensions to get recursive locks.  On Tru64 UNIX V4.0F,
-   the declarations are available without _XOPEN_SOURCE, which actually
-   breaks compilation.  */
-#ifndef __osf__
+/* We need Unix98 extensions to get recursive locks.  */
 #define _XOPEN_SOURCE 500
-#endif
 
 #include "libgomp.h"
 
index 210dd5da3482ca029e41cd2a220c54e6f321d4ca..6fd55a232dc32afc379d3fb7d509a8d638eb3835 100644 (file)
@@ -133,11 +133,6 @@ case "${target}" in
        XLDFLAGS="${XLDFLAGS} -lpthread"
        ;;
 
-  alpha*-dec-osf*)
-       # Use Tru64 UNIX-specific sem.h version.
-       config_path="osf posix"
-       ;;
-
   mips-sgi-irix6*)
        # Need to link with -lpthread so libgomp.so is self-contained.
        XLDFLAGS="${XLDFLAGS} -lpthread"
index 9a3e484fc8a7db2ae4307f9a15ad8e3c90a3b61e..5df1380f606a199b7c2e8d71d90c6177fd257c78 100644 (file)
@@ -1,3 +1,8 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.tgt (*-*-osf*): Remove.
+       * configure: Regenerate.
+
 2012-03-05  Torvald Riegel  <triegel@redhat.com>
 
        * dispatch.h (CREATE_DISPATCH_METHODS_MEM): Don't execute
index 47c7b0cd484819a47d6ead8aeddd386f8fb66d06..76d11c42dd744d575330d74d9e88e15ee76428ab 100644 (file)
@@ -17332,7 +17332,6 @@ else
   if test "$cross_compiling" = yes; then :
 
 case "${host}" in
-  alpha*-dec-osf*) ac_cv_have_elf_style_weakref=no ;;
   *-apple-darwin[89]*) ac_cv_have_elf_style_weakref=no ;;
   *) ac_cv_have_elf_style_weakref=yes;;
 esac
index b68c86b05f41265a4369c0b678ab65afd08adac1..e60e7449e6a2ddac7dde907dbe8acc701c5b64df 100644 (file)
@@ -130,7 +130,7 @@ case "${target}" in
 
   *-*-gnu* | *-*-k*bsd*-gnu \
   | *-*-netbsd* | *-*-freebsd* | *-*-openbsd* \
-  | *-*-solaris2* | *-*-sysv4* | *-*-irix6* | *-*-osf* | *-*-hpux11* \
+  | *-*-solaris2* | *-*-sysv4* | *-*-irix6* | *-*-hpux11* \
   | *-*-darwin* | *-*-aix*)
        # POSIX system.  The OS is supported.
        ;;
index aa456129c7257e739664689f444cb632ae2d692e..989d7704a3a3567249b256f285472a3275bcc9ab 100644 (file)
@@ -1,3 +1,37 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.ac (alpha*-dec-osf*): Remove.
+       * configure: Regenerate.
+       * configure.host (alpha*-dec-osf*): Remove.
+
+       * gnu/java/net/natPlainDatagramSocketImplPosix.cc (setOption): Use
+       IPV6_MULTICAST_IF unconditionally.
+       * gnu/java/net/natPlainDatagramSocketImplWin32.cc (setOption):
+       Likewise.
+       * gnu/java/net/natPlainSocketImplPosix.cc
+       (gnu::java::net::PlainSocketImpl::accept): Use ::accept instead of
+       _Jv_accept.
+       * include/posix-signal.h [__alpha__ && __osf__]: Remove.
+       * include/posix.h (_POSIX_PII_SOCKET): Don't define.
+       (_Jv_accept): Remove.
+
+       * java/io/File.java (File._access): Rename to access.
+       Change callers.
+       (File._stat): Likewise.
+       * java/io/File.h: Regenerate.
+       * classpath/lib/java/io/File.class: Regenerate.
+       * java/io/natFilePosix.cc (java::io::File::_access): Rename to
+       access.
+       (java::io::File::_stat): Rename to stat.
+       * java/io/natFileWin32.cc: Likewise.
+
+       * testsuite/libjava.jni/jni.exp (gcj_jni_get_cxxflags_invocation):
+       Remove alpha*-dec-osf* handling.
+       * testsuite/libjava.jvmti/jvmti-interp.exp
+       (gcj_jni_compile_c_to_so): Likewise.
+       * testsuite/libjava.jvmti/jvmti.exp (gcj_jvmti_compile_cxx_to_o):
+       Likewise.
+
 2012-02-23  Patrick Marlier  <patrick.marlier@gmail.com>
            Jack Howarth  <howarth@bromo.med.uc.edu>
 
index 8bcfe7989f94649eda480d434cf60f140bd16685..3481ccff47f0628dc043330d0d4dd64c93a64c77 100644 (file)
Binary files a/libjava/classpath/lib/java/io/File.class and b/libjava/classpath/lib/java/io/File.class differ
index 8ea1aec5ee0ee3e77bf981b16b3ecc6c24686545..2d80c8067f6a70e0bff011f39028cb6613e9ad4d 100755 (executable)
@@ -20744,7 +20744,7 @@ case "$THREADS" in
        THREADLDFLAGS=-pthread
        THREADSPEC=-lpthread
        ;;
-     alpha*-dec-osf* | hppa*-hp-hpux*)
+     hppa*-hp-hpux*)
        THREADCXXFLAGS=-pthread
        # boehm-gc needs some functions from librt, so link that too.
        THREADLIBS='-lpthread -lrt'
@@ -24220,7 +24220,7 @@ SYSDEP_SOURCES=
 SIGNAL_HANDLER_AUX=
 
 case "${host}" in
alpha*-dec-osf* | mips-sgi-irix* | *-*-solaris2*)
+ mips-sgi-irix* | *-*-solaris2*)
     SIGNAL_HANDLER=include/posix-signal.h
     ;;
  i?86-*-linux*)
index ce428cac2576e9522a141f83d55ffb010e71145d..434f92364dd9cd9a83b769788db353b280c5bc0f 100644 (file)
@@ -1088,7 +1088,7 @@ case "$THREADS" in
        THREADLDFLAGS=-pthread
        THREADSPEC=-lpthread
        ;;
-     alpha*-dec-osf* | hppa*-hp-hpux*)
+     hppa*-hp-hpux*)
        THREADCXXFLAGS=-pthread
        # boehm-gc needs some functions from librt, so link that too.
        THREADLIBS='-lpthread -lrt'
@@ -1732,7 +1732,7 @@ SYSDEP_SOURCES=
 SIGNAL_HANDLER_AUX=
 
 case "${host}" in
alpha*-dec-osf* | mips-sgi-irix* | *-*-solaris2*)
+ mips-sgi-irix* | *-*-solaris2*)
     SIGNAL_HANDLER=include/posix-signal.h
     ;;
  i?86-*-linux*)
index 105785e5434f844a55e9db1ef069627c6e028506..8ce7044a57403510f71fc721bf0696f164c0630f 100644 (file)
@@ -277,9 +277,6 @@ EOF
          rm -f conftest conftest.c
        fi
        ;;
-  alpha*-dec-osf*)
-       can_unwind_signal=yes
-       ;;
   i[34567]86*-kfreebsd*-gnu | x86_64*-kfreebsd*-gnu)
         libgcj_ld_symbolic='-Wl,-Bsymbolic'
         slow_pthread_self=
index 7cbf011ab50521d985f21549c72bbcb0d862b692..65a42f95d429f1c2c06d5c67cf9e461c0a9512fa 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003, 2005, 2006  Free Software Foundation
+/* Copyright (C) 2003, 2005, 2006, 2012 Free Software Foundation
 
    This file is part of libgcj.
 
@@ -660,8 +660,6 @@ gnu::java::net::PlainDatagramSocketImpl::setOption (jint optID,
            len = sizeof (struct in_addr);
            ptr = (const char *) &u.addr;
          }
-// Tru64 UNIX V5.0 has struct sockaddr_in6, but no IPV6_MULTICAST_IF
-#if defined (HAVE_INET6) && defined (IPV6_MULTICAST_IF)
        else if (len == 16)
          {
            level = IPPROTO_IPV6;
@@ -670,7 +668,6 @@ gnu::java::net::PlainDatagramSocketImpl::setOption (jint optID,
            len = sizeof (struct in6_addr);
            ptr = (const char *) &u.addr6;
          }
-#endif
        else
          throw
            new ::java::net::SocketException (JvNewStringUTF ("invalid length"));
index e410196653de956238d524f2c995e4f50005fea0..8d83720fffe2f9b2e12d66fa2789d8d8edc591c0 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003, 2006 Free Software Foundation
+/* Copyright (C) 2003, 2006, 2012 Free Software Foundation
 
    This file is part of libgcj.
 
@@ -545,8 +545,6 @@ gnu::java::net::PlainDatagramSocketImpl::setOption (jint optID,
       len = sizeof (struct in_addr);
       ptr = (const char *) &u.addr;
     }
-// Tru64 UNIX V5.0 has struct sockaddr_in6, but no IPV6_MULTICAST_IF
-#if defined (HAVE_INET6) && defined (IPV6_MULTICAST_IF)
   else if (len == 16)
     {
       level = IPPROTO_IPV6;
@@ -555,7 +553,6 @@ gnu::java::net::PlainDatagramSocketImpl::setOption (jint optID,
       len = sizeof (struct in6_addr);
       ptr = (const char *) &u.addr6;
     }
-#endif
   else
     throw
       new ::java::net::SocketException (JvNewStringUTF ("invalid length"));
index e21013bf72e8a6cb1154061b35bf20349ad97688..dabf6e65fc059b2a44750d8e2bd777f913be181f 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003, 2004, 2005, 2006, 2007  Free Software Foundation
+/* Copyright (C) 2003, 2004, 2005, 2006, 2007, 2012  Free Software Foundation
 
    This file is part of libgcj.
 
@@ -277,7 +277,7 @@ gnu::java::net::PlainSocketImpl::accept (gnu::java::net::PlainSocketImpl *s)
                                          JvNewStringUTF("Accept timed out"));
     }
 
-  new_socket = _Jv_accept (native_fd, (sockaddr*) &u, &addrlen);
+  new_socket = ::accept (native_fd, (sockaddr*) &u, &addrlen);
 
   if (new_socket < 0)
     goto error;
index 726fde3a66e25ffb1eabf47dd1c5e8475b174064..7be37f59b1fd57030ba2e1140842f744ed15b2e8 100644 (file)
@@ -1,6 +1,6 @@
 // posix-signal.h - Catch runtime signals and turn them into exceptions.
 
-/* Copyright (C) 1998, 1999, 2000, 2009, 2011  Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2009, 2011, 2012 Free Software Foundation
 
    This file is part of libgcj.
 
@@ -20,8 +20,7 @@ details.  */
    SA_SIGINFO being set or fail if so.  Cf. gcc/ada/init.c
    (__gnat_install_handler) for details.  */
 
-#if (defined __alpha__ && defined __osf__) \
-  || (defined __sun__ && defined __svr4__)
+#if defined __sun__ && defined __svr4__
 #define SA_FLAGS SA_NODEFER | SA_SIGINFO
 #elif defined __sgi__
 #define SA_FLAGS SA_NODEFER
index c49da05eb11c2f16342d5dbc27602af24752da3d..6bd560c5a23961ac0d533f6892c60c7c8c34ff81 100644 (file)
@@ -1,6 +1,6 @@
 // posix.h -- Helper functions for POSIX-flavored OSs.
 
-/* Copyright (C) 2000, 2002, 2003, 2006, 2010  Free Software Foundation
+/* Copyright (C) 2000, 2002, 2003, 2006, 2010, 2012  Free Software Foundation
 
    This file is part of libgcj.
 
@@ -11,11 +11,6 @@ details.  */
 #ifndef __JV_POSIX_H__
 #define __JV_POSIX_H__
 
-/* Required on Tru64 UNIX V4/V5 so <sys/socket.h> defines prototypes of
-   socket functions with socklen_t instead of size_t.  This must be defined
-   early so <standards.h> defines the correct version of __PIIX.  */
-#define _POSIX_PII_SOCKET
-
 #include <time.h>
 #include <sys/types.h>
 
@@ -155,15 +150,6 @@ _Jv_bind (int fd, struct sockaddr *addr, int addrlen)
 
 #undef bind
 
-// Same problem with accept on Tru64 UNIX with _POSIX_PII_SOCKET
-inline int
-_Jv_accept (int fd, struct sockaddr *addr, socklen_t *addrlen)
-{
-  return ::accept (fd, addr, addrlen);
-}
-
-#undef accept
-
 inline int
 _Jv_listen (int fd, int backlog)
 {
index b53f6ab7d02b68f9e943bf463d17acf4846b02f9..f1365361bce711704a0b4cbb571f8771cf80212d 100644 (file)
@@ -25,8 +25,8 @@ class java::io::File : public ::java::lang::Object
 {
 
   jlong attr(jint);
-  jboolean _access(jint);
-  jboolean _stat(jint);
+  jboolean access(jint);
+  jboolean stat(jint);
   static void init_native();
 public:
   virtual jboolean canRead();
index 0c4fb6932f5bbbbb93346f9e7000c4044a619445..ff008e0643dbcde6a1e85a9ad91eed0016dbedd2 100644 (file)
@@ -1,5 +1,5 @@
 /* File.java -- Class representing a file on disk
-   Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007
+   Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2012
    Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
@@ -79,11 +79,8 @@ public class File implements Serializable, Comparable<File>
   private final static int LENGTH = 1;
   
   private final native long attr (int query);
-  // On OSF1 V5.0, `stat' is a macro.  It is easiest to use the name
-  // `_stat' instead.  We do the same thing for `_access' just in
-  // case.
-  private final native boolean _access (int query);
-  private final native boolean _stat (int query);
+  private final native boolean access (int query);
+  private final native boolean stat (int query);
 
   /**
    * This is the path separator string for the current host. This field
@@ -161,7 +158,7 @@ public class File implements Serializable, Comparable<File>
   public boolean canRead()
   {
     checkRead();
-    return _access (READ);
+    return access (READ);
   }
 
   /**
@@ -181,7 +178,7 @@ public class File implements Serializable, Comparable<File>
   public boolean canWrite()
   {
     checkWrite();
-    return _access (WRITE);
+    return access (WRITE);
   }
   
   /**
@@ -202,7 +199,7 @@ public class File implements Serializable, Comparable<File>
     if (!exists())
       return false;
     checkExec();
-    return _access (EXEC);
+    return access (EXEC);
   }
 
   private native boolean performCreate() throws IOException;
@@ -288,7 +285,7 @@ public class File implements Serializable, Comparable<File>
    */
   private boolean internalExists()
   {
-    return _access (EXISTS);
+    return access (EXISTS);
   }
   
   /**
@@ -725,7 +722,7 @@ public class File implements Serializable, Comparable<File>
    */
   private boolean internalIsDirectory()
   {
-    return _stat (DIRECTORY);
+    return stat (DIRECTORY);
   }
   
   /**
@@ -757,7 +754,7 @@ public class File implements Serializable, Comparable<File>
   public boolean isFile()
   {
     checkRead();
-    return _stat (ISFILE);
+    return stat (ISFILE);
   }
 
   /**
@@ -774,7 +771,7 @@ public class File implements Serializable, Comparable<File>
   public boolean isHidden()
   {
     checkRead();
-    return _stat (ISHIDDEN);
+    return stat (ISHIDDEN);
   }
 
   /**
index 5b6ec8458acced7f610e40e7dc5d9a8ba9137722..2c255beacee6ee03aeee601996682d29f74c0f77 100644 (file)
@@ -1,6 +1,6 @@
 // natFile.cc - Native part of File class for POSIX.
 
-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2008
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2008, 2012
    Free Software Foundation
 
    This file is part of libgcj.
@@ -38,7 +38,7 @@ details.  */
 #include <java/lang/System.h>
 
 jboolean
-java::io::File::_access (jint query)
+java::io::File::access (jint query)
 {
   char *buf = (char *) __builtin_alloca (JvGetStringUTFLength (path) + 1);
   jsize total = JvGetStringUTFRegion (path, 0, path->length(), buf);
@@ -62,7 +62,7 @@ java::io::File::_access (jint query)
 }
 
 jboolean
-java::io::File::_stat (jint query)
+java::io::File::stat (jint query)
 {
   if (query == ISHIDDEN)
     return getName()->charAt(0) == '.';
index 316977b08a9a22f7d32580af4799273cf73e5e90..a8e88789222f0cd7cbf36405b63a542ab8fdc9db 100644 (file)
@@ -1,6 +1,6 @@
 // natFileWin32.cc - Native part of File class for Win32.
 
-/* Copyright (C) 1998, 1999, 2002, 2003  Free Software Foundation, Inc.
+/* Copyright (C) 1998, 1999, 2002, 2003, 2012 Free Software Foundation, Inc.
 
    This file is part of libgcj.
 
@@ -38,7 +38,7 @@ details.  */
 #define WIN32_EPOCH_MILLIS 11644473600000LL
 
 jboolean
-java::io::File::_access (jint query)
+java::io::File::access (jint query)
 {
   JV_TEMP_STRING_WIN32 (canon, getCanonicalPath());
   if (!canon)
@@ -63,7 +63,7 @@ java::io::File::_access (jint query)
 }
 
 jboolean
-java::io::File::_stat (jint query)
+java::io::File::stat (jint query)
 {
   JV_TEMP_STRING_WIN32 (canon, getCanonicalPath());
   if (!canon)
index c84d86f2f2aa9b4db9073f0e3aa092b10a491e68..ebdee1b44c96c18cb7b7ec9fc5bf26d336d07346 100644 (file)
@@ -280,11 +280,6 @@ proc gcj_jni_get_cxxflags_invocation {} {
     lappend cxxflags "-shared-libgcc"
   }
 
-  # Tru64 UNIX needs -liconv linked explicitly since gcc does the linking.
-  if { [istarget "alpha*-dec-osf*"] } {
-    lappend cxxflags $libiconv
-  }
-
   return $cxxflags
 }
 
index fd660f35164c8b0516455d450c613d0f77baabb3..62c82e92afc1616fbf07034360c153bfabf8b9bf 100644 (file)
@@ -37,10 +37,6 @@ proc gcj_jni_compile_c_to_so {file {options {}}} {
   if { [istarget "arm*"] } {
       lappend options "additional_flags=-Wno-abi"
   }
-  # Tru64 UNIX requires <pthread.h> to be compiled with -pthread.
-  if { [istarget "alpha*-dec-osf*"] } {
-      lappend options "additional_flags=-pthread"
-  }
 
   set filename [file tail $file]
   set name [file rootname $filename]
index 2d939852e5ed912969e4592620730453a4300323..571952e807cf3a470d63325be1bd79dfd964b474 100644 (file)
@@ -20,10 +20,6 @@ proc gcj_jvmti_compile_cxx_to_o {file {options {}}} {
   if { [istarget "arm*"] } {
       lappend options "additional_flags=-Wno-abi"
   }
-  # Tru64 UNIX requires <pthread.h> to be compiled with -pthread.
-  if { [istarget "alpha*-dec-osf*"] } {
-      lappend options "additional_flags=-pthread"
-  }
 
   set x [libjava_prune_warnings \
           [target_compile $file $oname object $options]]
index 3999b439b9d6f06704a418ce594f088c07c994ec..704981d9c1322d4d3f2b424ab6f5315e87ffc995 100644 (file)
@@ -1,3 +1,10 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.ac (enable_objc_gc): Remove alpha*-dec-osf* handling.
+       * configure: Regenerate.
+
+       * thr.c (_XOPEN_SOURCE): Define unconditionally.
+
 2011-11-21  Andreas Tobler  <andreast@fgznet.ch>
 
        * configure: Regenerate.
index 8c07356af0c2648b804661b5b8cc97f90f0dbd6c..2807d7394f9d1937a80e3db850f58681184626c3 100755 (executable)
@@ -2329,13 +2329,6 @@ if test "${enable_objc_gc+set}" = set; then :
     OBJC_GCFLAGS='-DOBJC_WITH_GC=1'
     OBJC_BOEHM_GC='libobjc_gc$(libsuffix).la'
     OBJC_BOEHM_GC_INCLUDES='-I$(top_srcdir)/../boehm-gc/include -I../boehm-gc/include'
-    case "${host}" in
-      alpha*-dec-osf*)
-        # boehm-gc headers include <pthread.h>, which needs to be compiled
-       # with -pthread on Tru64 UNIX.
-        OBJC_GCFLAGS="${OBJC_GCFLAGS} -pthread"
-       ;;
-    esac
     ;;
 esac
 else
@@ -10594,7 +10587,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10597 "configure"
+#line 10590 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10700,7 +10693,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10703 "configure"
+#line 10696 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -11471,7 +11464,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then :
   enableval=$enable_sjlj_exceptions; :
 else
   cat > conftest.$ac_ext << EOF
-#line 11474 "configure"
+#line 11467 "configure"
 @interface Frob
 @end
 @implementation Frob
index 52599e6019e1c4dbe5ea9fe22ed93af55b6b0bd8..42db163e0aed3eec3ba91178bbb2518047434dd5 100644 (file)
@@ -1,6 +1,6 @@
 # Process this file with autoconf to produce a configure script.
 #   Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004
-#   2005, 2006, 2009, 2011 Free Software Foundation, Inc.
+#   2005, 2006, 2009, 2011, 2012 Free Software Foundation, Inc.
 #   Originally contributed by Dave Love (d.love@dl.ac.uk).
 #
 #This file is part of GCC.
@@ -71,13 +71,6 @@ AC_ARG_ENABLE(objc-gc,
     OBJC_GCFLAGS='-DOBJC_WITH_GC=1'
     OBJC_BOEHM_GC='libobjc_gc$(libsuffix).la'
     OBJC_BOEHM_GC_INCLUDES='-I$(top_srcdir)/../boehm-gc/include -I../boehm-gc/include'
-    case "${host}" in
-      alpha*-dec-osf*)
-        # boehm-gc headers include <pthread.h>, which needs to be compiled
-       # with -pthread on Tru64 UNIX.
-        OBJC_GCFLAGS="${OBJC_GCFLAGS} -pthread"
-       ;;
-    esac
     ;;
 esac],
 [OBJC_GCFLAGS=''; OBJC_BOEHM_GC=''; OBJC_BOEHM_GC_INCLUDES=''])
index 095b9403a47ce1c91fb337066616fc885fd2e8d7..e8a8f5e84c31e44934336718e2da450710094866 100644 (file)
@@ -1,5 +1,5 @@
 /* GNU Objective C Runtime Thread Interface
-   Copyright (C) 1996, 1997, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 2009, 2010, 2012 Free Software Foundation, Inc.
    Contributed by Galen C. Hunt (gchunt@cs.rochester.edu)
 
 This file is part of GCC.
@@ -27,11 +27,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #define _LIBOBJC
 /* The line below is needed for declarations of functions such as
    pthread_mutexattr_settype, without which gthr-posix.h may fail to
-   compile within libobjc.  Unfortunately, this breaks compilation on
-   Tru64 UNIX V4.0F, so disable it there.  */
-#ifndef __osf__
+   compile within libobjc.  */
 #define _XOPEN_SOURCE 500
-#endif
 #include "config.h"
 #include "tconfig.h"
 #include "coretypes.h"
index 78d23a5a9fe8a5200f8bea4010d77d61eecb432a..76da6880be70a5e11879df8c6338f2f5154b4357 100644 (file)
@@ -1,3 +1,257 @@
+2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.host: Remove osf* handling.
+       * config/os/osf: Remove.
+       * doc/xml/manual/using.xml: Remove OSF reference.
+
+       * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf*
+       handling.
+       * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
+       Likewise.
+       * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
+       Likewise.
+       * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
+       * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
+       * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
+       * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
+       * testsuite/23_containers/list/pthread1.cc: Likewise.
+       * testsuite/23_containers/list/pthread5.cc: Likewise.
+       * testsuite/23_containers/map/pthread6.cc: Likewise.
+       * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
+       Likewise.
+       * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
+       * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
+       * testsuite/30_threads/async/42819.cc: Likewise.
+
+       * libstdc++-v3/testsuite/30_threads/async/49668.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/async/any.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/async/async.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/async/launch.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/async/sync.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/call_once/39909.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/call_once/49668.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/call_once/call_once1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable/cons/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable/members/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable/members/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable_any/50862.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable_any/members/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/condition_variable_any/members/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/cons/move.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/45133.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/get.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/get2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/share.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/valid.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/wait.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/wait_for.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/future/members/wait_until.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/lock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/lock/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/lock/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/lock/4.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/cons/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/dest/destructor_locked.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/lock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/native_handle/typesizes.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/mutex/unlock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/49668.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/cons/alloc.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/cons/move.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/cons/move_assign.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/get_future.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/get_future2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke3.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke4.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/invoke5.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/reset.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/reset2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/swap.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/packaged_task/members/valid.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/cons/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/cons/alloc.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/cons/move.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/cons/move_assign.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/get_future.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/get_future2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/set_exception.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/set_exception2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/set_value.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/set_value2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/set_value3.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/promise/members/swap.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/lock/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/native_handle/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/try_lock/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/try_lock/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_mutex/unlock/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/lock/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/lock/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/cons/move.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/members/45133.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/members/get.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/members/get2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/members/valid.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/members/wait.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/members/wait_for.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/shared_future/members/wait_until.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/this_thread/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/this_thread/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/this_thread/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/this_thread/4.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/4.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/49668.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/5.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/6.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/7.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/8.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/9.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/cons/moveable.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/members/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/members/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/members/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/members/4.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/members/5.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/members/hardware_concurrency.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/thread/swap/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/native_handle/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_for/3.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_until/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/try_lock_until/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/try_lock/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/try_lock/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/try_lock/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/try_lock/4.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/modifiers/1.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/30_threads/unique_lock/modifiers/2.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/ext/rope/pthread7-rope.cc: Likewise.
+       * libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
+       Likewise.
+       * libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
+
 2012-03-12  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR libstdc++/52562
diff --git a/libstdc++-v3/config/os/osf/ctype_base.h b/libstdc++-v3/config/os/osf/ctype_base.h
deleted file mode 100644 (file)
index 72aa6f2..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-// Locale support -*- C++ -*-
-
-// Copyright (C) 1997, 1998, 1999, 2003, 2009, 2010
-// Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library.  This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// Under Section 7 of GPL version 3, you are granted additional
-// permissions described in the GCC Runtime Library Exception, version
-// 3.1, as published by the Free Software Foundation.
-
-// You should have received a copy of the GNU General Public License and
-// a copy of the GCC Runtime Library Exception along with this program;
-// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-// <http://www.gnu.org/licenses/>.
-
-//
-// ISO C++ 14882: 22.1  Locales
-//
-
-// Default information, may not be appropriate for specific host.
-
-namespace std _GLIBCXX_VISIBILITY(default)
-{
-_GLIBCXX_BEGIN_NAMESPACE_VERSION
-
-  /// @brief  Base class for ctype.
-  struct ctype_base
-  {
-    // Non-standard typedefs.
-    typedef const int*                 __to_type;
-
-    // NB: Offsets into ctype<char>::_M_table force a particular size
-    // on the mask type. Because of this, we don't use an enum.
-    typedef unsigned int       mask;
-    static const mask upper            = 1 << 0;
-    static const mask lower    = 1 << 1;
-    static const mask alpha    = 1 << 2;
-    static const mask digit    = 1 << 3;
-    static const mask xdigit   = 1 << 4;
-    static const mask space    = 1 << 5;
-    static const mask print    = 1 << 6;
-    static const mask graph    = (1 << 2) | (1 << 3) | (1 << 9); // alnum|punct
-    static const mask cntrl    = 1 << 8;
-    static const mask punct    = 1 << 9;
-    static const mask alnum    = (1 << 2) | (1 << 3);  // alpha|digit
-  };
-
-_GLIBCXX_END_NAMESPACE_VERSION
-} // namespace
diff --git a/libstdc++-v3/config/os/osf/ctype_configure_char.cc b/libstdc++-v3/config/os/osf/ctype_configure_char.cc
deleted file mode 100644 (file)
index 0daedf5..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-// Locale support -*- C++ -*-
-
-// Copyright (C) 2011 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library.  This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// Under Section 7 of GPL version 3, you are granted additional
-// permissions described in the GCC Runtime Library Exception, version
-// 3.1, as published by the Free Software Foundation.
-
-// You should have received a copy of the GNU General Public License and
-// a copy of the GCC Runtime Library Exception along with this program;
-// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-// <http://www.gnu.org/licenses/>.
-
-/** @file ctype_configure_char.cc */
-
-//
-// ISO C++ 14882: 22.1  Locales
-//
-
-#include <locale>
-#include <cstdlib>
-#include <cstring>
-
-namespace std _GLIBCXX_VISIBILITY(default)
-{
-_GLIBCXX_BEGIN_NAMESPACE_VERSION
-
-// Information as gleaned from /usr/include/ctype.h
-
-  const ctype_base::mask*
-  ctype<char>::classic_table() throw()
-  { return 0; }
-
-  ctype<char>::ctype(__c_locale, const mask* __table, bool __del, 
-                    size_t __refs) 
-  : facet(__refs), _M_del(__table != 0 && __del), 
-  _M_toupper(NULL), _M_tolower(NULL), 
-  _M_table(__table ? __table : classic_table()) 
-  { 
-    memset(_M_widen, 0, sizeof(_M_widen));
-    _M_widen_ok = 0;
-    memset(_M_narrow, 0, sizeof(_M_narrow));
-    _M_narrow_ok = 0;
-  }
-
-  ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) 
-  : facet(__refs), _M_del(__table != 0 && __del), 
-  _M_toupper(NULL), _M_tolower(NULL), 
-  _M_table(__table ? __table : classic_table())
-  { 
-    memset(_M_widen, 0, sizeof(_M_widen));
-    _M_widen_ok = 0;
-    memset(_M_narrow, 0, sizeof(_M_narrow));
-    _M_narrow_ok = 0;
-  }
-
-  char
-  ctype<char>::do_toupper(char __c) const
-  { return ::toupper((int) __c); }
-
-  const char*
-  ctype<char>::do_toupper(char* __low, const char* __high) const
-  {
-    while (__low < __high)
-      {
-       *__low = ::toupper((int) *__low);
-       ++__low;
-      }
-    return __high;
-  }
-
-  char
-  ctype<char>::do_tolower(char __c) const
-  { return ::tolower((int) __c); }
-
-  const char* 
-  ctype<char>::do_tolower(char* __low, const char* __high) const
-  {
-    while (__low < __high)
-      {
-       *__low = ::tolower((int) *__low);
-       ++__low;
-      }
-    return __high;
-  }
-
-_GLIBCXX_END_NAMESPACE_VERSION
-} // namespace
diff --git a/libstdc++-v3/config/os/osf/ctype_inline.h b/libstdc++-v3/config/os/osf/ctype_inline.h
deleted file mode 100644 (file)
index ae54f29..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-// Locale support -*- C++ -*-
-
-// Copyright (C) 2000, 2003, 2009, 2010 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library.  This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// Under Section 7 of GPL version 3, you are granted additional
-// permissions described in the GCC Runtime Library Exception, version
-// 3.1, as published by the Free Software Foundation.
-
-// You should have received a copy of the GNU General Public License and
-// a copy of the GCC Runtime Library Exception along with this program;
-// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-// <http://www.gnu.org/licenses/>.
-
-/** @file bits/ctype_inline.h
- *  This is an internal header file, included by other library headers.
- *  Do not attempt to use it directly. @headername{locale}
- */
-
-//
-// ISO C++ 14882: 22.1  Locales
-//
-  
-// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
-// functions go in ctype.cc
-  
-// The following definitions are portable, but insanely slow. If one
-// cares at all about performance, then specialized ctype
-// functionality should be added for the native os in question: see
-// the config/os/bits/ctype_*.h files.
-
-// Constructing a synthetic "C" table should be seriously considered...
-
-namespace std _GLIBCXX_VISIBILITY(default)
-{
-_GLIBCXX_BEGIN_NAMESPACE_VERSION
-
-  bool
-  ctype<char>::
-  is(mask __m, char __c) const
-  { 
-    if (_M_table)
-      return _M_table[static_cast<unsigned char>(__c)] & __m;
-    else
-      {
-       bool __ret = false;
-       const size_t __bitmasksize = 15; 
-       size_t __bitcur = 0; // Lowest bitmask in ctype_base == 0
-       for (; __bitcur <= __bitmasksize; ++__bitcur)
-         {
-           const mask __bit = static_cast<mask>(1 << __bitcur);
-           if (__m & __bit)
-             {
-               bool __testis;
-               switch (__bit)
-                 {
-                 case space:
-                   __testis = isspace(__c);
-                   break;
-                 case print:
-                   __testis = isprint(__c);
-                   break;
-                 case cntrl:
-                   __testis = iscntrl(__c);
-                   break;
-                 case upper:
-                   __testis = isupper(__c);
-                   break;
-                 case lower:
-                   __testis = islower(__c);
-                   break;
-                 case alpha:
-                   __testis = isalpha(__c);
-                   break;
-                 case digit:
-                   __testis = isdigit(__c);
-                   break;
-                 case punct:
-                   __testis = ispunct(__c);
-                   break;
-                 case xdigit:
-                   __testis = isxdigit(__c);
-                   break;
-                 case alnum:
-                   __testis = isalnum(__c);
-                   break;
-                 case graph:
-                   __testis = isgraph(__c);
-                   break;
-                 default:
-                   __testis = false;
-                   break;
-                 }
-               __ret |= __testis;
-             }
-         }
-       return __ret;
-      }
-  }
-   
-  const char*
-  ctype<char>::
-  is(const char* __low, const char* __high, mask* __vec) const
-  {
-    if (_M_table)
-      while (__low < __high)
-       *__vec++ = _M_table[static_cast<unsigned char>(*__low++)];
-    else
-      {
-       // Highest bitmask in ctype_base == 10.
-       const size_t __bitmasksize = 15; 
-       for (;__low < __high; ++__vec, ++__low)
-         {
-           mask __m = 0;
-           // Lowest bitmask in ctype_base == 0
-           size_t __i = 0; 
-           for (;__i <= __bitmasksize; ++__i)
-             {
-               const mask __bit = static_cast<mask>(1 << __i);
-               if (this->is(__bit, *__low))
-                 __m |= __bit;
-             }
-           *__vec = __m;
-         }
-      }
-    return __high;
-  }
-
-  const char*
-  ctype<char>::
-  scan_is(mask __m, const char* __low, const char* __high) const
-  {
-    if (_M_table)
-      while (__low < __high
-            && !(_M_table[static_cast<unsigned char>(*__low)] & __m))
-       ++__low;
-    else
-      while (__low < __high && !this->is(__m, *__low))
-       ++__low;
-    return __low;
-  }
-
-  const char*
-  ctype<char>::
-  scan_not(mask __m, const char* __low, const char* __high) const
-  {
-    if (_M_table)
-      while (__low < __high
-            && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0)
-       ++__low;
-    else
-      while (__low < __high && this->is(__m, *__low) != 0)
-       ++__low;
-    return __low;
-  }
-
-_GLIBCXX_END_NAMESPACE_VERSION
-} // namespace
diff --git a/libstdc++-v3/config/os/osf/error_constants.h b/libstdc++-v3/config/os/osf/error_constants.h
deleted file mode 100644 (file)
index 88ea565..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-// Specific definitions for generic platforms  -*- C++ -*-
-
-// Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library.  This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// Under Section 7 of GPL version 3, you are granted additional
-// permissions described in the GCC Runtime Library Exception, version
-// 3.1, as published by the Free Software Foundation.
-
-// You should have received a copy of the GNU General Public License and
-// a copy of the GCC Runtime Library Exception along with this program;
-// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-// <http://www.gnu.org/licenses/>.
-
-/** @file bits/error_constants.h
- *  This is an internal header file, included by other library headers.
- *  Do not attempt to use it directly. @headername{system_error}
- */
-
-#ifndef _GLIBCXX_ERROR_CONSTANTS
-#define _GLIBCXX_ERROR_CONSTANTS 1
-
-#include <bits/c++config.h>
-#include <cerrno>
-
-namespace std _GLIBCXX_VISIBILITY(default)
-{
-_GLIBCXX_BEGIN_NAMESPACE_VERSION
-
-  enum class errc
-    {
-      address_family_not_supported =           EAFNOSUPPORT,
-      address_in_use =                                 EADDRINUSE,
-      address_not_available =                  EADDRNOTAVAIL,
-      already_connected =                      EISCONN,
-      argument_list_too_long =                         E2BIG,
-      argument_out_of_domain =                         EDOM,
-      bad_address =                            EFAULT,
-      bad_file_descriptor =                    EBADF,
-
-#ifdef _GLIBCXX_HAVE_EBADMSG
-      bad_message =                            EBADMSG,
-#endif
-
-      broken_pipe =                            EPIPE,
-      connection_aborted =                     ECONNABORTED,
-      connection_already_in_progress =                 EALREADY,
-      connection_refused =                     ECONNREFUSED,
-      connection_reset =                       ECONNRESET,
-      cross_device_link =                      EXDEV,
-      destination_address_required =           EDESTADDRREQ,
-      device_or_resource_busy =                EBUSY,
-      directory_not_empty =                    ENOTEMPTY,
-      executable_format_error =                ENOEXEC,
-      file_exists =                            EEXIST,
-      file_too_large =                                 EFBIG,
-      filename_too_long =                      ENAMETOOLONG,
-      function_not_supported =                         ENOSYS,
-      host_unreachable =                       EHOSTUNREACH,
-
-#ifdef _GLIBCXX_HAVE_EIDRM
-      identifier_removed =                     EIDRM,
-#endif
-
-      illegal_byte_sequence =                  EILSEQ,
-      inappropriate_io_control_operation =     ENOTTY,
-      interrupted =                            EINTR,
-      invalid_argument =                       EINVAL,
-      invalid_seek =                           ESPIPE,
-      io_error =                               EIO,
-      is_a_directory =                                 EISDIR,
-      message_size =                           EMSGSIZE,
-      network_down =                           ENETDOWN,
-      network_reset =                          ENETRESET,
-      network_unreachable =                    ENETUNREACH,
-      no_buffer_space =                        ENOBUFS,
-      no_child_process =                       ECHILD,
-
-#ifdef _GLIBCXX_HAVE_ENOLINK
-      no_link =                                ENOLINK,
-#endif
-
-      no_lock_available =                      ENOLCK,
-
-#ifdef _GLIBCXX_HAVE_ENODATA
-      no_message_available =                   ENODATA, 
-#endif
-
-      no_message =                             ENOMSG, 
-      no_protocol_option =                     ENOPROTOOPT,
-      no_space_on_device =                     ENOSPC,
-
-#ifdef _GLIBCXX_HAVE_ENOSR
-      no_stream_resources =                    ENOSR,
-#endif
-
-      no_such_device_or_address =              ENXIO,
-      no_such_device =                                 ENODEV,
-      no_such_file_or_directory =              ENOENT,
-      no_such_process =                        ESRCH,
-      not_a_directory =                        ENOTDIR,
-      not_a_socket =                           ENOTSOCK,
-
-#ifdef _GLIBCXX_HAVE_ENOSTR
-      not_a_stream =                           ENOSTR,
-#endif
-
-      not_connected =                          ENOTCONN,
-      not_enough_memory =                      ENOMEM,
-
-#ifdef _GLIBCXX_HAVE_ENOTSUP
-      not_supported =                          ENOTSUP,
-#endif
-
-#ifdef _GLIBCXX_HAVE_ECANCELED
-      operation_canceled =                     ECANCELED,
-#endif
-
-      operation_in_progress =                  EINPROGRESS,
-      operation_not_permitted =                EPERM,
-      operation_not_supported =                EOPNOTSUPP,
-      operation_would_block =                  EWOULDBLOCK,
-
-#ifdef _GLIBCXX_HAVE_EOWNERDEAD
-      owner_dead =                             EOWNERDEAD,
-#endif
-
-      permission_denied =                      EACCES,
-
-#ifdef _GLIBCXX_HAVE_EPROTO
-      protocol_error =                                 EPROTO,
-#endif
-
-      protocol_not_supported =                         EPROTONOSUPPORT,
-      read_only_file_system =                  EROFS,
-      resource_deadlock_would_occur =          EDEADLK,
-      resource_unavailable_try_again =                 EAGAIN,
-      result_out_of_range =                    ERANGE,
-
-#ifdef _GLIBCXX_HAVE_ENOTRECOVERABLE
-      state_not_recoverable =                  ENOTRECOVERABLE,
-#endif
-
-#ifdef _GLIBCXX_HAVE_ETIME
-      stream_timeout =                                 ETIME,
-#endif
-
-#ifdef _GLIBCXX_HAVE_ETXTBSY
-      text_file_busy =                                 ETXTBSY,
-#endif
-
-      timed_out =                              ETIMEDOUT,
-      too_many_files_open_in_system =          ENFILE,
-      too_many_files_open =                    EMFILE,
-      too_many_links =                                 EMLINK,
-      too_many_symbolic_link_levels =          ELOOP,
-
-#ifdef _GLIBCXX_HAVE_EOVERFLOW
-      value_too_large =                        EOVERFLOW,
-#endif
-
-      wrong_protocol_type =                    EPROTOTYPE
-    };
-
-_GLIBCXX_END_NAMESPACE_VERSION
-} // namespace
-
-#endif
diff --git a/libstdc++-v3/config/os/osf/os_defines.h b/libstdc++-v3/config/os/osf/os_defines.h
deleted file mode 100644 (file)
index 68c278d..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-// Specific definitions for Tru64 UNIX  -*- C++ -*-
-
-// Copyright (C) 2000, 2009, 2010, 2012 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library.  This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// Under Section 7 of GPL version 3, you are granted additional
-// permissions described in the GCC Runtime Library Exception, version
-// 3.1, as published by the Free Software Foundation.
-
-// You should have received a copy of the GNU General Public License and
-// a copy of the GCC Runtime Library Exception along with this program;
-// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-// <http://www.gnu.org/licenses/>.
-
-/** @file bits/os_defines.h
- *  This is an internal header file, included by other library headers.
- *  Do not attempt to use it directly. @headername{iosfwd}
- */
-
-#ifndef _GLIBCXX_OS_DEFINES
-#define _GLIBCXX_OS_DEFINES 1
-
-// System-specific #define, typedefs, corrections, etc, go here.  This
-// file will come before all others.
-
-// Tru64 UNIX requires using pthread_mutex_init()/pthread_cond_init() to
-// initialized non-statically allocated mutexes/condvars.
-#define _GTHREAD_USE_MUTEX_INIT_FUNC
-#define _GTHREAD_USE_COND_INIT_FUNC
-
-#endif
index ca4d81957b68aad769b5eb1a0bc4128c14549907..689f19d824a8cece918dd39d8ae2e0aa8d29b02f 100644 (file)
@@ -279,13 +279,6 @@ case "${host_os}" in
   netbsd*)
     os_include_dir="os/bsd/netbsd"
     ;;
-  osf*)
-    os_include_dir="os/osf"
-    # libstdc++.so relies on emutls on Tru64 UNIX, which only works with the
-    # real functions implemented in libpthread.so, not with the dummies in
-    # libgcc, so always pass -lpthread.
-    OPT_LDFLAGS="${OPT_LDFLAGS} -lpthread"
-    ;;
   qnx6.[12]*)
     os_include_dir="os/qnx/qnx6.1"
     c_model=c
index d2d5e4b2850c5294a10af2a0d0ac338ec652282a..89174c5a6c21aa518bbd52dd4416c6fed964e76d 100644 (file)
@@ -1267,9 +1267,8 @@ A quick read of the relevant part of the GCC
       just linking) and link-library additions and/or replacements at
       link time.  The documentation is weak.  Here is a quick summary
       to display how ad hoc this is: On Solaris, both -pthreads and
-      -threads (with subtly different meanings) are honored.  On OSF,
-      -pthread and -threads (with subtly different meanings) are
-      honored.  On GNU/Linux x86, -pthread is honored.  On FreeBSD,
+      -threads (with subtly different meanings) are honored.  
+      On GNU/Linux x86, -pthread is honored.  On FreeBSD,
       -pthread is honored.  Some other ports use other switches.
       AFAIK, none of this is properly documented anywhere other than
       in ``gcc -dumpspecs'' (look at lib and cpp entries).
index 5389316bab0c88f1fdb0e9e2beb9f86568fa57e2..883b089248d46c6657f862d5d5be42c25c9e9a78 100644 (file)
@@ -1,5 +1,5 @@
 //
-// Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2007, 2008, 2009, 2010, 2012 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -16,8 +16,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-darwin* alpha*-*-osf* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-darwin* } }
 
 #include <cstdlib>
 #include <pthread.h>
index b215f654aebd4c59efb29d5f8a8b09911da92ece..29c23cf3d732f1580776b55e6bd09d1e16289511 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation
+// Copyright (C) 2006, 2007, 2008, 2009, 2012 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -17,8 +17,8 @@
 
 // 20.6.6.2 Template class shared_ptr [util.smartptr.shared]
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread -std=gnu++0x" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread -std=gnu++0x" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads -std=gnu++0x" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 
index c1ca796bb19162b44748b4edeeaf708e556cd9b7..b8f14922d0681bbc498bd09143525f51eb8168a7 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation
+// Copyright (C) 2006, 2007, 2008, 2009, 2012 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -17,8 +17,8 @@
 
 // 20.6.6.2 Template class shared_ptr [util.smartptr.shared]
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 
index 12f80c443dc3c2ce383e97cb8a70aaef1a1ba0a8..b3290a633c7c0089f06bc05adc8945be7a10cb92 100644 (file)
@@ -1,5 +1,5 @@
 //
-// Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
+// Copyright (C) 2004, 2005, 2007, 2009, 2012 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -16,8 +16,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <ext/new_allocator.h>
index b3dc9b20e7c71792c35af62e562208afe71e8640..f1b3ea95dd9d50b4abebb34f62cccff150f8a68d 100644 (file)
@@ -2,7 +2,7 @@
 // Adapted from http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
 // which was adapted from pthread1.cc by Mike Lu <MLu@dynamicsoft.com>
 //
-// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -20,8 +20,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <string>
index 86b4216d1c35203c697f3a0d722781ad71deca12..66c0b0d44bc21666d0e6a6529c6bb03b7facfe31 100644 (file)
@@ -1,10 +1,10 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 // { dg-require-namedlocale "en_US" }
 // { dg-require-namedlocale "fr_FR" }
 
-// Copyright (C) 2004, 2005, 2007, 2009, 2010 Free Software Foundation
+// Copyright (C) 2004, 2005, 2007, 2009, 2010, 2012 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
index 40c8c66742bae8fb76daed481d5937f1f75831f6..7097675b5497223f3ef1bea90fc58cb82665243a 100644 (file)
@@ -1,10 +1,10 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 // { dg-require-namedlocale "en_US" }
 // { dg-require-namedlocale "fr_FR" }
 
-// Copyright (C) 2004, 2005, 2007, 2009, 2010 Free Software Foundation
+// Copyright (C) 2004, 2005, 2007, 2009, 2010, 2012 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
index 00dc817b15262e10722a1d7b69e251df29c64108..e0700a26b8a6579c77215f5d9c019d672b121964 100644 (file)
@@ -1,6 +1,6 @@
 // 2002-01-23  Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org>
 //
-// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -18,8 +18,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 // This multi-threading C++/STL/POSIX code adheres to rules outlined here:
index 4f464372124dd0b85dd487002992a3e1d9f12806..85f5763520c01df24a64f4dc0c3399f74ae182a7 100644 (file)
@@ -2,7 +2,7 @@
 // Adpated from libstdc++/5464 submitted by jjessel@amadeus.net
 // Jean-Francois JESSEL (Amadeus SAS Development) 
 //
-// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -20,8 +20,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <vector>
index 38c20ed647f3b57cbf3c9453df906352d0b45d71..1291ea450078b40e39fe630501f7738c721d1959 100644 (file)
@@ -1,7 +1,7 @@
 // 2002-01-23  Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org>
 // Adpated from libstdc++/5444 submitted by markus.breuer@materna.de
 //
-// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -19,8 +19,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <string>
index b2a50aa21c8a8485169e4d41858ed6f37fd8da18..8cd7f0a6d3ea2553cd89c3a234734f899ddbf20f 100644 (file)
@@ -1,11 +1,11 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
 // { dg-require-gthreads "" }
 // { dg-require-debug-mode "" }
-// Copyright (C) 2010 Free Software Foundation, Inc.
+// Copyright (C) 2010, 2012 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
index cb683666cccfd2fed81bf3b84b7e5b5e294f1fac..5cdb8b702f096a480dd7fb9ca67426560cb9ba4d 100644 (file)
@@ -1,7 +1,7 @@
 // 2002-01-23  Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org>
 // Adpated from libstdc++/5347 submitted by markus.breuer@materna.de
 //
-// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -19,8 +19,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <fstream>
index 5b87d84c0228addabc5d6351a52a957ea5f62e1a..8bd21a58c56714cc8e027d416a6912156c14281d 100644 (file)
@@ -1,7 +1,7 @@
 // 2002-01-23  Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org>
 // Adpated from libstdc++/5347 submitted by markus.breuer@materna.de
 //
-// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -19,8 +19,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <sstream>
index 7b7a409ec029198d966a312454af950a4365574e..43665c212f033b7fd419dc1f5fb3e64b3eddb3a2 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a8bd399d1bd0b2310d2cdfd854a120447c3a887e..b0a9348aa56f2da595ade2fd62c26cf4b9d58598 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1e3616ef3751dc21e0306db059c32d61af995fa6..7033890b36e1d0c9b43e578b3e68b97dafe009cf 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 93dc57dce703dc03613cf82ad29b0242576e1399..0ce92a90dfe0ea0bd035b768a1b814d16ae79e0e 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index e17b4bc61ab54eafd8af6e407a1c88f90b972f16..54ced9cf4407c63602096743f561f90e526dd2de 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 8b5199236699e8b634adc58d64add11fa7330aa9..5a1ac244002c062464e020d658719cec203ba8c4 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 3fced50c4bc5f3d05955f5a17227c7c7c7ea4efc..c5fe7fa8ca490440ce926c73e8456df0dcf17c09 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 63b15c7f63749ce447235eefa66676682bbc287a..30337cf1e837b4ebf3e6674917a44d76d1dd77fc 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 23eb27455a8dd9da004b5b7f0d92a6c5b2ea8b09..b5c07da7c644815c73264d191faa8a7bfd9bab04 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1dc23041ac9261e478c846d4521d09f07274115c..a7f4bbbba2d0528834255afeaf4b03316c141e10 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1ae7abf0b0f183f71308b343310f759f46145eac..7194fb87ca1c2ad11e057910a0abc979e2be8be6 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 08ad213863ad3d72dc8e8cfc4e8e6c2235cfa793..87db514af42a14e5087bace8c1edf97b88ee064a 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 5b8cb881d30487c7df26746c3134facf7752c472..039b480e77697b281c5652192bbdebaa54e2b4fb 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index afc6bb7898497f6645e8b6183cefa8dec3fd0224..884787ccafadc329cf3bb3e5b1abe56cfb4bc003 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 3f019da1248cc49dd4c402ac507c332937ac9225..7b12d8f5313d716e4464ae8b2e513ed307fc0bd3 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f7322f65a46ac72b6d0df0506d7c6ed4820bda75..27b1e0827d76a620db6a5cab9f7701e967e592e8 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 6cecdb9d93d153ed3547a71dbb9ae73df8305e28..7a642cc8a93cad5bb4acc5a7d3802f50b4cb42fc 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 49846a7d80a1101ec3cd2f9a382fa90231c80fb5..da9768035f88fc5c213bcd2c1856c6456b360f1a 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index af8cce6f65eb89746a48a81bddf13fb8504c0284..165e1d4a1ada72765a1675f0f4e7d3fe30a73c9c 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 45c706b311eb477350cac9e76cd4093fb98e70ac..0649d785f452c6ece143b863b2a3640520ce8900 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 2ae83b147a39b5b8b9f2e710c3d3bdf162535d53..631f939252627f8859e6e420fdd90bff3f0f8302 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 91325970fa9c019c52fb8312e9caa29c4ad57bd7..215d28197041e2f6163d6a4815e0e2721762d3f5 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 977b37954dd48e02675c1f7f3203293dd81fffc7..8e42918d50f05db12186ad2a77d9ad05e41c997b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index e1a5a941b26126a7069c9b76cf95b3118afbaf85..5e91d7fb8e2c8f29191dc121e16ad967937949da 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 476bfd95412b7e29f5f84d3d22adbf2a5cf25711..57a426e6cbaa1c0300e4587e2674c74966ca31ea 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index c588be8b6cd8408ccd3992cf6a7ed3afc5d0d6c6..a880bbb1c4022d4a945e7d71cc9f85acd944b60e 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 29406b0377a33d5b0bbae27418c7ac023a263e95..45d84b330ce94e667ad067b40f9bc42096035034 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index c39e817aac5759fd1a059d09b61243adf8dd6c92..8a78889998d363464578159fed434c9e12cf0f2c 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 33e39bfa5d7b70ec1d4c9a52e0124f742c1247d1..25c453a9f9c9b6b61c45fe2cdaf693818d037db4 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 397c424fabef570a456bb912bee71ae301d46c41..8ba18448ca779169c0e3de3d1ace41293490a2a9 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index c135e28e48bd228f645db075fd110f5114b6200a..463a7e5676fad478d72a9bc75ff7485159d10536 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 5e8ec117a72825af56ad94beedae873638318c5a..a7bb148c4da606b85a5e3d3a8806438b45b4a591 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a3730c593c38104f946536814ba703fe0bae5361..c80d8e36a6c85e907865dac79eb1debc567a2238 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index bebbd222ae4da67a0ac08d8c11943c8dd954d39d..66157ad85c00399e7e649d847b41cf4c46c67cf6 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index aefdeff3fbae80fff5129a80099dccec066419ef..a2fb9ab8ddf200ed6a031fac2be7528301b1c006 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index bf6d5d78aca987e89bc2e7c87e2791f5a2056cd9..5a4a32d19054f0d691ef784dcc280b6c1c51e8c9 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index e05c236f44ff5e9a00fef4bea0b7b2476d397386..4607e881092d86909eb9dbc4a48ebb775dd3d6a3 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index d6a08f77e2a990cfc08443a3a8e052b2e3e79096..a6fd3757305ea145ca703eeb303d65ab58572110 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1d3c05068bdc355d4a9efc7781d4bd40b8535d8e..57d4945b78de8dd2a4ceb4919c346ab6402d4cb4 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 5c217dff994b012feff37fb0e1e88333eeb8784c..4516e57ba80025ba8438a8449f47404471e912a6 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index d7fefe7548f19da8d21f8cc2ce3172fe88fa0b29..1c678a8e711654e62df394daaf53bfdce1e1105c 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index fd1daf881a3046538ccce85c88d1fd5534d41ba9..a3fe4e799f799c700db6a6508b13794eaaa7f21a 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 33cec40d615f79cfab5ded12694be770338e0ead..1d0b79b70043663ed3d3cae18b928b161f9024ff 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f16af2d33b1315d27ed32b7113e2f358fb37ee2c..12ade1de3184d6cf23ad0cacb18e187e5241be56 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 961a9cef700f9ed3624260112ac0f0345888c5bd..9f4a7812ca334c5031c3ff394c53c8907a943958 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ecbf2cf7753d0a4fc58c8b0c988aff4929a6d2b3..4ecd0ff699a4744ed8aa66e83afb129458b622d5 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 79d4c1f641722a9514cb1d59ed664a43c606e3fe..8cd84990bf606d097bfca0d89e6b7dae300fd381 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ffcca11981d0469ab2e1ae7da62a210a0b19e58e..b1e9e4758c3d32458a4098e1deb24ce970d69c04 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f6b676ae74fdc693cbe582c01ff7275025edf2fb..1082082dbae791a4d020abca54b07d0f4c0271de 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index fc780339b3ef0b090a12c9415058f627a70833ad..6fcdd1761607ed4c3356870bd86534c9ad9d526a 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 9fc2bdb710de0e08c38087cf78877763be90b91e..cdc18f747d1389e2969dce7a01069b7a4fb00bf6 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index d94f810eb9a4ac189972350cf3861d605b6a4bfb..ce6e4b1377dfeffe09ba5dbf274b10828b3268e1 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index d4866a4d981556d1b28aa2ce5a8a5007d32630e9..78e3cfd3946b62aba9574c88ea4f01c610eca55d 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ed6794347988de2f01c7ebc3366b57bd22a546aa..06fc9f0ba0186a77682c613a72050d8841f3614d 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 19d66c3b3c7b72c567e03339ad17b7c25e34f177..ef2608ed74c2d155b28a9648341660554a66fe10 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 9c016a9fb04b4ad87a3a19ff9051367b3d3d2b46..1babdab5794685b21b06c133c98a9008d87c7835 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index df251bdfa3e10f77f05bc1a60a1903153e10207d..c9adef5cc5963280f70e98cf0e0dbc00679c16f3 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1a22c74c8a4a53a3cdc658dcc4bc50101ace3089..f2c4a43797e82fba19f380d6d46347a580cfdf57 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index c704b5a646d19ab395aaf13cc4b3e80d3eecca0b..de5d4713d629859e2ead4cdd74b450672d381d62 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 5ea2695887848bc5def0f30daa37a6d5f6f97113..980a0a153712faf5defc73f03e266c97981f6cf2 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 165d252ed8e4d1a9e76f653cc4e1c017273e2a8c..7a2a8e26e9e1fd318d27632dc94eaeb000b5d561 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 59882bfbbc773f67dfff731b8e22e2d2fe8c8ed4..3cca2e235d3dc1c539c492834c40636078d117d6 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 0b2b99683bbfa420da2485090f0ee9b73d974e1d..87691c77d526652d94b1fc4b181c4d063398638c 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 8fd599c9712953c5a21986d7cf29f700820a0682..a10d4fba6d1d5cdfe9bfcc792fdcdb2eab7cba7b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ab12800764696dfd343389d9ec6b7719652e3ced..dcdda73c9d90ee2c7464416ab5728de18424ee73 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 981343ebc93d356df2181be31b55e3d2e06cf43a..4383e3c56ff60ac7261ca2c07c4f5ed2ae7f1fd2 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 7dbf079d95a44af1e145174931801b601cd39d76..03c8092faaab960530c25098624f1816d003d254 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 268d162b3ac71a9f634c607e9295b50d2dc04769..6ae175695d33ce447d40883ef8690a2e4c21621e 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 93a0026643fd20a2d0e523a7c63e03e7f0b7e455..a4f6d0ceb1fb42fd278366e16f8f8d4a5e003c14 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 29211d93ed75fc941bbea9b7708e2d7e4f327052..733f8faba56f76e38dec7a4b25135ff2d0a594b5 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1855495a4400ac6c9af18c416135d5936ba984dc..0bde7beeb9269e4d61d18ffa223c482efe6d3839 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a1c4447e5cae30e38d41de91c4c6181c0adc1ccd..ca17b7162f6a16655e879556509790b0dcdde49b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 993d2149185c4106f15f52bf43e30885f769acea..eebaaf1818346899e0f593fbd289c525b0294c50 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 5fa4a48ae7c9c17ff2accc5c8266ef1f016178c6..7dd337865f8748e6cced68e4d7104a7a37fcdc03 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f1dc3b535a5f092235d143ffe1c945c16c6acb5b..0506af284c25877944afbc95576f60b389562151 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 41dcecda58370cbaf80e205c9516a16f5bfcdbe6..c6366886ca54c7d91c4f1dd4b7a7bb5a8b08109f 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1c8f1063c074816872a54ef8f74889ed4ac01f05..2aeb322c2f1edd62cc53c726be36169ce8db8bdf 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 6663b92a56501a32fa514dc822b1333000116906..44fc029b67471cf64088a9e659d8c5cc8261e989 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 0518a2b6a70457096b80e06aba6dbfd501c730e3..3998bf8daca2b83fe908cc9d575db4cccf8dbe6e 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 4872886a63ffba367ede93b44725c23199f60192..415ad3276a6137e44a5eaa2fefac25b26bc3cd3f 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1937a6e6ea6b6e1f0741f9ee8c1862def3e1ab60..c563961e3012d6dbb23a14040aae2d04532bb100 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 55fd76533e3c5f7dc45a7eb8044d9fab36390126..2487407300e52dc0197f750e7db9345f42fef9ba 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 16945d49b715b5871ccfcbc8a6a827dc9720cff8..be598d03fafe04092cbac1094949f0e63d570972 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 8e57e801196db0710e29a5cc27e372f8fbc816a8..4b5cccbd738a391cde17dcc0a1274c926dd2611b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 9cd30638f0fac9a26cf32963476b9be21e348d91..70ba42ac344585e7ceb4a7b21873a872076a9c62 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options "-std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options "-std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options "-std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options "-std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 378dc14c4d1b91e42c1d8b90c9453a53ba3a2921..8f5916d18b4b943c4fdcf78e4a87947f1c03a352 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 239af231688ab06afa2de0c420abb9f66e9e4f5e..e70b4e08d1cf893f6747588877f2a81e28daefee 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 06634d83ed244669817f608550860444a4146659..9b258e47a7714835ad1d77042c49a232bacb3bb9 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 8e57e801196db0710e29a5cc27e372f8fbc816a8..4b5cccbd738a391cde17dcc0a1274c926dd2611b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f7c374191338f6107113feb91a521ec958ec67f5..ca4b4a3953508d0c2c881971c3effffc8a9eb6ea 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 48a7279acbff2bc702308b076550c38341c3f5bf..732f357ca7d0a593982460f4e515b8316fcd5370 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index d08dd697df13d95c420e068672fde16915dd35b2..5006f7ade932f54c9a30cd3b8cf57347636b710c 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ba3f00f398621381ed46f653d0435d2b2347aa76..6497b65f3b97d4cbee4e1a45d4abefb01270b4da 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index c49cafb296675ad8a6968a43ec8a57ee185ae8c8..2b38a36801c8b58bc9680abe3a51bc76ec6d03dc 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 0077fed64e1b46f9dc25870b043d6b6fd3fd04eb..7f819255081e57ecccaab7a395fa28d3ea48e2e4 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 3cbb898960b32629bd9366e6f87f808698c3c944..f5a23f5d6345a98679a291431ba3d55c7400894d 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 6e445c2d0ff54bebe2e385cda7be1b5b479ae0a7..460a369a80fb98b73b98148c0b0ea8d90413d282 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 2c4ec1d00951c8203f6fecc64b37983d850f651e..8ddb0f41aa3aeba47e628c4575bf1079b524a1aa 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index c6fcb931508a7b460cfe4be9150b5a232d23b336..62b04c18e9916494cca53f83b08ceb473aa71957 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 2ba099302a362b9998c091d2ff5cb0fcd067ae45..06da152f695eef0fc3cbbd647878064940aa4e32 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 49aa9c01811b376be4609eff86e4e8259ed55844..e8cd665625bfe1aeef5c642402c716d4a57ede66 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 3a3a025ed83c7a1ae015e99e8d5c505c78c20f6b..b96bbdd5d414561fd6390922a7684d7c9babf238 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f015986c78de56007c629b33cd8882c680be3f6a..e87afab4cf7baa028ebff242d80d475205f4b213 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 04c453a1c70d3686ec9429a53b40858c54b791e2..95dc6ae454ffca176d52f8f4893a14d99b64a8b9 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index db8f28933193e8e4ec9a858d9fd366905054b042..8d0be65a088f9631410b6e329a730686b5f1448f 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 0f85b4018c699f229cd2d19f677698eeb2836c88..af3b5c9844573f673b224ce6b43780068b934ab4 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 54ef5164446fcbb0553c8c586fd7619f097ac290..a78c4d77c79af18aa4225cc9263f89868df3bef8 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 7f0fdf11967f2febe311552913985e082dce87e9..f6d6bf8d13ff971d7c1beb349405bd1f17d75cd6 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a99a386cbca33b0a8ae8d9c810fcec723a96876e..c9785209b784b16eeffd335f110bf61d9f9de695 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index e0b15f7cb19d3ffce3019ce9e7095f5e6a738275..f9ba8caedf5bf1db7bddb60432e5e1dcf7ce27e8 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index c75114db9584f952db5249d7a7c1a1bce6438e89..aafb6d8435f9366b74cccd2943ccd200a7173d62 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index cd0cc659db0a086fae8b5258d8207ba680c4e3bd..1a3b9f6d131d237bbdff14d452535b0b4bc0632b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 7877f05d4d06ff7cd7cac75f32a924e16ef9054f..8f8e9176debf5c686c61e27f0b58df5b84f8ead7 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1d74e2074b7dca53fd2631e4b9cdfc1e1f7fc14c..c18c09fb40f7ab599bdeb03b28e952878fe07c8f 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a6a9805033d09a5d4badb3a1e75b486b351985cb..ba1a685b9c295497d82766ea051ea8be7185996b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index bd35fff4e1b572f60a6ae247dc4d37d6d9d8f530..d01cc6cbd118892cda820646690ef447700a9a7d 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index e71ea7e33fb40ab2f9e0d45b327205f975fd03de..818db13063274e4bc97762eb85d7520eff68fca9 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 3ef570d82441aba946f9402a1803d15b5e487318..53721dda9d22b2fc455f78729c9936a1937849da 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 57ad3aa589dbad0aefc113049f4cd2dc645a667e..cddb4027414dbc58fc85f5563c71a8415946b232 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 345b9852e3883ce010a6184941e3bf6603863af8..94188453786c708c23c7f03ef8761eacab585052 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 19f97f107cd9fadbbc5442e7052fd53aa9cb70a6..8d37a3518b77d670da58b8a4edb84066dbb0ecf8 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 072d1d2c5aa7de94b7f396dd39cbd3dd8b590625..f538bedc4288dbffc510ab925dd6d574de9cc347 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 3af01f1fc8dd1c951af6b9f211ddf3ce5ef28dbc..e4d92a9c63d02e9ed3d5d24dd05b349e9c118128 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a93e8edf733a32b6854c9a1c46df897446c80a6b..530f4744a96eb5eb3e5f03beec294d890276874c 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 0ecbe240b82bf7b30638f94d68f424cc3bea4d59..c0f7dbc8b334b12b66383d6632df67929509e235 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 84a1cc6a7e89fd94f97547579ba1e0f8d4653b81..a524c2f1348ee24330b4f99d27a8a1a6deb91aa6 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 9ea019d7b8eabbd71729b3f02f5aeb49d817f351..b1035a021315fd821bdbd09afbadee5e56b25228 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a46de651478946be920713ee0ff98e131b890920..fde8bdfa77504782799e65fdb27e12f3233915d7 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 2a03cfee9f674be6b1e0b099c9b7e5ad178da51c..36e686e932e68fa49c8d5b9d5849358710aca95a 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f98dc00473733c80e114822852d79066a51c89f8..c3126f77c90b25c4082d28049a6eb44d17221c59 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 265b574805467514d75b79cc5a5f6ec63a2f1a8d..c6b70553d6ec14186c4043c3710c483312cfceb7 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 9ea019d7b8eabbd71729b3f02f5aeb49d817f351..b1035a021315fd821bdbd09afbadee5e56b25228 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index a46de651478946be920713ee0ff98e131b890920..fde8bdfa77504782799e65fdb27e12f3233915d7 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 7dc5f8da4a99ebc630aaecd8eaba342c635b4b5a..3621c9e18bbe048a8288feafd7b723890a714a7f 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ca1f9ec341710205aed63f5288fa61a8ac9fbec2..59703ff7095c26d9c010e4e8370cc5e23d329b5b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 154ae91b8e9494ee53b09a1759f14f644f836347..395b0aff19fb621b62ae202ba7c2779308b64310 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 2c5aabca02de36b9b7d384874a841e50b80b3afc..04901c65be4181227fd4e78ebefeaed2dda17eaa 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 09ed5e7da6e8f5889a3060724a270b991f4a8258..ee734b42614544b76f6afe6ba87e725e22c88c28 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ca2c8e38ddc1bfac1b072cf1f7947862baeaaae5..b19d372f1688fb9e92c983d846413c1e276e99a7 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 87a44253edda0178e3d19d53401fb28cb0a61bc9..44d4b5c31e5449b091ad9cbe0007154b6f532b1b 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 3dca85a3ad187f8333b2b884c4d4cd4b649cbc3f..5b011331c8b01377a95ceeb194010583c10410d7 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index ae51bc04ac99328d0f72324c41dc629a2d94833c..1ac32e7e077aeb669014ff23fbe37ab229574432 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 808521f0e4bd9d6f49916c2b87347d1929b32ecb..0e51c232e0fb58d6d70246d971d1140c3b005829 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 5278a4d639f2939d02d7a69feafb1a6e4bbab3a7..1d353c7c74d0cf77a6ef59190a6aa265ffe3b1ef 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 36a7945f736716e03bd977037f220ee0f8ad3ea2..553696c729a79372d2bedac10af7303798041a55 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 9882f78164bfd4892e4a9b78736bdbbc17c30bfc..1dcfdf1bf030cd21b7a3a679751a9373da8349d7 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index f5cc74b2ccfedd0aa2a181682c465519e0ff09cf..2330680104b191f631df8b9badfb6a559f84cb9c 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 43cae03fbfe931fb164d5f328d302ad279c061b1..c13e8634db142a1f0ebdf5b7c63cfe0581c1676d 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 1c96ef1766e44fad42c428d3ae898cefc81ddd7b..2587157a6829a3a81618611a7c88e0c2cc123724 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index 4b7080a8d1d873874764822846fb653711b4ffc4..69c20cd7458e9cc950a949ae3dce479ec8504ab9 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* powerpc-ibm-aix* } }
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* powerpc-ibm-aix* } }
 // { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
 // { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
 // { dg-require-cstdint "" }
index fd1ed09c6c38b9fd151e11c1fe713e6595a59447..c0cd70921f5580b6a33de984031e37fc65cc0695 100644 (file)
@@ -1,6 +1,6 @@
 // 2003-05-03  Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org>
 //
-// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010
+// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -18,8 +18,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <ext/rope>
index 31f26adcfaa2cb44160fb8180738d44b87f3b343..af406b3457c6332d648ec00e67271716e8aaef8f 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2006, 2007, 2009 Free Software Foundation
+// Copyright (C) 2006, 2007, 2009, 2012 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -17,8 +17,8 @@
 
 // TR1 2.2.2 Template class shared_ptr [tr.util.smartptr.shared]
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <tr1/memory>
index 6b94d04b6001d83774d077e1f08595f1552f13cd..a523e686f7a4287fb1dc6cc312312bfe1bffdfb9 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2006, 2007, 2009 Free Software Foundation
+// Copyright (C) 2006, 2007, 2009, 2012 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -17,8 +17,8 @@
 
 // TR1 2.2.2 Template class shared_ptr [tr.util.smartptr.shared]
 
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
-// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* mips-sgi-irix6* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* mips-sgi-irix6* } }
 // { dg-options "-pthreads" { target *-*-solaris* } }
 
 #include <tr1/memory>