diff options
author | Ian Rogers <irogers@google.com> | 2013-07-29 11:12:14 -0700 |
---|---|---|
committer | Ian Rogers <irogers@google.com> | 2013-07-29 11:12:14 -0700 |
commit | b07b8b7a1815fc22c0e7b3f0899406cc7eeebaca (patch) | |
tree | 350bf8394b15497ad004deca1803aba1484b7fae /runtime | |
parent | d41119e863a9f9c5809b7732d30870ffd237b60c (diff) | |
download | art-b07b8b7a1815fc22c0e7b3f0899406cc7eeebaca.zip art-b07b8b7a1815fc22c0e7b3f0899406cc7eeebaca.tar.gz art-b07b8b7a1815fc22c0e7b3f0899406cc7eeebaca.tar.bz2 |
Move vector output stream to compiler.
Change-Id: Ia4c5edabb6be31a7d953c932b490ed2d89f941c1
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/Android.mk | 1 | ||||
-rw-r--r-- | runtime/vector_output_stream.cc | 48 | ||||
-rw-r--r-- | runtime/vector_output_stream.h | 65 |
3 files changed, 0 insertions, 114 deletions
diff --git a/runtime/Android.mk b/runtime/Android.mk index 4638e78..795febc 100644 --- a/runtime/Android.mk +++ b/runtime/Android.mk @@ -136,7 +136,6 @@ LIBART_COMMON_SRC_FILES := \ trace.cc \ utf.cc \ utils.cc \ - vector_output_stream.cc \ verifier/dex_gc_map.cc \ verifier/instruction_flags.cc \ verifier/method_verifier.cc \ diff --git a/runtime/vector_output_stream.cc b/runtime/vector_output_stream.cc deleted file mode 100644 index e5ff729..0000000 --- a/runtime/vector_output_stream.cc +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (C) 2013 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 "vector_output_stream.h" - -#include "base/logging.h" - -namespace art { - -VectorOutputStream::VectorOutputStream(const std::string& location, std::vector<uint8_t>& vector) - : OutputStream(location), offset_(vector.size()), vector_(vector) {} - -off_t VectorOutputStream::Seek(off_t offset, Whence whence) { - CHECK(whence == kSeekSet || whence == kSeekCurrent || whence == kSeekEnd) << whence; - off_t new_offset = 0; - switch (whence) { - case kSeekSet: { - new_offset = offset; - break; - } - case kSeekCurrent: { - new_offset = offset_ + offset; - break; - } - case kSeekEnd: { - new_offset = vector_.size() + offset; - break; - } - } - EnsureCapacity(new_offset); - offset_ = new_offset; - return offset_; -} - -} // namespace art diff --git a/runtime/vector_output_stream.h b/runtime/vector_output_stream.h deleted file mode 100644 index 7daa39f..0000000 --- a/runtime/vector_output_stream.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (C) 2013 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 ART_RUNTIME_VECTOR_OUTPUT_STREAM_H_ -#define ART_RUNTIME_VECTOR_OUTPUT_STREAM_H_ - -#include "output_stream.h" - -#include <string> -#include <string.h> -#include <vector> - -namespace art { - -class VectorOutputStream : public OutputStream { - public: - VectorOutputStream(const std::string& location, std::vector<uint8_t>& vector); - - virtual ~VectorOutputStream() {} - - bool WriteFully(const void* buffer, int64_t byte_count) { - if (static_cast<size_t>(offset_) == vector_.size()) { - const uint8_t* start = reinterpret_cast<const uint8_t*>(buffer); - vector_.insert(vector_.end(), &start[0], &start[byte_count]); - offset_ += byte_count; - } else { - off_t new_offset = offset_ + byte_count; - EnsureCapacity(new_offset); - memcpy(&vector_[offset_], buffer, byte_count); - offset_ = new_offset; - } - return true; - } - - off_t Seek(off_t offset, Whence whence); - - private: - void EnsureCapacity(off_t new_offset) { - if (new_offset > static_cast<off_t>(vector_.size())) { - vector_.resize(new_offset); - } - } - - off_t offset_; - std::vector<uint8_t>& vector_; - - DISALLOW_COPY_AND_ASSIGN(VectorOutputStream); -}; - -} // namespace art - -#endif // ART_RUNTIME_VECTOR_OUTPUT_STREAM_H_ |