Bug 247873 - [WPE][GTK] Fix several warnings when building for armv7 (32-bits)
Summary: [WPE][GTK] Fix several warnings when building for armv7 (32-bits)
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WPE WebKit (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Carlos Alberto Lopez Perez
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-11-13 19:00 PST by Carlos Alberto Lopez Perez
Modified: 2022-11-17 09:31 PST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos Alberto Lopez Perez 2022-11-13 19:00:28 PST
When building for ARMv7 (32-bits) there are several warnings appearing:

/home/clopez/webkit/webkit/PerformanceTests/MallocBench/MallocBench/stress_aligned.cpp:151:20: error: conversion from ‘long long unsigned int’ to ‘size_t’ {aka ‘unsigned int’} changes value from ‘35184372088831’ to ‘4294967295’ [-Werror=overflow]
  151 |     size_t limit = 0x00001ffffffffffful;
      |                    ^~~~~~~~~~~~~~~~~~~~

/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h: In static member function ‘static void JSC::ARMv7Assembler::revertJumpTo_movT3movtcmpT2(void*, RegisterID, RegisterID, uintptr_t)’:
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h:1375:49: error: bitwise operation between different enumeration types ‘JSC::ARMv7Assembler::OpcodeID1’ and ‘JSC::ARMv7Assembler::RegisterID’ {aka ‘JSC::ARMRegisters::RegisterID’} is deprecated [-Werror=deprecated-enum-enum-conversion]
 1375 |             static_cast<uint16_t>(OP_CMP_reg_T2 | left)
      |                                   ~~~~~~~~~~~~~~^~~~~~
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h: In member function ‘void JSC::ARMv7Assembler::ARMInstructionFormatter::twoWordOp12Reg4FourFours(JSC::ARMv7Assembler::OpcodeID1, JSC::ARMv7Assembler::RegisterID, JSC::ARMv7Assembler::FourFours)’:
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h:3040:34: error: bitwise operation between different enumeration types ‘JSC::ARMv7Assembler::OpcodeID1’ and ‘JSC::ARMv7Assembler::RegisterID’ {aka ‘JSC::ARMRegisters::RegisterID’} is deprecated [-Werror=deprecated-enum-enum-conversion]
 3040 |             m_buffer.putShort(op | reg);
      |                               ~~~^~~~~
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h: In member function ‘void JSC::ARMv7Assembler::ARMInstructionFormatter::twoWordOp12Reg4Reg4Imm12(JSC::ARMv7Assembler::OpcodeID1, JSC::ARMv7Assembler::RegisterID, JSC::ARMv7Assembler::RegisterID, uint16_t)’:
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h:3073:34: error: bitwise operation between different enumeration types ‘JSC::ARMv7Assembler::OpcodeID1’ and ‘JSC::ARMv7Assembler::RegisterID’ {aka ‘JSC::ARMRegisters::RegisterID’} is deprecated [-Werror=deprecated-enum-enum-conversion]
 3073 |             m_buffer.putShort(op | reg1);
      |                               ~~~^~~~~~
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h: In member function ‘void JSC::ARMv7Assembler::ARMInstructionFormatter::twoWordOp12Reg4Reg4Reg4Imm8(JSC::ARMv7Assembler::OpcodeID1, JSC::ARMv7Assembler::RegisterID, JSC::ARMv7Assembler::RegisterID, JSC::ARMv7Assembler::RegisterID, uint8_t)’:
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h:3079:34: error: bitwise operation between different enumeration types ‘JSC::ARMv7Assembler::OpcodeID1’ and ‘JSC::ARMv7Assembler::RegisterID’ {aka ‘JSC::ARMRegisters::RegisterID’} is deprecated [-Werror=deprecated-enum-enum-conversion]
 3079 |             m_buffer.putShort(op | reg1);
      |                               ~~~^~~~~~
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h: In member function ‘void JSC::ARMv7Assembler::ARMInstructionFormatter::twoWordOp12Reg40Imm3Reg4Imm20Imm5(JSC::ARMv7Assembler::OpcodeID1, JSC::ARMv7Assembler::RegisterID, JSC::ARMv7Assembler::RegisterID, uint16_t, uint16_t, uint16_t)’:
/home/clopez/webkit/webkit/Source/JavaScriptCore/assembler/ARMv7Assembler.h:3085:34: error: bitwise operation between different enumeration types ‘JSC::ARMv7Assembler::OpcodeID1’ and ‘JSC::ARMv7Assembler::RegisterID’ {aka ‘JSC::ARMRegisters::RegisterID’} is deprecated [-Werror=deprecated-enum-enum-conversion]
 3085 |             m_buffer.putShort(op | reg1);
      |                               ~~~^~~~~~


In file included from /home/clopez/webkit/webkit/WebKitBuild/Release/WebCore/DerivedSources/unified-sources/UnifiedSource-aba958d6-6.cpp:8:
/home/clopez/webkit/webkit/Source/WebCore/accessibility/atspi/AccessibilityObjectTextAtspi.cpp: In member function ‘std::optional<unsigned int> WebCore::AccessibilityObjectAtspi::characterIndex(UChar, unsigned int) const’:
/home/clopez/webkit/webkit/Source/WebCore/accessibility/atspi/AccessibilityObjectTextAtspi.cpp:527:16: error: comparison of integer expressions of different signedness: ‘unsigned int’ and ‘long int’ [-Werror=sign-compare]
  527 |     if (offset >= length)
      |         ~~~~~~~^~~~~~~~~
/home/clopez/webkit/webkit/Source/WebCore/accessibility/atspi/AccessibilityObjectTextAtspi.cpp: In member function ‘void WebCore::AccessibilityObjectAtspi::selectionChanged(const WebCore::VisibleSelection&)’:
/home/clopez/webkit/webkit/Source/WebCore/accessibility/atspi/AccessibilityObjectTextAtspi.cpp:750:21: error: comparison of integer expressions of different signedness: ‘unsigned int’ and ‘long int’ [-Werror=sign-compare]
  750 |     if (caretOffset <= length)
      |         ~~~~~~~~~~~~^~~~~~~~~


n file included from /home/clopez/webkit/webkit/WebKitBuild/Release/WebCore/DerivedSources/unified-sources/UnifiedSource-3c72abbe-44.cpp:3:
/home/clopez/webkit/webkit/Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.cpp: In member function ‘bool WebCore::FECompositeSoftwareApplier::applyArithmetic(WebCore::FilterImage&, WebCore::FilterImage&, WebCore::FilterImage&) const’:
/home/clopez/webkit/webkit/Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.cpp:143:11: error: unused variable ‘sourcePixelBytes’ [-Werror=unused-variable]
  143 |     auto* sourcePixelBytes = sourcePixelBuffer->bytes();
      |           ^~~~~~~~~~~~~~~~
/home/clopez/webkit/webkit/Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.cpp:144:11: error: unused variable ‘destinationPixelBytes’ [-Werror=unused-variable]
  144 |     auto* destinationPixelBytes = destinationPixelBuffer->bytes();
      |           ^~~~~~~~~~~~~~~~~~~~~
/home/clopez/webkit/webkit/Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.cpp:146:10: error: unused variable ‘length’ [-Werror=unused-variable]
  146 |     auto length = sourcePixelBuffer->sizeInBytes();
      |          ^~~~~~

In file included from /home/clopez/webkit/webkit/Source/WebCore/platform/graphics/gbm/DMABufObject.h:31,
                 from /home/clopez/webkit/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxyDMABuf.h:34,
                 from /home/clopez/webkit/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxyDMABuf.cpp:28:
/home/clopez/webkit/webkit/Source/WebCore/platform/graphics/gbm/DMABufReleaseFlag.h: In member function ‘void WebCore::DMABufReleaseFlag::release()’:
/home/clopez/webkit/webkit/Source/WebCore/platform/graphics/gbm/DMABufReleaseFlag.h:75:14: error: ignoring return value of ‘ssize_t write(int, const void*, size_t)’ declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
   75 |         write(fd.value(), &value, sizeof(uint64_t));
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Comment 1 Carlos Alberto Lopez Perez 2022-11-13 19:11:26 PST
Pull request: https://github.com/WebKit/WebKit/pull/6453
Comment 2 EWS 2022-11-17 09:31:50 PST
Committed 256792@main (8e78751b4720): <https://commits.webkit.org/256792@main>

Reviewed commits have been landed. Closing PR #6453 and removing active labels.