Author: eugenis
Date: Thu Oct 5 13:14:00 2017
New Revision: 315015
URL: http://llvm.org/viewvc/llvm-project?rev=315015&view=rev
Log:
Cleanup and generalize -shared-libasan.
Summary:
* Rename -shared-libasan to -shared-libsan, keeping the old name as alias.
* Add -static-libsan for targets that d
Author: eugenis
Date: Mon Oct 16 11:02:57 2017
New Revision: 315921
URL: http://llvm.org/viewvc/llvm-project?rev=315921&view=rev
Log:
Do not link clang_rt.cfi on Android.
Summary:
The OS provides cross-dso CFI support starting with Android O.
Trapping mode does not require any runtime at all, and
Author: eugenis
Date: Wed Dec 20 11:05:44 2017
New Revision: 321203
URL: http://llvm.org/viewvc/llvm-project?rev=321203&view=rev
Log:
[hwasan] Implement -fsanitize-recover=hwaddress.
Summary: Very similar to AddressSanitizer, with the exception of the error type
encoding.
Reviewers: kcc, alekse
Author: eugenis
Date: Fri Mar 9 11:35:16 2018
New Revision: 327165
URL: http://llvm.org/viewvc/llvm-project?rev=327165&view=rev
Log:
Don't use -pie in relocatable link.
Summary:
Android, in particular, got PIE enabled by default in r316606. It resulted in
relocatable links passing both -r and -p
Author: eugenis
Date: Wed Jun 20 17:16:32 2018
New Revision: 335193
URL: http://llvm.org/viewvc/llvm-project?rev=335193&view=rev
Log:
ASan docs: no_sanitize("address") works on globals.
Summary: Mention that no_sanitize attribute can be used with globals.
Reviewers: alekseyshl
Subscribers: cfe-
Author: eugenis
Date: Thu Jun 21 16:22:37 2018
New Revision: 335305
URL: http://llvm.org/viewvc/llvm-project?rev=335305&view=rev
Log:
Ignore blacklist when generating __cfi_check_fail.
Summary: Fixes PR37898.
Reviewers: pcc, vlad.tsyrklevich
Subscribers: cfe-commits
Differential Revision: http
Author: eugenis
Date: Tue Aug 29 13:03:51 2017
New Revision: 312029
URL: http://llvm.org/viewvc/llvm-project?rev=312029&view=rev
Log:
Minimal runtime for UBSan.
Summary:
An implementation of ubsan runtime library suitable for use in production.
Minimal attack surface.
* No stack traces.
* Defini
Author: eugenis
Date: Tue Aug 29 15:12:31 2017
New Revision: 312048
URL: http://llvm.org/viewvc/llvm-project?rev=312048&view=rev
Log:
Restore clang_rt library name on i686-android.
Summary:
Recent changes canonicalized clang_rt library names to refer to
"i386" on all x86 targets. Android historic
Author: eugenis
Date: Fri Sep 1 13:37:20 2017
New Revision: 312361
URL: http://llvm.org/viewvc/llvm-project?rev=312361&view=rev
Log:
Enable check-ubsan-minimal in standalone compiler-rt build.
Modified:
cfe/trunk/runtime/CMakeLists.txt
Modified: cfe/trunk/runtime/CMakeLists.txt
URL:
http:/
Author: eugenis
Date: Mon Jul 15 13:02:23 2019
New Revision: 366123
URL: http://llvm.org/viewvc/llvm-project?rev=366123&view=rev
Log:
ARM MTE stack sanitizer.
Add "memtag" sanitizer that detects and mitigates stack memory issues
using armv8.5 Memory Tagging Extension.
It is similar in principle
Author: eugenis
Date: Thu Jan 3 14:41:10 2019
New Revision: 350361
URL: http://llvm.org/viewvc/llvm-project?rev=350361&view=rev
Log:
[cmake] Fix monorepo + LLVM_BUILD_EXTERNAL_COMPILER_RT=ON.
In cmake 3.10.2, if (${VARIABLE_NAME}) seems to always be false no
matter what documentation says (or ma
Author: eugenis
Date: Thu Jan 3 14:50:45 2019
New Revision: 350363
URL: http://llvm.org/viewvc/llvm-project?rev=350363&view=rev
Log:
Fix check-hwasan with LLVM_BUILD_EXTERNAL_COMPILER_RT=ON
Add a forwarding target for check-hwasan in clang.
Modified:
cfe/trunk/runtime/CMakeLists.txt
Modifi
Author: eugenis
Date: Wed Sep 25 15:38:20 2019
New Revision: 372925
URL: http://llvm.org/viewvc/llvm-project?rev=372925&view=rev
Log:
Fix memory leak in DeclTest.
Fixes a leak introduced in r372903, detected on the ASan bot.
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/354
Author: eugenis
Date: Tue Jun 26 16:10:48 2018
New Revision: 335684
URL: http://llvm.org/viewvc/llvm-project?rev=335684&view=rev
Log:
Revert "[MS] Use mangled names and comdats for string merging with ASan"
Depends on r334313, which has been reverted in r335681.
Modified:
cfe/trunk/lib/CodeG
Author: eugenis
Date: Tue Jul 10 12:48:53 2018
New Revision: 336715
URL: http://llvm.org/viewvc/llvm-project?rev=336715&view=rev
Log:
Revert r336591 "[libclang] NFC, simplify clang_Cursor_Evaluate"
This change is blocking r336590 which is being reverted due to memory leaks.
Modified:
cfe/tru
Author: eugenis
Date: Tue Jul 10 12:49:07 2018
New Revision: 336716
URL: http://llvm.org/viewvc/llvm-project?rev=336716&view=rev
Log:
Revert r336590 "[libclang] evalute compound statement cursors before trying to
evaluate"
New memory leaks in
LibclangParseTest_EvaluateChildExpression_Test::TestB
eugenis added inline comments.
Comment at: lib/CodeGen/VarBypassDetector.h:50
@@ +49,3 @@
+public:
+ void Reset(const Stmt *Body);
+
rename to smth like StartFunction()?
add some API documentation.
https://reviews.llvm.org/D24693
eugenis added a comment.
In https://reviews.llvm.org/D24693#553474, @vitalybuka wrote:
> My assumption is that "start" makes access valid, and "end" makes access
> invalid, up to the next "start".
That's also my understanding, but LangRef does not say anything about
llvm.lifetime.start cancel
eugenis accepted this revision.
eugenis added a comment.
This revision is now accepted and ready to land.
LGTM
Comment at: lib/Frontend/CompilerInvocation.cpp:739
+ UasArg &&
+ UasArg->getOption().matches(OPT_fsanitize_address_use_after_scope);
Opts.SSPBufferSize =
Author: eugenis
Date: Fri Dec 8 17:32:07 2017
New Revision: 320232
URL: http://llvm.org/viewvc/llvm-project?rev=320232&view=rev
Log:
Hardware-assisted AddressSanitizer (clang part).
Summary:
Driver, frontend and LLVM codegen for HWASan.
A clone of ASan, basically.
Reviewers: kcc, pcc, alekseysh
Author: eugenis
Date: Fri Dec 8 18:15:42 2017
New Revision: 320233
URL: http://llvm.org/viewvc/llvm-project?rev=320233&view=rev
Log:
Fix fsanitize-blacklist test on Windows.
Broken in r320232.
Modified:
cfe/trunk/test/Driver/fsanitize-blacklist.c
Modified: cfe/trunk/test/Driver/fsanitize-b
Author: eugenis
Date: Wed Apr 4 16:48:06 2018
New Revision: 329241
URL: http://llvm.org/viewvc/llvm-project?rev=329241&view=rev
Log:
Enable msan unconditionally on Linux.
Memory sanitizer compatibility are already done in
MemorySanitizer::doInitialization. It verifies whether the necessary offse
Author: eugenis
Date: Wed Oct 25 13:39:22 2017
New Revision: 316606
URL: http://llvm.org/viewvc/llvm-project?rev=316606&view=rev
Log:
Enable -pie and --enable-new-dtags by default on Android.
Summary:
Also enable -no-pie on Gnu toolchain (previously available on Darwin only).
Non-PIE executables
Author: eugenis
Date: Mon Aug 29 18:15:46 2016
New Revision: 280028
URL: http://llvm.org/viewvc/llvm-project?rev=280028&view=rev
Log:
Fix typo in test.
Modified:
cfe/trunk/test/Driver/sanitizer-ld.c
Modified: cfe/trunk/test/Driver/sanitizer-ld.c
URL:
http://llvm.org/viewvc/llvm-project/cfe/
Author: eugenis
Date: Mon Aug 29 18:42:34 2016
New Revision: 280031
URL: http://llvm.org/viewvc/llvm-project?rev=280031&view=rev
Log:
[cfi] Export __cfi_check when linking with -fsanitize-cfi-cross-dso.
Multi-DSO CFI model requires every DSO to export a __cfi_check function.
Modified:
cfe/tr
eugenis added a comment.
I would also expect -nodefaultlibs and -nostdlib to remove all standard
libraries from the link command line, including the sanitizer ones.
I like the idea of -flink-sanitizer-runtime=address, but may be without
"address" - the set of sanitizer runtime libraries can be
eugenis accepted this revision.
eugenis added a comment.
This revision is now accepted and ready to land.
Looks great.
Thank you for seeing it through!
https://reviews.llvm.org/D24642
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://li
Author: eugenis
Date: Fri Apr 7 18:00:38 2017
New Revision: 299806
URL: http://llvm.org/viewvc/llvm-project?rev=299806&view=rev
Log:
[cfi] Emit __cfi_check stub in the frontend.
Previously __cfi_check was created in LTO optimization pipeline, which
means LLD has no way of knowing about the exist
Author: eugenis
Date: Thu Jul 6 17:48:12 2017
New Revision: 307341
URL: http://llvm.org/viewvc/llvm-project?rev=307341&view=rev
Log:
Update Cross-DSO CFI documentation.
Reviewers: pcc
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D35094
Modified:
cfe/trunk/docs
Author: eugenis
Date: Fri Feb 2 17:06:21 2018
New Revision: 324163
URL: http://llvm.org/viewvc/llvm-project?rev=324163&view=rev
Log:
[hwasan] Add a paragraph on stack instrumentation.
Reviewers: kcc
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D42874
Modified:
Author: eugenis
Date: Wed Feb 15 19:35:23 2017
New Revision: 295267
URL: http://llvm.org/viewvc/llvm-project?rev=295267&view=rev
Log:
Add missing regexp quantifiers in a test.
Modified:
cfe/trunk/test/CodeGen/sanitize-init-order.cpp
Modified: cfe/trunk/test/CodeGen/sanitize-init-order.cpp
UR
Author: eugenis
Date: Mon Apr 24 14:34:12 2017
New Revision: 301225
URL: http://llvm.org/viewvc/llvm-project?rev=301225&view=rev
Log:
[asan] Disable ASan global-GC depending on the target and compiler flags.
Added:
cfe/trunk/test/CodeGen/asan-globals-gc.cpp
Modified:
cfe/trunk/lib/CodeGen
Author: eugenis
Date: Tue Apr 25 19:51:06 2017
New Revision: 301374
URL: http://llvm.org/viewvc/llvm-project?rev=301374&view=rev
Log:
[asan] Unconditionally enable GC of globals on COFF.
This change restores pre-r301225 behavior, where linker GC compatible global
instrumentation was used on COFF
Author: eugenis
Date: Tue May 9 16:57:39 2017
New Revision: 302590
URL: http://llvm.org/viewvc/llvm-project?rev=302590&view=rev
Log:
Remove unnecessary calls to MakeArgString.
Modified:
cfe/trunk/lib/Driver/SanitizerArgs.cpp
cfe/trunk/lib/Driver/ToolChains/Arch/Mips.cpp
Modified: cfe/tr
Author: eugenis
Date: Tue May 9 16:57:43 2017
New Revision: 302591
URL: http://llvm.org/viewvc/llvm-project?rev=302591&view=rev
Log:
[asan] A clang flag to enable ELF globals-gc.
This feature is subtly broken when the linker is gold 2.26 or
earlier. See the following bug for details:
https://s
Author: eugenis
Date: Tue May 9 17:28:57 2017
New Revision: 302594
URL: http://llvm.org/viewvc/llvm-project?rev=302594&view=rev
Log:
Fix clang_cl argument in fsanitize.c driver test.
Modified:
cfe/trunk/test/Driver/fsanitize.c
Modified: cfe/trunk/test/Driver/fsanitize.c
URL:
http://llvm.or
Author: eugenis
Date: Mon May 15 15:43:48 2017
New Revision: 303114
URL: http://llvm.org/viewvc/llvm-project?rev=303114&view=rev
Log:
[asan] One more test for -fsanitize-address-globals-dead-stripping.
Added:
cfe/trunk/test/CodeGen/asan-no-globals-no-comdat.cpp
Added: cfe/trunk/test/CodeGen/
eugenis created this revision.
eugenis added a reviewer: pcc.
eugenis added a subscriber: cfe-commits.
eugenis set the repository for this revision to rL LLVM.
Herald added subscribers: srhines, danalbert, tberghammer, rengolin, aemerson.
Backend support added in https://reviews.llvm.org/D25927
eugenis created this revision.
eugenis added a reviewer: pcc.
eugenis added a subscriber: cfe-commits.
eugenis set the repository for this revision to rL LLVM.
CFI (only in the cross-dso mode) fails to set !type annotations when
a function is used before it is defined.
Repository:
rL LLVM
htt
eugenis updated this revision to Diff 76489.
Repository:
rL LLVM
https://reviews.llvm.org/D26164
Files:
lib/CodeGen/CodeGenModule.cpp
test/CodeGen/cfi-icall-cross-dso2.c
Index: test/CodeGen/cfi-icall-cross-dso2.c
===
--- /de
Author: eugenis
Date: Mon Oct 31 17:28:10 2016
New Revision: 285650
URL: http://llvm.org/viewvc/llvm-project?rev=285650&view=rev
Log:
[cfi] Fix missing !type annotation.
CFI (only in the cross-dso mode) fails to set !type annotations when
a function is used before it is defined.
Added:
cfe/t
eugenis closed this revision.
eugenis added a comment.
thanks!
r285650
Repository:
rL LLVM
https://reviews.llvm.org/D26164
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
eugenis accepted this revision.
eugenis added a comment.
This revision is now accepted and ready to land.
LGTM
It appears that this code is not testable in clang. There is a compiler-rt test
in https://reviews.llvm.org/D26355.
https://reviews.llvm.org/D26354
Author: eugenis
Date: Mon Nov 7 15:02:11 2016
New Revision: 286148
URL: http://llvm.org/viewvc/llvm-project?rev=286148&view=rev
Log:
Use -fsanitize-recover instead of -mllvm -msan-keep-going: clang.
Summary: Use -fsanitize-recover instead of -mllvm -msan-keep-going: pass
-fsanitize-recover valu
eugenis added a comment.
This is a good change, but I don't think it is the right fix for PR30940.
Instead of handling this in the NDK, we should change *::getIRStackGuard to
fallback to __stack_chk_guard when targeting an old version.
https://reviews.llvm.org/D26385
___
eugenis accepted this revision.
eugenis added a reviewer: eugenis.
eugenis added a comment.
LGTM
https://reviews.llvm.org/D26385
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
eugenis added inline comments.
Comment at: lib/Frontend/CompilerInvocation.cpp:735
+ OPT_fno_sanitize_thread_data_races,
+ Opts.SanitizeThreadDataRaces);
+ Opts.SanitizeThreadStackTraces =
It seems common to hardcode the defau
eugenis added a comment.
Oh, and this needs a test. See test/Driver/fsanitize.c (search for
-fsanitize-address-use-after-scope as an example).
https://reviews.llvm.org/D26461
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm
eugenis added inline comments.
Comment at: lib/Frontend/CompilerInvocation.cpp:735
+ OPT_fno_sanitize_thread_data_races,
+ Opts.SanitizeThreadDataRaces);
+ Opts.SanitizeThreadStackTraces =
alekseyshl wrote:
> eugenis wrote:
>
eugenis added inline comments.
Comment at: test/Driver/fsanitize.c:288
+// RUN: %clang -target x86_64-linux-gnu -fsanitize=thread
-fsanitize-thread-data-races -fno-sanitize-thread-data-races %s -### 2>&1 |
FileCheck %s --check-prefix=CHECK-TSAN-DATA-RACES-OFF
+// CHECK-TSAN-DAT
eugenis accepted this revision.
eugenis added a reviewer: eugenis.
eugenis added a comment.
Looks great!
https://reviews.llvm.org/D26491
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commi
Author: eugenis
Date: Fri Nov 11 12:49:49 2016
New Revision: 286613
URL: http://llvm.org/viewvc/llvm-project?rev=286613&view=rev
Log:
[cfi] Enable cfi-icall on ARM and AArch64.
Modified:
cfe/trunk/lib/Driver/ToolChain.cpp
cfe/trunk/test/Driver/fsanitize.c
Modified: cfe/trunk/lib/Driver/T
eugenis added inline comments.
Comment at: lib/Frontend/CompilerInvocation.cpp:732
Args.hasArg(OPT_fsanitize_coverage_trace_pc_guard);
+ Opts.SanitizeThreadMemoryAccess =
+ Args.hasFlag(OPT_fsanitize_thread_memory_access,
It looks like lib/Frontend c
eugenis accepted this revision.
eugenis added a comment.
LGTM
https://reviews.llvm.org/D26461
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: eugenis
Date: Fri Nov 11 17:17:36 2016
New Revision: 286669
URL: http://llvm.org/viewvc/llvm-project?rev=286669&view=rev
Log:
Tread TSan LLVM flags to driver: add TSan controlling flags to clang.
Summary:
New clang flags, all default to true:
-f[no-]sanitize-thread-data-races
-f[no-]sanit
This revision was automatically updated to reflect the committed changes.
Closed by commit rL286669: Tread TSan LLVM flags to driver: add TSan
controlling flags to clang. (authored by eugenis).
Changed prior to commit:
https://reviews.llvm.org/D26461?vs=77667&id=77683#toc
Repository:
rL LLVM
eugenis added inline comments.
Comment at: lib/CodeGen/CGClass.cpp:1671
@@ -1670,1 +1670,3 @@
+ ASTContext &Context = CGF.getContext();
+ // Poison vtable and vtable ptr if they exist for this class.
You are poisoning the vtable pointer in the base des
eugenis added inline comments.
Comment at: lib/CodeGen/CGClass.cpp:1685
@@ +1684,3 @@
+// function
+Poison(CGF, VTablePtr, PoisonSize);
+ }
Did you mean to move this chunk to the other cleanup class?
Is there a test that would fail if vptr is
eugenis added a comment.
So, this can not be moved to the complete destructor because that would fail to
poisons vptrs of the base classes. On the other hand, the current
implementation is a bit wasteful, as it can poison the same pointer multiple
times when it is shared by the derived class an
eugenis added inline comments.
Comment at: lib/CodeGen/CGClass.cpp:1652
@@ +1651,3 @@
+
+ static void Poison(CodeGenFunction &CGF, llvm::Value *OffsetPtr,
+CharUnits::QuantityType PoisonSize);
nmusgrave wrote:
> eugenis wrote:
> > If it's a glo
eugenis added a comment.
I'm going to commit this tomorrow unless someone speaks up.
Repository:
rL LLVM
http://reviews.llvm.org/D12087
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-com
eugenis updated this revision to Diff 34578.
eugenis added a comment.
rebase, fix a merge conflict
Repository:
rL LLVM
http://reviews.llvm.org/D12087
Files:
lib/CodeGen/CGCXX.cpp
lib/CodeGen/CGClass.cpp
lib/CodeGen/CGOpenMPRuntime.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeG
Author: eugenis
Date: Fri Sep 11 15:29:07 2015
New Revision: 247465
URL: http://llvm.org/viewvc/llvm-project?rev=247465&view=rev
Log:
Always_inline codegen rewrite.
Current implementation may end up emitting an undefined reference for
an "inline __attribute__((always_inline))" function by generat
eugenis closed this revision.
eugenis added a comment.
r247465, thanks for the review!
Repository:
rL LLVM
http://reviews.llvm.org/D12087
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-c
Author: eugenis
Date: Fri Sep 11 16:10:12 2015
New Revision: 247473
URL: http://llvm.org/viewvc/llvm-project?rev=247473&view=rev
Log:
Specify target triple in alwaysinline tests.
This should fix the tests on Windows (failing due to mangling differencies).
Modified:
cfe/trunk/test/CodeGen/alw
Author: eugenis
Date: Fri Sep 11 18:48:37 2015
New Revision: 247491
URL: http://llvm.org/viewvc/llvm-project?rev=247491&view=rev
Log:
Revert "Specify target triple in alwaysinline tests."
Revert "Always_inline codegen rewrite."
Breaks gdb & lldb tests.
Breaks on Fedora 22 x86_64.
Removed:
cf
eugenis updated this revision to Diff 34610.
eugenis added a comment.
Fixed the debug info problem.
Repository:
rL LLVM
http://reviews.llvm.org/D12087
Files:
lib/CodeGen/CGCXX.cpp
lib/CodeGen/CGClass.cpp
lib/CodeGen/CGOpenMPRuntime.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/Code
eugenis added inline comments.
Comment at: lib/CodeGen/CodeGenModule.cpp:543
@@ +542,3 @@
+ if (Fn->isUsedByMetadata())
+llvm::ValueAsMetadata::handleRAUW(Fn, StubFn);
+}
As the comment says.
W/o this, the debug info for .alwaysinline instructions is attached
Author: eugenis
Date: Fri Sep 11 20:07:37 2015
New Revision: 247494
URL: http://llvm.org/viewvc/llvm-project?rev=247494&view=rev
Log:
Always_inline codegen rewrite.
Current implementation may end up emitting an undefined reference for
an "inline __attribute__((always_inline))" function by generat
eugenis added a comment.
second attempt in r247494
Repository:
rL LLVM
http://reviews.llvm.org/D12087
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: eugenis
Date: Mon Sep 14 16:35:16 2015
New Revision: 247620
URL: http://llvm.org/viewvc/llvm-project?rev=247620&view=rev
Log:
Revert "Always_inline codegen rewrite" and 2 follow-ups.
Revert "Update cxx-irgen.cpp test to allow signext in alwaysinline functions."
Revert "[CodeGen] Remove wr
eugenis accepted this revision.
eugenis added a comment.
This revision is now accepted and ready to land.
LGTM
http://reviews.llvm.org/D12712
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-
eugenis added a comment.
Hi Eric, have you had a chance to take another look at this? It is blocking
http://reviews.llvm.org/D11740.
http://reviews.llvm.org/D11963
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bi
eugenis created this revision.
eugenis added reviewers: samsonov, pcc.
eugenis added a subscriber: cfe-commits.
eugenis set the repository for this revision to rL LLVM.
I don't see the point in limiting it to x86/x86_64 in the driver. It is only
slightly less broken on x86 than on other platforms
Author: eugenis
Date: Thu Sep 24 12:22:46 2015
New Revision: 248518
URL: http://llvm.org/viewvc/llvm-project?rev=248518&view=rev
Log:
Enable SafeStack on all Linux platforms.
Modified:
cfe/trunk/lib/Driver/ToolChains.cpp
cfe/trunk/test/Driver/fsanitize.c
Modified: cfe/trunk/lib/Driver/To
eugenis added a comment.
Thanks, committed as r248518 with a test.
Repository:
rL LLVM
http://reviews.llvm.org/D13122
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
eugenis added a comment.
FYI, I ran some tests and did not find any regressions and also confirmed that
this change fixes the problem PR23256 was minimized from.
Thanks for working on this!
http://reviews.llvm.org/D12502
___
cfe-commits mailing lis
eugenis added a comment.
Looks great!
Comment at: include/CMakeLists.txt:31
@@ +30,3 @@
+# by prepending __config_site to the current __config header.
+# TODO(EricWF) Is it portable to use "cat" and ">>"?
+add_custom_command(OUTPUT ${LIBCXX_BINARY_DIR}/__generated_c
eugenis added inline comments.
Comment at: include/CMakeLists.txt:31
@@ +30,3 @@
+# by prepending __config_site to the current __config header.
+# TODO(EricWF) Is it portable to use "cat" and ">>"?
+add_custom_command(OUTPUT ${LIBCXX_BINARY_DIR}/__generated_config
---
eugenis added a comment.
In http://reviews.llvm.org/D13407#261228, @EricWF wrote:
> Use `type` instead of `cat` on windows as suggested by @rnk. @eugenis does
> this address your concern?
Absolutely!
LGTM
http://reviews.llvm.org/D13407
___
cfe-c
eugenis created this revision.
eugenis added reviewers: chandlerc, rsmith.
eugenis added a subscriber: cfe-commits.
eugenis set the repository for this revision to rL LLVM.
Currently always_inline definitions are emitted as (in most cases) an
available_externally llvm function with an alwaysinlin
eugenis removed rL LLVM as the repository for this revision.
eugenis updated this revision to Diff 32330.
http://reviews.llvm.org/D12087
Files:
lib/CodeGen/CGCXX.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeGenModule.h
lib/CodeGen/ItaniumCXXABI.cpp
test/CodeGen/2008-05-19-AlwaysInl
eugenis updated this revision to Diff 32338.
http://reviews.llvm.org/D12087
Files:
lib/CodeGen/CGCXX.cpp
lib/CodeGen/CGClass.cpp
lib/CodeGen/CGOpenMPRuntime.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeGenModule.h
lib/CodeGen/ItaniumCXXABI.cpp
test/CodeGen/2008-05-19-AlwaysInli
eugenis marked an inline comment as done.
Comment at: lib/CodeGen/CodeGenModule.cpp:447-448
@@ +446,4 @@
+if (C && !isa(C)) {
+ C->handleOperandChange(GV, IndirectReplacement, &U);
+ continue;
+}
Good catch.
Comment at: lib/Code
eugenis updated this revision to Diff 32341.
http://reviews.llvm.org/D12087
Files:
lib/CodeGen/CGCXX.cpp
lib/CodeGen/CGClass.cpp
lib/CodeGen/CGOpenMPRuntime.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeGenModule.h
lib/CodeGen/ItaniumCXXABI.cpp
test/CodeGen/2008-05-19-AlwaysInli
eugenis added inline comments.
Comment at: lib/CodeGen/CodeGenModule.cpp:513
@@ +512,3 @@
+void CodeGenModule::RewriteAlwaysInlineFunctions() {
+ for (llvm::Function *Fn : AlwaysInlineFunctions)
+RewriteAlwaysInlineFunction(Fn);
Done. Should I make it a "Smal
Author: eugenis
Date: Tue Aug 18 15:36:11 2015
New Revision: 245344
URL: http://llvm.org/viewvc/llvm-project?rev=245344&view=rev
Log:
[sanitizer] Add -lutil to static runtime link flags.
This is needed to prevent breakage of -Wl,-as-needed link when
interceptors for functions in libutil are added
eugenis added a comment.
+cfe-commits
http://reviews.llvm.org/D12022
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
eugenis added a comment.
The test for virtual base that you added effectively disables the aliasing
test, because Derived now has non-trivial members.
Move it to a separate file.
Comment at: test/CodeGenCXX/sanitize-dtor-repress-aliasing.cpp:38
@@ +37,3 @@
+// Declaration of vi
Author: eugenis
Date: Thu Aug 20 16:47:16 2015
New Revision: 245619
URL: http://llvm.org/viewvc/llvm-project?rev=245619&view=rev
Log:
Revert r245344.
That change is causing strange test failures on Fedora 22 (PR24503),
and it does not have any effect with Gold linker anyway (PR15823,
https://sour
eugenis added inline comments.
Comment at: lib/CodeGen/CGCXX.cpp:41
@@ +40,3 @@
+ if (getCodeGenOpts().SanitizeMemoryUseAfterDtor && Layout.getFieldCount() > 0
+ && HasTrivialDestructorBody(Context, D->getParent(), D->getParent())) {
+return true;
I'
eugenis added inline comments.
Comment at: lib/CodeGen/CGClass.cpp:1578
@@ +1577,3 @@
+if (CGF.CGM.FieldHasTrivialDestructorBody(Context, Field) ||
+Field->getType()->isPointerType()) {
+ // Start sanitizing at this field
Why do you ne
eugenis added inline comments.
Comment at: lib/CodeGen/CGCXX.cpp:44
@@ +43,3 @@
+ // destructors.
+ const ASTRecordLayout &Layout = Context.getASTRecordLayout(D->getParent());
+
This is unused.
Comment at: lib/CodeGen/CGCXX.cpp:47
@@ +46,3 @@
+
eugenis added inline comments.
Comment at: lib/CodeGen/CGCXX.cpp:31
@@ -30,1 +30,3 @@
+static bool HasTrivialField(CodeGenModule &CGM, const CXXDestructorDecl *D) {
+ for (const auto *Field : D->getParent()->fields())
I think this should be called "HasFieldWith
eugenis removed rL LLVM as the repository for this revision.
eugenis updated this revision to Diff 33246.
eugenis added a comment.
Introduced cmake options for specifying the desired ABI version.
ABI version affects library soname and include path (include/c++/vN).
Baked ABI version into the heade
eugenis added a comment.
> How long is a major and minor ABI version supported?
We don't want to bump major version too often, and we want to support both +1
and -1 of the current major version, along with all possible minor versions.
> When is the major and minor ABI version bumped?
See Abi
eugenis created this revision.
eugenis added reviewers: mclow.lists, EricWF, rsmith.
eugenis added a subscriber: cfe-commits.
eugenis set the repository for this revision to rL LLVM.
This goes with the ABI versioning support in libc++ in
http://reviews.llvm.org/D11740
Repository:
rL LLVM
http
eugenis created this revision.
eugenis added reviewers: EricWF, mclow.lists.
eugenis added a subscriber: cfe-commits.
eugenis set the repository for this revision to rL LLVM.
With http://reviews.llvm.org/D11740, libc++ headers can not be used from the
libc++ source directly, because they include
eugenis removed rL LLVM as the repository for this revision.
eugenis updated this revision to Diff 33259.
http://reviews.llvm.org/D12382
Files:
lib/Driver/ToolChains.cpp
test/Driver/Inputs/basic_linux_libcxxv2_tree/usr/bin/.keep
test/Driver/Inputs/basic_linux_libcxxv2_tree/usr/include/c++/v
eugenis marked 2 inline comments as done.
eugenis added a comment.
http://reviews.llvm.org/D12382
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
1 - 100 of 304 matches
Mail list logo