Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84 exptools; site ho95e.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxn!ihnp4!houxm!ho95e!wcs From: wcs@ho95e.UUCP (x0705) Newsgroups: net.lang.c,net.unix-wizards Subject: Re: (3b2) functions in data space Message-ID: <556@ho95e.UUCP> Date: Wed, 12-Mar-86 01:17:07 EST Article-I.D.: ho95e.556 Posted: Wed Mar 12 01:17:07 1986 Date-Received: Fri, 14-Mar-86 03:42:04 EST References: <728@petsd.UUCP> <1486@devwrl.DEC.COM> <622@bentley.UUCP> Reply-To: wcs@ho95e.UUCP (Bill Stewart 1-201-949-0705 ihnp4!ho95c!wcs HO 2G202) Organization: AT&T Bell Labs, Holmdel NJ Lines: 20 Xref: watmath net.lang.c:8128 net.unix-wizards:17164 In article <622@bentley.UUCP> kwh@bentley.UUCP (KW Heuer) writes: >.... >The person who started this discussion was already able to create code >in the .data space; whether it's done by the loader or at run-time by >the program is irrelevant. The question is whether it's possible to >_execute_ such a function. On a vax, you can. On a pdp11 with split >I/D, you can't, because .text and .data addresses are each 16 bits, >so an attempt to call a function from .data space will actually call >the function at the same address in .text space. (The workaround is >to use ld -N, so you don't have split I/D.) The remainder of this >discussion focuses on the 3b2, where .text and .data addresses have >separate ranges (.text normally starts at 0x80800000, .data at >0x80880000). ^^^^ ^^^^ (-: Obviously, you can't execute the data as code - the .data resides on the 8088, while the .text is on an 8080. No wonder the floating point was so slow! -- # Bill Stewart, AT&T Bell Labs 2G-202, Holmdel NJ 1-201-949-0705 ihnp4!ho95c!wcs