anchor.diff:    Elf32_Off   = UInt32; // Usigned file offset
     Elf32_Sword = Int32;  // Signed large integer
     Elf32_Word  = UInt32; // Usigned large integer
  -  
  +
     Elf64_Addr   = UInt64; // Unsigned program address
     Elf64_Off    = UInt64; // Unsigned ﬁle offset
     Elf64_Half   = UInt16; // Unsigned medium integer
  
positive.code:   Result := (s shl 8) + (t and $FF);
  end;
  
  function Elf64_R_Info(s, t: QWord): QWord; inline; 
  begin
    Result := (s shl 32) + (t and $FFFFFFFF);
  end;
  
negative.code:   ELFDATANONE  = 0;
    ELFDATA2LSB  = 1;
    ELFDATA2MSB  = 2;
  
    // Operating System and ABI Identifiers, e_ident[EI_OSABI]
    ELFOSABI_SYSV = 0;  // System V ABI
    ELFOSABI_HPUX = 1;  // HP-UX operating system
    ELFOSABI_STANDALONE = 255; // Standalone (embedded) application
  
  
  type
    //note: it doesn't include Ident block
    Elf32_EHdr = packed record
      e_ident       : elf_ident;    { ELF identification }
  