<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/compiler-rt.git/lib/interception, branch google/stable</title>
<subtitle>llvm.org: Obsolete (use llvm)
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/'/>
<entry>
<title>[compiler-rt][tests] Propagate COMPILER_RT_UNITTEST_LINK_FLAGS</title>
<updated>2019-05-01T22:25:16+00:00</updated>
<author>
<name>Hubert Tong</name>
<email>hubert.reinterpretcast@gmail.com</email>
</author>
<published>2019-05-01T22:25:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=fc6f4a6ed7e7a8a77d1592f1ec6948fbb3ca42fa'/>
<id>fc6f4a6ed7e7a8a77d1592f1ec6948fbb3ca42fa</id>
<content type='text'>
`COMPILER_RT_UNITTEST_LINK_FLAGS` is dropped in many places, unlike
`COMPILER_RT_UNITTEST_CFLAGS`. This patch attempts to remove that
inconsistency.

Previously reviewed as part of D58951.

Reviewers: sfertile, peter.smith, pzheng, phosek, Hahnfeld, nemanjai, jasonliu

Reviewed By: sfertile

Subscribers: jsji, kubamracek, dberris, mgorny, delcypher, jdoerfert, #sanitizers, llvm-commits

Tags: #llvm, #sanitizers

Differential Revision: https://reviews.llvm.org/D60143


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359733 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`COMPILER_RT_UNITTEST_LINK_FLAGS` is dropped in many places, unlike
`COMPILER_RT_UNITTEST_CFLAGS`. This patch attempts to remove that
inconsistency.

Previously reviewed as part of D58951.

Reviewers: sfertile, peter.smith, pzheng, phosek, Hahnfeld, nemanjai, jasonliu

Reviewed By: sfertile

Subscribers: jsji, kubamracek, dberris, mgorny, delcypher, jdoerfert, #sanitizers, llvm-commits

Tags: #llvm, #sanitizers

Differential Revision: https://reviews.llvm.org/D60143


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359733 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[Sanitizer] Reland "Cleanup INTERCEPT_FUNCTION macro"</title>
<updated>2019-05-01T20:57:59+00:00</updated>
<author>
<name>Julian Lettner</name>
<email>jlettner@apple.com</email>
</author>
<published>2019-05-01T20:57:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=91448959dae346b8ccb85693f3f94f79f9e0b33d'/>
<id>91448959dae346b8ccb85693f3f94f79f9e0b33d</id>
<content type='text'>
On Linux both version of the INTERCEPT_FUNCTION macro now return true
when interception was successful. Adapt and cleanup some usages.

Also note that `&amp;(func) == &amp;WRAP(func)` is a link-time property, but we
do a runtime check.

Tested on Linux and macOS.

Previous attempt reverted by: 5642c3feb03d020dc06a62e3dc54f3206a97a391

This attempt to bring order to the interceptor macro goes the other
direction and aligns the Linux implementation with the way things are
done on Windows.

Reviewed By: vitalybuka, rnk

Differential Revision: https://reviews.llvm.org/D61358

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359725 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On Linux both version of the INTERCEPT_FUNCTION macro now return true
when interception was successful. Adapt and cleanup some usages.

Also note that `&amp;(func) == &amp;WRAP(func)` is a link-time property, but we
do a runtime check.

Tested on Linux and macOS.

Previous attempt reverted by: 5642c3feb03d020dc06a62e3dc54f3206a97a391

This attempt to bring order to the interceptor macro goes the other
direction and aligns the Linux implementation with the way things are
done on Windows.

Reviewed By: vitalybuka, rnk

Differential Revision: https://reviews.llvm.org/D61358

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359725 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert r359325 "[NFC][Sanitizer] Change "return type" of INTERCEPT_FUNCTION to void"</title>
<updated>2019-04-30T20:59:56+00:00</updated>
<author>
<name>Reid Kleckner</name>
<email>rnk@google.com</email>
</author>
<published>2019-04-30T20:59:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=56d59bd9cdbd18d00d2b487812e19ff7302201c7'/>
<id>56d59bd9cdbd18d00d2b487812e19ff7302201c7</id>
<content type='text'>
Changing INTERCEPT_FUNCTION to return void is not functionally correct.
IMO the best way to communicate failure or success of interception is
with a return value, not some external address comparison.

This change was also creating link errors for _except_handler4_common,
which is exported from ucrtbase.dll in 32-bit Windows.

Also revert dependent changes r359362 and r359466.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359611 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Changing INTERCEPT_FUNCTION to return void is not functionally correct.
IMO the best way to communicate failure or success of interception is
with a return value, not some external address comparison.

This change was also creating link errors for _except_handler4_common,
which is exported from ucrtbase.dll in 32-bit Windows.

Also revert dependent changes r359362 and r359466.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359611 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][Sanitizer] Remove GetRealFunctionAddress and replace usages</title>
<updated>2019-04-27T00:49:14+00:00</updated>
<author>
<name>Julian Lettner</name>
<email>jlettner@apple.com</email>
</author>
<published>2019-04-27T00:49:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=dc8b1beec18ce9aa26f17c0366c1d670475b47c4'/>
<id>dc8b1beec18ce9aa26f17c0366c1d670475b47c4</id>
<content type='text'>
Reviewers: vitalybuka

