[Info-vax] The Road to V9.0
Dave Froble
davef at tsoft-inc.com
Mon Oct 14 20:06:43 EDT 2019
On 10/14/2019 1:42 PM, John Reagan wrote:
> Just the differences in GEM vs LLVM. Nothing more. Not related to pointer sizes, descriptors, Linux, the Illuminati, etc
>
> LLVM's model is that "variables live in sections", "variables have initial values". GEM's model is "data lives in PSECTs" and "variables are associated with offsets into PSECTs".
>
> When you get to ELF, that is exactly the model. Data lives in ELF sections. The ELF symbol table defines names (and sizes and 'data vs procedure') that point to ELF sections plus an offset. The same ELF on OpenVMS and on Linux. No difference.
>
> Just plain and simple bugs in our G2L code that maps between GEM and LLVM. I was just trying to point out that while we did lots of testing and prototyping, these class of bugs are hard to spot but easy to fix. (I changed about 20 lines to fix all 3 bugs).
>
Ok, this is something that I've never gotten into. And maybe I should
just drop the questions. But I'm a bit interested.
What is the difference between a PSECT and a SECTION? Isn't it just
different names for the same (or similar) thing?
And yes, you answered my original question. Mostly it's the GEM to LLVM
mapping.
My experience with Basic is that variables have initial values, usually
zero and null string and such.
--
David Froble Tel: 724-529-0450
Dave Froble Enterprises, Inc. E-Mail: davef at tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA 15486
More information about the Info-vax
mailing list