Skip to content
  1. Oct 23, 2012
  2. Oct 20, 2012
  3. Oct 15, 2012
  4. Oct 14, 2012
  5. Oct 11, 2012
  6. Oct 09, 2012
  7. Oct 08, 2012
  8. Sep 19, 2012
  9. Sep 04, 2012
    • Bob Wilson's avatar
      Make sure macros in the include subdirectory are not used without being defined. · d43a50d3
      Bob Wilson authored
      Rationale: For each preprocessor macro, either the definedness is what's
      meaningful, or the value is what's meaningful, or both. If definedness is
      meaningful, we should use #ifdef. If the value is meaningful, we should use
      and #ifdef interchangeably for the same macro, seems ugly to me, even if
      undefined macros are zero if used.
      
      This also has the benefit that including an LLVM header doesn't prevent
      you from compiling with -Wundef -Werror.
      
      Patch by John Garvin!
      <rdar://problem/12189979>
      
      llvm-svn: 163148
      d43a50d3
  10. Sep 02, 2012
  11. Aug 17, 2012
    • Bill Wendling's avatar
      Change the `linker_private_weak_def_auto' linkage to `linkonce_odr_auto_hide' to · 34bc34ec
      Bill Wendling authored
      make it more consistent with its intended semantics.
      
      The `linker_private_weak_def_auto' linkage type was meant to automatically hide
      globals which never had their addresses taken. It has nothing to do with the
      `linker_private' linkage type, which outputs the symbols with a `l' (ell) prefix
      among other things.
      
      The intended semantic is more like the `linkonce_odr' linkage type.
      
      Change the name of the linkage type to `linkonce_odr_auto_hide'. And therefore
      changing the semantics so that it produces the correct output for the linker.
      
      Note: The old linkage name `linker_private_weak_def_auto' will still parse but
      is not a synonym for `linkonce_odr_auto_hide'. This should be removed in 4.0.
      <rdar://problem/11754934>
      
      llvm-svn: 162114
      34bc34ec
  12. Aug 10, 2012
  13. Jul 19, 2012
  14. Jun 29, 2012
    • Chandler Carruth's avatar
      Move llvm/Support/IRBuilder.h -> llvm/IRBuilder.h · aafe0918
      Chandler Carruth authored
      This was always part of the VMCore library out of necessity -- it deals
      entirely in the IR. The .cpp file in fact was already part of the VMCore
      library. This is just a mechanical move.
      
      I've tried to go through and re-apply the coding standard's preferred
      header sort, but at 40-ish files, I may have gotten some wrong. Please
      let me know if so.
      
      I'll be committing the corresponding updates to Clang and Polly, and
      Duncan has DragonEgg.
      
      Thanks to Bill and Eric for giving the green light for this bit of cleanup.
      
      llvm-svn: 159421
      aafe0918
  15. Jun 02, 2012
  16. May 09, 2012
  17. May 02, 2012
  18. Apr 16, 2012
  19. Apr 11, 2012
  20. Apr 09, 2012
  21. Mar 31, 2012
  22. Mar 27, 2012
  23. Mar 22, 2012
  24. Mar 21, 2012
    • Gregory Szorc's avatar
      Finish organizing C API docs. · 52d26604
      Gregory Szorc authored
      Remaining "uncategorized" functions have been organized into their
      proper place in the hierarchy. Some functions were moved around so
      groups are defined together.
      
      No code changes were made.
      
      llvm-svn: 153169
      52d26604
    • Gregory Szorc's avatar
      Organize LLVM C API docs into doxygen modules; add docs · 34c863a0
      Gregory Szorc authored
      This gives a lot of love to the docs for the C API. Like Clang's
      documentation, the C API is now organized into a Doxygen "module"
      (LLVMC). Each C header file is a child of the main module. Some modules
      (like Core) have a hierarchy of there own. The produced documentation is
      thus better organized (before everything was in one monolithic list).
      
      This patch also includes a lot of new documentation for APIs in Core.h.
      It doesn't document them all, but is better than none. Function docs are
      missing @param and @return annotation, but the documentation body now
      commonly provides help details (like the expected llvm::Value sub-type
      to expect).
      
      llvm-svn: 153157
      34c863a0
  25. Feb 06, 2012
  26. Feb 01, 2012
  27. Jan 31, 2012
  28. Jan 25, 2012
    • Chandler Carruth's avatar
      Revert a tiny bit of r148553 which extended LLVM's function attributes · 44d69d9c
      Chandler Carruth authored
      to 64-bits, and added a new attribute in bit #32. Specifically, remove
      this new attribute from the enum used in the C API. It's not yet clear
      what the best approach is for exposing these new attributes in the
      C API, and several different proposals are on the table. Until then, we
      can simply not expose this bit in the API at all.
      
      Also, I've reverted a somewhat unrelated change in the same revision
      which switched from "1 << 31" to "1U << 31" for the top enum. While "1
      << 31" is technically undefined behavior, implementations DTRT here.
      However, MS and -pedantic mode warn about non-'int' type enumerator
      values. If folks feel strongly about this I can put the 'U' back in, but
      it seemed best to wait for the proper solution.
      
      llvm-svn: 148937
      44d69d9c
  29. Jan 20, 2012
    • Benjamin Kramer's avatar
      Don't use my favorite C++11 feature (comma at end of enum). · e2456055
      Benjamin Kramer authored
      llvm-svn: 148555
      e2456055
    • Kostya Serebryany's avatar
      Extend Attributes to 64 bits · a5054ad2
      Kostya Serebryany authored
      Problem: LLVM needs more function attributes than currently available (32 bits).
      One such proposed attribute is "address_safety", which shows that a function is being checked for address safety (by AddressSanitizer, SAFECode, etc).
      
      Solution:
      - extend the Attributes from 32 bits to 64-bits
      - wrap the object into a class so that unsigned is never erroneously used instead
      - change "unsigned" to "Attributes" throughout the code, including one place in clang.
      - the class has no "operator uint64 ()", but it has "uint64_t Raw() " to support packing/unpacking.
      - the class has "safe operator bool()" to support the common idiom:  if (Attributes attr = getAttrs()) useAttrs(attr);
      - The CTOR from uint64_t is marked explicit, so I had to add a few explicit CTOR calls
      - Add the new attribute "address_safety". Doing it in the same commit to check that attributes beyond first 32 bits actually work.
      - Some of the functions from the Attribute namespace are worth moving inside the class, but I'd prefer to have it as a separate commit.
      
      Tested:
      "make check" on Linux (32-bit and 64-bit) and Mac (10.6)
      built/run spec CPU 2006 on Linux with clang -O2.
      
      
      This change will break clang build in lib/CodeGen/CGCall.cpp.
      The following patch will fix it.
      
      llvm-svn: 148553
      a5054ad2
  30. Dec 20, 2011
  31. Dec 17, 2011
  32. Nov 29, 2011
    • Danil Malyshev's avatar
      Fixed ObjectFile functions: · cbe72fc9
      Danil Malyshev authored
      - getSymbolOffset() renamed as getSymbolFileOffset()
      - getSymbolFileOffset(), getSymbolAddress(), getRelocationAddress() returns same result for ELFObjectFile, MachOObjectFile and COFFObjectFile.
      - added getRelocationOffset()
      - fixed MachOObjectFile::getSymbolSize()
      - fixed MachOObjectFile::getSymbolSection()
      - fixed MachOObjectFile::getSymbolOffset() for symbols without section data.
      
      llvm-svn: 145408
      cbe72fc9
Loading