Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.ai.philosophy    |    Perhaps we should ask SkyNet about this    |    59,235 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 57,901 of 59,235    |
|    olcott to Kaz Kylheku    |
|    HHH1(DDD) only sees AFTER abort HHH(DDD)    |
|    14 Sep 25 08:22:50    |
   
   XPost: comp.theory, comp.lang.c++, comp.lang.c   
   From: polcott333@gmail.com   
      
   void DDD()   
   {   
    HHH(DDD);   
    return;   
   }   
      
   On 9/12/2025 3:01 PM, Kaz Kylheku wrote:   
    > Of course the execution traces are different   
    > before and after the abort.   
      
   HHH1 ONLY sees the behavior of DD *AFTER* HHH   
   has aborted DD thus need not abort DD itself.   
      
   HHH ONLY sees the behavior of DD *BEFORE* HHH   
   has aborted DD thus must abort DD itself.   
      
   That is why I said it is so important for you to   
   carefully study this carefully annotated execution   
   trace instead of continuing to totally ignore it.   
      
      
      
   HHH and HHH1 have identical source code except   
   for their name. The DDD of HHH1(DDD) has identical   
   behavior to the directly executed DDD().   
      
   DDD calls HHH(DDD) in recursive emulation. DDD does   
   not call HHH1 at all. This is why the behavior   
   of DDD.HHH1 is different than the behavior of DDD.HHH   
      
   _DDD()   
   [00002183] 55 push ebp   
   [00002184] 8bec mov ebp,esp   
   [00002186] 6883210000 push 00002183 ; push DDD   
   [0000218b] e833f4ffff call 000015c3 ; call HHH   
   [00002190] 83c404 add esp,+04   
   [00002193] 5d pop ebp   
   [00002194] c3 ret   
   Size in bytes:(0018) [00002194]   
      
   _main()   
   [000021a3] 55 push ebp   
   [000021a4] 8bec mov ebp,esp   
   [000021a6] 6883210000 push 00002183 ; push DDD   
   [000021ab] e843f3ffff call 000014f3 ; call HHH1   
   [000021b0] 83c404 add esp,+04   
   [000021b3] 33c0 xor eax,eax   
   [000021b5] 5d pop ebp   
   [000021b6] c3 ret   
   Size in bytes:(0020) [000021b6]   
      
    machine stack stack machine assembly   
    address address data code language   
    ======== ======== ======== ========== =============   
   [000021a3][0010382d][00000000] 55 push ebp ; main()   
   [000021a4][0010382d][00000000] 8bec mov ebp,esp ; main()   
   [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD   
   [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1   
   New slave_stack at:1038d1   
      
   Begin Local Halt Decider Simulation Execution Trace Stored at:1138d9   
   [00002183][001138c9][001138cd] 55 push ebp ; DDD of HHH1   
   [00002184][001138c9][001138cd] 8bec mov ebp,esp ; DDD of HHH1   
   [00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD   
   [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH   
   New slave_stack at:14e2f9   
      
   Begin Local Halt Decider Simulation Execution Trace Stored at:15e301   
   [00002183][0015e2f1][0015e2f5] 55 push ebp ; DDD of HHH[0]   
   [00002184][0015e2f1][0015e2f5] 8bec mov ebp,esp ; DDD of HHH[0]   
   [00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD   
   [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH   
   New slave_stack at:198d21   
      
   *This is the beginning of the divergence of the behavior*   
   *of DDD emulated by HHH versus DDD emulated by HHH1*   
      
   [00002183][001a8d19][001a8d1d] 55 push ebp ; DDD of HHH[1]   
   [00002184][001a8d19][001a8d1d] 8bec mov ebp,esp ; DDD of HHH[1]   
   [00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD   
   [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH   
   Local Halt Decider: Infinite Recursion Detected Simulation Stopped   
      
   [00002190][001138c9][001138cd] 83c404 add esp,+04 ; DDD of HHH1   
   [00002193][001138cd][000015a8] 5d pop ebp ; DDD of HHH1   
   [00002194][001138d1][0003a980] c3 ret ; DDD of HHH1   
   [000021b0][0010382d][00000000] 83c404 add esp,+04 ; main()   
   [000021b3][0010382d][00000000] 33c0 xor eax,eax ; main()   
   [000021b5][00103831][00000018] 5d pop ebp ; main()   
   [000021b6][00103835][00000000] c3 ret ; main()   
   Number of Instructions Executed(352831) == 5266 Pages   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca