nickysn
8a0d8f025b
* fixed another i8086 inline asm 32-bit constant bug (e.g. in 'or eax, 80000001h')
...
git-svn-id: trunk@37521 -
2017-10-25 19:38:37 +00:00
nickysn
07eab50afe
+ added a test for 32-bit inline asm const operand on i8086, using at&t syntax as well
...
git-svn-id: trunk@37520 -
2017-10-25 18:09:11 +00:00
nickysn
325e66287c
* fix for inline asm of instructions with 32-bit constant operands on i8086
...
git-svn-id: trunk@37519 -
2017-10-25 18:03:22 +00:00
nickysn
2af5c9d508
* changed type used for section alignment from byte/shortint to longint, so the
...
internal object writer and the internal linker support object files with
sections with alignment >=256
git-svn-id: trunk@37518 -
2017-10-25 15:47:29 +00:00
nickysn
8cc230ef1a
- don't switch index into base in the gas assembly writer. This optimization
...
(and others) are performed in optimize_ref().
git-svn-id: trunk@37517 -
2017-10-25 13:42:18 +00:00
nickysn
d7e4b50068
+ also optimize x86_64 references by switching [rbp+reg64] to [reg64+rbp],
...
[r13+reg64] to [reg64+r13] and [r13d+reg32] to [reg32+r13d]
git-svn-id: trunk@37516 -
2017-10-24 16:18:43 +00:00
nickysn
5ae32a0ec5
+ always do the x86_64 reference optimizations as if SS=DS, because the CPU
...
basically ignores these segments in long mode
git-svn-id: trunk@37515 -
2017-10-24 15:38:59 +00:00
nickysn
e58bad8eef
+ check for the 'pop cs' instruction in the x86 inline assembler and print a
...
warning (on the i8086 target) or an error (on i386 and x86_64) when this
instruction is used (because it only works on 8086 and 8088 CPUs)
git-svn-id: trunk@37514 -
2017-10-24 15:07:20 +00:00
marco
fb57fd7324
* patch from Mattias fixing save/restore ancestorpos in twriter. Mantis #32607
...
git-svn-id: trunk@37513 -
2017-10-24 13:23:26 +00:00
nickysn
0d1f7910d7
+ also apply optimize_ref() on references of inline asm instructions
...
git-svn-id: trunk@37512 -
2017-10-23 22:28:08 +00:00
nickysn
875339993f
* strip segment overrides, for segments, which should be equal in the current
...
model to the default segment of the reference in optimize_ref, when
inlineasm=false
git-svn-id: trunk@37511 -
2017-10-23 15:51:33 +00:00
nickysn
d220d6f2c6
* use get_default_segment_of_ref() in the seg() handling on i8086
...
git-svn-id: trunk@37510 -
2017-10-23 14:55:52 +00:00
michael
ad1ebe0667
* Fix compilation
...
git-svn-id: trunk@37509 -
2017-10-23 12:36:46 +00:00
michael
7b12811f52
* Some more fixes from Pascal Riekenberg to simplify AfterPrintBand
...
git-svn-id: trunk@37508 -
2017-10-23 12:17:51 +00:00
michael
2547643cbb
* HandleOverflowedBands can use a single enumerated, does not need a set
...
git-svn-id: trunk@37507 -
2017-10-23 10:40:33 +00:00
michael
46da90ce8e
* Patch from Pascal Riekenberg with some fixes
...
* fixed: group footer with position fpStackAtBottom
* refactored: footer handling
* fixed: if StartOnNewSection is set to rsColumn in more than one group in multi column mode
git-svn-id: trunk@37506 -
2017-10-23 10:30:25 +00:00
michael
e4976dd314
ShowBandWithChildren: further simplification, single loop
...
git-svn-id: trunk@37505 -
2017-10-22 10:18:35 +00:00
michael
89db233a0e
* Remove use of continue
...
git-svn-id: trunk@37504 -
2017-10-22 10:02:25 +00:00
michael
a171ad319e
* Patch from Pascal Riekenberg to avoid try/finally in block
...
git-svn-id: trunk@37503 -
2017-10-22 09:54:58 +00:00
michael
fc638ed7ba
* Patch from Pascal Riekenberg: better naming for TOverFLowAction
...
git-svn-id: trunk@37502 -
2017-10-21 22:09:05 +00:00
michael
9e08dd108b
* Fix data fetching optimization
...
git-svn-id: trunk@37501 -
2017-10-21 19:11:50 +00:00
michael
42ac9457a2
* Original patch of Pascal Riekenberg to replace previous one
...
git-svn-id: trunk@37500 -
2017-10-21 19:10:07 +00:00
michael
0796eefe50
* Refactoring
...
git-svn-id: trunk@37499 -
2017-10-21 18:50:31 +00:00
michael
427792aa29
* Some refactoring of ShowBandWithChildren
...
git-svn-id: trunk@37498 -
2017-10-21 15:22:27 +00:00
michael
3f09294aab
* Functions to see whether a published property is readable or writeable
...
git-svn-id: trunk@37497 -
2017-10-20 19:41:56 +00:00
michael
a3bcefd78c
* Use pointer get/set methods
...
git-svn-id: trunk@37496 -
2017-10-20 19:17:11 +00:00
michael
3d3bbcfa9c
* Raise error if property cannot be written (Enhanced patch from Ondrej Pokorny, bug ID #32586 )
...
git-svn-id: trunk@37495 -
2017-10-20 18:44:35 +00:00
nickysn
80226e3af4
+ added an optimization pass, that optimizes x86 references
...
git-svn-id: trunk@37494 -
2017-10-20 15:55:55 +00:00
michael
d28a790a43
* Patch from Pascal Riekenberg:
...
* fixed and extended nested grouping in column mode
* updated nestedgroups demo
git-svn-id: trunk@37493 -
2017-10-20 14:22:02 +00:00
michael
b5f9cce9e4
* Patch from Ondrej Pokorny to improve QR drawing code interface (bug ID 32580)
...
git-svn-id: trunk@37492 -
2017-10-20 07:17:56 +00:00
Mattias Gaertner
aa83ab3c7d
pastojs: fixed insert(item,arr,pos)
...
git-svn-id: trunk@37491 -
2017-10-19 14:52:35 +00:00
maciej-izak
c2f870b60d
fcl-res: read version resource in more proper way. The length of value may be 0 (without any content).
...
git-svn-id: trunk@37490 -
2017-10-19 11:46:15 +00:00
svenbarth
7e3ad42f33
+ add types for the VMT's message table (the names are Delphi compatible, even if TVmtMethodEntry has no Len field)
...
git-svn-id: trunk@37489 -
2017-10-18 19:38:03 +00:00
marco
5e1652de3b
* some more fixes.
...
git-svn-id: trunk@37488 -
2017-10-18 15:08:39 +00:00
marco
bf2459b99b
* some initial makefile syncing
...
git-svn-id: trunk@37487 -
2017-10-18 15:04:48 +00:00
nickysn
67a0e9bdae
+ added x86 helper function get_default_segment_of_ref, which returns the
...
default segment base for the ref, in case there's no segment override
* in the internal assembler, use get_default_segment_of_ref to strip redundant
prefixes, instead of always assuming all refs are DS-based
git-svn-id: trunk@37486 -
2017-10-18 14:24:58 +00:00
Mattias Gaertner
feb210cbc3
fcl-passrc: nicer error position on cant find unit
...
git-svn-id: trunk@37485 -
2017-10-18 10:33:36 +00:00
svenbarth
e6b39ebf15
+ add methods for easier enumeration of the fields in a class' field table
...
git-svn-id: trunk@37484 -
2017-10-17 21:07:32 +00:00
svenbarth
0ba1073615
+ add new type TVmtFieldClassTab for the class table of the field table (Delphi compatible)
...
git-svn-id: trunk@37483 -
2017-10-17 20:54:38 +00:00
svenbarth
530213711f
* change the class references in a class' field table to indirect references
...
git-svn-id: trunk@37482 -
2017-10-17 20:34:21 +00:00
michael
2af27756da
* Patch from Pascal Riekenberg: ApplyBandWidth: handle child bands like main parent band
...
git-svn-id: trunk@37481 -
2017-10-17 20:02:47 +00:00
yury
af0fdea815
* Android: Include list of supported syscalls for each CPU.
...
Adjust Linux RTL to work with supported Android syscalls.
It should fix issues with Android 8.
git-svn-id: trunk@37480 -
2017-10-17 18:15:02 +00:00
yury
dbf482d62b
* Fixed version of FpSysCall() with 6 params for Linux with PIC.
...
git-svn-id: trunk@37479 -
2017-10-17 18:03:29 +00:00
nickysn
e8bbc4eef9
+ support the xlat x86 instruction syntax with a memory operand. This allows
...
specifying the address size (e.g. xlat byte ptr [bx] or xlat byte ptr [ebx])
git-svn-id: trunk@37478 -
2017-10-17 16:40:06 +00:00
michael
2ffad85470
* Patch from Pascal Riekenberg:
...
* corrected setting of state variable IsGroupDetailPrinted
* when printing group footer do not consider height of repeated group footer in footer space calculation
* removed some unused local variables
git-svn-id: trunk@37477 -
2017-10-16 19:00:04 +00:00
nickysn
9cebeeffa9
+ check for address size mismatch in intel syntax assembler as well
...
git-svn-id: trunk@37475 -
2017-10-16 16:19:15 +00:00
nickysn
353efcb163
* fixed rdi register name in error message
...
git-svn-id: trunk@37474 -
2017-10-16 16:14:18 +00:00
nickysn
cece021bd1
+ check whether the address sizes match for x86 string instructions with two
...
memory operands, when using the at&t syntax inline assembler
git-svn-id: trunk@37473 -
2017-10-16 16:01:38 +00:00
michael
aacd13d347
* Patch from Pascal Riekenberg: intermediate group footer should use previous field values if group footer overflows
...
git-svn-id: trunk@37472 -
2017-10-16 15:04:02 +00:00
nickysn
4cb1a96ec1
* use get_ref_address_size in the nasm writer, when handling the parameterized
...
string instructions
git-svn-id: trunk@37471 -
2017-10-16 14:21:03 +00:00