Commit Graph

28332 Commits

Author SHA1 Message Date
florian
2c5a070959 + random bits for quad support on RiscV 2025-01-06 15:21:18 +01:00
florian
b4d3468f68 * use HAS_MINMAX_INTRINSICS define 2025-01-06 15:21:18 +01:00
Sven/Sarah Barth
155756f668 * if an outer capturer is required then that outer capturer must not be optimized into a register (fixes compilation with -Ooregvar enabled (e.g. in -O3)) 2025-01-05 13:19:31 +01:00
Jonas Maebe
5c4db7dbca Extended RTTI: more Objective-C handling
Resolves #41034
2025-01-05 11:50:26 +01:00
florian
c8052a3f1d * cleanup merge artefacts 2025-01-05 11:07:22 +01:00
florian
72daf3f556 * RiscV64: optimize 32 bit shift instructions as well 2025-01-04 14:59:00 +01:00
Sven/Sarah Barth
50b160651c * fix #38122 in a more correct way than previously done: instead of adjusting the methodpointer node when it's a deref node adjust what value is stored in a temp if a call node is encountered: store the pointer value, not the pointed to value to avoid the reference getting lost
+ added test (note: the test fails at least on x86_64-win64 due to some different reason :/ )
2025-01-04 10:31:26 +01:00
florian
06f8ad2e3d * write " as octal number as well in assembler output, it is more compatible 2025-01-03 17:38:37 +01:00
florian
dc6057a112 * .toc sections do not need a .csect on powerpc-macosclassic 2025-01-03 17:38:36 +01:00
florian
f7264d3f29 * MacOS Classic uses apparently very similiar mechanisms for the TOC as powerpc-aix 2025-01-03 17:38:36 +01:00
florian
83f1d1eefb * write sections/section names correctly for as-macos 2025-01-02 16:06:22 +01:00
florian
8674d45d7b * better checking of valid addr_no 2025-01-02 16:06:22 +01:00
Sven/Sarah Barth
4185e1dc67 * fix typo in comment 2025-01-02 13:24:46 +01:00
Sven/Sarah Barth
ead882f58d * fix #40876: correctly check for generic constant parameters without concrete value
+ added test
2025-01-02 13:24:46 +01:00
florian
bc3b68ae7e + as-macos for using as from Retro68 2025-01-01 23:13:15 +01:00
Jonas Maebe
f3b2836947 Extended RTTI: generate RTTI for Objective-C fields like for generic pointers
Resolves #41034
2025-01-01 22:07:15 +01:00
florian
5add799193 * fix trvinlinenode.second_fma 2025-01-01 18:00:15 +01:00
Jonas Maebe
540807c5c8 WPO: don't crash on TP-style objects with only abstract virtual methods 2025-01-01 15:23:06 +01:00
Sven/Sarah Barth
2a6fb32974 * don't use $MINSTACKSIZE and $MAXSTACKSIZE on non-Windows instead of disabling the warning 2024-12-31 21:44:23 +01:00
Sven/Sarah Barth
4f5b708d49 * fix typo in comment 2024-12-31 18:32:17 +01:00
Sven/Sarah Barth
558a7ef1ed * store the current verbosity as part of the settings so that they're stored as part of a generic token stream as well 2024-12-31 18:32:17 +01:00
Sven/Sarah Barth
59be46a6fb * reset the message state only inside flushpendingswitchesstate(), not during $POP itself 2024-12-31 18:32:17 +01:00
Sven/Sarah Barth
b1791af0a3 * also (re)store the pending state when replaying a token stream 2024-12-31 18:32:17 +01:00
Sven/Sarah Barth
3ba27d3160 * ensure that current_settings.pmessage is reset when doing a replay and when loading the current message state from the token stream 2024-12-31 18:32:17 +01:00
Sven/Sarah Barth
5ec9386d27 * ensure that only the newest message state is applied 2024-12-31 18:32:17 +01:00
Sven/Sarah Barth
1388e2af5b * don't use tmessage.setverbosity() to check whether the message is valid as it should only be applied when the switches are flushed, so use the new tmessage.valid() instead 2024-12-31 18:32:17 +01:00
Sven/Sarah Barth
9a2d0e0692 + add method to TMessage to check whether a message is valid 2024-12-31 18:32:16 +01:00
Sven/Sarah Barth
f2d41e680b * when restoring the state after parsing the last token of the token buffer append the message state to the pending state so that they are reapplied at the correct time 2024-12-31 18:32:16 +01:00
Sven/Sarah Barth
c3a6df26ee * apply message state to the pending state so that they are applied at the correct moment 2024-12-31 18:32:16 +01:00
Sven/Sarah Barth
d335ce60dd * ensure that flushpendingswitchesstate had been called before the start of replaying tokens 2024-12-31 18:32:16 +01:00
Sven/Sarah Barth
7fe7e26659 * use dispose() instead of freemem() for consistency with the allocation of pmessagestaterecord 2024-12-31 18:32:16 +01:00
Margers
93d855b2ca Remove one of two CPULLVM define macro 2024-12-30 21:25:43 +00:00
Margers
f7cbed1a72 def_system_macro -> undef_system_macro (fix oversight as if then block is equal to else block) 2024-12-30 21:23:30 +00:00
florian
40f9d006d6 * write basic attributes for riscvXX-linux 2024-12-30 15:56:24 +01:00
florian
a16f2ae35d * tai_eabi_attribute -> tai_attribute so it can be used by other architectures 2024-12-30 15:56:24 +01:00
florian
e30ca27914 * RiscV: write also nopic directive 2024-12-29 18:38:27 +01:00
Sven/Sarah Barth
de8d54cfef * reset oo_is_forward object option for external classes after parsing the parent classes 2024-12-29 17:38:30 +01:00
florian
64e87c87bc * apply OptPass1OP to SLT/SLTU as well 2024-12-28 23:38:22 +01:00
Sven/Sarah Barth
3b7d9956ca * fix #40653: don't allow the use of a class during its declaration as parent for a nested class (Delphi compatible)
+ added test
2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
dedc018beb * when parsing generic parameter types allow the use of generics that are part of the current specialization stack (this can be the case if a generic is used inside itself as a type parameter for a specialization)
+ added tests
2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
9b63123bf0 + add utility function to check whether a generic belongs to the currently parsed generic even if it's further up in the specialization stack 2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
8f81b213dc * keep track of the current generic def in the specialization state 2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
db83f9c696 * keep track of the current specialization state of the current module 2024-12-27 16:32:06 +01:00
Sven/Sarah Barth
79ff74ac44 * fix #41007: only unlink typesyms from their typedefs when releasing an unused implicit specialization if the typesym was created for the implicit specialization
+ added test
2024-12-26 18:08:09 +01:00
Sven/Sarah Barth
32b3477fe2 * fix #41063: don't add classrefdefs or objectdefs to the WPOInfo if they are declared locally (e.g. capturer instances)
+ added test
2024-12-26 18:08:09 +01:00
florian
b7608b045b * RiscV: push_addr_param unified 2024-12-26 16:49:43 +01:00
Sven/Sarah Barth
9de0025394 * fix #41074: adjust conversion level of class/interface to pointer and class to interface conversions so that sub class to class conversions take precedence
+ added tests
2024-12-26 15:03:14 +01:00
Sven/Sarah Barth
310afcd783 * fix #41075: don't allow @<anonfunc>
+ added tests
2024-12-26 12:48:44 +01:00
florian
9ba3b12eaa * RiscV: unify push_addr_param 2024-12-25 23:33:11 +01:00
florian
b4a83e29a4 * fixes RiscV32 building 2024-12-25 22:48:40 +01:00