summaryrefslogtreecommitdiff
path: root/debian/patches/sparc-stubgenerator.diff
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2017-05-12 22:48:36 +0300
committerIgor Pashev <pashev.igor@gmail.com>2017-05-12 22:48:36 +0300
commit37d630875d33bf3c291026c40bb08d1b6c9edcc8 (patch)
tree68fb026f54a962cf1d631f010e98681add6ed014 /debian/patches/sparc-stubgenerator.diff
downloadopenjdk-8-debian.tar.gz
Imported debian/openjdk-8_8u131-b11-1debian/8u131-b11-1debian
Diffstat (limited to 'debian/patches/sparc-stubgenerator.diff')
-rw-r--r--debian/patches/sparc-stubgenerator.diff44
1 files changed, 44 insertions, 0 deletions
diff --git a/debian/patches/sparc-stubgenerator.diff b/debian/patches/sparc-stubgenerator.diff
new file mode 100644
index 0000000..4e0ea20
--- /dev/null
+++ b/debian/patches/sparc-stubgenerator.diff
@@ -0,0 +1,44 @@
+Author: Damien Raude-Morvan <drazzib@debian.org>
+Description: Fix FTBFS on sparc on stubGenerator_sparc.cpp by using explicit class typedef.
+
+--- a/hotspot/src/cpu/sparc/vm/stubGenerator_sparc.cpp
++++ b/hotspot/src/cpu/sparc/vm/stubGenerator_sparc.cpp
+@@ -1055,7 +1055,7 @@
+ Label& L_loop, bool use_prefetch, bool use_bis);
+
+ void disjoint_copy_core(Register from, Register to, Register count, int log2_elem_size,
+- int iter_size, CopyLoopFunc copy_loop_func) {
++ int iter_size, StubGenerator::CopyLoopFunc copy_loop_func) {
+ Label L_copy;
+
+ assert(log2_elem_size <= 3, "the following code should be changed");
+@@ -1206,7 +1206,8 @@
+ __ inc(from, 8);
+ __ sllx(O3, left_shift, O3);
+
+- disjoint_copy_core(from, to, count, log2_elem_size, 16, copy_16_bytes_shift_loop);
++ StubGenerator::CopyLoopFunc aFunction = &StubGenerator::copy_16_bytes_shift_loop;
++ disjoint_copy_core(from, to, count, log2_elem_size, 16, aFunction);
+
+ __ inccc(count, count_dec>>1 ); // + 8 bytes
+ __ brx(Assembler::negative, true, Assembler::pn, L_copy_last_bytes);
+@@ -2085,7 +2086,8 @@
+ __ dec(count, 4); // The cmp at the beginning guaranty count >= 4
+ __ sllx(O3, 32, O3);
+
+- disjoint_copy_core(from, to, count, 2, 16, copy_16_bytes_loop);
++ StubGenerator::CopyLoopFunc aFunction = &StubGenerator::copy_16_bytes_loop;
++ disjoint_copy_core(from, to, count, 2, 16, aFunction);
+
+ __ br(Assembler::always, false, Assembler::pt, L_copy_4_bytes);
+ __ delayed()->inc(count, 4); // restore 'count'
+@@ -2366,7 +2368,8 @@
+ // count >= 0 (original count - 8)
+ __ mov(from, from64);
+
+- disjoint_copy_core(from64, to64, count, 3, 64, copy_64_bytes_loop);
++ StubGenerator::CopyLoopFunc aFunction = &StubGenerator::copy_64_bytes_loop;
++ disjoint_copy_core(from64, to64, count, 3, 64, aFunction);
+
+ // Restore O4(offset0), O5(offset8)
+ __ sub(from64, from, offset0);