Очень много для поддержки x86 в GCC сделал Uros Bizjak. Он писал патчи задолго до того как интел обратил внимание на опен сорс, затем ревьювил патчи интеловских инженеров (в т.ч. мои), и продолжает этим заниматься по сей день. Но от интела он вообще ничего не получил за это, насколько я слышал.
Порядок вычисления аргументов — это unspecified behaviour, а не implementation-defined behaviour, т.е. он не должен и не может быть описан в документации к компилятору.
А мне первым попался Blake Stone. Потом я узнал что он сделан на движке Wolfenstein 3D, но с некоторыми улучшениями (обратите внимание на пол и потолок):
Это эндуро-велосипед для катания в горах. Это когда ты весело скатываешься вниз по интересному техничному трейлу, а потом долго уныло пилишь наверх. А такой ебайк ускоряет езду вверх, т.е. больше кайфа от катания за то же время и те же затраченные усилия, если сравнивать с обычным велосипедом
Так-то «Эльбрус» с советских времён ещё — микропроцессорами они и впрямь стали уже сильно в нулевых (трёхсотмегагерцовый 3М на e2kv1 — 2007 год), а вот самой идее и её реализации на рассыпухе гораздо больше (например, «Эльбрус-2» — 1985 год).
Какие идеи из Эльбрус-2 использованы в современном Эльбрусе? (Ни VLIW, ни бинарной трансляции во втором не было).
Не очень понял с каким вариантом идёт сравнение. Если использовать счетчик нажатий, то надо сравнить что его значение совпадает со значением 12 тиков назад. Выглядит сложнее чем один инкремент и проверка.
// Service routine called by a timer interrupt
bool_t DebounceSwitch2()
{
static uint16_t State = 0; // Current debounce status
State = (State << 1) | !RawKeyPressed() | 0xe000;
if (State == 0xf000)
return TRUE;
return FALSE;
}
Участвовал в разработке компилятора для OpenVMS под Itanium. Но при этом саму OpenVMS ни разу не видел.
Про Программирующие Программы тут интересно рассказывают.
Очень много для поддержки x86 в GCC сделал Uros Bizjak. Он писал патчи задолго до того как интел обратил внимание на опен сорс, затем ревьювил патчи интеловских инженеров (в т.ч. мои), и продолжает этим заниматься по сей день. Но от интела он вообще ничего не получил за это, насколько я слышал.
Порядок вычисления аргументов — это unspecified behaviour, а не implementation-defined behaviour, т.е. он не должен и не может быть описан в документации к компилятору.
Через запрос к операционной системе.
Не так давно вышло расширение Arm64X PE, там можно смешивать x86_64 и AArch64 код в одном бинарнике, правда только в DLL.
Нет, 32 битный приложения продолжат работать нативно. Им нужен не protected mode, а compatibility mode, который остаётся.
32-битный юзерспейс остаётся, выпилят только поддержку 32-битных ядер.
А мне первым попался Blake Stone. Потом я узнал что он сделан на движке Wolfenstein 3D, но с некоторыми улучшениями (обратите внимание на пол и потолок):
Это больше для таких случаев
Если Architectural Reference Manual, то ARM, а в других случаях Arm.
Ещё бывают торчащие ветки, удары велосипедом о землю, о деревья. Колёса это обычно переживают, а крылья моментально ломаются.
Ну какой-нибудь спеш стоит ещё дороже.
На такие велосипеды обычно ставят максимум крылья для защиты амортизаторов, полноразмерные быстро отвалятся.
Это эндуро-велосипед для катания в горах. Это когда ты весело скатываешься вниз по интересному техничному трейлу, а потом долго уныло пилишь наверх. А такой ебайк ускоряет езду вверх, т.е. больше кайфа от катания за то же время и те же затраченные усилия, если сравнивать с обычным велосипедом
Раньше Майкрософт это не одобрял, но и не запрещал. А теперь всё полностью официально.
Какие идеи из Эльбрус-2 использованы в современном Эльбрусе? (Ни VLIW, ни бинарной трансляции во втором не было).
Там в несколько раз больше операций чем инкремент и проверка.
Не очень понял с каким вариантом идёт сравнение. Если использовать счетчик нажатий, то надо сравнить что его значение совпадает со значением 12 тиков назад. Выглядит сложнее чем один инкремент и проверка.
В «A Guide to Debouncing» описан прикольный алгоритм: