/src/wrappers/llvm/README

http://github.com/tybor/Liberty · #! · 17 lines · 13 code · 4 blank · 0 comment · 0 complexity · 803f6a925cf025ac741246a7e5bee2cd MD5 · raw file

  1. Wrappers for Low Level Virtual Machine (www.llvm.org)
  2. Currently based on the C bindings; wrapping an object oriented infrastructure
  3. throught bindings that are meant to be used in a strictly non-OO language
  4. imposes some compromises, like "exposing" C_ARRAYs or providing iterator-based
  5. only access. This should be fixed with a direct interface with C++ after
  6. bootstrap or after wrappers-generator tool will be upgraded to deal with C++.
  7. Currently a new wrapper is created everytime a new pointer is received from the
  8. C library. This is obviously not efficient and does not allow to have
  9. collections of wrappers of LLVM objects otherwise we will violate several
  10. COLLECTION postcondition like those of put feature, but allows for the wrappers
  11. to be a thin layer above the C API in order to avoid strange bugs.
  12. Ideally it should be possible to avoid the usage of wrapper objects.
  13. Copyright 2009 Paolo Redaelli