]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
sanitizer_linux.cc (__sanitizer): Grab one change from upstream to fix build.
authorMike Stump <mikestump@comcast.net>
Fri, 22 Nov 2013 20:33:06 +0000 (20:33 +0000)
committerMike Stump <mrs@gcc.gnu.org>
Fri, 22 Nov 2013 20:33:06 +0000 (20:33 +0000)
        * sanitizer_common/sanitizer_linux.cc (__sanitizer): Grab one
        change from upstream to fix build.

From-SVN: r205285

libsanitizer/ChangeLog
libsanitizer/sanitizer_common/sanitizer_linux.cc

index 9afe7970a28c62c2e9c49541655db35f54477811..000ca18c8f43f476c1b3a90c051c8f9ae7b64699 100644 (file)
@@ -1,3 +1,8 @@
+2013-11-22  Mike Stump  <mikestump@comcast.net>
+
+       * sanitizer_common/sanitizer_linux.cc (__sanitizer): Grab one
+       change from upstream to fix build.
+
 2013-11-18  Yury Gribov  <y.gribov@samsung.com>
 
        PR sanitizer/59106
index 2763313015ab27c8b7ae1abf4a2dbfb0136915ab..ddc65465ef746ec0cf0a5142aa730584aad1e1fc 100644 (file)
@@ -785,7 +785,6 @@ uptr internal_clone(int (*fn)(void *), void *child_stack, int flags, void *arg,
                         *                %r8  = new_tls,
                         *                %r10 = child_tidptr)
                         */
-                       ".cfi_endproc\n"
                        "syscall\n"
 
                        /* if (%rax != 0)
@@ -795,8 +794,9 @@ uptr internal_clone(int (*fn)(void *), void *child_stack, int flags, void *arg,
                        "jnz    1f\n"
 
                        /* In the child. Terminate unwind chain. */
-                       ".cfi_startproc\n"
-                       ".cfi_undefined %%rip;\n"
+                       // XXX: We should also terminate the CFI unwind chain
+                       // here. Unfortunately clang 3.2 doesn't support the
+                       // necessary CFI directives, so we skip that part.
                        "xorq   %%rbp,%%rbp\n"
 
                        /* Call "fn(arg)". */