This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/16948] [3.5 Regression] Many new testsuite failures on hppa64-hp-hpux11.11


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-08-09 19:51 -------
Subject: Re:  [3.5 Regression] Many new testsuite failur

This is the gimple that I got.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)

;; Function std::auto_ptr<Derived> conversiontest08() (_Z16conversiontest08v)

std::auto_ptr<Derived> conversiontest08() ()
{
  struct auto_ptr_ref<Derived> <D47832>;

  T___1093 = <retval>;
  T___1094 = operator new (1);
  T___1094___1095 = (struct Derived *)T___1094;
  {
    struct Derived * __p;

    __p = T___1094___1095;
    {
      try
        {
          {
            <D47256>._M_ptr = __p;
          }
        }
      catch
        {
          <<<eh_filter ()>>>
            {
              __cxa_call_unexpected (<<<exception object>>>);
            }
        }
    }
  }
  (void)0;
  try
    {
      {
        {
          struct auto_ptr_ref<Derived> T___1145;
          struct auto_ptr_ref<Derived> <D47834>;
          struct Derived * T___1146;

          try
            {
              {
                {
                  {
                    struct Derived * T___1175;

                    try
                      {
                        {
                          {
                            struct Derived * __tmp;

                            __tmp = <D47256>._M_ptr;
                            <D47256>._M_ptr = 0B;
                            T___1175 = __tmp;
                            T___1175 = T___1175;
                            {
                              T___1146 = T___1175;
                              goto <D47836>;
                            }
                          }
                        }
                      }
                    catch
                      {
                        <<<eh_filter ()>>>
                          {
                            __cxa_call_unexpected (<<<exception object>>>);
                          }
                      }
                  }
                  <D47836>:;
                }
                (void)0;
                {
                  struct Derived * __p;

                  __p = T___1146;
                  {
                    <D47834>._M_ptr = __p;
                  }
                }
                (void)0;
                T___1145 = <D47834>;
                T___1145 = T___1145;
                {
                  <D47832> = T___1145;
                  goto <D47831>;
                }
              }
            }
          catch
            {
              <<<eh_filter ()>>>
                {
                  __cxa_call_unexpected (<<<exception object>>>);
                }
            }
        }
        <D47831>:;
      }
      <D47275> = <D47832>;
      {
        struct auto_ptr_ref<Derived> __ref;
        struct auto_ptr<Derived> * const this;

        this = (struct auto_ptr<Derived> * const)T___1093;
        __ref = <D47275>;
        {
          struct Derived * T___1147;

          try
            {
              {
                T___1147 = __ref._M_ptr;
                this->_M_ptr = T___1147;
              }
            }
          catch
            {
              <<<eh_filter ()>>>
                {
                  __cxa_call_unexpected (<<<exception object>>>);
                }
            }
        }
      }
      (void)0;
      return <retval>;
    }
  finally
    {
      {
        {
          struct Derived * T___1144;

          {
            T___1144 = <D47256>._M_ptr;
            operator delete (T___1144);
          }
          <D47847>:;
        }
      }
      (void)0;
    }
}



;; Function void test08() (_Z6test08v)

void test08() ()
{
  struct auto_ptr<Base> & <D47873>;
  struct auto_ptr_ref<Base> <D47861>;

  {
    struct auto_ptr<Base> ptr;

    {
      struct Base * __p;

      __p = 0B;
      {
        try
          {
            {
              ptr._M_ptr = __p;
            }
          }
        catch
          {
            <<<eh_filter ()>>>
              {
                __cxa_call_unexpected (<<<exception object>>>);
              }
          }
      }
    }
    (void)0;
    try
      {
        conversiontest08 (&<D47370>) [return slot addr];
        try
          {
            {
              {
                struct auto_ptr_ref<Base> T___1149;
                struct auto_ptr_ref<Base> <D47863>;
                struct Derived * T___1150;
                struct Base * T___1150___1151;

                try
                  {
                    {
                      {
                        {
                          struct Derived * T___1175;

                          try
                            {
                              {
                                {
                                  struct Derived * __tmp;

                                  __tmp = <D47370>._M_ptr;
                                  <D47370>._M_ptr = 0B;
                                  T___1175 = __tmp;
                                  T___1175 = T___1175;
                                  {
                                    T___1150 = T___1175;
                                    goto <D47866>;
                                  }
                                }
                              }
                            }
                          catch
                            {
                              <<<eh_filter ()>>>
                                {
                                  __cxa_call_unexpected (<<<exception object>>>);
                                }
                            }
                        }
                        <D47866>:;
                      }
                      (void)0;
                      T___1150___1151 = (struct Base *)T___1150;
                      {
                        struct Base * __p;

                        __p = T___1150___1151;
                        {
                          <D47863>._M_ptr = __p;
                        }
                      }
                      (void)0;
                      T___1149 = <D47863>;
                      T___1149 = T___1149;
                      {
                        <D47861> = T___1149;
                        goto <D47860>;
                      }
                    }
                  }
                catch
                  {
                    <<<eh_filter ()>>>
                      {
                        __cxa_call_unexpected (<<<exception object>>>);
                      }
                  }
              }
              <D47860>:;
            }
            <D47403> = <D47861>;
            {
              struct auto_ptr_ref<Base> __ref;

              __ref = <D47403>;
              {
                struct Base * T___1152;
                struct Base * T___1153;
                struct Base * T___1154;
                struct auto_ptr<Base> & T___1155;

                try
                  {
                    {
                      T___1152 = __ref._M_ptr;
                      {
                        struct auto_ptr<Base> * const this;

                        this = (struct auto_ptr<Base> * const)&ptr;
                        {
                          struct Base * T___1176;

                          try
                            {
                              {
                                T___1176 = this->_M_ptr;
                                T___1176 = T___1176;
                                {
                                  T___1153 = T___1176;
                                  goto <D47879>;
                                }
                              }
                            }
                          catch
                            {
                              <<<eh_filter ()>>>
                                {
                                  __cxa_call_unexpected (<<<exception object>>>);
                                }
                            }
                        }
                        <D47879>:;
                      }
                      (void)0;
                      if (T___1152 != T___1153)
                        {
                          T___1154 = ptr._M_ptr;
                          operator delete (T___1154);
                          T___1152 = __ref._M_ptr;
                          ptr._M_ptr = T___1152;
                        }
                      else
                        {
                          
                        }
                      T___1155 = &ptr;
                      T___1155 = T___1155;
                      {
                        <D47873> = T___1155;
                        goto <D47872>;
                      }
                    }
                  }
                catch
                  {
                    <<<eh_filter ()>>>
                      {
                        __cxa_call_unexpected (<<<exception object>>>);
                      }
                  }
              }
              <D47872>:;
            }
            (void)0;
          }
        finally
          {
            {
              {
                struct Derived * T___1144;

                {
                  T___1144 = <D47370>._M_ptr;
                  operator delete (T___1144);
                }
                <D47883>:;
              }
            }
            (void)0;
          }
      }
    finally
      {
        {
          {
            struct Base * T___1148;

            {
              T___1148 = ptr._M_ptr;
              operator delete (T___1148);
            }
            <D47886>:;
          }
        }
        (void)0;
      }
  }
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16948


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]