Dmitry Stogov
|
09829a9e69
|
Fixed x86_64 calling convention for vararg functions
%al is used as a hidden register to specify the number of passed vector registers
|
2023-09-27 10:23:34 +03:00 |
|
Dmitry Stogov
|
aeae3ff8d4
|
printf() may print "nan" differently
|
2023-09-27 00:43:45 +03:00 |
|
Dmitry Stogov
|
234bdad1f4
|
Change condition order
|
2023-09-27 00:43:24 +03:00 |
|
Dmitry Stogov
|
4fef47b1a5
|
Reimplement tester program in C and in IR independent way (#50)
* Reimplement tester program in C and in IR independent way
* Fix Windows support
|
2023-09-27 00:34:03 +03:00 |
|
Ilija Tovilo
|
9a8cbdf28c
|
Test Unix x86 with asan/ubsan in CI (#49)
|
2023-09-26 10:57:55 +03:00 |
|
Ilija Tovilo
|
e97f195025
|
Ignore ir-test binary (#48)
|
2023-09-25 13:14:20 +03:00 |
|
Dmitry Stogov
|
399a387713
|
Avoid MOVD/MOVQ disassemble mismatch with old/new capstone versions
|
2023-09-19 16:30:09 +03:00 |
|
Dmitry Stogov
|
971c6e03be
|
Fix incorrect type suffixes
|
2023-09-19 14:45:27 +03:00 |
|
Dmitry Stogov
|
a2f8452b3d
|
Fixed code generation for MOD
|
2023-09-18 13:10:19 +03:00 |
|
Dmitry Stogov
|
f8372e663d
|
cleanup
|
2023-09-18 12:16:24 +03:00 |
|
Ilija Tovilo
|
c549449cd4
|
[skip ci] Fix typo in ir_folding comment (#47)
|
2023-09-18 10:26:26 +03:00 |
|
Dmitry Stogov
|
8977307f4e
|
Improve error handling
|
2023-09-14 20:15:30 +03:00 |
|
Dmitry Stogov
|
aeaa6404b7
|
Typo
|
2023-09-14 16:54:26 +03:00 |
|
Dmitry Stogov
|
d032f87b4d
|
Reduce number of useless spill loads
|
2023-09-12 23:32:25 +03:00 |
|
Dmitry Stogov
|
7650500a7c
|
Remove -nan
|
2023-09-12 22:15:36 +03:00 |
|
Dmitry Stogov
|
834eb77e90
|
Fixed support for float, inf and nan constants.
|
2023-09-12 22:05:11 +03:00 |
|
Dmitry Stogov
|
83de21eccd
|
Fixed argument sign/zero extension
|
2023-09-12 20:47:45 +03:00 |
|
Dmitry Stogov
|
5953d17f5f
|
Don't miss spill loads when the register valuses are reused
|
2023-09-12 16:12:12 +03:00 |
|
Dmitry Stogov
|
915edb8a6c
|
Force spill load for fused and spiled virtual registers
|
2023-09-04 19:32:27 +03:00 |
|
Dmitry Stogov
|
f44e897bb2
|
Set IR_TLS.op3 to IR_NULL, if unused
|
2023-09-04 16:39:21 +03:00 |
|
Dmitry Stogov
|
02afd0a89f
|
Fixed code generation for IR_MUL/DIV/MOD_INT with result in a spill slot
|
2023-09-01 12:18:05 +03:00 |
|
Dmitry Stogov
|
316bc37e8b
|
Support for MACOS TLS
|
2023-09-01 08:49:05 +03:00 |
|
Dmitry Stogov
|
6ec7e6f49d
|
Avoid saving unspecified registers in the fixed stack frame
|
2023-08-31 18:17:26 +03:00 |
|
Dmitry Stogov
|
4cf60c7c5f
|
Validata SSA dominance property
|
2023-08-31 11:23:24 +03:00 |
|
Dmitry Stogov
|
777566f6f8
|
An attempt to fix FreeBSD build
|
2023-08-30 17:44:36 +03:00 |
|
Dmitry Stogov
|
7b534690a4
|
An attempt to fix FreeBSD build
|
2023-08-30 17:28:37 +03:00 |
|
Dmitry Stogov
|
4b504aba36
|
An attempt to fix FreeBSD build
|
2023-08-30 16:59:30 +03:00 |
|
Dmitry Stogov
|
0dbb794399
|
CI tests for MACOS build (#46)
|
2023-08-30 15:24:12 +03:00 |
|
Dmitry Stogov
|
474a8a8d5a
|
Fixed incorrect constant truncation
|
2023-08-30 12:07:52 +03:00 |
|
Dmitry Stogov
|
c09877b4ef
|
Fix compilation warnings
|
2023-08-30 09:31:14 +03:00 |
|
Dmitry Stogov
|
a25f85e5dd
|
Fix support for difference in qsort_r/s() on Windows, MAC and GNU
|
2023-08-30 02:35:06 +03:00 |
|
Dmitry Stogov
|
439f202aed
|
Support for difference in qsort_r() on MAC and GNU
|
2023-08-30 00:52:24 +03:00 |
|
Dmitry Stogov
|
bacd55fbda
|
Fix compilation warning
|
2023-08-30 00:28:33 +03:00 |
|
Dmitry Stogov
|
dd2ecad299
|
Allow reuse of spill slots for objecs of smaller size
|
2023-08-02 13:20:13 +03:00 |
|
Dmitry Stogov
|
283f1a3a13
|
Avoid generation of dead PHI
|
2023-08-01 14:43:57 +03:00 |
|
Dmitry Stogov
|
9df73782ed
|
Fixed support for fake contol edges between END and ENTRY
|
2023-08-01 13:07:49 +03:00 |
|
Dmitry Stogov
|
1d49fe6cc4
|
Reduce cost of disabled IR_ASSERT()
|
2023-07-27 11:16:00 +03:00 |
|
Dmitry Stogov
|
c2a53d29fa
|
Rearrange code for better performance
|
2023-07-26 22:32:14 +03:00 |
|
Dmitry Stogov
|
0f12ea8c71
|
Add comments for expanded DynASM macros
|
2023-07-26 22:05:01 +03:00 |
|
Dmitry Stogov
|
e60bb978f4
|
Use _xlat[] slots for "used constants" markers
|
2023-07-07 13:57:01 +03:00 |
|
Dmitry Stogov
|
4bb03ab7e3
|
ws
|
2023-07-07 11:53:11 +03:00 |
|
Dmitry Stogov
|
5b90420b18
|
Improved unused constant elimination
|
2023-07-07 11:15:52 +03:00 |
|
Dmitry Stogov
|
496a98708e
|
Improved IR linearization
|
2023-07-07 02:11:03 +03:00 |
|
Dmitry Stogov
|
ef201cd349
|
Use xlat[] directly (instead of "scheduled" bitset).
|
2023-07-06 19:34:20 +03:00 |
|
Dmitry Stogov
|
78c377ed2d
|
Store negarive block number in schedule_early() and postive in
schedule_late(). This eliminates a need for "visited" bitset.
|
2023-07-06 19:30:56 +03:00 |
|
Dmitry Stogov
|
d41abefd58
|
Move processing of the last node of the block out of the loop
|
2023-07-06 14:10:50 +03:00 |
|
Dmitry Stogov
|
59dbef0cfb
|
typo
|
2023-07-06 12:59:33 +03:00 |
|
Dmitry Stogov
|
f6cf9140da
|
Update ir_insn.inputs_count and use it after ir_build_def_use_lists()
|
2023-07-06 01:15:08 +03:00 |
|
Dmitry Stogov
|
d7d7d5fc1b
|
Implemented a faster ir_build_def_use_lists() with higher temporary memory requirement
|
2023-07-05 16:44:09 +03:00 |
|
Dmitry Stogov
|
8c331e3264
|
typo
|
2023-07-04 18:22:15 +03:00 |
|