Commit 8752b1b0 authored by commit-queue@webkit.org's avatar commit-queue@webkit.org
Browse files

Remove support for RVCT version less than 4.0

https://bugs.webkit.org/show_bug.cgi?id=109390

The 4.0 version of the RVCT compiler was
released in 2008.

Remove support for version older then 4.0 of RVCT,
and keep the support for newer RVCT versions.

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-02-15
Reviewed by Zoltan Herczeg.

* WTF.gypi: Remove StringExtras.cpp.
* WTF.vcproj/WTF.vcproj: Remove StringExtras.cpp.
* WTF.vcxproj/WTF.vcxproj: Remove StringExtras.cpp.
* WTF.vcxproj/WTF.vcxproj.filters: Remove StringExtras.cpp.
* WTF.xcodeproj/project.pbxproj: Remove StringExtras.cpp.
* wtf/CMakeLists.txt: Remove StringExtras.cpp.
* wtf/Compiler.h: Remove tests for RVCT_VERSION_AT_LEAST(3, 0, 0, 0).
* wtf/Float32Array.h: Remove a quirk introduced for RVCT version <=2.2 .
* wtf/Float64Array.h: Ditto.
* wtf/Int16Array.h: Ditto.
* wtf/Int32Array.h: Ditto.
* wtf/Int8Array.h: Ditto.
* wtf/MathExtras.h: Remove a quirk needed for RVCT version  <= 3.0.
* wtf/Platform.h: Remove test for RVCT 4.0. Remove OS(RVCT).
* wtf/StringExtras.cpp: Removed.
* wtf/StringExtras.h: Remove a quirk introduced for RVCT version < 4.0.
* wtf/Uint16Array.h: Remove a quirk introduced for RVCT version <= 2.2.
* wtf/Uint32Array.h: Ditto.
* wtf/Uint8Array.h: Ditto.
* wtf/Uint8ClampedArray.h: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143061 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 52f5b9a3
2013-02-15 Laszlo Gombos <l.gombos@samsung.com>
Remove support for RVCT version less than 4.0
https://bugs.webkit.org/show_bug.cgi?id=109390
The 4.0 version of the RVCT compiler was
released in 2008.
Remove support for version older then 4.0 of RVCT,
and keep the support for newer RVCT versions.
Reviewed by Zoltan Herczeg.
* WTF.gypi: Remove StringExtras.cpp.
* WTF.vcproj/WTF.vcproj: Remove StringExtras.cpp.
* WTF.vcxproj/WTF.vcxproj: Remove StringExtras.cpp.
* WTF.vcxproj/WTF.vcxproj.filters: Remove StringExtras.cpp.
* WTF.xcodeproj/project.pbxproj: Remove StringExtras.cpp.
* wtf/CMakeLists.txt: Remove StringExtras.cpp.
* wtf/Compiler.h: Remove tests for RVCT_VERSION_AT_LEAST(3, 0, 0, 0).
* wtf/Float32Array.h: Remove a quirk introduced for RVCT version <=2.2 .
* wtf/Float64Array.h: Ditto.
* wtf/Int16Array.h: Ditto.
* wtf/Int32Array.h: Ditto.
* wtf/Int8Array.h: Ditto.
* wtf/MathExtras.h: Remove a quirk needed for RVCT version <= 3.0.
* wtf/Platform.h: Remove test for RVCT 4.0. Remove OS(RVCT).
* wtf/StringExtras.cpp: Removed.
* wtf/StringExtras.h: Remove a quirk introduced for RVCT version < 4.0.
* wtf/Uint16Array.h: Remove a quirk introduced for RVCT version <= 2.2.
* wtf/Uint32Array.h: Ditto.
* wtf/Uint8Array.h: Ditto.
* wtf/Uint8ClampedArray.h: Ditto.
2013-02-15 Christophe Dumez <ch.dumez@sisa.samsung.com>
 
Add CString operators for comparison with const char*
......
......@@ -202,7 +202,6 @@
'wtf/SegmentedVector.h',
'wtf/SizeLimits.cpp',
'wtf/StackBounds.cpp',
'wtf/StringExtras.cpp',
'wtf/StringPrintStream.cpp',
'wtf/TCPackedCache.h',
'wtf/TCPageMap.h',
......
......@@ -1200,10 +1200,6 @@
RelativePath="..\wtf\StdLibExtras.h"
>
</File>
<File
RelativePath="..\wtf\StringExtras.cpp"
>
</File>
<File
RelativePath="..\wtf\StringExtras.h"
>
......
......@@ -53,7 +53,6 @@
<ClCompile Include="..\wtf\SHA1.cpp" />
<ClCompile Include="..\wtf\SizeLimits.cpp" />
<ClCompile Include="..\wtf\StackBounds.cpp" />
<ClCompile Include="..\wtf\StringExtras.cpp" />
<ClCompile Include="..\wtf\StringPrintStream.cpp" />
<ClCompile Include="..\wtf\TCSystemAlloc.cpp" />
<ClCompile Include="..\wtf\text\AtomicString.cpp" />
......
......@@ -195,9 +195,6 @@
<ClCompile Include="..\wtf\StackBounds.cpp">
<Filter>wtf</Filter>
</ClCompile>
<ClCompile Include="..\wtf\StringExtras.cpp">
<Filter>wtf</Filter>
</ClCompile>
<ClCompile Include="..\wtf\StringPrintStream.cpp">
<Filter>wtf</Filter>
</ClCompile>
......
......@@ -224,7 +224,6 @@
A8A47428151A825B004123FF /* StackBounds.h in Headers */ = {isa = PBXBuildFile; fileRef = A8A4730F151A825B004123FF /* StackBounds.h */; };
A8A47429151A825B004123FF /* StaticConstructors.h in Headers */ = {isa = PBXBuildFile; fileRef = A8A47310151A825B004123FF /* StaticConstructors.h */; };
A8A4742A151A825B004123FF /* StdLibExtras.h in Headers */ = {isa = PBXBuildFile; fileRef = A8A47311151A825B004123FF /* StdLibExtras.h */; };
A8A4742B151A825B004123FF /* StringExtras.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A8A47312151A825B004123FF /* StringExtras.cpp */; };
A8A4742C151A825B004123FF /* StringExtras.h in Headers */ = {isa = PBXBuildFile; fileRef = A8A47313151A825B004123FF /* StringExtras.h */; };
A8A4742D151A825B004123FF /* StringHasher.h in Headers */ = {isa = PBXBuildFile; fileRef = A8A47314151A825B004123FF /* StringHasher.h */; };
A8A4742E151A825B004123FF /* TCPackedCache.h in Headers */ = {isa = PBXBuildFile; fileRef = A8A47315151A825B004123FF /* TCPackedCache.h */; };
......@@ -536,7 +535,6 @@
A8A4730F151A825B004123FF /* StackBounds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackBounds.h; sourceTree = "<group>"; };
A8A47310151A825B004123FF /* StaticConstructors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticConstructors.h; sourceTree = "<group>"; };
A8A47311151A825B004123FF /* StdLibExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StdLibExtras.h; sourceTree = "<group>"; };
A8A47312151A825B004123FF /* StringExtras.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringExtras.cpp; sourceTree = "<group>"; };
A8A47313151A825B004123FF /* StringExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringExtras.h; sourceTree = "<group>"; };
A8A47314151A825B004123FF /* StringHasher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringHasher.h; sourceTree = "<group>"; };
A8A47315151A825B004123FF /* TCPackedCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TCPackedCache.h; sourceTree = "<group>"; };
......@@ -846,7 +844,6 @@
A8A47310151A825B004123FF /* StaticConstructors.h */,
A8A47311151A825B004123FF /* StdLibExtras.h */,
1A6BB768162F300500DD16DB /* StreamBuffer.h */,
A8A47312151A825B004123FF /* StringExtras.cpp */,
A8A47313151A825B004123FF /* StringExtras.h */,
A8A47314151A825B004123FF /* StringHasher.h */,
0FDDBFA51666DFA300C55FEF /* StringPrintStream.cpp */,
......@@ -1382,7 +1379,6 @@
A8A47427151A825B004123FF /* StackBounds.cpp in Sources */,
FEDACD3D1630F83F00C69634 /* StackStats.cpp in Sources */,
A8A4743C151A825B004123FF /* StringBuilder.cpp in Sources */,
A8A4742B151A825B004123FF /* StringExtras.cpp in Sources */,
A8A47440151A825B004123FF /* StringImpl.cpp in Sources */,
0FDDBFA71666DFA300C55FEF /* StringPrintStream.cpp in Sources */,
A8A47443151A825B004123FF /* StringStatics.cpp in Sources */,
......
......@@ -185,7 +185,6 @@ set(WTF_SOURCES
RefCountedLeakCounter.cpp
SHA1.cpp
StackBounds.cpp
StringExtras.cpp
StringPrintStream.cpp
Threading.cpp
TypeTraits.cpp
......
......@@ -94,7 +94,6 @@
#endif
/* COMPILER(RVCT) - ARM RealView Compilation Tools */
/* COMPILER(RVCT4_OR_GREATER) - ARM RealView Compilation Tools 4.0 or greater */
#if defined(__CC_ARM) || defined(__ARMCC__)
#define WTF_COMPILER_RVCT 1
#define RVCT_VERSION_AT_LEAST(major, minor, patch, build) (__ARMCC_VERSION >= (major * 100000 + minor * 10000 + patch * 1000 + build))
......@@ -187,7 +186,7 @@
/* UNLIKELY */
#ifndef UNLIKELY
#if COMPILER(GCC) || (RVCT_VERSION_AT_LEAST(3, 0, 0, 0) && defined(__GNUC__))
#if COMPILER(GCC) || (COMPILER(RVCT) && defined(__GNUC__))
#define UNLIKELY(x) __builtin_expect((x), 0)
#else
#define UNLIKELY(x) (x)
......@@ -198,7 +197,7 @@
/* LIKELY */
#ifndef LIKELY
#if COMPILER(GCC) || (RVCT_VERSION_AT_LEAST(3, 0, 0, 0) && defined(__GNUC__))
#if COMPILER(GCC) || (COMPILER(RVCT) && defined(__GNUC__))
#define LIKELY(x) __builtin_expect((x), 1)
#else
#define LIKELY(x) (x)
......
......@@ -42,8 +42,7 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Float32Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<float>* array, unsigned offset) { return TypedArrayBase<float>::set(array, offset); }
using TypedArrayBase<float>::set;
void set(unsigned index, double value)
{
......
......@@ -42,8 +42,7 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Float64Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<double>* array, unsigned offset) { return TypedArrayBase<double>::set(array, offset); }
using TypedArrayBase<double>::set;
void set(unsigned index, double value)
{
......
......@@ -42,9 +42,8 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Int16Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<short>* array, unsigned offset) { return TypedArrayBase<short>::set(array, offset); }
void set(unsigned index, double value) { IntegralTypedArrayBase<short>::set(index, value); }
using TypedArrayBase<short>::set;
using IntegralTypedArrayBase<short>::set;
inline PassRefPtr<Int16Array> subarray(int start) const;
inline PassRefPtr<Int16Array> subarray(int start, int end) const;
......
......@@ -41,9 +41,8 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Int32Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<int>* array, unsigned offset) { return TypedArrayBase<int>::set(array, offset); }
void set(unsigned index, double value) { IntegralTypedArrayBase<int>::set(index, value); }
using TypedArrayBase<int>::set;
using IntegralTypedArrayBase<int>::set;
inline PassRefPtr<Int32Array> subarray(int start) const;
inline PassRefPtr<Int32Array> subarray(int start, int end) const;
......
......@@ -43,9 +43,8 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Int8Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<signed char>* array, unsigned offset) { return TypedArrayBase<signed char>::set(array, offset); }
void set(unsigned index, double value) { IntegralTypedArrayBase<signed char>::set(index, value); }
using TypedArrayBase<signed char>::set;
using IntegralTypedArrayBase<signed char>::set;
inline PassRefPtr<Int8Array> subarray(int start) const;
inline PassRefPtr<Int8Array> subarray(int start, int end) const;
......
......@@ -113,7 +113,7 @@ inline bool signbit(double x) { struct ieee_double *p = (struct ieee_double *)&x
#endif
#if COMPILER(MSVC) || (COMPILER(RVCT) && !(RVCT_VERSION_AT_LEAST(3, 0, 0, 0)))
#if COMPILER(MSVC)
// We must not do 'num + 0.5' or 'num - 0.5' because they can cause precision loss.
static double round(double num)
......
......@@ -697,9 +697,7 @@
#endif
#endif
#if !OS(WINDOWS) && !OS(SOLARIS) \
&& !OS(RVCT) \
&& !OS(ANDROID)
#if !OS(WINDOWS) && !OS(SOLARIS) && !OS(ANDROID)
#define HAVE_TM_GMTOFF 1
#define HAVE_TM_ZONE 1
#define HAVE_TIMEGM 1
......@@ -963,7 +961,7 @@
#endif
/* Configure the interpreter */
#if COMPILER(GCC) || (RVCT_VERSION_AT_LEAST(4, 0, 0, 0) && defined(__GNUC__))
#if COMPILER(GCC) || (COMPILER(RVCT) && defined(__GNUC__))
#define HAVE_COMPUTED_GOTO 1
#endif
......
/*
* Copyright (C) 2009 Company 100, Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "config.h"
#if COMPILER(RVCT) && __ARMCC_VERSION < 400000
#include "StringExtras.h"
#include "ASCIICType.h"
int strcasecmp(const char* s1, const char* s2)
{
while (toASCIIUpper(*s1) == toASCIIUpper(*s2)) {
if (*s1 == '\0')
return 0;
s1++;
s2++;
}
return toASCIIUpper(*s1) - toASCIIUpper(*s2);
}
int strncasecmp(const char* s1, const char* s2, size_t len)
{
while (len > 0 && toASCIIUpper(*s1) == toASCIIUpper(*s2)) {
if (*s1 == '\0')
return 0;
s1++;
s2++;
len--;
}
if (!len)
return 0;
return toASCIIUpper(*s1) - toASCIIUpper(*s2);
}
#endif
......@@ -116,11 +116,4 @@ inline char* strnstr(const char* buffer, const char* target, size_t bufferLength
#endif
#if COMPILER(RVCT) && __ARMCC_VERSION < 400000
int strcasecmp(const char* s1, const char* s2);
int strncasecmp(const char* s1, const char* s2, size_t len);
#endif
#endif // WTF_StringExtras_h
......@@ -43,9 +43,8 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Uint16Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<unsigned short>* array, unsigned offset) { return TypedArrayBase<unsigned short>::set(array, offset); }
void set(unsigned index, double value) { IntegralTypedArrayBase<unsigned short>::set(index, value); }
using TypedArrayBase<unsigned short>::set;
using IntegralTypedArrayBase<unsigned short>::set;
inline PassRefPtr<Uint16Array> subarray(int start) const;
inline PassRefPtr<Uint16Array> subarray(int start, int end) const;
......
......@@ -43,9 +43,8 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Uint32Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<unsigned int>* array, unsigned offset) { return TypedArrayBase<unsigned int>::set(array, offset); }
void set(unsigned index, double value) { IntegralTypedArrayBase<unsigned int>::set(index, value); }
using TypedArrayBase<unsigned>::set;
using IntegralTypedArrayBase<unsigned>::set;
inline PassRefPtr<Uint32Array> subarray(int start) const;
inline PassRefPtr<Uint32Array> subarray(int start, int end) const;
......
......@@ -43,9 +43,8 @@ public:
// not return these results directly to JavaScript without filling first.
static inline PassRefPtr<Uint8Array> createUninitialized(unsigned length);
// Can’t use "using" here due to a bug in the RVCT compiler.
bool set(TypedArrayBase<unsigned char>* array, unsigned offset) { return TypedArrayBase<unsigned char>::set(array, offset); }
void set(unsigned index, double value) { IntegralTypedArrayBase<unsigned char>::set(index, value); }
using TypedArrayBase<unsigned char>::set;
using IntegralTypedArrayBase<unsigned char>::set;
inline PassRefPtr<Uint8Array> subarray(int start) const;
inline PassRefPtr<Uint8Array> subarray(int start, int end) const;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment