aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-12-10 01:28:03 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-12-09 20:28:03 -0500
commit0b6c426b5d7299bfcf734b84e6885e4b13f74a7b (patch)
tree842cc6a6f8f9e704fe43acbb3e6082b5dff21624
parent6d8b12448d9bbe96517f2145a93f4589e947edb5 (diff)
downloadgcc-0b6c426b5d7299bfcf734b84e6885e4b13f74a7b.zip
gcc-0b6c426b5d7299bfcf734b84e6885e4b13f74a7b.tar.gz
gcc-0b6c426b5d7299bfcf734b84e6885e4b13f74a7b.tar.bz2
tree.c (append_random_char): Conditionalize INO for VMS.
* tree.c (append_random_char): Conditionalize INO for VMS. Co-Authored-By: Douglas B Rupp <rupp@gnat.com> From-SVN: r47827
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree.c14
2 files changed, 15 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9c3dcda..a0ca3f3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Sun Dec 9 20:19:32 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ Douglas B. Rupp <rupp@gnat.com>
+
+ * tree.c (append_random_char): Conditionalize INO for VMS.
+
2001-12-09 Richard Henderson <rth@redhat.com>
* cfgcleanup.c (label_is_jump_target_p): New function.
diff --git a/gcc/tree.c b/gcc/tree.c
index b60fdc7..45d18f6 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -4467,14 +4467,20 @@ append_random_chars (template)
{
struct stat st;
- /* VALUE should be unique for each file and must
- not change between compiles since this can cause
- bootstrap comparison errors. */
+ /* VALUE should be unique for each file and must not change between
+ compiles since this can cause bootstrap comparison errors. */
if (stat (main_input_filename, &st) < 0)
abort ();
- value = st.st_dev ^ st.st_ino ^ st.st_mtime;
+ /* In VMS, ino is an array, so we have to use both values. We
+ conditionalize that. */
+#ifdef VMS
+#define INO_TO_INT(INO) ((int) (INO)[1] << 16 ^ (int) (INO)[2])
+#else
+#define INO_TO_INT(INO) INO
+#endif
+ value = st.st_dev ^ INO_TO_INT (st.st_ino) ^ st.st_mtime;
}
template += strlen (template);