diff options
author | oci <oci@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-09-04 14:20:52 +0000 |
---|---|---|
committer | oci <oci@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-09-04 14:20:52 +0000 |
commit | 30c8308ea8eb23e98e6db7ac5ed7241206ed0969 (patch) | |
tree | 7689214cc55e7ec9c191904d3ecd873f3dfbcb6c | |
parent | 011e0a9f0a68e6e0c90d3f936afc7857f089a32c (diff) | |
download | ATCD-30c8308ea8eb23e98e6db7ac5ed7241206ed0969.tar.gz |
ChangeLogTag: Tue Sep 4 09:14:36 2001 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r-- | ChangeLog | 30 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-02a | 30 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-03a | 30 | ||||
-rw-r--r-- | ace/CDR_Stream.cpp | 14 | ||||
-rw-r--r-- | ace/CDR_Stream.i | 11 | ||||
-rw-r--r-- | ace/config-vxworks5.x.h | 6 | ||||
-rw-r--r-- | include/makeinclude/platform_vxworks5.x_ghs.GNU | 17 |
7 files changed, 106 insertions, 32 deletions
diff --git a/ChangeLog b/ChangeLog index 331b84d1ee0..1ecd6b0b734 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,21 @@ +Tue Sep 4 09:14:36 2001 Chad Elliott <elliott_c@ociweb.com> + + * ace/CDR_Stream.i: + * ace/CDR_Stream.cpp: + + Work around a compiler bug in the latest Green Hills Multi200. + Casting a float to an ACE_CDR::ULong* caused internal compiler + errors if the code was inlined. + + * ace/config-vxworks5.x.h: + * include/makeinclude/platform_vxworks5.x_ghs.GNU: + + Updated support for Green Hills Multi2000. + Tue Sep 4 07:41:42 2001 Balachandran Natarajan <bala@cs.wustl.edu> * THANKS: Added Eyal Neuman <eyal@tradertools.com> to the hall of - fame. + fame. Tue Sep 4 07:37:17 2001 Balachandran Natarajan <bala@cs.wustl.edu> @@ -23,7 +37,7 @@ Mon Sep 3 20:08:25 2001 Balachandran Natarajan <bala@cs.wustl.edu> Mon Sep 3 09:58:32 2001 Balachandran Natarajan <bala@cs.wustl.edu> - * */Makefile: Updated dependencies + * */Makefile: Updated dependencies Mon Sep 3 09:44:46 2001 Balachandran Natarajan <bala@cs.wustl.edu> @@ -120,15 +134,15 @@ Fri Aug 31 19:14:52 2001 Balachandran Natarajan <bala@cs.wustl.edu> - Reimplemented dispatch_notify (). This method would just dispatch the upcall using the information in the notification - buffer. + buffer. - The handle_input () now uses the read_notify_pipe () and dispatch_notify () to achieve what it was doing before. - The notify () call now sends one notify message on the pipe - for every message in the notification queue. - - * ace/TP_Reactor.cpp (handle_socket_events): + for every message in the notification queue. + + * ace/TP_Reactor.cpp (handle_socket_events): * ace/TP_Reactor.h: * ace/TP_Reactor.i: We had a race condition. The race condition was because two threads were trying to read from the notify_pipe @@ -139,10 +153,10 @@ Fri Aug 31 19:14:52 2001 Balachandran Natarajan <bala@cs.wustl.edu> - Changed dispatch_socket_events () as dispatch_socket_event () as we were dispatching only one event. - + - We dont grab the token in the constructor of the token. We have to make a call specfically to grab_token () to get the - token. + token. The above checkins should fix the correctness of the reactor problems that we have been seeing. diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a index 331b84d1ee0..1ecd6b0b734 100644 --- a/ChangeLogs/ChangeLog-02a +++ b/ChangeLogs/ChangeLog-02a @@ -1,7 +1,21 @@ +Tue Sep 4 09:14:36 2001 Chad Elliott <elliott_c@ociweb.com> + + * ace/CDR_Stream.i: + * ace/CDR_Stream.cpp: + + Work around a compiler bug in the latest Green Hills Multi200. + Casting a float to an ACE_CDR::ULong* caused internal compiler + errors if the code was inlined. + + * ace/config-vxworks5.x.h: + * include/makeinclude/platform_vxworks5.x_ghs.GNU: + + Updated support for Green Hills Multi2000. + Tue Sep 4 07:41:42 2001 Balachandran Natarajan <bala@cs.wustl.edu> * THANKS: Added Eyal Neuman <eyal@tradertools.com> to the hall of - fame. + fame. Tue Sep 4 07:37:17 2001 Balachandran Natarajan <bala@cs.wustl.edu> @@ -23,7 +37,7 @@ Mon Sep 3 20:08:25 2001 Balachandran Natarajan <bala@cs.wustl.edu> Mon Sep 3 09:58:32 2001 Balachandran Natarajan <bala@cs.wustl.edu> - * */Makefile: Updated dependencies + * */Makefile: Updated dependencies Mon Sep 3 09:44:46 2001 Balachandran Natarajan <bala@cs.wustl.edu> @@ -120,15 +134,15 @@ Fri Aug 31 19:14:52 2001 Balachandran Natarajan <bala@cs.wustl.edu> - Reimplemented dispatch_notify (). This method would just dispatch the upcall using the information in the notification - buffer. + buffer. - The handle_input () now uses the read_notify_pipe () and dispatch_notify () to achieve what it was doing before. - The notify () call now sends one notify message on the pipe - for every message in the notification queue. - - * ace/TP_Reactor.cpp (handle_socket_events): + for every message in the notification queue. + + * ace/TP_Reactor.cpp (handle_socket_events): * ace/TP_Reactor.h: * ace/TP_Reactor.i: We had a race condition. The race condition was because two threads were trying to read from the notify_pipe @@ -139,10 +153,10 @@ Fri Aug 31 19:14:52 2001 Balachandran Natarajan <bala@cs.wustl.edu> - Changed dispatch_socket_events () as dispatch_socket_event () as we were dispatching only one event. - + - We dont grab the token in the constructor of the token. We have to make a call specfically to grab_token () to get the - token. + token. The above checkins should fix the correctness of the reactor problems that we have been seeing. diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 331b84d1ee0..1ecd6b0b734 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,7 +1,21 @@ +Tue Sep 4 09:14:36 2001 Chad Elliott <elliott_c@ociweb.com> + + * ace/CDR_Stream.i: + * ace/CDR_Stream.cpp: + + Work around a compiler bug in the latest Green Hills Multi200. + Casting a float to an ACE_CDR::ULong* caused internal compiler + errors if the code was inlined. + + * ace/config-vxworks5.x.h: + * include/makeinclude/platform_vxworks5.x_ghs.GNU: + + Updated support for Green Hills Multi2000. + Tue Sep 4 07:41:42 2001 Balachandran Natarajan <bala@cs.wustl.edu> * THANKS: Added Eyal Neuman <eyal@tradertools.com> to the hall of - fame. + fame. Tue Sep 4 07:37:17 2001 Balachandran Natarajan <bala@cs.wustl.edu> @@ -23,7 +37,7 @@ Mon Sep 3 20:08:25 2001 Balachandran Natarajan <bala@cs.wustl.edu> Mon Sep 3 09:58:32 2001 Balachandran Natarajan <bala@cs.wustl.edu> - * */Makefile: Updated dependencies + * */Makefile: Updated dependencies Mon Sep 3 09:44:46 2001 Balachandran Natarajan <bala@cs.wustl.edu> @@ -120,15 +134,15 @@ Fri Aug 31 19:14:52 2001 Balachandran Natarajan <bala@cs.wustl.edu> - Reimplemented dispatch_notify (). This method would just dispatch the upcall using the information in the notification - buffer. + buffer. - The handle_input () now uses the read_notify_pipe () and dispatch_notify () to achieve what it was doing before. - The notify () call now sends one notify message on the pipe - for every message in the notification queue. - - * ace/TP_Reactor.cpp (handle_socket_events): + for every message in the notification queue. + + * ace/TP_Reactor.cpp (handle_socket_events): * ace/TP_Reactor.h: * ace/TP_Reactor.i: We had a race condition. The race condition was because two threads were trying to read from the notify_pipe @@ -139,10 +153,10 @@ Fri Aug 31 19:14:52 2001 Balachandran Natarajan <bala@cs.wustl.edu> - Changed dispatch_socket_events () as dispatch_socket_event () as we were dispatching only one event. - + - We dont grab the token in the constructor of the token. We have to make a call specfically to grab_token () to get the - token. + token. The above checkins should fix the correctness of the reactor problems that we have been seeing. diff --git a/ace/CDR_Stream.cpp b/ace/CDR_Stream.cpp index 38c871864f7..831b1b3876e 100644 --- a/ace/CDR_Stream.cpp +++ b/ace/CDR_Stream.cpp @@ -1400,6 +1400,20 @@ ACE_InputCDR::reset_contents (void) // -------------------------------------------------------------- +#if defined (VXWORKS) && defined (ghs) +ACE_CDR::Boolean +ACE_OutputCDR::write_float (ACE_CDR::Float x) +{ + return this->write_4 (ACE_reinterpret_cast (const ACE_CDR::ULong*, &x)); +} + +ACE_CDR::Boolean +ACE_InputCDR::read_float (ACE_CDR::Float &x) +{ + return this->read_4 (ACE_reinterpret_cast (ACE_CDR::ULong*, &x)); +} +#endif /* VXWORKS && ghs */ + ACE_CDR::Boolean operator<< (ACE_OutputCDR &os, const ACE_CString &x) { diff --git a/ace/CDR_Stream.i b/ace/CDR_Stream.i index de0d13e70cb..cfea878b357 100644 --- a/ace/CDR_Stream.i +++ b/ace/CDR_Stream.i @@ -222,11 +222,13 @@ ACE_OutputCDR::write_ulonglong (const ACE_CDR::ULongLong &x) return this->write_8 (ACE_reinterpret_cast (const ACE_CDR::ULongLong*,&x)); } +#if !defined (VXWORKS) || !defined (ghs) ACE_INLINE ACE_CDR::Boolean ACE_OutputCDR::write_float (ACE_CDR::Float x) { return this->write_4 (ACE_reinterpret_cast (const ACE_CDR::ULong*, &x)); } +#endif /* !VXWORKS || !ghs */ ACE_INLINE ACE_CDR::Boolean ACE_OutputCDR::write_double (const ACE_CDR::Double &x) @@ -569,12 +571,13 @@ ACE_InputCDR::read_ulonglong (ACE_CDR::ULongLong &x) return this->read_8 (ACE_reinterpret_cast (ACE_CDR::ULongLong*,&x)); } +#if !defined (VXWORKS) || !defined (ghs) ACE_INLINE ACE_CDR::Boolean ACE_InputCDR::read_float (ACE_CDR::Float &x) { return this->read_4 (ACE_reinterpret_cast (ACE_CDR::ULong*, &x)); } - +#endif /* !VXWORKS || !ghs */ ACE_INLINE ACE_CDR::Boolean ACE_InputCDR::read_double (ACE_CDR::Double &x) @@ -846,8 +849,10 @@ ACE_InputCDR::skip_ulonglong (void) ACE_INLINE ACE_CDR::Boolean ACE_InputCDR::skip_float (void) { - float x; - return this->read_4 (ACE_reinterpret_cast (ACE_CDR::ULong*,&x)); + // Changing this removes the warning for GHS and it + // stops the compiler from getting an internal error. + ACE_CDR::ULong value; + return this->read_4 (&value); } ACE_INLINE ACE_CDR::Boolean diff --git a/ace/config-vxworks5.x.h b/ace/config-vxworks5.x.h index 0b548268903..240ed0692e2 100644 --- a/ace/config-vxworks5.x.h +++ b/ace/config-vxworks5.x.h @@ -63,6 +63,12 @@ # include "ace/config-ghs-common.h" # define ACE_LACKS_UNISTD_H +# define ACE_LACKS_IOSTREAM_TOTALLY + +// Short-circuit the include of <arpa/inet.h> +// Green Hills has a problem with multiply defined functions +// with different parameters. +# define __INCineth #elif defined (__DCPLUSPLUS__) // Diab 4.2a or later. diff --git a/include/makeinclude/platform_vxworks5.x_ghs.GNU b/include/makeinclude/platform_vxworks5.x_ghs.GNU index c7a4072643a..0fdf04dd0c3 100644 --- a/include/makeinclude/platform_vxworks5.x_ghs.GNU +++ b/include/makeinclude/platform_vxworks5.x_ghs.GNU @@ -32,7 +32,7 @@ #### endif # PATH #### #### CPU = 86 -#### GHS = /project/doc/pkg/wind/green/vx$(CPU) +#### GHSROOT = /project/doc/pkg/wind/green #### include $(ACE_ROOT)/include/makeinclude/platform_vxworks5.x_ghs.GNU VXWORKS = 1 @@ -53,8 +53,11 @@ endif # CPU ifeq ($(CPU),86) # With GHS' ax, ld386 complains that it can't read the # archive symbol table. + ifndef GHSROOT + GHSROOT = /project/doc/pkg/wind/green + endif ifndef GHS - GHS = /project/doc/pkg/wind/green/vx$(CPU) + GHS = $(GHSROOT)/vx$(CPU) endif # GHS AR = $(WIND_BASE)/host/$(WIND_HOST_TYPE)/bin/ar386 ARFLAGS = rsu @@ -63,8 +66,11 @@ ifeq ($(CPU),86) #### LIBS += $(GHS)/libedgnoe.a else ifeq ($(CPU),ppc) + ifndef GHSROOT + GHSROOT = /appl/newgreen + endif ifndef GHS - GHS = /appl/newgreen/vx$(CPU)603 + GHS = $(GHSROOT)/vx$(CPU)603 endif # GHS AR = ax ARFLAGS = cr @@ -75,12 +81,13 @@ endif # ppc endif # CPU #### For GHS 1.8.9: -LIBS += $(GHS)/libscnoe.a $(GHS)/libsedgnoe.a $(GHS)/liblockinit_sc.o +LIBS += $(GHS)/libscnoe.a $(GHS)/libsedgnoe.a $(GHS)/liblockinit_sc.o $(GHSROOT)/$(CPU)/libarch.a CC = cxvx$(CPU) CXX = $(CC) -CCFLAGS += $(CFLAGS) --no_rtti -tnone +CCFLAGS += $(CFLAGS) --no_rtti -tnone -Dghs -I$(GHSROOT)/vxworks/include -I$(WIND_BASE)/target/h DCFLAGS += -g +SOFLAGS += -shared DLD = $(CXX) LD = $(CXX) LDFLAGS = --no_auto_instantiation |