summaryrefslogtreecommitdiffstats
path: root/libstdc++
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-03 18:28:13 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-03 18:28:13 -0800
commit1767f908af327fa388b1c66883760ad851267013 (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904 /libstdc++
parenta799b53f10e5a6fd51fef4436cfb7ec99836a516 (diff)
downloadbionic-1767f908af327fa388b1c66883760ad851267013.zip
bionic-1767f908af327fa388b1c66883760ad851267013.tar.gz
bionic-1767f908af327fa388b1c66883760ad851267013.tar.bz2
auto import from //depot/cupcake/@135843
Diffstat (limited to 'libstdc++')
-rw-r--r--libstdc++/Android.mk28
-rw-r--r--libstdc++/MODULE_LICENSE_BSD0
-rw-r--r--libstdc++/NOTICE26
-rw-r--r--libstdc++/include/cstddef0
-rw-r--r--libstdc++/include/new29
-rw-r--r--libstdc++/include/stl_pair.h122
-rw-r--r--libstdc++/include/typeinfo28
-rw-r--r--libstdc++/include/utility38
-rw-r--r--libstdc++/src/new.cpp65
-rw-r--r--libstdc++/src/one_time_construction.cpp50
-rw-r--r--libstdc++/src/pure_virtual.cpp10
-rw-r--r--libstdc++/src/typeinfo.cpp32
12 files changed, 0 insertions, 428 deletions
diff --git a/libstdc++/Android.mk b/libstdc++/Android.mk
deleted file mode 100644
index df97c9f..0000000
--- a/libstdc++/Android.mk
+++ /dev/null
@@ -1,28 +0,0 @@
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES:= \
- src/one_time_construction.cpp \
- src/new.cpp \
- src/pure_virtual.cpp \
- src/typeinfo.cpp
-
-LOCAL_MODULE:= libstdc++
-
-LOCAL_SYSTEM_SHARED_LIBRARIES := libc
-
-include $(BUILD_SHARED_LIBRARY)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES:= \
- src/one_time_construction.cpp \
- src/new.cpp \
- src/pure_virtual.cpp \
- src/typeinfo.cpp
-
-LOCAL_MODULE:= libstdc++
-
-LOCAL_SYSTEM_SHARED_LIBRARIES := libc
-
-include $(BUILD_STATIC_LIBRARY)
diff --git a/libstdc++/MODULE_LICENSE_BSD b/libstdc++/MODULE_LICENSE_BSD
deleted file mode 100644
index e69de29..0000000
--- a/libstdc++/MODULE_LICENSE_BSD
+++ /dev/null
diff --git a/libstdc++/NOTICE b/libstdc++/NOTICE
deleted file mode 100644
index 3831b34..0000000
--- a/libstdc++/NOTICE
+++ /dev/null
@@ -1,26 +0,0 @@
-Copyright (C) 2007 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:
-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.
-3. Neither the name of the project nor the names of its contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE PROJECT 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 PROJECT 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.
diff --git a/libstdc++/include/cstddef b/libstdc++/include/cstddef
deleted file mode 100644
index e69de29..0000000
--- a/libstdc++/include/cstddef
+++ /dev/null
diff --git a/libstdc++/include/new b/libstdc++/include/new
deleted file mode 100644
index 559308b..0000000
--- a/libstdc++/include/new
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef __NEW__
-#define __NEW__
-
-#include <stddef.h>
-
-namespace std {
- using ::size_t;
-
- struct nothrow_t {};
- extern const nothrow_t nothrow;
-}
-
-void* operator new(std::size_t);
-void* operator new[](std::size_t);
-void operator delete(void*);
-void operator delete[](void*);
-void* operator new(std::size_t, const std::nothrow_t&);
-void* operator new[](std::size_t, const std::nothrow_t&);
-void operator delete(void*, const std::nothrow_t&);
-void operator delete[](void*, const std::nothrow_t&);
-
-inline void* operator new(std::size_t, void* p) { return p; }
-inline void* operator new[](std::size_t, void* p) { return p; }
-
-// these next two are not really required, since exceptions are off
-inline void operator delete(void*, void*) { }
-inline void operator delete[](void*, void*) { }
-
-#endif // __NEW__
diff --git a/libstdc++/include/stl_pair.h b/libstdc++/include/stl_pair.h
deleted file mode 100644
index 37f757b..0000000
--- a/libstdc++/include/stl_pair.h
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Copyright (C) 2008 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.
- */
-/*
- *
- * Copyright (c) 1994
- * Hewlett-Packard Company
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Hewlett-Packard Company makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- *
- * Copyright (c) 1996,1997
- * Silicon Graphics Computer Systems, Inc.
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Silicon Graphics makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- */
-
-/* NOTE: This is an internal header file, included by other STL headers.
- * You should not attempt to use it directly.
- */
-
-#ifndef __SGI_STL_INTERNAL_PAIR_H
-#define __SGI_STL_INTERNAL_PAIR_H
-
-__STL_BEGIN_NAMESPACE
-
-template <class _T1, class _T2>
-struct pair {
- typedef _T1 first_type;
- typedef _T2 second_type;
-
- _T1 first;
- _T2 second;
- pair() : first(), second() {}
- pair(const _T1& __a, const _T2& __b) : first(__a), second(__b) {}
-
- template <class _U1, class _U2>
- pair(const pair<_U1, _U2>& __p) : first(__p.first), second(__p.second) {}
-};
-
-template <class _T1, class _T2>
-inline bool operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
-{
- return __x.first == __y.first && __x.second == __y.second;
-}
-
-template <class _T1, class _T2>
-inline bool operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
-{
- return __x.first < __y.first ||
- (!(__y.first < __x.first) && __x.second < __y.second);
-}
-
-template <class _T1, class _T2>
-inline bool operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return !(__x == __y);
-}
-
-template <class _T1, class _T2>
-inline bool operator>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return __y < __x;
-}
-
-template <class _T1, class _T2>
-inline bool operator<=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return !(__y < __x);
-}
-
-template <class _T1, class _T2>
-inline bool operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return !(__x < __y);
-}
-
-template <class _T1, class _T2>
-inline pair<_T1, _T2> make_pair(_T1 __x, _T2 __y)
-{
- return pair<_T1, _T2>(__x, __y);
-}
-
-__STL_END_NAMESPACE
-
-#endif /* __SGI_STL_INTERNAL_PAIR_H */
-
-// Local Variables:
-// mode:C++
-// End:
diff --git a/libstdc++/include/typeinfo b/libstdc++/include/typeinfo
deleted file mode 100644
index 8a51a54..0000000
--- a/libstdc++/include/typeinfo
+++ /dev/null
@@ -1,28 +0,0 @@
-#ifndef _TYPEINFO_HEADER_GAURD
-#define _TYPEINFO_HEADER_GAURD
-
-
-namespace std {
- class type_info;
- class bad_cast;
- class bad_typeid;
-};
-
-
-class type_info {
-public:
- type_info();
- virtual ~type_info();
-
- char const * name() const;
-
- bool operator==(type_info const & right) const;
- bool operator!=(type_info const & right) const;
- bool before(type_info const & right) const;
-
-private:
- type_info(type_info const & right);
- type_info & operator=(type_info const & right);
-};
-
-#endif
diff --git a/libstdc++/include/utility b/libstdc++/include/utility
deleted file mode 100644
index 12044a7..0000000
--- a/libstdc++/include/utility
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2008 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.
- */
-#ifndef _CPP_UTILITY
-#define _CPP_UTILITY
-
-#pragma GCC system_header
-
-#define __STL_BEGIN_NAMESPACE namespace std {
-#define __STL_END_NAMESPACE }
-
-#include <stl_pair.h>
-
-#endif /* _CPP_UTILITY */
diff --git a/libstdc++/src/new.cpp b/libstdc++/src/new.cpp
deleted file mode 100644
index 8189159..0000000
--- a/libstdc++/src/new.cpp
+++ /dev/null
@@ -1,65 +0,0 @@
-#include "new"
-#include <stdlib.h>
-
-const std::nothrow_t std::nothrow = {};
-
-void* operator new(std::size_t size)
-{
- void* p = malloc(size);
- if (p == NULL) {
- // abort();
- }
- return p;
-}
-
-void* operator new[](std::size_t size)
-{
- void* p = malloc(size);
- if (p == NULL) {
- // abort();
- }
- return p;
-}
-
-void operator delete(void* ptr)
-{
- if (ptr) {
- free(ptr);
- }
-}
-
-void operator delete[](void* ptr)
-{
- if (ptr) {
- free(ptr);
- }
-}
-
-void* operator new(std::size_t size, const std::nothrow_t&)
-{
- return malloc(size);
-}
-
-void* operator new[](std::size_t size, const std::nothrow_t&)
-{
- return malloc(size);
-}
-
-void operator delete(void* ptr, const std::nothrow_t&)
-{
- if (ptr) {
- free(ptr);
- }
-}
-
-void operator delete[](void* ptr, const std::nothrow_t&)
-{
- if (ptr) {
- free(ptr);
- }
-}
-
-
-
-
-
diff --git a/libstdc++/src/one_time_construction.cpp b/libstdc++/src/one_time_construction.cpp
deleted file mode 100644
index 304afb8..0000000
--- a/libstdc++/src/one_time_construction.cpp
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * one_time_construction.cpp
- *
- * Copyright 2006 The Android Open Source Project
- *
- * This file contains C++ ABI support functions for one time
- * constructors as defined in the "Run-time ABI for the ARM Architecture"
- * section 4.4.2
- */
-
-#include <stddef.h>
-#include <sys/atomics.h>
-
-extern "C" int __futex_wait(volatile void *ftx, int val, const struct timespec *timeout);
-extern "C" int __futex_wake(volatile void *ftx, int count);
-
-
-extern "C" int __cxa_guard_acquire(int volatile * gv)
-{
- // 0 -> 2, return 1
- // 2 -> 6, wait and return 0
- // 6 untouched, wait and return 0
- // 1 untouched, return 0
-retry:
- if (__atomic_cmpxchg(0, 0x2, gv) == 0)
- return 1;
-
- __atomic_cmpxchg(0x2, 0x6, gv); // Indicate there is a waiter
- __futex_wait(gv, 0x6, NULL);
- if(*gv != 1) // __cxa_guard_abort was called, let every thread try since there is no return code for this condition
- goto retry;
- return 0;
-}
-
-extern "C" void __cxa_guard_release(int volatile * gv)
-{
- // 2 -> 1
- // 6 -> 1, and wake
- if (__atomic_cmpxchg(0x2, 0x1, gv) == 0)
- return;
-
- *gv = 0x1;
- __futex_wake(gv, 0x7fffffff);
-}
-
-extern "C" void __cxa_guard_abort(int volatile * gv)
-{
- *gv = 0;
- __futex_wake(gv, 0x7fffffff);
-}
diff --git a/libstdc++/src/pure_virtual.cpp b/libstdc++/src/pure_virtual.cpp
deleted file mode 100644
index 663c1e9..0000000
--- a/libstdc++/src/pure_virtual.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
-
-#include <stdio.h>
-#include <stdlib.h>
-
-extern "C" void __cxa_pure_virtual()
-{
- fprintf(stderr, "Pure virtual function called. Are you calling virtual methods from a destructor?\n");
- abort();
-}
-
diff --git a/libstdc++/src/typeinfo.cpp b/libstdc++/src/typeinfo.cpp
deleted file mode 100644
index b426f1a..0000000
--- a/libstdc++/src/typeinfo.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-#include "typeinfo"
-#include <stdlib.h>
-
-type_info::type_info() {
-}
-
-type_info::~type_info() {
-}
-
-char const *
-type_info::name() const {
- return "N/A";
-}
-
-bool
-type_info::operator==(type_info const & right) const {
- return false;
-}
-
-bool
-type_info::operator!=(type_info const & right) const {
- return false;
-}
-
-bool
-type_info::before(type_info const & right) const {
- return false;
-}
-
-type_info::type_info(type_info const & right) {
-}
-