1. 10 May, 2001 9 commits
  2. 09 May, 2001 30 commits
  3. 08 May, 2001 1 commit
    • Tim Peters's avatar
      Intern 1-character strings as soon as they're created. As-is, they aren't · 5b4d4775
      Tim Peters authored
      interned when created, so the cached versions generally aren't ever
      interned.  With the patch, the
      		Py_INCREF(t);
      		*p = t;
      		Py_DECREF(s);
      		return;
      indirection block in PyString_InternInPlace() is never executed during a
      full run of the test suite, but was executed very many times before.  So
      I'm trading more work when creating one-character strings for doing less
      work later.  Note that the "more work" here can happen at most 256 times
      per program run, so it's trivial.  The same reasoning accounts for the
      patch's simplification of string_item (the new version can call
      PyString_FromStringAndSize() no more than 256 times per run, so there's
      no point to inlining that stuff -- if we were serious about saving time
      here, we'd pre-initialize the characters vector so that no runtime testing
      at all was needed!).
      5b4d4775