summaryrefslogtreecommitdiffstats
path: root/hwpf/src
diff options
context:
space:
mode:
authorSantosh Puranik <santosh.puranik@in.ibm.com>2015-12-10 00:58:51 -0600
committerGregory S. Still <stillgs@us.ibm.com>2015-12-10 08:58:06 -0600
commit8f109c77d7f301bda77334b836070da0d08d4c29 (patch)
treec817e11f58d281d26c8ece78cc465fad34777b21 /hwpf/src
parenta4a810b1e689a1365421fd9898e135ea94bfdcb2 (diff)
downloadtalos-sbe-8f109c77d7f301bda77334b836070da0d08d4c29.tar.gz
talos-sbe-8f109c77d7f301bda77334b836070da0d08d4c29.zip
Delete fapi array
Change-Id: I4c08b2102d83cb68c656a8d8b3be2d5d081a7a18 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22602 Tested-by: Jenkins Server Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Diffstat (limited to 'hwpf/src')
-rw-r--r--hwpf/src/array.C145
1 files changed, 0 insertions, 145 deletions
diff --git a/hwpf/src/array.C b/hwpf/src/array.C
deleted file mode 100644
index 340d8d2f..00000000
--- a/hwpf/src/array.C
+++ /dev/null
@@ -1,145 +0,0 @@
-/* IBM_PROLOG_BEGIN_TAG */
-/* This is an automatically generated prolog. */
-/* */
-/* $Source: $ */
-/* */
-/* OpenPOWER HostBoot Project */
-/* */
-/* Contributors Listed Below - COPYRIGHT 2012,2014 */
-/* [+] International Business Machines Corp. */
-/* */
-/* */
-/* 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. */
-/* */
-/* IBM_PROLOG_END_TAG */
-/**
- * @file array.C
- * @brief fapi2 arrays
- */
-
-#include <stdint.h>
-#include <array.H>
-
-namespace fapi2
-{
- /// @brief Create an array
- array::array(const uint32_t i_size, element_type* i_data):
- iv_size(i_size),
- iv_data(i_data)
- {
-#ifdef GREG
- assert(iv_size <= size_limit);
- if (iv_data == nullptr)
- {
- iv_data = new element_type[iv_size]();
- iv_size |= delete_bit;
- }
-#endif
- // If the caller passed in a pointer, leave it be. Don't
- // initialize it or anything. That will allow a placement
- // operation where generic memory can use fapi2::array
- // methods without much overhead.
- }
-
- /// @brief Destroy an array
- array::~array(void)
- {
- if ((iv_size & delete_bit) != 0)
- {
-#ifdef GREG
- delete[] iv_data;
-#endif
- }
- }
-
- /// @brief operator[]
- array::element_type& array::operator[](const uint32_t i_index)
- {
-#ifdef GREG
- assert(i_index < size());
-#endif
- return iv_data[i_index];
- }
-
- /// @brief operator=()
- array& array::operator=(const array& i_other)
- {
-#ifdef GREG
- // Check to make sure it'll fit.
- assert(i_other.size() <= size());
-#endif
- // Our new size will be the other's size.
- // Save of whether we should delete our iv_data ...
- uint64_t l_our_delete_state = iv_size | delete_bit;
-
- // ... our new size is the size (minus the delete state) of i_other
- iv_size = i_other.size();
-
- // ... do the copy ...
-#ifdef GREG
- memcpy(iv_data, i_other.iv_data, iv_size * sizeof(element_type));
-#else
- for(size_t i = 0; i < iv_size * sizeof(element_type); ++i)
- {
- iv_data[i] = i_other.iv_data[i];
- }
-#endif
-
- // ... and record our old delete state.
- iv_size |= l_our_delete_state;
-
- return *this;
- }
-
- /// @brief move operator=()
- array& array::operator=(array&& i_other)
- {
- iv_size = i_other.iv_size;
-
- // Make sure to clear the delete bit in the other. We
- // don't want our memory to be deleted.
- i_other.iv_size = i_other.size();
-
- iv_data = std::move(i_other.iv_data);
- return *this;
- }
-
- /// @brief operator==()
- bool array::operator==(const array& i_other)
- {
- // If they're not the same size, they're not the same
- if (size() != i_other.size())
- {
- return false;
- }
-
- // If they're the same size and point to the same memory, they're the same.
- if (iv_data == i_other.iv_data)
- {
- return true;
- }
-
- auto oitr = i_other.begin();
- auto iter = begin();
-
- for(; iter != end(); ++iter, ++oitr)
- {
- if (*iter != *oitr)
- {
- return false;
- }
- }
-
- return true;
- }
-}
OpenPOWER on IntegriCloud