+2013-07-22 Eric Christopher <echristo@gmail.com>
+
+ * dwarf2out.c (die_odr_checksum): New function to use
+ CHECKSUM_ macros and ULEB128 for DIE tag.
+ (generate_type_signature): Use.
+
2013-07-22 Eric Botcazou <ebotcazou@adacore.com>
* config.gcc (sparc*-*-*): Accept leon3 processor.
CHECKSUM_ULEB128 (0);
}
+/* Add a type name and tag to a hash. */
+static void
+die_odr_checksum (int tag, const char *name, md5_ctx *ctx)
+{
+ CHECKSUM_ULEB128 (tag);
+ CHECKSUM_STRING (name);
+}
+
#undef CHECKSUM
#undef CHECKSUM_STRING
#undef CHECKSUM_ATTR
if (parent != NULL)
checksum_die_context (parent, &ctx);
- md5_process_bytes (&die->die_tag, sizeof (die->die_tag), &ctx);
- md5_process_bytes (name, strlen (name) + 1, &ctx);
+ /* Checksum the current DIE. */
+ die_odr_checksum (die->die_tag, name, &ctx);
md5_finish_ctx (&ctx, checksum);
add_AT_data8 (type_node->root_die, DW_AT_GNU_odr_signature, &checksum[8]);