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 anni fa |
Jonas Maebe
|
170ec00348
- removed withnode (was no longer used since a very long time)
|
6 anni fa |
florian
|
ae8304f657
* set nf_write flag properly for vec. nodes of types with implicit dereferencing
|
6 anni fa |
florian
|
93c5eae528
* accept dereferences in generics definitions, resolves #33700 properly
|
7 anni fa |
nickysn
|
e1d0e7572e
* i8086 TP7 compatibility fixes, related to obtaining procedure addresses:
|
7 anni fa |
nickysn
|
58ead31f49
* optimized ofs(proc) on i8086, so it only loads the offset in all memory models
|
7 anni fa |
nickysn
|
6929af07b7
+ added flag tcnf_proc_2_procvar_get_offset_only
|
7 anni fa |
nickysn
|
4a3a64d8f4
+ print addrnodeflags in printnodeinfo
|
7 anni fa |
nickysn
|
109fb279f6
* moved the initialization of the resultdef for labelsyms in the typecheckpass
|
7 anni fa |
nickysn
|
3318703ece
* moved nf_typedaddr to addrnodeflags (anf_typedaddr)
|
7 anni fa |
nickysn
|
213e61eae5
+ introduce the anf_ofs address node flag - indicates that the node was
|
7 anni fa |
nickysn
|
539d4cb68a
+ introduced taddrnodeflags (empty for now)
|
7 anni fa |
nickysn
|
c665866517
+ introduce the tcnf_proc_2_procvar_2_voidpointer flag (for now it is only set,
|
7 anni fa |
nickysn
|
0119e7afb3
* changed the codepointer type in the i8086 small and compact memory models from
|
7 anni fa |
Károly Balogh
|
333316f356
less tab more spaces. no functional change.
|
7 anni fa |
florian
|
b1dff29cbf
* removed unused units
|
8 anni fa |
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 anni fa |
nickysn
|
657685a8b6
* use sizesinttype instead of ptrsinttype for the index and high parameter of
|
8 anni fa |
Jonas Maebe
|
18639304e1
* convert the index for open arrays to ptr(u/s)inttype instead of to
|
9 anni fa |
Jonas Maebe
|
996e325175
* converted range checking for open arrays/array of const from the code
|
9 anni fa |
Jonas Maebe
|
5af40f22e8
* handle enums with a packenum setting that is larger than necessary to store
|
9 anni fa |
Jonas Maebe
|
7005dec9b4
* equivalent of r32602 for subscriptnodes; couldn't find a test that fails
|
9 anni fa |
Jonas Maebe
|
356a5aff05
* apparently, Darwin/x86-64 also uses an opaque ISA pointer on OS X 10.11
|
9 anni fa |
florian
|
cad29a4e19
* set nf_write flag correctly for subscript nodes, resolves issue #28713
|
9 anni fa |
Jonas Maebe
|
2778bf55c7
* add "doregister" parameter to torddef.create, and don't register temporary
|
9 anni fa |
svenbarth
|
529677cc79
ncal.pas:
|
10 anni fa |
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 anni fa |
Jonas Maebe
|
f402b0d7df
* changed getpointerdef() into a tpointerdef.getreusable() class method
|
10 anni fa |
Jonas Maebe
|
3f736f6114
* handle the loading of VMT entries at the node level, so it's done in a
|
10 anni fa |
Jonas Maebe
|
703e31512d
* moved JVM-specific code of tloadvmtaddrnode.pass_1 to njvmmem
|
10 anni fa |