jit: make simpler reproducers
authorDavid Malcolm <dmalcolm@redhat.com>
Fri, 18 Aug 2017 23:50:34 +0000 (23:50 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Fri, 18 Aug 2017 23:50:34 +0000 (23:50 +0000)
commit519d0798689cc68bfb27658c6f91ac3e07c04517
treecc81ac395b2f465a9ba04bcf927d4703f1e0d7e6
parentb1eb28d14049e19baf772e6052a3cc388e85bd51
jit: make simpler reproducers

The C reproducers generated by gcc_jit_context_dump_reproducer_to_file
contain numerous pointer values (from %p) to ensure uniqueness of the
identifiers, but this makes them less readable than they could be.

This patch updates reproducer::make_identifier so that the pointer
is only added if it's necessary for uniqueness.

gcc/jit/ChangeLog:
* jit-recording.c (class gcc::jit::reproducer): Rename field
"m_identifiers" to "m_map_memento_to_identifier".  Add field
"m_set_identifiers" and struct hash_traits for it.
(gcc::jit::reproducer::reproducer): Update for above.
(convert_to_identifier): New function.
(gcc::jit::reproducer::ensure_identifier_is_unique): New method.
(gcc::jit::reproducer::make_identifier): Avoid appending the %p
unless necessary for uniqueness.  Update for field renaming.
(gcc::jit::reproducer::get_identifier): Update for field renaming.

From-SVN: r251191
gcc/jit/ChangeLog
gcc/jit/jit-recording.c