On 10/25/2017 05:36 PM, Nathan Sidwell wrote: > This patch removes 'label_value' from lang_identifier, shrinking it from > 72 to 64 bytes (on 64-bit machine).   We replace this by augmenting the > already used per-function named_labels hash table.  This is a major win, > because labels are extremely rare and there are many identifiers.  We > also shring the binding structure by a pointer, as the shadowed_labels > list goes away. I was a little over zealous killing code, but perhaps now this is being a little paranoid. It restore the UID sorting of labels when inserting them into the BLOCK chain. The original comment was confusing, as it mentioned code generation and then debug information. I think this just affects the order of debug records, but ICBW. For any given function, the iteration of the hash table should be stable across versions, unless the hash table implementation or the IDENTIFIER_HASH_VALUE changes. But may as well be safe. I also add the N_ translation markup I forgot about yesterday when taking strings out of 'inform' calls. nathan -- Nathan Sidwell