0004-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. From 2da0422b45b2b9842a2ceb6840beba05356057d2 Mon Sep 17 00:00:00 2001
  2. From: Khem Raj <raj.khem@gmail.com>
  3. Date: Sat, 21 May 2016 00:33:20 +0000
  4. Subject: [PATCH] llvm: TargetLibraryInfo: Undefine libc functions if they are
  5. macros
  6. musl defines some functions as macros and not inline functions
  7. if this is the case then make sure to undefine them
  8. Signed-off-by: Khem Raj <raj.khem@gmail.com>
  9. ---
  10. .../llvm/Analysis/TargetLibraryInfo.def | 21 +++++++++++++++++++
  11. 1 file changed, 21 insertions(+)
  12. diff --git a/llvm/include/llvm/Analysis/TargetLibraryInfo.def b/llvm/include/llvm/Analysis/TargetLibraryInfo.def
  13. index 9c1abef33b28..29d2a79ddecc 100644
  14. --- a/llvm/include/llvm/Analysis/TargetLibraryInfo.def
  15. +++ b/llvm/include/llvm/Analysis/TargetLibraryInfo.def
  16. @@ -815,6 +815,9 @@ TLI_DEFINE_STRING_INTERNAL("fmodl")
  17. TLI_DEFINE_ENUM_INTERNAL(fopen)
  18. TLI_DEFINE_STRING_INTERNAL("fopen")
  19. /// FILE *fopen64(const char *filename, const char *opentype)
  20. +#ifdef fopen64
  21. +#undef fopen64
  22. +#endif
  23. TLI_DEFINE_ENUM_INTERNAL(fopen64)
  24. TLI_DEFINE_STRING_INTERNAL("fopen64")
  25. /// int fork();
  26. @@ -862,6 +865,9 @@ TLI_DEFINE_STRING_INTERNAL("fseek")
  27. /// int fseeko(FILE *stream, off_t offset, int whence);
  28. TLI_DEFINE_ENUM_INTERNAL(fseeko)
  29. TLI_DEFINE_STRING_INTERNAL("fseeko")
  30. +#ifdef fseeko64
  31. +#undef fseeko64
  32. +#endif
  33. /// int fseeko64(FILE *stream, off64_t offset, int whence)
  34. TLI_DEFINE_ENUM_INTERNAL(fseeko64)
  35. TLI_DEFINE_STRING_INTERNAL("fseeko64")
  36. @@ -872,6 +878,9 @@ TLI_DEFINE_STRING_INTERNAL("fsetpos")
  37. TLI_DEFINE_ENUM_INTERNAL(fstat)
  38. TLI_DEFINE_STRING_INTERNAL("fstat")
  39. /// int fstat64(int filedes, struct stat64 *buf)
  40. +#ifdef fstat64
  41. +#undef fstat64
  42. +#endif
  43. TLI_DEFINE_ENUM_INTERNAL(fstat64)
  44. TLI_DEFINE_STRING_INTERNAL("fstat64")
  45. /// int fstatvfs(int fildes, struct statvfs *buf);
  46. @@ -887,6 +896,9 @@ TLI_DEFINE_STRING_INTERNAL("ftell")
  47. TLI_DEFINE_ENUM_INTERNAL(ftello)
  48. TLI_DEFINE_STRING_INTERNAL("ftello")
  49. /// off64_t ftello64(FILE *stream)
  50. +#ifdef ftello64
  51. +#undef ftello64
  52. +#endif
  53. TLI_DEFINE_ENUM_INTERNAL(ftello64)
  54. TLI_DEFINE_STRING_INTERNAL("ftello64")
  55. /// int ftrylockfile(FILE *file);
  56. @@ -1013,6 +1025,9 @@ TLI_DEFINE_STRING_INTERNAL("logl")
  57. TLI_DEFINE_ENUM_INTERNAL(lstat)
  58. TLI_DEFINE_STRING_INTERNAL("lstat")
  59. /// int lstat64(const char *path, struct stat64 *buf);
  60. +#ifdef lstat64
  61. +#undef lstat64
  62. +#endif
  63. TLI_DEFINE_ENUM_INTERNAL(lstat64)
  64. TLI_DEFINE_STRING_INTERNAL("lstat64")
  65. /// void *malloc(size_t size);
  66. @@ -1262,6 +1277,9 @@ TLI_DEFINE_STRING_INTERNAL("sscanf")
  67. TLI_DEFINE_ENUM_INTERNAL(stat)
  68. TLI_DEFINE_STRING_INTERNAL("stat")
  69. /// int stat64(const char *path, struct stat64 *buf);
  70. +#ifdef stat64
  71. +#undef stat64
  72. +#endif
  73. TLI_DEFINE_ENUM_INTERNAL(stat64)
  74. TLI_DEFINE_STRING_INTERNAL("stat64")
  75. /// int statvfs(const char *path, struct statvfs *buf);
  76. @@ -1397,6 +1415,9 @@ TLI_DEFINE_STRING_INTERNAL("times")
  77. TLI_DEFINE_ENUM_INTERNAL(tmpfile)
  78. TLI_DEFINE_STRING_INTERNAL("tmpfile")
  79. /// FILE *tmpfile64(void)
  80. +#ifdef tmpfile64
  81. +#undef tmpfile64
  82. +#endif
  83. TLI_DEFINE_ENUM_INTERNAL(tmpfile64)
  84. TLI_DEFINE_STRING_INTERNAL("tmpfile64")
  85. /// int toascii(int c);