Commit Graph
93 Commits
Author SHA1 Message Date
AntKrotov 887e7fc185 fixed issues #29 and #32
Added procedure API.SetTrap (Windows, Linux, KolibriOS) to set custom trap handler
2025-06-06 00:57:06 +03:00
AntKrotov 6058ffe801 fixed issue #30 (SYSTEM.VAL) 2025-06-05 00:39:45 +03:00
AntKrotov e224bc0772 fixed issue #29 (Trap on constant definition) 2025-06-04 16:05:10 +03:00
AntKrotov 43665f3a4c Добавлены таргеты "kosker" и "kosdrv" 2023-04-30 22:58:41 +03:00
AntKrotov 38b630e2d4 добавлен параметр -fa <size> (выравнивание секций PE) 2023-02-04 19:33:12 +03:00
AntKrotov 7a04b38ecd исправлена ошибка 2023-01-22 14:26:37 +03:00
AntKrotov f32056d97f нижний регистр по умолчанию 2023-01-21 17:21:15 +03:00
AntKrotov acc33c31b4 Linux (x86): исправлено выравнивание REAL в структурах (4 байта вместо 8) 2023-01-09 16:31:38 +03:00
AntKrotov e5b0dc2f14 Windows, Linux: выравнивание глобальных объектов по границе 16 байт 2023-01-08 13:55:17 +03:00
AntKrotov aa3c9d61f1 реализован SYSTEM.VAL 2022-09-20 23:45:37 +03:00
AntKrotov c78c0ebd28 Сокращение кода 2022-09-12 00:32:05 +03:00
AntKrotov d8c4975aed мелкие правки 2022-09-07 23:41:01 +03:00
AntKrotov 906a08f060 x86: оптимизирована загрузка веществ. констант в регистры 2022-08-31 11:34:34 +03:00
AntKrotov 81e32b72ab X86: поддержка соглашения о вызове [fastcall] (MS fastcall) 2022-06-21 18:30:22 +03:00
AntKrotov 7102d9547a x86, x86_64: небольшая оптимизация
оптимизировано копирование структур (массивов и записей) малого размера
2022-04-30 23:46:15 +03:00
AntKrotov 474f7bb793 Добавлен параметр -uses (вывести список импортированных модулей) 2021-12-20 22:20:42 +03:00
AntKrotov 173610f6c4 Добавлен параметр -tab, определяющий ширину табуляции 2021-08-26 11:48:15 +03:00
AntKrotov a8f1dba7cc исправление ошибки 2021-05-07 21:23:56 +03:00
AntKrotov db88401e7b исправление ошибки 2021-04-06 18:46:22 +03:00
AntKrotov d48bb33016 x86_64: изменена работа с регистрами
- убрано распределение регистров в процедурах-листьях как малоэффективное. В дальнейшем, возможно, будет сделано более эффективное распределение регистров.
- увеличен регистровый стэк
2021-02-17 18:27:46 +03:00
AntKrotov 187260cb4e "&" и "OR": исправление ошибки 2021-02-14 15:40:00 +03:00
AntKrotov 6fb87a797f RVMxI: 32 и 64 бита 2021-02-12 00:02:44 +03:00
AntKrotov 94e6484c8a RVM32I: перестроение системы команд 2021-02-09 21:47:37 +03:00
AntKrotov 8234828dfc оптимизированный лексер 2021-02-05 14:27:04 +03:00
AntKrotov 0d435b9349 скорость компиляции увеличена на ~15% 2021-02-04 00:23:34 +03:00
AntKrotov 2d4f06e5ab мелкие правки 2021-02-03 23:21:16 +03:00
AntKrotov 4d59eadab8 v1.50
- изменены системные флаги:
  [ccall] -> [cdecl]
  [ccall16] -> [ccall]
  [stdcall64] -> [oberon]
