[an error occurred while processing this directive]
|
что поскольку процессор "бумажный" , то может поискать нестандартные решения?
Например.
В процессе вычисления выражений помимо загрузки операндов и сохранения результата(и побочных эффектов), необходимо сохранять промежуточные значения. Что для компилятора - головная боль - какие регистры задействовать, что в стек засунуть и т.д.. Может ему "помочь", и сделать, скажем быстрый аппаратный стек, в который можно засунуть/вытащить любой регистр(любой длинны), учавствовать в качестве операнда, извлечь, проконтролировать размер/переполнение, засунуть в нормальный стек(память) и т.д.
Ну, эт я так... "от фонаря", что-б проиллюстрировать свою мысль.
Уверен, подобных оптимизаций можно напридумывать множество. И пусть кому-то такая архитектура покажется крайне кривой, но если обычный Си'шный код будет бегать на ней быстрее , чем на красивых архитектурах - то и ладушки.
Мне кажется, нужно брать исходники, думать, как бы побыстрее вычислить написанное железом, ну и из этого исходить.
E-mail: info@telesys.ru