Overview
Comment: | Work around an ICE in Clang 3.7.0 on Windows/x86
Apparently the optimizer crashes on some recursive functions. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
5c0117205db63ff0c681ff3554f49885 |
User & Date: | js on 2022-11-06 21:19:39 |
Other Links: | manifest | tags |
Context
2022-11-06
| ||
21:24 | OFIPXSocketTests: Do not compare sender network check-in: af0f8118d0 user: js tags: trunk | |
21:19 | Work around an ICE in Clang 3.7.0 on Windows/x86 check-in: 5c0117205d user: js tags: trunk | |
20:36 | Rename OFIPSocketAsyncConnector check-in: 24ff63b586 user: js tags: trunk | |
Changes
Modified src/OFMethodSignature.m from [e6d0a405ec] to [9c702fcecb].
︙ | ︙ | |||
142 143 144 145 146 147 148 149 150 151 152 153 154 155 | (*type)++; (*length)--; return alignment; } static size_t alignmentOfEncoding(const char **type, size_t *length, bool inStruct) { size_t alignment; if (*length == 0) @throw [OFInvalidFormatException exception]; | > > > > | 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | (*type)++; (*length)--; return alignment; } static size_t #if defined(__clang__) && __clang_major__ == 3 && __clang_minor__ <= 7 /* Work around an ICE in Clang 3.7.0 on Windows/x86 */ __attribute__((__optnone__)) #endif alignmentOfEncoding(const char **type, size_t *length, bool inStruct) { size_t alignment; if (*length == 0) @throw [OFInvalidFormatException exception]; |
︙ | ︙ |
Modified src/runtime/class.m from [bcbf47b312] to [4cb79aa414].
︙ | ︙ | |||
776 777 778 779 780 781 782 783 784 785 786 787 788 789 | class->methodList = methodList; objc_updateDTable(class); } Method class_getInstanceMethod(Class class, SEL selector) { Method method; Class superclass; if (class == Nil) return NULL; | > > > > | 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 | class->methodList = methodList; objc_updateDTable(class); } Method #if defined(__clang__) && __clang_major__ == 3 && __clang_minor__ <= 7 /* Work around an ICE in Clang 3.7.0 on Windows/x86 */ __attribute__((__optnone__)) #endif class_getInstanceMethod(Class class, SEL selector) { Method method; Class superclass; if (class == Nil) return NULL; |
︙ | ︙ |