|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-ia64-devel
Re: [Xen-ia64-devel] Mini-OS registers and libgcc
 
Hi Samuel,
Am Dienstag, 12. Februar 2008 schrieb Samuel Thibault:
> Hello,
>
> Is there a reason for using -mfixed-range=f2-f5,f12-f15,f32-f127
> when compiling Mini-OS?  Is it really needed since it doesn't
> have a user-land? (though I guess some support would be needed in
> switch_context for instance)
To handle this in a clean way the trap_frame has to be expanded and some fp 
registers have to stored/restored in trap handling.
>
> Then, are there other reasons for using __*div/di*.S instead of just
> linking with libgcc?
It's possible to use libgcc.a but the flag -mconstant-gp has to be removed 
from the mini-os makefiles and a clean way to add libgcc.a is needed.
>
> Samuel
By the way current mini-os crashed with Unaligned Reference. 
A small change is needed:
 static void maybe_split(struct xmalloc_hdr *hdr, size_t size, size_t block)
 {
     struct xmalloc_hdr *extra;
-    size_t leftover = block - size;
+    size_t leftover;
+#if defined(__ia64__)
+    size = (size +7 ) & ~7;  /* alignment needed on 8 byte boundary. */
+#endif
+    leftover = block - size;
Dietmar
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
 |   
 
 | 
    | 
  
  
    |   | 
    |