Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread waldo kitty
On 4/20/2012 14:13, Mattias Gaertner wrote: On Fri, 20 Apr 2012 18:26:28 +0200 Florian Klaempfl wrote: [...] Do you have any proof that writing/reading to the files to disk is an issue? On modern harddisks and OSes the plain I/O speed is normally not the issue when compiling. True. Lazarus m

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread waldo kitty
On 4/19/2012 08:11, OBones wrote: Hello all, I'm currently creating a build chain where FPC is the last step, the one producing a DLL for Windows, x86 and x64. In front of it in the chain, I have designed a generator that creates a program and a set of units from its own representation. Right no

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread Mattias Gaertner
On Fri, 20 Apr 2012 18:26:28 +0200 Florian Klaempfl wrote: > Am 19.04.2012 14:11, schrieb OBones: > > Hello all, > > > > I'm currently creating a build chain where FPC is the last step, the one > > producing a DLL for Windows, x86 and x64. > > In front of it in the chain, I have designed a genera

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread Florian Klaempfl
Am 19.04.2012 14:11, schrieb OBones: Hello all, I'm currently creating a build chain where FPC is the last step, the one producing a DLL for Windows, x86 and x64. In front of it in the chain, I have designed a generator that creates a program and a set of units from its own representation. Right

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread Florian Klaempfl
Am 19.04.2012 14:11, schrieb OBones: Hello all, I'm currently creating a build chain where FPC is the last step, the one producing a DLL for Windows, x86 and x64. In front of it in the chain, I have designed a generator that creates a program and a set of units from its own representation. Right

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread Mark Morgan Lloyd
OBones wrote: Mattias Gaertner wrote: Maybe you can create a ramdisk. Thank you for your answer. I have thought about that, but this would create deployment problems as there is no default ramdisk driver under Windows. Might be worth considering should performance become a really big issue.

Re: [fpc-pascal] Inline assembly using absolute dword ptr

2012-04-20 Thread Jonas Maebe
On 20 Apr 2012, at 17:50, OBones wrote: > So there is a difference with Delphi's assembler where it defaults to > relative indexing while FPC defaults to absolute in that context. What exactly do you mean by relative addressing in this context? RIP-relative? In FPC, you indeed have to explicit

Re: [fpc-pascal] Inline assembly using absolute dword ptr

2012-04-20 Thread OBones
OBones wrote: Jonas Maebe wrote: {$IFDEF WIN64} pushrcx mov rcx,gs:[abs qword ptr $30] And this: mov rcx,qword ptr gs:[$30] Thanks, but does this guarantee absolute indexing? I'm asking because the abs keyword is required when using the same code under Delphi XE2. If I don

Re: [fpc-pascal] Inline assembly using absolute dword ptr

2012-04-20 Thread OBones
Jonas Maebe wrote: {$IFDEF WIN64} pushrcx mov rcx,gs:[abs qword ptr $30] And this: mov rcx,qword ptr gs:[$30] Thanks, but does this guarantee absolute indexing? I'm asking because the abs keyword is required when using the same code under Delphi XE2. If I don't use it, that

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread OBones
Mattias Gaertner wrote: Maybe you can create a ramdisk. Thank you for your answer. I have thought about that, but this would create deployment problems as there is no default ramdisk driver under Windows. Might be worth considering should performance become a really big issue. Regards ___

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread OBones
michael.vancann...@wisa.be wrote: It is currently not possible. FPC always reads from and writes to files. Fair enough, I'll have to deal with it then. Thank you for your answer ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists

Re: [fpc-pascal] Inline assembly using absolute dword ptr

2012-04-20 Thread Jonas Maebe
On 20 Apr 2012, at 17:27, OBones wrote: > I'm trying to compile the following code under FreePascal 2.6.0 : > > function MyGetCurrentThreadId: DWORD; assembler; > asm > {$IFDEF WIN32} > pushecx > mov ecx,fs:[dword ptr $18] Use this instead: mov ecx,dword ptr fs:[$18] > {$IFDEF

Re: [fpc-pascal] Inline assembly using absolute dword ptr

2012-04-20 Thread OBones
OBones wrote: The function starts at line 26 so the errors are about "dword ptr" and "abs qword ptr" inside the fs and gs square brackets What is wrong with my syntax? Is there another way to write it and get it to work? Ok, answering myself here, the syntax accepted by FPC is the following: f

[fpc-pascal] Inline assembly using absolute dword ptr

2012-04-20 Thread OBones
Hello, I'm trying to compile the following code under FreePascal 2.6.0 : function MyGetCurrentThreadId: DWORD; assembler; asm {$IFDEF WIN32} pushecx mov ecx,fs:[dword ptr $18] mov eax,dword ptr [ecx + $24] pop ecx {$ENDIF WIN32} {$IFDEF WIN64} pushrcx mov

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread Mattias Gaertner
On Thu, 19 Apr 2012 14:11:59 +0200 OBones wrote: > Hello all, > > I'm currently creating a build chain where FPC is the last step, the one > producing a DLL for Windows, x86 and x64. > In front of it in the chain, I have designed a generator that creates a > program and a set of units from its

Re: [fpc-pascal] Compiling from and to memory

2012-04-20 Thread michael . vancanneyt
On Thu, 19 Apr 2012, OBones wrote: Hello all, I'm currently creating a build chain where FPC is the last step, the one producing a DLL for Windows, x86 and x64. In front of it in the chain, I have designed a generator that creates a program and a set of units from its own representation. Ri

[fpc-pascal] Compiling from and to memory

2012-04-20 Thread OBones
Hello all, I'm currently creating a build chain where FPC is the last step, the one producing a DLL for Windows, x86 and x64. In front of it in the chain, I have designed a generator that creates a program and a set of units from its own representation. Right now, the program and units are writ