- Windows, Linux: объединенные библиотеки (32/64)
- RVM32I: небольшая оптимизация
2021-02-02 23:19:05 +03:00
AntKrotov 3e200b0cb7 x86, x86_64: исправление ошибки
ошибка при использовании системного флага [oberon-]
2021-02-01 21:31:21 +03:00
AntKrotov 27862419ee x86_64: исправление ошибки; STM32, RVM32I: небольшие оптимизации 2021-01-31 20:09:39 +03:00
AntKrotov 9331f2d8ed v1.49
-улучшена трансляция оператора CASE
-улучшена система команд RVM32I
2021-01-27 16:35:55 +03:00
AntKrotov 39c00efc26 сокращение кода 2021-01-25 19:45:25 +03:00
AntKrotov e4023cde2e MSP430: R15 вместо R14; R14 не используется 2021-01-17 15:35:45 +03:00
AntKrotov 9a60d103b7 v1.46
x86_64, STM32: более экономное использование оперативной памяти.
STM32: запрет прерываний при NEW().
MSP430: частичная, отключаемая проверка переполнения стэка; исправление ошибки.
2021-01-14 19:05:09 +03:00
AntKrotov 4e8fe8136d STM32: мелкие правки, исправление ошибки 2021-01-10 11:15:11 +03:00
AntKrotov fb12e18a2f v1.44
импорт модулей с указанием пути:
IMPORT mod IN "./lib/mod.ob07";
2020-12-02 17:49:54 +03:00
AntKrotov 96fb19fa3e v1.43
-условная компиляция (по предложению от Stefano Antoniazzi)
-мелкие правки
2020-10-10 11:49:25 +03:00
AntKrotov 302b027360 v1.42
- улучшена трансляция операций "&" и "OR"
- обновление библиотеки
- сокращение кода
2020-09-28 01:25:35 +03:00
AntKrotov 2faac397c0 v1.41
По предложению от Stefano Antoniazzi:
- ключ "-lower" разрешает использовать нижний регистр для ключевых слов и встроенных идентификаторов
- имя процедуры после END необязательно
2020-09-14 11:36:04 +03:00
AntKrotov 8a49dad5f9 Экспериментально добавлена трансляция в байт-код 32-битной виртуальной машины 2020-09-11 23:31:42 +03:00
AntKrotov 61e288d9e5 обновление библиотеки, сокращение кода 2020-09-07 20:53:25 +03:00
AntKrotov f338d33f82 небольшая оптимизация 2020-09-04 20:00:09 +03:00
AntKrotov 0a4225fb01 мелкие правки 2020-09-02 00:11:49 +03:00
AntKrotov 0ab7a7656a v1.37
- небольшие оптимизации (x86_64)
- обновление библиотек
- сокращение кода
2020-08-28 21:23:01 +03:00
AntKrotov 1df858a3b9 v1.36
исправлена ошибка в работе с вещественными регистрами
2020-08-26 21:46:37 +03:00
AntKrotov 08ebb99934 v1.35
- улучшеный синтаксис импорта внешних процедур
- флаг [oberon]
- конкатенация строковых констант
2020-08-22 20:56:55 +03:00
AntKrotov 3edc0012a5 Linux: установка атрибута "исполняемый"; сокращение кода 2020-08-21 14:52:04 +03:00
AntKrotov ee3d1261ed проверка типа для SYSTEM.GET{8, 16, 32}; UTILS.d2s -> HOST.d2s 2020-08-18 08:43:47 +03:00
AntKrotov 1138a5b3dd добавлены SYSTEM.GET8, SYSTEM.GET16, SYSTEM.GET32 2020-08-18 03:58:45 +03:00
AntKrotov fb0409e28e мелкие правки, обновление библиотеки (Windows) 2020-08-18 00:04:06 +03:00
AntKrotov ed1dc463a9 x86, x86_64: небольшие оптимизации; сокращение кода 2020-08-14 18:28:13 +03:00