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 năm trước cách đây |
Jonas Maebe
|
07bd4ba517
* let all the case code generation work with tconstexprint instead of aint,
|
6 năm trước cách đây |
florian
|
a2cee252e8
* when optimizing range checks in case nodes, unsigned comparisions must be used, resolves #34782
|
6 năm trước cách đây |
florian
|
bd4b7a6bc4
* more case fixes
|
6 năm trước cách đây |
florian
|
f6e32ae90e
* (modified) path by Gareth Moreton to fix case handling
|
6 năm trước cách đây |
florian
|
7f5c2fa3aa
* (modified) patch by Gareth Moreton: Speed improvement in case blocks, resolves #0034762
|
6 năm trước cách đây |
yury
|
4357caaad8
* Removed unused local vars.
|
6 năm trước cách đây |
florian
|
50dba9ad66
* if both labels of a case label are equal, we still cannot skip the comparison in a jump tree, resolves #31589
|
8 năm trước cách đây |
florian
|
d5754cf47c
* create jmp trees for really big case statements
|
8 năm trước cách đây |
Jonas Maebe
|
a25ebbba3e
+ added volatility information to all memory references
|
8 năm trước cách đây |
florian
|
57f93ed40d
* correctly generate accesses to jump tables if it contains negative entries, resolves issue #30119
|
9 năm trước cách đây |
Jonas Maebe
|
da696057ab
* converted register_maybe_adjust_setbase() to the high level code generator
|
9 năm trước cách đây |
Jonas Maebe
|
ab22aaa2b7
* adjust the set base for i8086 before loading it into cx as a shift count
|
9 năm trước cách đây |
Jonas Maebe
|
687bb15299
* renamed getdatalabel() to getglobaldatalabel
|
10 năm trước cách đây |
sergei
|
5e8f8f4755
* Use GOT-relative constants for i386 PIC jump tables, they don't need runtime relocations. Now almost ABI-compliant on Linux/BSD (Darwin targets unchanged). Also clean up i8086-specific stuff: using tai_const.create_type_sym(aitconst_ptr,...) generates near pointers on i8086, which is the desired goal.
|
11 năm trước cách đây |
sergei
|
31d160aaf5
* x86: clean up and place jump tables into sec_rodata on all targets. Effectively it does not change anything, because sec_rodata with relocations still go into writable data at assembler level.
|
11 năm trước cách đây |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
11 năm trước cách đây |
nickysn
|
8608969eb8
* tx86casenode.genjumptable: explicitly emit near pointers in the case jump table on i8086, regardless of the memory model
|
12 năm trước cách đây |
Jonas Maebe
|
2dd75e707e
* renamed thlcgobj.tcgsize2orddef to defutil.cgsize_orddef
|
12 năm trước cách đây |
nickysn
|
1797c8b803
* i8086 fixes for the handling of large sets in tx86innode.pass_generate_code; test/cg/tin.pp works now
|
12 năm trước cách đây |
nickysn
|
de345ac191
* added missing setbase fixup in tx86innode.pass_generate_code for the case of LOC_CONSTANT in LOC_REFERENCE for large sets
|
12 năm trước cách đây |
nickysn
|
533bd30094
* some more i8086 bug fixes in tx86innode.pass_generate_code
|
12 năm trước cách đây |
nickysn
|
967e10ea95
* i8086 fixes in tx86innode.pass_generate_code
|
12 năm trước cách đây |
nickysn
|
1f5d384a1e
* i8086 fix in tx86casenode.genlinearlist
|
12 năm trước cách đây |
nickysn
|
b930c9a0db
* all the remaining cases of the 'in' operator fixed (hopefully) for i8086
|
12 năm trước cách đây |
nickysn
|
8ca0b443b8
* another case of the 'in' operator fixed for i8086 ('x in const', when use_small=false and genjumps=false)
|
12 năm trước cách đây |
nickysn
|
d7c9603351
* i8086 fixes for the 'in' operator in the case of 'unsigned,small,non_constant IN smallset'
|
12 năm trước cách đây |
florian
|
d6f0a1a0df
* do not generate scaled indicies for case table jumps for i8086
|
12 năm trước cách đây |
florian
|
feefcb6d3d
* don't generate dec for case nodes of unsigned types because dec does not set the carry flag, resolves #23503
|
12 năm trước cách đây |
florian
|
0b30b0fd5a
* re-enable jump tables for x86-64, they are fixed, see also
|
12 năm trước cách đây |