[parrot/parrot] 8d4f52: [core] Downgrade external ascii on multi-byte plat...

GitHub noreply at github.com
Wed Nov 12 07:16:58 UTC 2014


  Branch: refs/heads/master
  Home:   https://github.com/parrot/parrot
  Commit: 8d4f52e0b2d55df81346b704c38740a5fe746d90
      https://github.com/parrot/parrot/commit/8d4f52e0b2d55df81346b704c38740a5fe746d90
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-11-12 (Wed, 12 Nov 2014)

  Changed paths:
    M ChangeLog
    M src/string/api.c

  Log Message:
  -----------
  [core] Downgrade external ascii on multi-byte platform encodings

We should scan those external strings for pure-ascii and set the
ascii encoding if the multibyte platform encoding is not needed.
This is mostly helpful to Getopt handling and is better then downgrade
to binary. We cannot set latin1 as this is incompatible to utf-8.
On Parrot_str_from_platform_cstring we can even reuse the setjmp for
the mult-byte exception in to_encoding.


  Commit: 3de496bcbdd2138f51385272c399f427b58f268d
      https://github.com/parrot/parrot/commit/3de496bcbdd2138f51385272c399f427b58f268d
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-11-12 (Wed, 12 Nov 2014)

  Changed paths:
    M src/string/api.c

  Log Message:
  -----------
  disable Parrot_str_new_from_cstring downgrade, benchmarks

