Revert "TCharm & AMPI: Adapt to automatic pup of base class"
authorPhil Miller <mille121@illinois.edu>
Sat, 7 Jan 2012 07:53:06 +0000 (01:53 -0600)
committerPhil Miller <mille121@illinois.edu>
Sat, 7 Jan 2012 07:53:06 +0000 (01:53 -0600)
This reverts commit b9446be574ca6dce6048e5796ebdabb5a52787ca.

src/ck-core/ckarray.h
src/libs/ck-libs/ampi/ampi.C
src/libs/ck-libs/ampi/ampiimpl.h
src/libs/ck-libs/tcharm/tcharm.C

index 44010f44e737d53f71510486299e6e0c55797ee9..a951572b9c7be6df4301761d2168539d77553dec 100644 (file)
@@ -482,7 +482,7 @@ public:
   virtual ~ArrayElement();
 
 /// Pack/unpack routine (called before and after migration)
-  void pup(PUP::er &p);
+  virtual void pup(PUP::er &p);
 
 //Overridden functions:
   /// Called by the system just before and after migration to another processor:
index 62bc80278d8222258f75fb54e0193fafc185ae4c..888f58211a2527f7736f40b7e2520549a4476875 100644 (file)
@@ -887,6 +887,7 @@ ampiParent::ampiParent(CkMigrateMessage *msg):CBase_ampiParent(msg) {
 }
 
 void ampiParent::pup(PUP::er &p) {
+  ArrayElement1D::pup(p);
   p|threads;
   p|worldNo;           // why it was missing from here before??
   p|worldStruct;
@@ -1363,14 +1364,10 @@ static void cmm_pup_posted_ireq(pup_er p,void **msg) {
   //   printf("[%d] pupping postd irequests %p \n",CkMyPe(),*msg);
 }
 
-void ampi::base_pup(PUP::er &p)
-{
-  if(!p.isUserlevel())
-    ArrayElement1D::pup(p);
-}
-
 void ampi::pup(PUP::er &p)
 {
+  if(!p.isUserlevel())
+    ArrayElement1D::pup(p);//Pack superclass
   p|parentProxy;
   p|myComm;
   p|myRank;
index cbdde6c0e5f678f0bcd2ee3d73e906d7c10c623e..46a25b8474cc8ea0e17dbb3f5b450294063fcd64 100644 (file)
@@ -1341,8 +1341,7 @@ friend class SReq;
     void ckJustRestored(void);
     ~ampi();
 
-    void base_pup(PUP::er &p);
-    void pup(PUP::er &p);
+    virtual void pup(PUP::er &p);
 
     void allInitDone(CkReductionMsg *m);
     void setInitDoneFlag();
index ce39724300eb5d14600f51591ba8a6a2328f6eda..7e5ff57bc2a9d3dd915c34fdcb54b48e6a6898f1 100644 (file)
@@ -220,6 +220,9 @@ void checkPupMismatch(PUP::er &p,int expected,const char *where)
 }
 
 void TCharm::pup(PUP::er &p) {
+//Pup superclass
+  ArrayElement1D::pup(p);
+
   //BIGSIM_OOC DEBUGGING
   //if(!p.isUnpacking()){
   //  CmiPrintf("TCharm[%d] packing: ", thisIndex);