Misalign address in the test rather than structure
authorOpenJDK Team <openjdk-17@packages.debian.org>
Thu, 17 Oct 2024 08:59:51 +0000 (10:59 +0200)
committerMatthias Klose <doko@ubuntu.com>
Thu, 17 Oct 2024 08:59:51 +0000 (10:59 +0200)
mk68-support.diff aligned metaspace structures by 4 bytes breaking the test.
Add 1 to address type rather than aligned structure to produce misaligned pointer.

Gbp-Pq: Name misalign-pointer-for-armhf.patch

test/hotspot/gtest/metaspace/test_is_metaspace_obj.cpp

index d96f57d29d3a95fcaa95546dcf5815da9f871a6f..38ba9fcda6ed6602bce5bd4aff3318491d35bb2a 100644 (file)
@@ -61,7 +61,7 @@ public:
     ASSERT_TRUE(MetaspaceObj::is_valid(p));
 
     // A misaligned object shall not be recognized
-    const MetaspaceObj* p_misaligned = (MetaspaceObj*)((address)p) + 1;
+    const MetaspaceObj* p_misaligned = (MetaspaceObj*)((address)p + 1);
     ASSERT_FALSE(MetaspaceObj::is_valid(p_misaligned));
 
     // Test VirtualSpaceList::contains
@@ -72,7 +72,7 @@ public:
     ASSERT_TRUE(vslist->contains((MetaWord*)p));
 
     // A misaligned pointer shall still be recognized by list::contains
-    ASSERT_TRUE(vslist->contains((MetaWord*)((address)p) + 1));
+    ASSERT_TRUE(vslist->contains((MetaWord*)((address)p + 1)));
 
     // Now for some bogus values
     ASSERT_FALSE(MetaspaceObj::is_valid((MetaspaceObj*)NULL));