12470ms with both, 11964ms without str_new_from_cstring.


  Commit: d8dc0ecc9a7aac95d0b8b899a2dba1d1880e2d1b
      https://github.com/parrot/parrot/commit/d8dc0ecc9a7aac95d0b8b899a2dba1d1880e2d1b
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-11-12 (Wed, 12 Nov 2014)

  Changed paths:
    M ChangeLog
    M include/parrot/exceptions.h
    M src/exceptions.c

  Log Message:
  -----------
  [core] Add simplier Parrot_ex_throw_from_c_noargs #1132


  Commit: ac932da97cba5aa11eac841ae851e3376ca97173
      https://github.com/parrot/parrot/commit/ac932da97cba5aa11eac841ae851e3376ca97173
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-11-12 (Wed, 12 Nov 2014)

  Changed paths:
    M ChangeLog
    M compilers/imcc/api.c
    M compilers/imcc/optimizer.c
    M compilers/imcc/pbc.c
    M compilers/imcc/pcc.c
    M docs/embed.pod
    M include/parrot/io.h
    M lib/Parrot/Pmc2c/Method.pm
    M lib/Parrot/Pmc2c/PMC.pm
    M src/call/args.c
    M src/debug.c
    M src/dynpmc/dynlexpad.pmc
    M src/dynpmc/file.pmc
    M src/dynpmc/gziphandle.pmc
    M src/dynpmc/rational.pmc
    M src/dynpmc/subproxy.pmc
    M src/embed/api.c
    M src/embed/bytecode.c
    M src/embed/pmc.c
    M src/events.c
    M src/exceptions.c
    M src/gc/alloc_resources.c
    M src/gc/api.c
    M src/gc/system.c
    M src/hash.c
    M src/hll.c
    M src/interp/api.c
    M src/io/api.c
    M src/io/buffer.c
    M src/io/filehandle.c
    M src/namespace.c
    M src/nci/libffi.c
    M src/oo.c
    M src/ops/bit.ops
    M src/ops/cmp.ops
    M src/ops/core.ops
    M src/ops/core_ops.c
    M src/ops/experimental.ops
    M src/packfile/api.c
    M src/packfile/object_serialization.c
    M src/packfile/segments.c
    M src/platform/generic/entropy.c
    M src/platform/generic/exec.c
    M src/platform/generic/file.c
    M src/platform/generic/io.c
    M src/platform/win32/entropy.c
    M src/platform/win32/exec.c
    M src/platform/win32/file.c
    M src/platform/win32/io.c
    M src/pmc.c
    M src/pmc/arrayiterator.pmc
    M src/pmc/bigint.pmc
    M src/pmc/bignum.pmc
    M src/pmc/bytebuffer.pmc
    M src/pmc/callcontext.pmc
    M src/pmc/capture.pmc
    M src/pmc/class.pmc
    M src/pmc/complex.pmc
    M src/pmc/coroutine.pmc
    M src/pmc/default.pmc
    M src/pmc/eventhandler.pmc
    M src/pmc/exporter.pmc
    M src/pmc/filehandle.pmc
    M src/pmc/fixedbooleanarray.pmc
    M src/pmc/fixedfloatarray.pmc
    M src/pmc/fixedintegerarray.pmc
    M src/pmc/fixedpmcarray.pmc
    M src/pmc/fixedstringarray.pmc
    M src/pmc/handle.pmc
    M src/pmc/hash.pmc
    M src/pmc/hashiterator.pmc
    M src/pmc/imageiothaw.pmc
    M src/pmc/imccompiler.pmc
    M src/pmc/integer.pmc
    M src/pmc/iterator.pmc
    M src/pmc/key.pmc
    M src/pmc/lexpad.pmc
    M src/pmc/mappedbytearray.pmc
    M src/pmc/multisub.pmc
    M src/pmc/namespace.pmc
    M src/pmc/nativepccmethod.pmc
    M src/pmc/nci.pmc
    M src/pmc/object.pmc
    M src/pmc/opcode.pmc
    M src/pmc/oplib.pmc
    M src/pmc/orderedhashiterator.pmc
    M src/pmc/packfileannotation.pmc
    M src/pmc/packfileannotations.pmc
    M src/pmc/packfilebytecodesegment.pmc
    M src/pmc/packfileconstanttable.pmc
    M src/pmc/packfileview.pmc
    M src/pmc/parrotinterpreter.pmc
    M src/pmc/pmclist.pmc
    M src/pmc/resizablebooleanarray.pmc
    M src/pmc/resizablefloatarray.pmc
    M src/pmc/resizableintegerarray.pmc
    M src/pmc/resizablepmcarray.pmc
    M src/pmc/resizablestringarray.pmc
    M src/pmc/role.pmc
    M src/pmc/scalar.pmc
    M src/pmc/scheduler.pmc
    M src/pmc/schedulermessage.pmc
    M src/pmc/string.pmc
    M src/pmc/stringiterator.pmc
    M src/pmc/structview.pmc
    M src/pmc/sub.pmc
    M src/pmc/task.pmc
    M src/pmc/unmanagedstruct.pmc
    M src/runcore/cores.c
    M src/runcore/main.c
    M src/runcore/profiling.c
    M src/runcore/subprof.c
    M src/runcore/trace.c
    M src/scheduler.c
    M src/string/api.c
    M src/string/encoding.c
    M src/string/encoding/ascii.c
    M src/string/encoding/null.c
    M src/string/encoding/shared.c
    M src/string/encoding/ucs2.c
    M src/string/encoding/ucs4.c
    M src/string/encoding/utf16.c
    M src/string/encoding/utf8.c
    M src/string/spf_render.c
    M src/sub.c
    M t/oo/objects.t
    M t/pmc/coroutine.t
    M t/pmc/object.t
    M t/pmc/opcode.t
    M t/pmc/parrotobject.t
    M t/src/extend_vtable.t
    M t/tools/dev/headerizer/testlib/fixedbooleanarray_pmc.in
    M t/tools/dev/headerizer/testlib/nci_pmc.in

  Log Message:
  -----------
  Use new Parrot_ex_throw_from_c_noargs, simplify some PMCs

Use the shorter function.
Simplify BigInt, BigNum exceptions,
Add exception to pmc2c warnings for BigInt, BigNum macros.
Closes GH #1132.

Also fix some more left-overs from GH #1126 (messages)
and some wrong GH #1133 exitcodes, but there are still some wrong 1 left.


Compare: https://github.com/parrot/parrot/compare/e1d4e7cf20b4...ac932da97cba


More information about the parrot-commits mailing list