[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#656295: webkit: FTBFS: ../Source/JavaScriptCore/assembler/MacroAssemblerSH4.h:1377:23: error: 'extub' was not declared in this scope



Source: webkit
Version: 1.6.1-5
Severity: wishlist
Justification: fails to build from source
Tags: patch
User: debian-sh4@superh.org
Usertags: sh4
X-Debbugs-CC: debian-superh@lists.debian.org

Hi,

webkit FTBFS on Renesas SH4.

  http://buildd.debian-ports.org/status/fetch.php?pkg=webkit&arch=sh4&ver=1.6.1-5&stamp=1320591240

This is caused by implementation error of a function and a function use old.

-----
mv -f Source/JavaScriptCore/API/.deps/libjavascriptcoregtk_3_0_la-JSCallbackConstructor.Tpo
Source/JavaScriptCore/API/.deps/libjavascriptcoregtk_3_0_la-JSCallbackConstructor.Plo
/bin/sh ./libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.
-I..  -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type -Wformat
-Wformat-security -Wno-format-y2k -Wundef -Wmissing-format-attribute
-Wpointer-arith -Wwrite-strings -Wno-unused-parameter -Wno-parentheses
-fno-exceptions -DENABLE_GLIB_SUPPORT=1 -DBUILDING_CAIRO__=1
-DBUILDING_GTK__=1 -DWTF_CHANGES -DXP_UNIX -DWTF_USE_ICU_UNICODE=1
-DWTF_USE_GSTREAMER=1  -DNDEBUG   -I../Source
-I../Source/JavaScriptCore -I../Source/JavaScriptCore/API
-I../Source/JavaScriptCore/assembler
-I../Source/JavaScriptCore/bytecode
-I../Source/JavaScriptCore/bytecompiler -I../Source/JavaScriptCore/dfg
-I../Source/JavaScriptCore/heap -I../Source/JavaScriptCore/debugger
-I../Source/JavaScriptCore/ForwardingHeaders
-I../Source/JavaScriptCore/interpreter -I../Source/JavaScriptCore/jit
-I../Source/JavaScriptCore/jit -I../Source/JavaScriptCore/parser
-I../Source/JavaScriptCore/profiler -I../Source/JavaScriptCore/runtime
-I../Source/JavaScriptCore/wtf -I../Source/JavaScriptCore/wtf
-I../Source/JavaScriptCore/wtf/gobject
-I../Source/JavaScriptCore/wtf/gtk -I../Source/JavaScriptCore/wtf/text
-I../Source/JavaScriptCore/wtf/unicode -I../Source/JavaScriptCore/yarr
-I./Source/JavaScriptCore -I./Source/JavaScriptCore/parser
-I./Source/JavaScriptCore/runtime  -fno-rtti -fstrict-aliasing -O3
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -D_REENTRANT
-I/usr/include  -g -Wall -Wl,--as-needed -O2 -mieee -w -O2 -MT
Source/JavaScriptCore/API/libjavascriptcoregtk_3_0_la-JSCallbackFunction.lo
-MD -MP -MF Source/JavaScriptCore/API/.deps/libjavascriptcoregtk_3_0_la-JSCallbackFunction.Tpo
-c -o Source/JavaScriptCore/API/libjavascriptcoregtk_3_0_la-JSCallbackFunction.lo
`test -f 'Source/JavaScriptCore/API/JSCallbackFunction.cpp' || echo
'../'`Source/JavaScriptCore/API/JSCallbackFunction.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -Wall -W -Wcast-align
-Wchar-subscripts -Wreturn-type -Wformat -Wformat-security
-Wno-format-y2k -Wundef -Wmissing-format-attribute -Wpointer-arith
-Wwrite-strings -Wno-unused-parameter -Wno-parentheses -fno-exceptions
-DENABLE_GLIB_SUPPORT=1 -DBUILDING_CAIRO__=1 -DBUILDING_GTK__=1
-DWTF_CHANGES -DXP_UNIX -DWTF_USE_ICU_UNICODE=1 -DWTF_USE_GSTREAMER=1
-DNDEBUG -I../Source -I../Source/JavaScriptCore
-I../Source/JavaScriptCore/API -I../Source/JavaScriptCore/assembler
-I../Source/JavaScriptCore/bytecode
-I../Source/JavaScriptCore/bytecompiler -I../Source/JavaScriptCore/dfg
-I../Source/JavaScriptCore/heap -I../Source/JavaScriptCore/debugger
-I../Source/JavaScriptCore/ForwardingHeaders
-I../Source/JavaScriptCore/interpreter -I../Source/JavaScriptCore/jit
-I../Source/JavaScriptCore/jit -I../Source/JavaScriptCore/parser
-I../Source/JavaScriptCore/profiler -I../Source/JavaScriptCore/runtime
-I../Source/JavaScriptCore/wtf -I../Source/JavaScriptCore/wtf
-I../Source/JavaScriptCore/wtf/gobject
-I../Source/JavaScriptCore/wtf/gtk -I../Source/JavaScriptCore/wtf/text
-I../Source/JavaScriptCore/wtf/unicode -I../Source/JavaScriptCore/yarr
-I./Source/JavaScriptCore -I./Source/JavaScriptCore/parser
-I./Source/JavaScriptCore/runtime -fno-rtti -fstrict-aliasing -O3
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -D_REENTRANT
-I/usr/include -g -Wall -Wl,--as-needed -O2 -mieee -w -O2 -MT
Source/JavaScriptCore/API/libjavascriptcoregtk_3_0_la-JSCallbackFunction.lo
-MD -MP -MF Source/JavaScriptCore/API/.deps/libjavascriptcoregtk_3_0_la-JSCallbackFunction.Tpo
-c ../Source/JavaScriptCore/API/JSCallbackFunction.cpp  -fPIC -DPIC -o
Source/JavaScriptCore/API/.libs/libjavascriptcoregtk_3_0_la-JSCallbackFunction.o
In file included from
../Source/JavaScriptCore/assembler/MacroAssemblerSH4.h:32:0,
                 from ../Source/JavaScriptCore/assembler/MacroAssembler.h:54,
                 from ../Source/JavaScriptCore/bytecode/Instruction.h:32,
                 from ../Source/JavaScriptCore/bytecode/CodeBlock.h:35,
                 from ../Source/JavaScriptCore/API/JSCallbackFunction.cpp:31:
../Source/JavaScriptCore/assembler/SH4Assembler.h: In member function
'void* JSC::SH4Assembler::executableCopy(JSC::JSGlobalData&,
JSC::ExecutablePool*)':
../Source/JavaScriptCore/assembler/SH4Assembler.h:1511:61: error: no
matching function for call to
'JSC::AssemblerBufferWithConstantPool<512, 4, 2,
JSC::SH4Assembler>::executableCopy(JSC::JSGlobalData&,
JSC::ExecutablePool*&)'
../Source/JavaScriptCore/assembler/SH4Assembler.h:1511:61: note: candidate is:
../Source/JavaScriptCore/assembler/AssemblerBufferWithConstantPool.h:198:40:
note: WTF::PassRefPtr<WTF::MetaAllocatorHandle>
JSC::AssemblerBufferWithConstantPool<maxPoolSize, barrierSize,
maxInstructionSize, AssemblerType>::executableCopy(JSC::JSGlobalData&)
[with int maxPoolSize = 512, int barrierSize = 4, int
maxInstructionSize = 2, AssemblerType = JSC::SH4Assembler]
../Source/JavaScriptCore/assembler/AssemblerBufferWithConstantPool.h:198:40:
note:   candidate expects 1 argument, 2 provided
In file included from ../Source/JavaScriptCore/assembler/MacroAssembler.h:54:0,
                 from ../Source/JavaScriptCore/bytecode/Instruction.h:32,
                 from ../Source/JavaScriptCore/bytecode/CodeBlock.h:35,
                 from ../Source/JavaScriptCore/API/JSCallbackFunction.cpp:31:
../Source/JavaScriptCore/assembler/MacroAssemblerSH4.h: In member
function 'JSC::AbstractMacroAssembler<JSC::SH4Assembler>::Jump
JSC::MacroAssemblerSH4::branch8(JSC::MacroAssemblerSH4::RelationalCondition,
JSC::AbstractMacroAssembler<JSC::SH4Assembler>::BaseIndex,
JSC::AbstractMacroAssembler<JSC::SH4Assembler>::TrustedImm32)':
../Source/JavaScriptCore/assembler/MacroAssemblerSH4.h:1377:23: error:
'extub' was not declared in this scope
make[2]: *** [Source/JavaScriptCore/API/libjavascriptcoregtk_3_0_la-JSCallbackFunction.lo]
Error 1
make[2]: Leaving directory
`/build/buildd-webkit_1.6.1-5-sh4-hJh2GB/webkit-1.6.1/build-3.0'
make[1]: *** [all] Error 2
-----

I created a patch whici revise this problem.
I attached this patch.
Could you check and apply this patch?

Best regards,
 Nobuhiro

--
Nobuhiro Iwamatsu
   iwamatsu at {nigauri.org / debian.org}
   GPG ID: 40AD1FA6
Description: Fix FTBFS on Renesas sh4
 1. Fix "../Source/JavaScriptCore/assembler/MacroAssemblerSH4.h:1377:23: error: 'extub' was not declared in this scope"
    extub is member of SH4Assembler class.

 2, Fix "../Source/JavaScriptCore/assembler/SH4Assembler.h:1511:61: error: no matching function for call to 
    'JSC::AssemblerBufferWithConstantPool<512, 4, 2, JSC::SH4Assembler>::executableCopy(JSC::JSGlobalData&, 
     JSC::ExecutablePool*&)'"
    executableCopy function is broken. Update to new API.

Author: Nobuhiro Iwamatsu <iwamatsu@debian.org>
Last-Update: 2012-01-12

diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerSH4.h b/Source/JavaScriptCore/assembler/MacroAssemblerSH4.h
index 82553e9..e4d0841 100644
--- a/Source/JavaScriptCore/assembler/MacroAssemblerSH4.h
+++ b/Source/JavaScriptCore/assembler/MacroAssemblerSH4.h
@@ -1374,7 +1374,7 @@ public:
             add32(TrustedImm32(left.offset), scr);
         add32(left.base, scr);
         load8(scr, scr);
-        extub(scr, scr);
+        m_assembler.extub(scr, scr);
         RegisterID scr1 = claimScratch();
         m_assembler.loadConstant(right.m_value, scr1);
         releaseScratch(scr);
diff --git a/Source/JavaScriptCore/assembler/SH4Assembler.h b/Source/JavaScriptCore/assembler/SH4Assembler.h
index cfb330a..e66d09f 100644
--- a/Source/JavaScriptCore/assembler/SH4Assembler.h
+++ b/Source/JavaScriptCore/assembler/SH4Assembler.h
@@ -1506,9 +1506,9 @@ public:
         return readPCrelativeAddress((*(reinterpret_cast<uint16_t*>(code)) & 0xff), reinterpret_cast<uint16_t*>(code));
     }
 
-    void* executableCopy(JSGlobalData& globalData, ExecutablePool* allocator)
+    PassRefPtr<ExecutableMemoryHandle> executableCopy(JSGlobalData& globalData)
     {
-        return m_buffer.executableCopy(globalData, allocator);
+        return m_buffer.executableCopy(globalData);
     }
 
     void prefix(uint16_t pre)

Reply to: