Адаптируясь из моего ответа на этот вопрос GCC , вы можете попробовать использовать # прагматические директивы , например:
#pragma GCC push_options
#pragma GCC optimize ("align-functions=16")
//add 5 to each element of the int array.
void add5(int a[20]) {
int i = 19;
for(; i > 0; i--) {
a[i] += 5;
}
}
#pragma GCC pop_options
Макросы #pragma push_options
и pop_options
используются для управления областью действия прагмы optimize
. Более подробную информацию об этих макросах можно найти в GCC документах .
В качестве альтернативы, если вы предпочитаете Синтаксис атрибута GCC , вы можете сделать что-то вроде:
//add 5 to each element of the int array.
__attribute__((optimize("align-functions=16")))
void add5(int a[20]) {
int i = 19;
for(; i > 0; i--) {
a[i] += 5;
}
}