Skip to content
  1. May 29, 2008
    • Eli Friedman's avatar
      Always use packed structs. This isn't really very nice, but there's · 5a6d0ede
      Eli Friedman authored
      nothing fundamentally wrong with it. Emitting unpacked structs where 
      possible is more work for almost no practical benefit.  We'll probably 
      want to fix it at some point anyway, but it's low priority.
      
      The issue with long double in particular is that LLVM thinks an X86 long
      double is 10 bytes, while clang considers it for all purposes to be
      either 12 or 16 bytes, depending on the platform, even in a packed
      struct.
      
      llvm-svn: 51673
      5a6d0ede
    • Eli Friedman's avatar
      Implementation of stdarg.h. · bb936ce2
      Eli Friedman authored
      llvm-svn: 51672
      bb936ce2
  2. May 28, 2008
  3. May 27, 2008
  4. May 26, 2008
    • Eli Friedman's avatar
      Emit memmove, not memcpy, for structure copies; this is unfortunately · df649f3d
      Eli Friedman authored
      required for correctness in cases of copying a struct to itself or to 
      an overlapping struct (itself for cases like *a = *a, and overlapping 
      is possible with unions).
      
      Hopefully, this won't end up being a perf issue; LLVM *should* be able 
      to optimize memmove to memcpy in a lot of cases, and for small copies 
      the generated code *should* be mostly comparable. (In reality, LLVM 
      is currently horrible at optimizing memmove, but that's a bug, not a 
      fundamental issue.)
      
      gcc currently generates wrong code; that's 
      http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32667.
      
      llvm-svn: 51566
      df649f3d
  5. May 25, 2008
  6. May 24, 2008
Loading