Skip to content

Commit a128d1e

Browse files
committed
CTransitionDatabaseGame: Conditionally disable swap inlining
1 parent c3cfc25 commit a128d1e

3 files changed

Lines changed: 20 additions & 9 deletions

File tree

‎configure.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -634,7 +634,7 @@ def EquivalentFor(*versions):
634634
"MetroidPrime/CTransitionDatabaseGame.cpp",
635635
extra_cflags=['-pragma "inline_max_size(126)"']
636636
if version_num >= VERSIONS.index("GM8P01_00")
637-
else [],
637+
else ["-inline", "level=6"],
638638
),
639639
Object(
640640
MatchingFor("GM8E01_00", "GM8E01_01", "GM8P01_00"),

‎extern/rstl/include/rstl/algorithm.hpp‎

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,20 @@ int count(It first, It last, const T& val) {
1818
}
1919

2020
template < class It, class T >
21-
inline It find(It first, It last, const T& val) {
21+
#ifndef RSTL_DONT_INLINE_ALGORITHM
22+
inline
23+
#endif
24+
It find(It first, It last, const T& val) {
2225
while (first != last && !(*first == val))
2326
++first;
2427
return first;
2528
}
2629

2730
template < typename T >
28-
inline void swap(T& a, T& b) {
31+
#ifndef RSTL_DONT_INLINE_ALGORITHM
32+
inline
33+
#endif
34+
void swap(T& a, T& b) {
2935
T tmp(a);
3036
a = b;
3137
b = tmp;
@@ -365,9 +371,11 @@ find_by_key(const T& container,
365371
template < typename T >
366372
typename T::const_iterator inline find_by_key(
367373
const T& container, const typename select1st< typename T::value_type >::value_type& key) {
368-
return binary_find(container.begin(), container.end(), key,
369-
pair_sorter_finder< typename T::value_type, less< typename select1st< typename T::value_type >::value_type > >(
370-
less< typename select1st< typename T::value_type >::value_type >()));
374+
return binary_find(
375+
container.begin(), container.end(), key,
376+
pair_sorter_finder< typename T::value_type,
377+
less< typename select1st< typename T::value_type >::value_type > >(
378+
less< typename select1st< typename T::value_type >::value_type >()));
371379
}
372380

373381
template < typename T, class Cmp >
@@ -385,9 +393,11 @@ find_by_key_nc(T& container, const typename select1st< typename T::value_type >:
385393
template < typename T >
386394
typename T::iterator inline find_by_key_nc(
387395
T& container, const typename select1st< typename T::value_type >::value_type& key) {
388-
return binary_find(container.begin(), container.end(), key,
389-
pair_sorter_finder< typename T::value_type, less< typename select1st< typename T::value_type >::value_type > >(
390-
less< typename select1st< typename T::value_type >::value_type >()));
396+
return binary_find(
397+
container.begin(), container.end(), key,
398+
pair_sorter_finder< typename T::value_type,
399+
less< typename select1st< typename T::value_type >::value_type > >(
400+
less< typename select1st< typename T::value_type >::value_type >()));
391401
}
392402

393403
template < typename T >

‎src/MetroidPrime/CTransitionDatabaseGame.cpp‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#include "Kyoto/Animation/CHalfTransition.hpp"
44
#include "Kyoto/Animation/CTransition.hpp"
55

6+
#define RSTL_DONT_INLINE_ALGORITHM
67
#include "rstl/algorithm.hpp"
78

89
namespace {

0 commit comments

Comments
 (0)