Merge "Remove various bits of dead code and unused workarounds."

This commit is contained in:
Treehugger Robot 2020-02-23 04:16:25 +00:00 committed by Gerrit Code Review
commit b9c95f8e6a
9 changed files with 3 additions and 238 deletions

View file

@ -24,7 +24,7 @@
#include "adb.h"
// Use the linux asm-generic values for errno (which are used on all android archs but mips).
// Use the linux asm-generic values for errno (which are used on all android architectures).
#define ERRNO_VALUES() \
ERRNO_VALUE(EACCES, 13); \
ERRNO_VALUE(EEXIST, 17); \
@ -48,7 +48,7 @@
ERRNO_VALUE(ETXTBSY, 26)
// Make sure these values are actually correct.
#if defined(__linux__) && !defined(__mips__)
#if defined(__linux__)
#define ERRNO_VALUE(error_name, wire_value) static_assert((error_name) == (wire_value), "")
ERRNO_VALUES();
#undef ERRNO_VALUE

View file

@ -143,8 +143,4 @@ void UNUSED(const T&...) {
#define ABI_STRING "x86"
#elif defined(__x86_64__)
#define ABI_STRING "x86_64"
#elif defined(__mips__) && !defined(__LP64__)
#define ABI_STRING "mips"
#elif defined(__mips__) && defined(__LP64__)
#define ABI_STRING "mips64"
#endif

View file

@ -24,12 +24,6 @@ cc_defaults {
arm64: {
srcs: ["arm64/crashglue.S"],
},
mips: {
srcs: ["mips/crashglue.S"],
},
mips64: {
srcs: ["mips64/crashglue.S"],
},
x86: {
srcs: ["x86/crashglue.S"],
},

View file

@ -1,48 +0,0 @@
.set noat
.globl crash1
.globl crashnostack
crash1:
li $0,0xdead0000+0
li $1,0xdead0000+1
li $2,0xdead0000+2
li $3,0xdead0000+3
li $4,0xdead0000+4
li $5,0xdead0000+5
li $6,0xdead0000+6
li $7,0xdead0000+7
li $8,0xdead0000+8
li $9,0xdead0000+9
li $10,0xdead0000+10
li $11,0xdead0000+11
li $12,0xdead0000+12
li $13,0xdead0000+13
li $14,0xdead0000+14
li $15,0xdead0000+15
li $16,0xdead0000+16
li $17,0xdead0000+17
li $18,0xdead0000+18
li $19,0xdead0000+19
li $20,0xdead0000+20
li $21,0xdead0000+21
li $22,0xdead0000+22
li $23,0xdead0000+23
li $24,0xdead0000+24
li $25,0xdead0000+25
li $26,0xdead0000+26
li $27,0xdead0000+27
li $28,0xdead0000+28
# don't trash the stack otherwise the signal handler won't run
#li $29,0xdead0000+29
li $30,0xdead0000+30
li $31,0xdead0000+31
lw $zero,($0)
b .
crashnostack:
li $sp, 0
lw $zero,($0)
b .

View file

@ -1,48 +0,0 @@
.set noat
.globl crash1
.globl crashnostack
crash1:
li $0,0xdead0000+0
li $1,0xdead0000+1
li $2,0xdead0000+2
li $3,0xdead0000+3
li $4,0xdead0000+4
li $5,0xdead0000+5
li $6,0xdead0000+6
li $7,0xdead0000+7
li $8,0xdead0000+8
li $9,0xdead0000+9
li $10,0xdead0000+10
li $11,0xdead0000+11
li $12,0xdead0000+12
li $13,0xdead0000+13
li $14,0xdead0000+14
li $15,0xdead0000+15
li $16,0xdead0000+16
li $17,0xdead0000+17
li $18,0xdead0000+18
li $19,0xdead0000+19
li $20,0xdead0000+20
li $21,0xdead0000+21
li $22,0xdead0000+22
li $23,0xdead0000+23
li $24,0xdead0000+24
li $25,0xdead0000+25
li $26,0xdead0000+26
li $27,0xdead0000+27
li $28,0xdead0000+28
# don't trash the stack otherwise the signal handler won't run
#li $29,0xdead0000+29
li $30,0xdead0000+30
li $31,0xdead0000+31
lw $zero,($0)
b .
crashnostack:
li $sp, 0
lw $zero,($0)
b .

View file

@ -128,8 +128,7 @@ static bool SetHighestAvailableOptionValue(const std::string& path, int min, int
#define MMAP_RND_PATH "/proc/sys/vm/mmap_rnd_bits"
#define MMAP_RND_COMPAT_PATH "/proc/sys/vm/mmap_rnd_compat_bits"
// __attribute__((unused)) due to lack of mips support: see mips block in SetMmapRndBitsAction
static bool __attribute__((unused)) SetMmapRndBitsMin(int start, int min, bool compat) {
static bool SetMmapRndBitsMin(int start, int min, bool compat) {
std::string path;
if (compat) {
path = MMAP_RND_COMPAT_PATH;
@ -174,9 +173,6 @@ Result<void> SetMmapRndBitsAction(const BuiltinArguments&) {
if (SetMmapRndBitsMin(16, 16, h64)) {
return {};
}
#elif defined(__mips__) || defined(__mips64__)
// TODO: add mips support b/27788820
return {};
#else
LOG(ERROR) << "Unknown architecture";
#endif

View file

@ -199,19 +199,6 @@ cc_library {
},
},
android_mips: {
srcs: ["arch-mips/android_memset.c"],
sanitize: {
misc_undefined: ["integer"],
},
},
android_mips64: {
srcs: ["arch-mips/android_memset.c"],
sanitize: {
misc_undefined: ["integer"],
},
},
android_x86: {
srcs: [
"arch-x86/android_memset16.S",

View file

@ -1,100 +0,0 @@
/*
* Copyright (C) 2015 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * 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 THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "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 THE
* COPYRIGHT OWNER 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.
*/
/* generic C version for any machine */
#include <cutils/memory.h>
#ifdef __clang__
__attribute__((no_sanitize("integer")))
#endif
void android_memset16(uint16_t* dst, uint16_t value, size_t size)
{
/* optimized version of
size >>= 1;
while (size--)
*dst++ = value;
*/
size >>= 1;
if (((uintptr_t)dst & 2) && size) {
/* fill unpaired first elem separately */
*dst++ = value;
size--;
}
/* dst is now 32-bit-aligned */
/* fill body with 32-bit pairs */
uint32_t value32 = (((uint32_t)value) << 16) | ((uint32_t)value);
android_memset32((uint32_t*) dst, value32, size<<1);
if (size & 1) {
dst[size-1] = value; /* fill unpaired last elem */
}
}
#ifdef __clang__
__attribute__((no_sanitize("integer")))
#endif
void android_memset32(uint32_t* dst, uint32_t value, size_t size)
{
/* optimized version of
size >>= 2;
while (size--)
*dst++ = value;
*/
size >>= 2;
if (((uintptr_t)dst & 4) && size) {
/* fill unpaired first 32-bit elem separately */
*dst++ = value;
size--;
}
/* dst is now 64-bit aligned */
/* fill body with 64-bit pairs */
uint64_t value64 = (((uint64_t)value) << 32) | ((uint64_t)value);
uint64_t* dst64 = (uint64_t*)dst;
while (size >= 12) {
dst64[0] = value64;
dst64[1] = value64;
dst64[2] = value64;
dst64[3] = value64;
dst64[4] = value64;
dst64[5] = value64;
size -= 12;
dst64 += 6;
}
/* fill remainder with original 32-bit single-elem loop */
dst = (uint32_t*) dst64;
while (size != 0) {
size--;
*dst++ = value;
}
}

View file

@ -74,12 +74,6 @@ cc_defaults {
"liblog",
],
arch: {
mips: {
cflags: ["-DALIGN_DOUBLE"],
},
},
target: {
android: {
cflags: ["-fvisibility=protected"],
@ -174,12 +168,6 @@ cc_library {
"CallStack.cpp",
],
arch: {
mips: {
cflags: ["-DALIGN_DOUBLE"],
},
},
shared_libs: [
"libutils",
"libbacktrace",