Describe the lock address in a lock announcement message.

(note that some error messages are not announcing the lock,
which is not that nice).
At least the lock order violation message do not announce locks.
That should be improved/fixed



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14188 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/helgrind/hg_errors.c b/helgrind/hg_errors.c
index c017a91..9a67b77 100644
--- a/helgrind/hg_errors.c
+++ b/helgrind/hg_errors.c
@@ -770,9 +770,15 @@
    if (VG_(clo_xml)) {
       /* fixme: add announcement */
    } else {
-      VG_(umsg)( "Lock at %p was first observed\n",
-                 (void*)lk->guestaddr );
-      VG_(pp_ExeContext)( lk->appeared_at );
+      if (lk->appeared_at) {
+         VG_(umsg)( "Lock at %p was first observed\n",
+                    (void*)lk->guestaddr );
+         VG_(pp_ExeContext)( lk->appeared_at );
+      } else {
+         VG_(umsg)( "Lock at %p : no stacktrace for first observation\n",
+                    (void*)lk->guestaddr );
+      }
+      HG_(get_and_pp_addrdescr) (lk->guestaddr);
       VG_(umsg)("\n");
    }
 }