Вопросы по теме 'register-allocation'

GCC не сохраняет / не восстанавливает зарезервированные регистры при вызовах функций
У меня есть сценарий в GCC, вызывающий у меня проблемы. Я получаю не то поведение, которого я ожидаю. Подводя итог ситуации, я предлагаю несколько новых инструкций для x86-64, которые реализованы в симуляторе оборудования. Чтобы протестировать эти...
2242 просмотров

Предварительно окрашенные узлы в распределении регистров - максимум по одному каждого цвета?
Я изучаю тему о размещении регистров в компиляторах. Широко используемый алгоритм распределения регистров - это итеративная раскраска графа путем упрощения. В книге Современная реализация компилятора на Java Эндрю В. Аппель, глава 11 о...
231 просмотров

Как отключить оптимизацию регистра указателя кадра RBP в GCC при использовании -O*?
Когда я использую gcc -O2 для оптимизации своей программы, gcc изменяет значение регистра RBP. Но я хочу сохранить его как FRAME BASE REGISTER, как это сделать? Не тот же вопрос, что и: GCC: запретить использование некоторых регистров
552 просмотров

Что делает небезопасным хранение значения в регистре?
Говоря о распределении регистров, в текстах по компиляции (например, «Разработка компилятора» Купера) часто упоминается, что значения, хранящиеся в регистрах, должны быть «безопасными», иначе их следует хранить в памяти. Что делает небезопасным...
197 просмотров

распределение регистров, как использовать и разливать сохраненные регистры вызывающего абонента
Я узнал, что если какой-либо из caller saved registers (rax rdx rcx rsi rdi r8 r9 r10 r11) используется вызываемым пользователем, он должен быть сохранен до и восстановлен после инструкции call вызывающим. В следующем примере int read(); void...
186 просмотров