Jonas Maebe
|
aa82e00615
* fixed check to determine whether a record parameter can be subscripted
|
8 gadi atpakaļ |
nickysn
|
5f66f5cebb
+ distinguish between x86 flags subregisters: flags, eflags and rflags
|
8 gadi atpakaļ |
sergei
|
8ae0864c9a
* x86 Intel asm reader: handle special variables "self" and "result" similar to regular ones in terms of subscripting. This makes fix from r34911 apply to these special variables. Resolves #31542.
|
8 gadi atpakaļ |
florian
|
ad557a1da6
* allow call dword ptr eax in delphi, resolves #18225
|
8 gadi atpakaļ |
florian
|
b9dba41ad0
* intel assembler reader: scale factor in references can also be a constant symbol, resolves #31165
|
8 gadi atpakaļ |
Jonas Maebe
|
015f034904
* reverted r35424, wasn't ready for commit yet
|
8 gadi atpakaļ |
Jonas Maebe
|
4d9617da97
* fixed check to determine whether a record parameter can be subscripted
|
8 gadi atpakaļ |
sergei
|
d5ffc2da97
* Force OPR_LOCAL operand into reference whenever subscripting is used, so that all record fields are handled in same way regardless of their offset. Previously, operand was changed to reference only by fields with non-zero offset (see logic in tcgasmnode.ResolveRef method).
|
9 gadi atpakaļ |
Jonas Maebe
|
aa1be3276f
- removed default value of _typ parameter of TAsmData.(Weak)RefAsmSymbol():
|
9 gadi atpakaļ |
sergei
|
f69f6336e9
* Replaced hacks with resetting 'c' to zero and decreasing inputpointer by boolean parameter to skipcomment and skipoldtpcomment. This parameter specifies whether first character of comment should be read.
|
9 gadi atpakaļ |
sergei
|
bbfbab7e0c
* Moved handling of comments and line breaks in assembler blocks from scanner to tokenizer level. Handling them at character level was causing compiler to accept comments in the middle of any assembler token, which should never happen. It was also causing Mantis #27459: a newline immediately after closing 'end' token was first handled in asmgetchar and then by normal parser, causing all subsequent line numbering to be off by one.
|
9 gadi atpakaļ |
Jonas Maebe
|
fd0c2f36e5
* don't parse "flags" as a register name in the Intel assembler reader
|
10 gadi atpakaļ |
nickysn
|
a553b15a1c
+ handle properly inline asm segment constants different than word:
|
10 gadi atpakaļ |
nickysn
|
606b64a7f1
* fixed indentation
|
10 gadi atpakaļ |
nickysn
|
3b80ca4376
+ implemented the 'SEG @CODE' inline assembler directive for i8086
|
10 gadi atpakaļ |
nickysn
|
995ca4fb12
+ implemented the 'SEG @DATA' inline assembler directive for i8086
|
10 gadi atpakaļ |
nickysn
|
43dabca8ab
* moved the handling of the @Code and @Data inline assembler symbols to new methods Tx86operand.SetupCode and .SetupData
|
10 gadi atpakaļ |
nickysn
|
ca24b006ef
+ support 'dw SEG symbol' in the inline assembler on i8086
|
10 gadi atpakaļ |
nickysn
|
2e30b92c79
* removed the 'near ignored' and 'far ignored' inline asm warning messages on
|
10 gadi atpakaļ |
nickysn
|
9e110e8e7e
* treat interrupt procedures as 'near' in the i8086 inline assembler for TP7
|
10 gadi atpakaļ |
nickysn
|
dd9e5ea6f6
* convert 'call/jmp [proc]' properly to a near or far call/jmp, depending on
|
10 gadi atpakaļ |
nickysn
|
ed09b4fcaa
* in i8086 inline asm, convert 'call/jmp [proc/label]' to 'call/jmp proc/label'.
|
10 gadi atpakaļ |
nickysn
|
77159d2806
+ also add a cs: prefix to references such as [2+label]
|
10 gadi atpakaļ |
nickysn
|
823deb39ac
+ also add an implicit cs: prefix on i8086 in tx86intreader.BuildOperand.AddLabelOperand
|
10 gadi atpakaļ |
nickysn
|
92a39c93f5
+ add a CS: override for references without an explicitly set segment override, which are relative to a function entry point
|
10 gadi atpakaļ |
nickysn
|
ef5e368327
+ support local label data access in the i8086 inline asm (fixes test tlbldat1.pp)
|
10 gadi atpakaļ |
nickysn
|
dc6119bab7
* also convert 'jmp farprocsymbol' to 'jmp far farprocsymbol' in the i8086
|
10 gadi atpakaļ |
nickysn
|
cb36b2d3bd
* i8086 inline asm: convert 'call symbol' to 'call far symbol' only for symbols
|
10 gadi atpakaļ |
nickysn
|
c068c96302
* on i8086 convert the 'ret' inline asm instruction to either 'retn' or 'retf',
|
10 gadi atpakaļ |
nickysn
|
b3c2765da9
* on i8086, for BP7 compatibility, assemble 'call/jmp dword [ref]' as a far call
|
10 gadi atpakaļ |