Commit Graph

25896 Commits

Author SHA1 Message Date
Pierre Muller
85c648e603 Check mf_symansistr is compatible with current compiler mode and issue a message before failing PPU loading 2022-04-11 22:10:48 +00:00
florian
191dd0c637 + support .weak in the internal assembler 2022-04-09 21:12:10 +02:00
florian
971d7baa8a * patch by Cyrax: Quote path - which is passed to Windres or alike program, resolves #36526 2022-04-08 22:42:05 +02:00
Sven/Sarah Barth
815734c47a * fix #32034 and fix #39656: in a for-in-loop with an array constructor enforce the type of the loop variable for the elements
+ added tests
2022-04-08 17:40:36 +02:00
Sven/Sarah Barth
1180589046 * free the placeholder for the count of the dynamic array in end_dynarray_const() and document it as such 2022-04-08 16:11:49 +02:00
florian
54dccaaad1 * do not crash in case of too many $push directives, resolves #39652 2022-04-07 22:51:30 +02:00
J. Gareth "Curious Kit" Moreton
92a0640bcc * Local speedup in OptPass1LEA that avoids expensive calls if p and
hp1 are adjacent.
2022-04-06 19:56:24 +00:00
J. Gareth "Curious Kit" Moreton
305e49c0b8 * Some streamlining in x86's OptPass1LEA routine now that the stack
pointer is properly tracked, which also permits some deeper
    optimisations on -O1 and -O2 virtually for free.
2022-04-06 19:56:24 +00:00
florian
8120fb8b77 * cosmetics 2022-04-06 21:54:03 +02:00
florian
7ff393085e * factored out tx86typeconvnode.int_to_real_mm_location 2022-04-05 22:50:24 +02:00
Karoly Balogh
57107c3310 m68k: opcode table updates based on vasm 1.9 (used with permission) 2022-04-05 12:07:49 +02:00
florian
4e28962115 * 8086 compilation fixed 2022-04-03 23:31:50 +02:00
florian
5ce9353d58 * i386: make also use of VCVTUSI2S* instruction if possible 2022-04-03 23:14:41 +02:00
J. Gareth "Curious Kit" Moreton
96aa2bbf74 * [x86] Added new RefsMightOverlap method and implemented it into the XMM memory move optimisations to catch memory overlaps; fixes bug i39627 2022-04-03 13:02:29 +00:00
Jonas Maebe
9813eb9048 AArch64 asm reader: add support for fpcmp(e) conditions
Resolves #39643
2022-04-03 13:40:21 +02:00
Jonas Maebe
b1f85792d7 Symbolic constants: don't range check on in use in typed constants
Same as 3da54dcf9f, but this type when used in type constant definitions
like record fiels
2022-04-03 11:20:10 +02:00
Jonas Maebe
3da54dcf9f Symbolic constants: don't range check on use
If these constants are defined with an explicit type, they are already
truncated/checked at that point. If we range check them again on use, we
may get errors because at that point there is no explicit type cast
any more.
2022-04-02 13:26:44 +02:00
florian
0978f6ce16 * probably check type for int_to_real instruction selection 2022-04-01 23:06:52 +02:00
Pierre Muller
8512d7ac8f Add x86_64 CPU to list requiring fpux80 support 2022-03-30 15:10:30 -06:00
florian
4718029fe0 * do not throw an error if syscall is used with a syntax not applicable for the current
target, resolves #39640
2022-03-30 23:07:34 +02:00
ccrause
6df2eb5fd4 Extra code generation options for shift with compile time constant. 2022-03-30 20:48:52 +00:00
florian
0e4188749b * started with change information for AVX-512 2022-03-29 22:50:14 +02:00
florian
16881556b9 * change information for AVX-512 mask register instructions 2022-03-28 22:37:09 +02:00
florian
c3ec62878e * completed change information for AVX-2 2022-03-27 23:06:18 +02:00
florian
6ea0050990 * finished change information for AVX1 instructions 2022-03-26 23:44:59 +01:00
florian
2f33c97006 * more change information 2022-03-25 23:17:57 +01:00
florian
6a56ed24ab * another change information update 2022-03-24 22:33:27 +01:00
Karoly Balogh
59c33d69ab Revert "m68k: utilize cg.a_loadaddr_ref_cgpara in hlcgcpu" for now, turns out it's not needed 2022-03-24 09:48:25 +01:00
florian
fbf68af605 * continued to update change information 2022-03-23 21:43:08 +01:00
Karoly Balogh
ed520548be m68k: utilize cg.a_loadaddr_ref_cgpara in hlcgcpu, as m68k has an instruction for loading addresses directly to the stack (PEA), and the default implementation of hlcg.a_loadaddr_ref_cgpara doesn't use that code path 2022-03-23 11:06:18 +01:00
florian
fba3da47c6 * continued to update change information 2022-03-22 22:55:37 +01:00
Karoly Balogh
22eb1e099f * m68k: make sure right is in an address register for muln,addn,orn,xorn, before calling the low level cg 2022-03-22 09:02:31 +01:00
florian
de98803751 * few more updated change information entries 2022-03-21 22:51:52 +01:00
florian
c785fa4435 * AES instruction change information fixed 2022-03-20 22:32:23 +01:00
florian
2099e35d82 * change information for SSE 4.2 instructions 2022-03-19 23:15:49 +01:00
florian
6421f2c36b * change information for SSE4.1 instructions 2022-03-18 23:23:31 +01:00
florian
a9db41f1e5 * fixed SSSE3 change information 2022-03-17 22:48:44 +01:00
florian
f5de329076 * change information updates 2022-03-16 23:03:58 +01:00
florian
e9ee0a0be3 * more change information updated 2022-03-15 22:37:49 +01:00
florian
50b6978e68 * more change information updates 2022-03-14 23:11:14 +01:00
florian
b1a72a86e5 * more change information fixed 2022-03-12 22:42:02 +01:00
Karoly Balogh
be2c1c751d * m68k: fixed the register save/restore for larger than 32K stackframes on subarchs which has no long displacement, to not trash register A0 2022-03-12 21:22:42 +01:00
florian
5e0d5cd92e * fix change information for a lot of MMX instructions 2022-03-11 22:46:51 +01:00
Karoly Balogh
0600287c63 * m68k: spilling read, write, and replace is now bound to CPU capabilities instead of CPU family. This probably fixes some issues on 68000, where spilling replacement was not respecting CPU displacement handling boundaries, leading to assembler errors. 2022-03-11 16:03:21 +01:00
Karoly Balogh
60919b4979 * m68k: disable the frame pointer optimization on subarchs that don't support long displacements for now, until the shortcomings of the cg can be addressed 2022-03-11 13:01:42 +01:00
florian
68bc5da3a2 * fix MovapXComisX2ComisX2 optimization 2022-03-10 22:30:29 +01:00
Karoly Balogh
e9dc638a76 * regenerated message files after CPC naming fix 2022-03-09 13:41:06 +01:00
Karoly Balogh
e0599bb231 * z80-amstradcpc: fixed target naming mess, so -Tamstradcpc works now, also fixed the help text 2022-03-09 13:36:47 +01:00
florian
27fb9086aa * cleanup: cs_opt_loopunroll is a generic optimization for a long time already 2022-03-08 23:03:18 +01:00
Pierre Muller
2f28c5596f Regenerate all Makefile's to fix problem on x86_64 linux 2022-03-07 23:46:15 +00:00