Misalign address in the test rather than structure
authorOpenJDK Team <openjdk-21@packages.debian.org>
Thu, 23 Oct 2025 10:14:51 +0000 (12:14 +0200)
committerMoritz Mühlenhoff <jmm@debian.org>
Thu, 23 Oct 2025 10:14:51 +0000 (12:14 +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 0304cca7374d2fa04447306ad19c852b04003590..45e64ec916637844d5118abbd5df291fa0ed2109 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*)nullptr));