yury
|
e5c2d13671
* Do not set pi_needs_got in current_procinfo.flags at the node level, since the GOT usage can only be estimated there. Instead set the pi_needs_got flag at places where the GOT register is accessed during the code generation. This eliminates generation of the unneeded initialization of the GOT register and fixes linker errors when the _GLOBAL_OFFSET_TABLE_ symbol is referenced but no actual GOT references are present.
|
6 lat temu |
Jonas Maebe
|
170ec00348
- removed withnode (was no longer used since a very long time)
|
6 lat temu |
florian
|
ae8304f657
* set nf_write flag properly for vec. nodes of types with implicit dereferencing
|
6 lat temu |
florian
|
93c5eae528
* accept dereferences in generics definitions, resolves #33700 properly
|
7 lat temu |
nickysn
|
e1d0e7572e
* i8086 TP7 compatibility fixes, related to obtaining procedure addresses:
|
7 lat temu |
nickysn
|
58ead31f49
* optimized ofs(proc) on i8086, so it only loads the offset in all memory models
|
7 lat temu |
nickysn
|
6929af07b7
+ added flag tcnf_proc_2_procvar_get_offset_only
|
7 lat temu |
nickysn
|
4a3a64d8f4
+ print addrnodeflags in printnodeinfo
|
7 lat temu |
nickysn
|
109fb279f6
* moved the initialization of the resultdef for labelsyms in the typecheckpass
|
7 lat temu |
nickysn
|
3318703ece
* moved nf_typedaddr to addrnodeflags (anf_typedaddr)
|
7 lat temu |
nickysn
|
213e61eae5
+ introduce the anf_ofs address node flag - indicates that the node was
|
7 lat temu |
nickysn
|
539d4cb68a
+ introduced taddrnodeflags (empty for now)
|
7 lat temu |
nickysn
|
c665866517
+ introduce the tcnf_proc_2_procvar_2_voidpointer flag (for now it is only set,
|
7 lat temu |
nickysn
|
0119e7afb3
* changed the codepointer type in the i8086 small and compact memory models from
|
7 lat temu |
Károly Balogh
|
333316f356
less tab more spaces. no functional change.
|
7 lat temu |
florian
|
b1dff29cbf
* removed unused units
|
8 lat temu |
svenbarth
|
0e7a9ad375
* partial fix for Mantis #30831 (partial, because no exception has been encountered yet): when checking whether the left node of a vmtaddrnode is a generic, don't rely on df_generic, but instead use is_generic which checks for a true generic (the other will also be true if it's merely a structured type declared (or specialized) inside another generic)
|
8 lat temu |
nickysn
|
657685a8b6
* use sizesinttype instead of ptrsinttype for the index and high parameter of
|
8 lat temu |
Jonas Maebe
|
18639304e1
* convert the index for open arrays to ptr(u/s)inttype instead of to
|
9 lat temu |
Jonas Maebe
|
996e325175
* converted range checking for open arrays/array of const from the code
|
9 lat temu |
Jonas Maebe
|
5af40f22e8
* handle enums with a packenum setting that is larger than necessary to store
|
9 lat temu |
Jonas Maebe
|
7005dec9b4
* equivalent of r32602 for subscriptnodes; couldn't find a test that fails
|
9 lat temu |
Jonas Maebe
|
356a5aff05
* apparently, Darwin/x86-64 also uses an opaque ISA pointer on OS X 10.11
|
9 lat temu |
florian
|
cad29a4e19
* set nf_write flag correctly for subscript nodes, resolves issue #28713
|
9 lat temu |
Jonas Maebe
|
2778bf55c7
* add "doregister" parameter to torddef.create, and don't register temporary
|
9 lat temu |
svenbarth
|
529677cc79
ncal.pas:
|
10 lat temu |
florian
|
049491a573
+ fold the constructs @<record type>(nil^).<field >) and @<record point>(nil)^.<field> used to get the offset of a field into a constant
|
10 lat temu |
Jonas Maebe
|
f402b0d7df
* changed getpointerdef() into a tpointerdef.getreusable() class method
|
10 lat temu |
Jonas Maebe
|
3f736f6114
* handle the loading of VMT entries at the node level, so it's done in a
|
10 lat temu |
Jonas Maebe
|
703e31512d
* moved JVM-specific code of tloadvmtaddrnode.pass_1 to njvmmem
|
10 lat temu |