Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-101686

QV4::Value: Research different tagging scheme

    XMLWordPrintable

Details

    • c7722d4ed (dev), 73f1fa8a8 (6.5), b0907db9e (dev), 6979f718b (6.5)

    Description

      Idea: Values store only pointers to managed objects, which have 16byte alignment => we have 3 bits for tagging.

       

      x: any value

       

      xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxx0

      pointer (can be stored as-is)

      xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxx01

      int62?, only support int32 initially by storing it in the first half

      xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxx011

      double, probably has to be a pointer to a heap managed double.

      xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxx111

      we can use all those values for various tags (undefined, empty, nan, +/-inf, Null, true, false). Exact scheme to be decided.

       

       

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-101686
          # Subject Branch Project Status CR V

          Activity

            People

              ulherman Ulf Hermann
              fabiankosmale Fabian Kosmale
              Vladimir Minenko Vladimir Minenko
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes