aboutsummaryrefslogtreecommitdiffstats
path: root/tests/libs
diff options
context:
space:
mode:
authorAlex Cheung <alexcheung@google.com>2017-01-31 04:05:00 +0000
committerAlex Cheung <alexcheung@google.com>2017-01-31 04:19:50 +0000
commit6fcd7a7d28aa6be42bbc99070c93d4d16b56ab57 (patch)
tree0daa51584f72beb67cbe072f34ca67898212f381 /tests/libs
parenta5066640cc7274e317bf3bae2d960986d58dbbbd (diff)
downloadandroid_bionic-6fcd7a7d28aa6be42bbc99070c93d4d16b56ab57.tar.gz
android_bionic-6fcd7a7d28aa6be42bbc99070c93d4d16b56ab57.tar.bz2
android_bionic-6fcd7a7d28aa6be42bbc99070c93d4d16b56ab57.zip
Revert "Fix CFI initialization crash on x86."
This reverts commit be46d3871c91902504e5ec4c7f575c86f647aafc. Reverting due to broken build: https://android-build.googleplex.com/builds/branch-dashboard/aosp-master?build_id=3687823 Change-Id: I30968398edd9a094fce878839ba0a002ed487a77
Diffstat (limited to 'tests/libs')
-rw-r--r--tests/libs/Android.bp17
-rw-r--r--tests/libs/cfi_test_helper.cpp54
-rw-r--r--tests/libs/cfi_test_helper2.cpp29
-rw-r--r--tests/libs/cfi_test_lib.cpp16
-rw-r--r--tests/libs/libs_utils.h29
5 files changed, 0 insertions, 145 deletions
diff --git a/tests/libs/Android.bp b/tests/libs/Android.bp
index 9f9c40724..b5855af62 100644
--- a/tests/libs/Android.bp
+++ b/tests/libs/Android.bp
@@ -494,20 +494,3 @@ cc_test_library {
cfi: false,
},
}
-
-cc_test {
- name: "cfi_test_helper",
- host_supported: false,
- defaults: ["bionic_testlib_defaults"],
- srcs: ["cfi_test_helper.cpp"],
- ldflags: [" -Wl,-export-dynamic-symbol=__cfi_check"],
-}
-
-cc_test {
- name: "cfi_test_helper2",
- host_supported: false,
- defaults: ["bionic_testlib_defaults"],
- srcs: ["cfi_test_helper2.cpp"],
- shared_libs: ["libcfi-test"],
- ldflags: ["-Wl,--rpath,${ORIGIN}/.."],
-}
diff --git a/tests/libs/cfi_test_helper.cpp b/tests/libs/cfi_test_helper.cpp
deleted file mode 100644
index ff313a2d8..000000000
--- a/tests/libs/cfi_test_helper.cpp
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <assert.h>
-#include <stdint.h>
-#include <stdlib.h>
-
-#include "libs_utils.h"
-
-// This library is built for all targets, including host tests, so __cfi_slowpath may not be
-// present. But it is only used in the bionic loader tests.
-extern "C" __attribute__((weak)) void __cfi_slowpath(uint64_t, void*);
-
-static int g_count;
-
-// Mock a CFI-enabled library without relying on the compiler.
-extern "C" __attribute__((aligned(4096))) void __cfi_check(uint64_t /*CallSiteTypeId*/,
- void* /*TargetAddr*/, void* /*Diag*/) {
- ++g_count;
-}
-
-void preinit_ctor() {
- CHECK(g_count == 0);
- __cfi_slowpath(42, reinterpret_cast<void*>(&preinit_ctor));
- CHECK(g_count == 1);
-}
-
-__attribute__((section(".preinit_array"), used)) void (*preinit_ctor_p)(void) = preinit_ctor;
-
-__attribute__((constructor, used)) void ctor() {
- CHECK(g_count == 1);
- __cfi_slowpath(42, reinterpret_cast<void*>(&ctor));
- CHECK(g_count == 2);
-}
-
-int main(void) {
- CHECK(g_count == 2);
- __cfi_slowpath(42, reinterpret_cast<void*>(&main));
- CHECK(g_count == 3);
- return 0;
-}
diff --git a/tests/libs/cfi_test_helper2.cpp b/tests/libs/cfi_test_helper2.cpp
deleted file mode 100644
index 11a6036c0..000000000
--- a/tests/libs/cfi_test_helper2.cpp
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <assert.h>
-#include <dlfcn.h>
-
-#include "libs_utils.h"
-
-int main(void) {
- void* handle;
- // libcfi-test.so does some basic testing in a global constructor. Check that it is linked.
- handle = dlopen("libcfi-test.so", RTLD_NOW | RTLD_NOLOAD);
- CHECK(handle != nullptr);
- dlclose(handle);
- return 0;
-}
diff --git a/tests/libs/cfi_test_lib.cpp b/tests/libs/cfi_test_lib.cpp
index 959b1020f..b0e2f426d 100644
--- a/tests/libs/cfi_test_lib.cpp
+++ b/tests/libs/cfi_test_lib.cpp
@@ -1,19 +1,3 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
#include <assert.h>
#include <stdint.h>
#include <stdlib.h>
diff --git a/tests/libs/libs_utils.h b/tests/libs/libs_utils.h
deleted file mode 100644
index f11cbe782..000000000
--- a/tests/libs/libs_utils.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef LIBS_UTILS_H
-#define LIBS_UTILS_H
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#define CHECK(x) \
- do { \
- fprintf(stderr, "CHECK(" #x ") failed at %s:%d\n", __FILE__, __LINE__); \
- if (!(x)) abort(); \
- } while (0)
-
-#endif // LIBS_UTILS_H