RESOLVED FIXED 112145
LLINT C loop warning fix for GCC
https://bugs.webkit.org/show_bug.cgi?id=112145
Summary LLINT C loop warning fix for GCC
Csaba Osztrogonác
Reported 2013-03-12 06:47:27 PDT
C loop backend isn't buildable for JSVALUE32_64 platforms now: https://bugs.webkit.org/show_bug.cgi?id=112141 After the fix proposed in this bug the build fails with false positive warnings: generated/LLIntAssembly.h: In static member function 'static JSC::JSValue JSC::LLInt::CLoop::execute(JSC::CallFrame*, JSC::OpcodeID, bool)': generated/LLIntAssembly.h:3444:80: error: 't0.JSC::CLoopRegister::<anonymous>.JSC::CLoopRegister::<anonymous union>::instruction' may be used uninitialized in this function [-Werror=uninitialized] /home/oszi/WebKit/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:305:19: note: 't0.JSC::CLoopRegister::<anonymous>.JSC::CLoopRegister::<anonymous union>::instruction' was declared here generated/LLIntAssembly.h:3279:80: error: 't1.JSC::CLoopRegister::<anonymous>.JSC::CLoopRegister::<anonymous union>::i' may be used uninitialized in this function [-Werror=uninitialized] /home/oszi/WebKit/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:305:23: note: 't1.JSC::CLoopRegister::<anonymous>.JSC::CLoopRegister::<anonymous union>::i' was declared here cc1plus: all warnings being treated as errors We should shut this warning down for GCC similar to MSVC. :) Patch is coming soon.
Attachments
Patch (1.34 KB, patch)
2013-03-12 06:50 PDT, Csaba Osztrogonác
no flags
updated patch for EWS (1.43 KB, patch)
2013-03-13 02:26 PDT, Csaba Osztrogonác
no flags
Csaba Osztrogonác
Comment 1 2013-03-12 06:50:02 PDT
Filip Pizlo
Comment 2 2013-03-12 08:19:55 PDT
Comment on attachment 192726 [details] Patch r=me
Filip Pizlo
Comment 3 2013-03-12 08:21:54 PDT
Actually, I think there may be a better way. I think that the initializations to zero are necessary on all smart compilers. We should make them unconditional.
Filip Pizlo
Comment 4 2013-03-12 08:22:55 PDT
Comment on attachment 192726 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=192726&action=review My review still stands since this is a build fix and you probably want to land it quickly. Your call if you want to try my improved version in this patch or in another one. > Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:300 > -#if COMPILER(MSVC) > +#if COMPILER(MSVC) || COMPILER(GCC) Maybe just remove this, and then #endif?
Csaba Osztrogonác
Comment 5 2013-03-13 02:26:34 PDT
Created attachment 192887 [details] updated patch for EWS
Csaba Osztrogonác
Comment 6 2013-03-13 02:27:39 PDT
(In reply to comment #5) > Created an attachment (id=192887) [details] > updated patch for EWS It wasn't so important to land the original patch, let's see if we can make all compiler happy with unconditional initialization.
WebKit Review Bot
Comment 7 2013-03-13 05:15:39 PDT
Comment on attachment 192887 [details] updated patch for EWS Clearing flags on attachment: 192887 Committed r145703: <http://trac.webkit.org/changeset/145703>
WebKit Review Bot
Comment 8 2013-03-13 05:15:42 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.