[parrot/parrot] 5d7aa2: [t] Add some failing tests for #837 reported by pm...

GitHub noreply at github.com
Fri Sep 21 20:57:50 UTC 2012


  Branch: refs/heads/master
  Home:   https://github.com/parrot/parrot
  Commit: 5d7aa2d0d7489aadc3bc3037271d919634483b90
      https://github.com/parrot/parrot/commit/5d7aa2d0d7489aadc3bc3037271d919634483b90
  Author: Jonathan "Duke" Leto <jonathan at leto.net>
  Date:   2012-09-19 (Wed, 19 Sep 2012)

  Changed paths:
    M t/pmc/string.t

  Log Message:
  -----------
  [t] Add some failing tests for #837 reported by pmichaud++


  Commit: b9fc29b091b34417e41062547b4159ba4df068a3
      https://github.com/parrot/parrot/commit/b9fc29b091b34417e41062547b4159ba4df068a3
  Author: Jonathan "Duke" Leto <jonathan at leto.net>
  Date:   2012-09-19 (Wed, 19 Sep 2012)

  Changed paths:
    M t/op/stringu.t

  Log Message:
  -----------
  [t] Move concat tests for #837 to a more appropriate file


  Commit: c552eb66d0ad80268a2cdc24fafb6f7799421bf1
      https://github.com/parrot/parrot/commit/c552eb66d0ad80268a2cdc24fafb6f7799421bf1
  Author: Jonathan "Duke" Leto <jonathan at leto.net>
  Date:   2012-09-19 (Wed, 19 Sep 2012)

  Changed paths:
    M t/pmc/string.t

  Log Message:
  -----------
  Revert "[t] Add some failing tests for #837 reported by pmichaud++"

This reverts commit 5d7aa2d0d7489aadc3bc3037271d919634483b90.


  Commit: 8a56a8e79c636325d646a029ba01c16b36f71644
      https://github.com/parrot/parrot/commit/8a56a8e79c636325d646a029ba01c16b36f71644
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-19 (Wed, 19 Sep 2012)

  Changed paths:
    M compilers/imcc/optimizer.c
    M src/string/api.c
    M t/op/stringu.t

  Log Message:
  -----------
  [GH #837] Honor encoding in imcc optimizer

Context registers unfortunately do not store type information,
just the values. We would need at least type 'U" here.
So recreate an proper const'ed encoding string from the register
value.


  Commit: 93179fc488e50b171e3162557527cb4e259e562e
      https://github.com/parrot/parrot/commit/93179fc488e50b171e3162557527cb4e259e562e
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-21 (Fri, 21 Sep 2012)

  Changed paths:
    M ChangeLog

  Log Message:
  -----------
  [GH #837] ChangeLog line for imcc optimizer bug


  Commit: e82482e3dc7b35b3af785b89b827ed428c5c95f9
      https://github.com/parrot/parrot/commit/e82482e3dc7b35b3af785b89b827ed428c5c95f9
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-21 (Fri, 21 Sep 2012)

  Changed paths:
    A examples/benchmarks/stress_stringsu.pir

  Log Message:
  -----------
  [GH #837] Add benchmark to test encoding slowdown

stress_stringsu.pir tests encoding via sprintf and concat.
The fixed version is only a bit slower then the old broken version.
13.666s (broken) vs 13.506s (fixed) vs 3.022s (without encoding).

So fixing the encoding representation as STRING* in SREG and consts 'U'
is a worthwile goal.


  Commit: 9c8159314dd2d26365653fbcd8627b0f8fbb0559
      https://github.com/parrot/parrot/commit/9c8159314dd2d26365653fbcd8627b0f8fbb0559
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-21 (Fri, 21 Sep 2012)

  Changed paths:
    A examples/benchmarks/stress_strings1.pir

  Log Message:
  -----------
  [GH #837] New comparison benchmark against stress_stringsu.pir

Bad news:
There is almost no measurable speed advantage from ascii strings to encoded strings.
With the fix and without the fix, as sprintf handling slows down the test 4x times.

So converting a SREG and const to encoded STRING* will not gain much performance.


  Commit: 81f3b68f6201364a982f4b917b2ddbf56534c011
      https://github.com/parrot/parrot/commit/81f3b68f6201364a982f4b917b2ddbf56534c011
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-21 (Fri, 21 Sep 2012)

  Changed paths:
    M ChangeLog
    M compilers/imcc/optimizer.c
    A examples/benchmarks/stress_strings1.pir
    A examples/benchmarks/stress_stringsu.pir
    M src/string/api.c
    M t/op/stringu.t

  Log Message:
  -----------
  Merge branch 'gh837_concat'

Fixes [GH #837], a imcc optimizer problem with SREG's and const
not holding STRING*, thus no good encoding information.


Compare: https://github.com/parrot/parrot/compare/e923aa3b56ab...81f3b68f6201


More information about the parrot-commits mailing list