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