<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Getting IA64 reg R8 in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024721#M37971</link>
    <description>Hi Robert,&lt;BR /&gt;&lt;BR /&gt;The question is still "How do I get R8?"&lt;BR /&gt;I think it should be possible with getReg and would like an explanation why it is not and/or another way.&lt;BR /&gt;&lt;BR /&gt;I aware of what compilers can do and I am fairly good at IA64 assembly.&lt;BR /&gt;&lt;BR /&gt;It is impossible to redeclare free, a C compiler will generate an error. You can ofcourse decide to not include any of the C standard headers and declare free yourself but that is not possible in many cases.&lt;BR /&gt;&lt;BR /&gt;/Daniel&lt;BR /&gt;</description>
    <pubDate>Thu, 28 Jun 2007 06:22:02 GMT</pubDate>
    <dc:creator>Daniel Gustafsson</dc:creator>
    <dc:date>2007-06-28T06:22:02Z</dc:date>
    <item>
      <title>Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024710#M37960</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;Does anyone know how I can get the value of the R8 (similar to R0 on Alpha) register on IA64 ?&lt;BR /&gt;&lt;BR /&gt;The VMS C compiler does not like __getReg(_IA64_REG_R8). _IA64_REG_R8 does not exists in the headers and the value of is _IA64_REG_R8 is not allowed either.&lt;BR /&gt;&lt;BR /&gt;None of the register names here include R8 ?&lt;BR /&gt;&lt;A href="http://h71000.www7.hp.com/commercial/c/docs/5492profile_031.html" target="_blank"&gt;http://h71000.www7.hp.com/commercial/c/docs/5492profile_031.html&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Example...&lt;BR /&gt;$ ty asm.c&lt;BR /&gt;#include &lt;BUILTINS.H&gt;&lt;BR /&gt;&lt;BR /&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt;    long long r;&lt;BR /&gt;&lt;BR /&gt;#define _IA64_REG_R8            1032    ///&amp;lt; R8&lt;BR /&gt;    r = __getReg(_IA64_REG_R8);&lt;BR /&gt;    return 0;&lt;BR /&gt;}&lt;BR /&gt;$ cc asm&lt;BR /&gt;&lt;BR /&gt;    r = __getReg(_IA64_REG_R8);&lt;BR /&gt;........^&lt;BR /&gt;%CC-E-BIFBADREG, Invalid register specified for builtin function&lt;BR /&gt;at line number 8 in file FREKE_1:[DANIEL.TEST]ASM.C;5&lt;BR /&gt;&lt;BR /&gt;IA64 C compilers on other platforms have __getReg which support getting R8.&lt;BR /&gt;&lt;BR /&gt;/Daniel&lt;BR /&gt;&lt;/BUILTINS.H&gt;</description>
      <pubDate>Fri, 22 Jun 2007 00:18:08 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024710#M37960</guid>
      <dc:creator>Daniel Gustafsson</dc:creator>
      <dc:date>2007-06-22T00:18:08Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024711#M37961</link>
      <description>what are you trying to achieve with getting the value of R0?</description>
      <pubDate>Fri, 22 Jun 2007 03:23:43 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024711#M37961</guid>
      <dc:creator>Ian Miller.</dc:creator>
      <dc:date>2007-06-22T03:23:43Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024712#M37962</link>
      <description>In general, asking for the contents of some general register would get you whatever the compiler had stuffed in there at that point.  Certainly nothing of interest to a piece of C source code as it might change with each and every recompilation of the program.</description>
      <pubDate>Fri, 22 Jun 2007 12:44:38 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024712#M37962</guid>
      <dc:creator>John Reagan</dc:creator>
      <dc:date>2007-06-22T12:44:38Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024713#M37963</link>
      <description>Writing some non-portable code?&lt;BR /&gt;&lt;BR /&gt;The register layout and usage is specific to the architecture, and also to the particular operating system and its calling standard.&lt;BR /&gt;&lt;BR /&gt;With OpenVMS I64, Itanium register R8 is mapped to the traditional R0 usage of VAX and Alpha; the function return (condition) status processing is entirely transparent within the calling standard.  R8 is an output register return from a function.&lt;BR /&gt;&lt;BR /&gt;I'm sure you've seen it, but here's the register mapping:&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://h71000.www7.hp.com/DOC/82final/5601/5601pro_001.html#reg_map_table" target="_blank"&gt;http://h71000.www7.hp.com/DOC/82final/5601/5601pro_001.html#reg_map_table&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Can't say I've had need to peek into the registers more than a handful of times -- can you provide some background on the problem you seeking to resolve here?&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 22 Jun 2007 13:43:01 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024713#M37963</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2007-06-22T13:43:01Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024714#M37964</link>
      <description>Hi Daniel,&lt;BR /&gt;     I'm curious to, as what you are trying to&lt;BR /&gt;do with user code looking a register. In my&lt;BR /&gt;former life looking at system crashes I routinely went through registers mapping them to machine listings of code, but only&lt;BR /&gt;at the time of the dump! compiled code will&lt;BR /&gt;move stuff in and out of registers.</description>
      <pubDate>Fri, 22 Jun 2007 17:25:51 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024714#M37964</guid>
      <dc:creator>Dean McGorrill</dc:creator>
      <dc:date>2007-06-22T17:25:51Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024715#M37965</link>
      <description>Daniel,&lt;BR /&gt;&lt;BR /&gt;I will not repeat what has been said.&lt;BR /&gt;&lt;BR /&gt;The only situation where R8 (R0 on Alpha/VAX) is defined is IMMEDIATELY FOLLOWING the return from a subroutine or function.&lt;BR /&gt;&lt;BR /&gt;While in C, it is optional to capture the return code, it is straightforward to do, even from within the clause of an IF statement. For example:&lt;BR /&gt;&lt;BR /&gt;  if  ((Result = function(f)) == 0) &lt;BR /&gt;      {&lt;BR /&gt;        /* Error code for Return Code of 0 */&lt;BR /&gt;        }&lt;BR /&gt;&lt;BR /&gt;Please take careful note of the parenthesis. This code assigns the return of the function to the variable Result AND THEN compares it to 0. &lt;BR /&gt;&lt;BR /&gt;At any other time, the contents of R8 (R0) can change randomly at code generator will.&lt;BR /&gt;&lt;BR /&gt;- Bob Gezelter, &lt;A href="http://www.rlgsc.com" target="_blank"&gt;http://www.rlgsc.com&lt;/A&gt;</description>
      <pubDate>Fri, 22 Jun 2007 18:32:44 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024715#M37965</guid>
      <dc:creator>Robert Gezelter</dc:creator>
      <dc:date>2007-06-22T18:32:44Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024716#M37966</link>
      <description>One (simple) example... Seeing if free is OK.&lt;BR /&gt;&lt;BR /&gt;free is void free(void *) but returns a value.&lt;BR /&gt;One cannot redeclare free if some C headers are included.&lt;BR /&gt;&lt;BR /&gt;$ ty free3.c&lt;BR /&gt;#include &lt;STDIO.H&gt;&lt;BR /&gt;#include &lt;ERRNO.H&gt;&lt;BR /&gt;#include &lt;STRING.H&gt;&lt;BR /&gt;#include &lt;STDLIB.H&gt;&lt;BR /&gt;#include &lt;BUILTINS.H&gt;&lt;BR /&gt;#include &lt;C_ASM.H&gt;&lt;BR /&gt;&lt;BR /&gt;static const char *errno_str(void)&lt;BR /&gt;{&lt;BR /&gt;    int lerrno;&lt;BR /&gt;    char *buf;&lt;BR /&gt;&lt;BR /&gt;    lerrno = errno;&lt;BR /&gt;    errno = 0;&lt;BR /&gt;    buf = strerror(lerrno);&lt;BR /&gt;    if (errno) {&lt;BR /&gt;        return "The strerror call failed";&lt;BR /&gt;    }&lt;BR /&gt;    return buf;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;void main(void)&lt;BR /&gt;{&lt;BR /&gt;    char *p;&lt;BR /&gt;    int i;&lt;BR /&gt;&lt;BR /&gt;    p = malloc(10);&lt;BR /&gt;    if (!p) {&lt;BR /&gt;        puts("malloc failed");&lt;BR /&gt;        return;&lt;BR /&gt;    }&lt;BR /&gt;    free((void *)(p+1));&lt;BR /&gt;    i = asm("");&lt;BR /&gt;    if (i) {&lt;BR /&gt;        printf("free failed: %d, errno: %s", i, errno_str());&lt;BR /&gt;    }&lt;BR /&gt;}&lt;BR /&gt;$&lt;BR /&gt;$ cc free3&lt;BR /&gt;$ link free3&lt;BR /&gt;$ run free3&lt;BR /&gt;free failed: -1, errno: bad block address&lt;BR /&gt;$&lt;BR /&gt;&lt;BR /&gt;In this example, it is in reality sufficient to just look at errno though.&lt;BR /&gt;&lt;BR /&gt;/Daniel&lt;BR /&gt;&lt;/C_ASM.H&gt;&lt;/BUILTINS.H&gt;&lt;/STDLIB.H&gt;&lt;/STRING.H&gt;&lt;/ERRNO.H&gt;&lt;/STDIO.H&gt;</description>
      <pubDate>Thu, 28 Jun 2007 03:41:42 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024716#M37966</guid>
      <dc:creator>Daniel Gustafsson</dc:creator>
      <dc:date>2007-06-28T03:41:42Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024717#M37967</link>
      <description>The former was on Alpha, I would like to do the same on IA64.</description>
      <pubDate>Thu, 28 Jun 2007 03:42:29 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024717#M37967</guid>
      <dc:creator>Daniel Gustafsson</dc:creator>
      <dc:date>2007-06-28T03:42:29Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024718#M37968</link>
      <description>Is your use of free() just an example or is does this want you want to do?&lt;BR /&gt;&lt;BR /&gt;You appear to be relying on the undocumented behaviour of the C library routine free where it returns a condition code even though it is declared as void (). Do you know that the free() in the CRTL on OpenVMS I64 does the same? As you said you can check errno.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 28 Jun 2007 04:45:39 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024718#M37968</guid>
      <dc:creator>Ian Miller.</dc:creator>
      <dc:date>2007-06-28T04:45:39Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024719#M37969</link>
      <description>Although I am interested in this example,&lt;BR /&gt;I am also interested in getting register contents in general.&lt;BR /&gt;&lt;BR /&gt;The free behaviour is documented and does the same on IA64...&lt;BR /&gt;&lt;A href="http://h71000.www7.hp.com/doc/83final/5763/5763pro_036.html#index_x_975" target="_blank"&gt;http://h71000.www7.hp.com/doc/83final/5763/5763pro_036.html#index_x_975&lt;/A&gt;&lt;BR /&gt;&lt;A href="http://h71000.www7.hp.com/doc/83final/5763/OVMS_83_CRTL_REF.PDF" target="_blank"&gt;http://h71000.www7.hp.com/doc/83final/5763/OVMS_83_CRTL_REF.PDF&lt;/A&gt;</description>
      <pubDate>Thu, 28 Jun 2007 06:00:27 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024719#M37969</guid>
      <dc:creator>Daniel Gustafsson</dc:creator>
      <dc:date>2007-06-28T06:00:27Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024720#M37970</link>
      <description>Daniel,&lt;BR /&gt;&lt;BR /&gt;Thank you for the citations to the documentation set. Citations clarify the question tremendously.&lt;BR /&gt;&lt;BR /&gt;In this case, the question "How do I get R8?" is, in reality, the question "How do I get the return code from a routine that is declared "void"? &lt;BR /&gt;&lt;BR /&gt;The short answer is: You cannot. Unless of course, the routine is not actually implemented as "void". In this case, the documentation would seem to indicate that while the standard header definition for "free" is void free(); the actual implementation (at least on OpenVMS) has been to return an int (0 or -1). &lt;BR /&gt;&lt;BR /&gt;I do not have the time at this instant to do the checks, but the solution is to redefine free as an int (or a long). &lt;BR /&gt;&lt;BR /&gt;Hacks to get R8 will not get a reliable result.&lt;BR /&gt;&lt;BR /&gt;- Bob Gezelter, &lt;A href="http://www.rlgsc.com" target="_blank"&gt;http://www.rlgsc.com&lt;/A&gt;</description>
      <pubDate>Thu, 28 Jun 2007 06:11:16 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024720#M37970</guid>
      <dc:creator>Robert Gezelter</dc:creator>
      <dc:date>2007-06-28T06:11:16Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024721#M37971</link>
      <description>Hi Robert,&lt;BR /&gt;&lt;BR /&gt;The question is still "How do I get R8?"&lt;BR /&gt;I think it should be possible with getReg and would like an explanation why it is not and/or another way.&lt;BR /&gt;&lt;BR /&gt;I aware of what compilers can do and I am fairly good at IA64 assembly.&lt;BR /&gt;&lt;BR /&gt;It is impossible to redeclare free, a C compiler will generate an error. You can ofcourse decide to not include any of the C standard headers and declare free yourself but that is not possible in many cases.&lt;BR /&gt;&lt;BR /&gt;/Daniel&lt;BR /&gt;</description>
      <pubDate>Thu, 28 Jun 2007 06:22:02 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024721#M37971</guid>
      <dc:creator>Daniel Gustafsson</dc:creator>
      <dc:date>2007-06-28T06:22:02Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024722#M37972</link>
      <description>Daniel,&lt;BR /&gt;&lt;BR /&gt;I do not have the citation at hand, but my recollection is that the return code (on Alpha generally R0 or F0; on IA64 actual R8) is not defined for a "void" procedure. Thus, as has been noted, the contents of the register are NOT DEFINED. Any state in R8 at return by a void function is undefined (in specification-ese). The translation is: Undefined means Undefined; do not experiment, the results may (and frequently do) vary unpredictably. [If you are interested in the history of that phrasing, my recollection is that the first recorded reference is in IBM's "System/360: Principles of Operation" from the early 1960's.]&lt;BR /&gt;&lt;BR /&gt;In light of the comment that you cite from the documentation, perhaps somebody from Engineering can illuminate how to properly access the old behavior identified in the documentation.  &lt;BR /&gt;&lt;BR /&gt;My personal choice would be to alter the stdlib definition to "jacket" the "free" definition so that it can be overridden in advance. Another possibility is to define "free" as a macro invoking "ifree" after the invocation of stdlib.h, and then using the LINKER to substitute "free" for "ifree" at link time.&lt;BR /&gt;&lt;BR /&gt;I would do the experiments to verify these, but I have to give priority to the several client projects that are on deadline today.&lt;BR /&gt;&lt;BR /&gt;- Bob Gezelter, &lt;A href="http://www.rlgsc.com" target="_blank"&gt;http://www.rlgsc.com&lt;/A&gt;</description>
      <pubDate>Thu, 28 Jun 2007 06:57:32 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024722#M37972</guid>
      <dc:creator>Robert Gezelter</dc:creator>
      <dc:date>2007-06-28T06:57:32Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024723#M37973</link>
      <description>getreg does not know how to return general register contents.  We intentionally did not provide that ability.  Even in the case you cite with free(), there is nothing that would prevent the compiler from reusing r8 between the return of free() and you invocation of getreg.  You can try using the LIB$ calling standard routines to fill an ICB with various register values.  It isn't cheap however.&lt;BR /&gt;&lt;BR /&gt;John</description>
      <pubDate>Thu, 28 Jun 2007 09:26:27 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024723#M37973</guid>
      <dc:creator>John Reagan</dc:creator>
      <dc:date>2007-06-28T09:26:27Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024724#M37974</link>
      <description>John,&lt;BR /&gt;&lt;BR /&gt;For consistency, what is the recommended method to access the historical functionality of "free" being declared as "int" not "void".&lt;BR /&gt;&lt;BR /&gt;- Bob Gezelter, &lt;A href="http://www.rlgsc.com" target="_blank"&gt;http://www.rlgsc.com&lt;/A&gt;</description>
      <pubDate>Thu, 28 Jun 2007 11:56:03 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024724#M37974</guid>
      <dc:creator>Robert Gezelter</dc:creator>
      <dc:date>2007-06-28T11:56:03Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024725#M37975</link>
      <description>I suppose you could write your own free,&lt;BR /&gt;either make return a status or stick status&lt;BR /&gt;in a declared global cell. whatever the routine, the real work is done is exe$deallocate &amp;amp; exe$deapaged. &lt;BR /&gt;   Fyi I routinely used the free&lt;BR /&gt;sysgen cells to read/write to running code where I'd tuck status/variables in&lt;BR /&gt;these cells and read/write using the sysgen utility.&lt;BR /&gt;&lt;BR /&gt;SGN$GL_USERD1&lt;BR /&gt;SGN$GL_USERD2&lt;BR /&gt;SGN$GL_USER3&lt;BR /&gt;SGN$GL_USER4&lt;BR /&gt;&lt;BR /&gt;Dean&lt;BR /&gt;</description>
      <pubDate>Thu, 28 Jun 2007 15:37:30 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024725#M37975</guid>
      <dc:creator>Dean McGorrill</dc:creator>
      <dc:date>2007-06-28T15:37:30Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024726#M37976</link>
      <description>The other suggestion I've given is to declare decc$free directly and call it instead of free()&lt;BR /&gt;&lt;BR /&gt;extern int decc$free(void *);&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 29 Jun 2007 09:19:26 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024726#M37976</guid>
      <dc:creator>John Reagan</dc:creator>
      <dc:date>2007-06-29T09:19:26Z</dc:date>
    </item>
    <item>
      <title>Re: Getting IA64 reg R8</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024727#M37977</link>
      <description>John,&lt;BR /&gt;&lt;BR /&gt;So, I guess the recommendation would be to define a macro definition that referred all "free" references to decc$free, declared as:&lt;BR /&gt;&lt;BR /&gt; extern int decc$free(void *);&lt;BR /&gt;&lt;BR /&gt;e.g. (admittedly untested):&lt;BR /&gt;&lt;BR /&gt;#define free(x) decc$free(x)&lt;BR /&gt;&lt;BR /&gt;after the standard headers have already been included to preserve backwards compatibility for those programs that presume the historical (non-conforming) behavior.&lt;BR /&gt;&lt;BR /&gt;- Bob Gezelter, &lt;A href="http://www.rlgsc.com" target="_blank"&gt;http://www.rlgsc.com&lt;/A&gt;</description>
      <pubDate>Fri, 29 Jun 2007 11:01:31 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/getting-ia64-reg-r8/m-p/4024727#M37977</guid>
      <dc:creator>Robert Gezelter</dc:creator>
      <dc:date>2007-06-29T11:01:31Z</dc:date>
    </item>
  </channel>
</rss>

