diff options
author | Pat Gavlin <pagavlin@microsoft.com> | 2016-03-08 08:48:42 -0800 |
---|---|---|
committer | Pat Gavlin <pagavlin@microsoft.com> | 2016-03-08 11:47:48 -0800 |
commit | b8d8bbf3029486b21f04c155561b816d25cd596d (patch) | |
tree | 49b205fc92419242f0a7ce96eb41e180e78740b1 /src/jit/jitstd | |
parent | e22d5d34d1b32b32443880338e7e9a2a92a16487 (diff) | |
download | coreclr-b8d8bbf3029486b21f04c155561b816d25cd596d.tar.gz coreclr-b8d8bbf3029486b21f04c155561b816d25cd596d.tar.bz2 coreclr-b8d8bbf3029486b21f04c155561b816d25cd596d.zip |
Use jitstd::list in the LSRA.
This removes the only usage of ArrayList in the JIT.
Diffstat (limited to 'src/jit/jitstd')
-rw-r--r-- | src/jit/jitstd/list.h | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/src/jit/jitstd/list.h b/src/jit/jitstd/list.h index 9f888ef31d..d5d8361ebe 100644 --- a/src/jit/jitstd/list.h +++ b/src/jit/jitstd/list.h @@ -68,6 +68,7 @@ public: bool operator!=(const const_iterator& it) const; const T& operator*() const; const T* operator&() const; + const T* operator->() const; operator const T*() const; private: @@ -93,6 +94,7 @@ public: bool operator!=(const iterator& it); T& operator*(); T* operator&(); + T* operator->(); operator T*(); private: @@ -122,6 +124,7 @@ public: bool operator!=(const const_reverse_iterator& it) const; const T& operator*() const; const T* operator&() const; + const T* operator->() const; operator const T*() const; private: @@ -148,6 +151,7 @@ public: bool operator!=(const reverse_iterator& it); T& operator*(); T* operator&(); + T* operator->(); operator T*(); friend class list<T, Allocator>::const_reverse_iterator; @@ -921,6 +925,12 @@ T* list<T, Allocator>::iterator::operator&() } template <typename T, typename Allocator> +T* list<T, Allocator>::iterator::operator->() +{ + return &(m_pNode->m_value); +} + +template <typename T, typename Allocator> list<T, Allocator>::iterator::operator T*() { return &(m_pNode->m_value); @@ -1000,7 +1010,6 @@ const T& list<T, Allocator>::const_iterator::operator*() const return m_pNode->m_value; } - template <typename T, typename Allocator> const T* list<T, Allocator>::const_iterator::operator&() const { @@ -1008,6 +1017,12 @@ const T* list<T, Allocator>::const_iterator::operator&() const } template <typename T, typename Allocator> +const T* list<T, Allocator>::const_iterator::operator->() const +{ + return &(m_pNode->m_value); +} + +template <typename T, typename Allocator> list<T, Allocator>::const_iterator::operator const T*() const { return &(m_pNode->m_value); @@ -1080,7 +1095,6 @@ T& list<T, Allocator>::reverse_iterator::operator*() return m_pNode->m_value; } - template <typename T, typename Allocator> T* list<T, Allocator>::reverse_iterator::operator&() { @@ -1088,6 +1102,12 @@ T* list<T, Allocator>::reverse_iterator::operator&() } template <typename T, typename Allocator> +T* list<T, Allocator>::reverse_iterator::operator->() +{ + return &(m_pNode->m_value); +} + +template <typename T, typename Allocator> list<T, Allocator>::reverse_iterator::operator T*() { return &(m_pNode->m_value); @@ -1171,6 +1191,12 @@ const T* list<T, Allocator>::const_reverse_iterator::operator&() const } template <typename T, typename Allocator> +const T* list<T, Allocator>::const_reverse_iterator::operator->() const +{ + return &(m_pNode->m_value); +} + +template <typename T, typename Allocator> list<T, Allocator>::const_reverse_iterator::operator const T*() const { return &(m_pNode->m_value); |