www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - page size in druntime is a mess

reply deadalnix <deadalnix gmail.com> writes:
Page size in druntime is sometime a constant (4Kb), sometime calculated, 
often assumed to be a compile time constant.

druntime should define a proper, authoritative, place to calculate that 
page size, and then use the page calculated here.

I did some tests today, and it require quite a lot of changes. But it is 
mandatory to run D on any system where the page size isn't 4Kb.

So first question, where this should be calculated ? In core.memory ?
Mar 18 2012
parent reply Sean Kelly <sean invisibleduck.org> writes:
On Mar 18, 2012, at 7:12 AM, deadalnix <deadalnix gmail.com> wrote:

 Page size in druntime is sometime a constant (4Kb), sometime calculated, o=

=20
 druntime should define a proper, authoritative, place to calculate that pa=

=20
 I did some tests today, and it require quite a lot of changes. But it is m=

=20
 So first question, where this should be calculated ? In core.memory ?

rt.memory possibly. That or core.memory.=20=
Mar 18 2012
parent reply deadalnix <deadalnix gmail.com> writes:
Le 18/03/2012 16:09, Sean Kelly a écrit :
 On Mar 18, 2012, at 7:12 AM, deadalnix<deadalnix gmail.com>  wrote:

 Page size in druntime is sometime a constant (4Kb), sometime calculated, often
assumed to be a compile time constant.

 druntime should define a proper, authoritative, place to calculate that page
size, and then use the page calculated here.

 I did some tests today, and it require quite a lot of changes. But it is
mandatory to run D on any system where the page size isn't 4Kb.

 So first question, where this should be calculated ? In core.memory ?

rt.memory possibly. That or core.memory.

I do have a patch for that, but I have no clue where GetSystemInfo is defined (grep didn't helped me much here) so it will not work on windows. Additionnaly, I don't have a windows machine.
Mar 19 2012
parent reply =?ISO-8859-1?Q?Alex_R=F8nne_Petersen?= <xtzgzorex gmail.com> writes:
On 19-03-2012 11:03, deadalnix wrote:
 Le 18/03/2012 16:09, Sean Kelly a écrit :
 On Mar 18, 2012, at 7:12 AM, deadalnix<deadalnix gmail.com> wrote:

 Page size in druntime is sometime a constant (4Kb), sometime
 calculated, often assumed to be a compile time constant.

 druntime should define a proper, authoritative, place to calculate
 that page size, and then use the page calculated here.

 I did some tests today, and it require quite a lot of changes. But it
 is mandatory to run D on any system where the page size isn't 4Kb.

 So first question, where this should be calculated ? In core.memory ?

rt.memory possibly. That or core.memory.

I do have a patch for that, but I have no clue where GetSystemInfo is defined (grep didn't helped me much here) so it will not work on windows. Additionnaly, I don't have a windows machine.

Err, is it defined at all...? -- - Alex
Mar 19 2012
parent =?ISO-8859-1?Q?Alex_R=F8nne_Petersen?= <xtzgzorex gmail.com> writes:
On 19-03-2012 11:12, Alex Rønne Petersen wrote:
 On 19-03-2012 11:03, deadalnix wrote:
 Le 18/03/2012 16:09, Sean Kelly a écrit :
 On Mar 18, 2012, at 7:12 AM, deadalnix<deadalnix gmail.com> wrote:

 Page size in druntime is sometime a constant (4Kb), sometime
 calculated, often assumed to be a compile time constant.

 druntime should define a proper, authoritative, place to calculate
 that page size, and then use the page calculated here.

 I did some tests today, and it require quite a lot of changes. But it
 is mandatory to run D on any system where the page size isn't 4Kb.

 So first question, where this should be calculated ? In core.memory ?

rt.memory possibly. That or core.memory.

I do have a patch for that, but I have no clue where GetSystemInfo is defined (grep didn't helped me much here) so it will not work on windows. Additionnaly, I don't have a windows machine.

Err, is it defined at all...?

DMD doesn't seem to have any magic for it, so I can't imagine that it's being used at all... -- - Alex
Mar 19 2012