Browse Source

+ darwin/ppc64 support for g_indirect_sym_load

git-svn-id: branches/fpc_2_3@6396 -
Jonas Maebe 18 years ago
parent
commit
f4b2ca5975
1 changed files with 6 additions and 1 deletions
  1. 6 1
      compiler/cgobj.pas

+ 6 - 1
compiler/cgobj.pas

@@ -3195,7 +3195,8 @@ implementation
         result := NR_NO;
         case target_info.system of
           system_powerpc_darwin,
-          system_i386_darwin:
+          system_i386_darwin,
+          system_powerpc64_darwin:
             begin
               l:=current_asmdata.getasmsymbol('L'+symname+'$non_lazy_ptr');
               if not(assigned(l)) then
@@ -3203,7 +3204,11 @@ implementation
                   l:=current_asmdata.DefineAsmSymbol('L'+symname+'$non_lazy_ptr',AB_COMMON,AT_DATA);
                   current_asmdata.asmlists[al_picdata].concat(tai_symbol.create(l,0));
                   current_asmdata.asmlists[al_picdata].concat(tai_const.create_indirect_sym(current_asmdata.RefAsmSymbol(symname)));
+{$ifdef cpu64}
+                  current_asmdata.asmlists[al_picdata].concat(tai_const.create_64bit(0));
+{$else cpu64}
                   current_asmdata.asmlists[al_picdata].concat(tai_const.create_32bit(0));
+{$endif cpu64}
                 end;
               result := cg.getaddressregister(list);
               reference_reset_symbol(ref,l,0);