)]}'
{
  "commit": "75fa6b8b6bb07ae6d45709e2ebe885cffdfc3015",
  "tree": "0a222b89b4079c44540ada797e0284d49974c571",
  "parents": [
    "9d569367e0e360d736c435b53b448b64d197521c"
  ],
  "author": {
    "name": "Robert Dubner",
    "email": "rdubner@symas.com",
    "time": "Fri Jun 19 21:21:48 2026 -0400"
  },
  "committer": {
    "name": "Robert Dubner",
    "email": "rdubner@symas.com",
    "time": "Fri Jun 19 21:44:29 2026 -0400"
  },
  "message": "cobol: Improve binary conversion from packed-decimal and numeric-display.\n\nThere are routines that create GENERIC conversion routines that convert\npacked-decimal and numeric-display variables to binary.  Some are in\nlibgcobol, and some have direct GENERIC implementations.  All have been\nupdated to use faster divide-and-conquer algorithms.\n\nThe new routines are ten to twenty times faster than the prior versions.\n\ngcc/cobol/ChangeLog:\n\n\t* genapi.cc (parser_enter_file): Establish a var_decl for the\n\tcommon packed-decimal to binary conversion table.\n\t* genutil.cc (digit): Divide-and conquer numeric-display converter.\n\t(num_disp_dive): Likewise.\n\t(pd_dive): Divide-and-conqure packed-decimal converter.\n\t(get_pd_value): Likewise.\n\t(get_binary_value_tree): Use the new routines.\n\t(binary_from_FldNumericBinary):  Divide-and conquer numeric-display\n\tconverter.\n\t* genutil.h: Declaration for var_decl_dp2bin.\n\t* move.cc (mh_little_endian): Allow FldPacked as a source.\n\nlibgcobol/ChangeLog:\n\n\t* charmaps.cc: Eliminate rt_encoding_t.\n\t* libgcobol.cc (console_init): Change how __gg__console_encoding is\n\testablished.\n\t(initialize_program_state): Likewise.\n\t(get_binary_value_local): Use new conversion algorithms.\n\t(__gg__move): Likewise.\n\t* stringbin.cc (__gg__numeric_display_to_binary):  Likewise.\n\t(digit_rt): Likewise.\n\t(num_disp_dive_rt): Likewise.\n\t(pd_dive_rt): Likewise.\n\t(__gg__packed_to_binary): Likewise.\n\t* stringbin.h (STRINGBIN_H_): Declaration for __gg__dp2bin.\n\t(__gg__numeric_display_to_binary): Use new algorithms.\n\t(__gg__packed_to_binary): Likewise.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "aed3d6942a4f9f0cd705ef09d8f89ef6e3661bd7",
      "old_mode": 33188,
      "old_path": "gcc/cobol/genapi.cc",
      "new_id": "d0482c2f4d62aa3c2872109ca21ce076e6e79b11",
      "new_mode": 33188,
      "new_path": "gcc/cobol/genapi.cc"
    },
    {
      "type": "modify",
      "old_id": "74a027bc229e08e174d24f3fd557dcfc5a07767c",
      "old_mode": 33188,
      "old_path": "gcc/cobol/genutil.cc",
      "new_id": "799a17e1bb7458611fc09e9d8c47d61062bce817",
      "new_mode": 33188,
      "new_path": "gcc/cobol/genutil.cc"
    },
    {
      "type": "modify",
      "old_id": "dbcc10bec30b84985a0d7a75eb47884cd88f7cb3",
      "old_mode": 33188,
      "old_path": "gcc/cobol/genutil.h",
      "new_id": "e9ec2630718c78079e8e39e2926cbdd5eff183c0",
      "new_mode": 33188,
      "new_path": "gcc/cobol/genutil.h"
    },
    {
      "type": "modify",
      "old_id": "531b8b69a58e678101ef4936917481e56c952e44",
      "old_mode": 33188,
      "old_path": "gcc/cobol/move.cc",
      "new_id": "4050c49e8d299eca1401957d8cfa5ce54279399e",
      "new_mode": 33188,
      "new_path": "gcc/cobol/move.cc"
    },
    {
      "type": "modify",
      "old_id": "b6da4822d01a8430fb029b60fe2a4d1188490246",
      "old_mode": 33188,
      "old_path": "libgcobol/charmaps.cc",
      "new_id": "6bce28c211c0f633be52d5ca5e46ae79a3a1dc73",
      "new_mode": 33188,
      "new_path": "libgcobol/charmaps.cc"
    },
    {
      "type": "modify",
      "old_id": "8c9e94df528658901c6aa57d6fc83c374ce1c9dd",
      "old_mode": 33188,
      "old_path": "libgcobol/libgcobol.cc",
      "new_id": "7619a2b8904604d529f3ac109732805458b96540",
      "new_mode": 33188,
      "new_path": "libgcobol/libgcobol.cc"
    },
    {
      "type": "modify",
      "old_id": "e4584a47c8a09fdc2e8e989f89a322ebc7f6e07e",
      "old_mode": 33188,
      "old_path": "libgcobol/stringbin.cc",
      "new_id": "8597338c57d58b41e512f9945208e5cdc6585193",
      "new_mode": 33188,
      "new_path": "libgcobol/stringbin.cc"
    },
    {
      "type": "modify",
      "old_id": "b4b2238884f15ac4b9125bf7187f205f9cbf11e4",
      "old_mode": 33188,
      "old_path": "libgcobol/stringbin.h",
      "new_id": "1ae7ca9f314474f7cf308e52f0e7e30101364b34",
      "new_mode": 33188,
      "new_path": "libgcobol/stringbin.h"
    }
  ]
}