Differential Revision: https://reviews.llvm.org/D61205

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359362 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewers: vitalybuka

Differential Revision: https://reviews.llvm.org/D61205

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359362 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[Sanitizer] Fix test</title>
<updated>2019-04-26T18:39:02+00:00</updated>
<author>
<name>Julian Lettner</name>
<email>jlettner@apple.com</email>
</author>
<published>2019-04-26T18:39:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=06a05419940f6812d1dc052c2b89a4e7ed60f542'/>
<id>06a05419940f6812d1dc052c2b89a4e7ed60f542</id>
<content type='text'>
I broke the build, panicked and applied the wrong fix in my previous
commit. The ASSERT was obsolete, but not the call INTERCEPT_FUNCTION.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359336 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I broke the build, panicked and applied the wrong fix in my previous
commit. The ASSERT was obsolete, but not the call INTERCEPT_FUNCTION.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359336 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[Sanitizer] Fix compliation error in test</title>
<updated>2019-04-26T18:27:35+00:00</updated>
<author>
<name>Julian Lettner</name>
<email>jlettner@apple.com</email>
</author>
<published>2019-04-26T18:27:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=b6b6cfee831532b9b96ba8b4bcc248f0405b1ef3'/>
<id>b6b6cfee831532b9b96ba8b4bcc248f0405b1ef3</id>
<content type='text'>
Remove obsolete assert. I missed this in my previous patch:
https://reviews.llvm.org/D61145

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359335 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove obsolete assert. I missed this in my previous patch:
https://reviews.llvm.org/D61145

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359335 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][Sanitizer] Change "return type" of INTERCEPT_FUNCTION to void</title>
<updated>2019-04-26T17:29:22+00:00</updated>
<author>
<name>Julian Lettner</name>
<email>jlettner@apple.com</email>
</author>
<published>2019-04-26T17:29:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=b6811a15fa4ccc1da6576b4ad654ad05ddbd2f11'/>
<id>b6811a15fa4ccc1da6576b4ad654ad05ddbd2f11</id>
<content type='text'>
This temporary change tells us about all the places where the return
value of the INTERCEPT_FUNCTION macro is actually used. In the next
patch I will cleanup the macro and remove GetRealFuncAddress.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D61145

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359325 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This temporary change tells us about all the places where the return
value of the INTERCEPT_FUNCTION macro is actually used. In the next
patch I will cleanup the macro and remove GetRealFuncAddress.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D61145

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359325 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][Sanitizer] Extract GetFuncAddr from GetRealFunctionAddress</title>
<updated>2019-04-25T17:46:29+00:00</updated>
<author>
<name>Julian Lettner</name>
<email>jlettner@apple.com</email>
</author>
<published>2019-04-25T17:46:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=b59c91240d1016647f4b5ff928d432000906759e'/>
<id>b59c91240d1016647f4b5ff928d432000906759e</id>
<content type='text'>
Summary:
Hopefully, this will enable cleanup/removal of GetRealFunctionAddress in
follow-up commits.

Subscribers: #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D61110

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359213 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
Hopefully, this will enable cleanup/removal of GetRealFunctionAddress in
follow-up commits.

Subscribers: #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D61110

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359213 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[winasan] Fix strrchr interception with vs2019 CRT</title>
<updated>2019-04-04T21:08:02+00:00</updated>
<author>
<name>Reid Kleckner</name>
<email>rnk@google.com</email>
</author>
<published>2019-04-04T21:08:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=3c3f14f22e369d9af39e2735ac93ecb2004bd2b6'/>
<id>3c3f14f22e369d9af39e2735ac93ecb2004bd2b6</id>
<content type='text'>
strrchr in vs2019 CRT begins with unrecognized instructions.

VCRUNTIME140!strrchr:
4533c9         xor     r9d, r9d
4c8bc1         mov     r8, rcx

Patch by Christopher Reid!

Differential Revision: https://reviews.llvm.org/D60217

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@357725 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
strrchr in vs2019 CRT begins with unrecognized instructions.

VCRUNTIME140!strrchr:
4533c9         xor     r9d, r9d
4c8bc1         mov     r8, rcx

Patch by Christopher Reid!

Differential Revision: https://reviews.llvm.org/D60217

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@357725 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
<entry>
<title>[hwasan, asan] Intercept vfork.</title>
<updated>2019-02-27T21:11:50+00:00</updated>
<author>
<name>Evgeniy Stepanov</name>
<email>eugeni.stepanov@gmail.com</email>
</author>
<published>2019-02-27T21:11:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/compiler-rt.git/commit/?id=9cde2249660f19f4ffa6d7703cecfdced27f9917'/>
<id>9cde2249660f19f4ffa6d7703cecfdced27f9917</id>
<content type='text'>
Summary:
Intercept vfork on arm, aarch64, i386 and x86_64.

Reviewers: pcc, vitalybuka

Subscribers: kubamracek, mgorny, javed.absar, krytarowski, kristof.beyls, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D58533

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@355030 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
Intercept vfork on arm, aarch64, i386 and x86_64.

Reviewers: pcc, vitalybuka

Subscribers: kubamracek, mgorny, javed.absar, krytarowski, kristof.beyls, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D58533

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@355030 91177308-0d34-0410-b5e6-96231b3b80d8
</pre>
</div>
</content>
</entry>
</feed>
