[llvm-testresults] buildbot failure in lab.llvm.org on phase1 - sanity

llvmlab-buildmaster at lab.llvm.org llvmlab-buildmaster at lab.llvm.org
Thu Sep 4 13:29:31 PDT 2014


The Buildbot has detected a new failure on builder phase1 - sanity while building cfe.
Full details are available at:
 http://lab.llvm.org:8013/builders/phase1%20-%20sanity/builds/4403

Buildbot URL: http://lab.llvm.org:8013/

Buildslave for this Build: macpro1

Build Reason: scheduler
Build Source Stamp: 217187
Blamelist: rnk

BUILD FAILED: failed

sincerely,
 -The Buildbot


================================================================================

CHANGES:
Files:
 lib/CodeGen/CGStmt.cpp
 lib/CodeGen/CodeGenFunction.cpp
 lib/CodeGen/CodeGenFunction.h
 lib/CodeGen/TargetInfo.cpp
 lib/CodeGen/TargetInfo.h
 test/CodeGen/ms-inline-asm.c
 test/CodeGenCXX/ms-inline-asm-return.cpp
On: http://10.1.1.2/svn/llvm-project
For: cfe
At: Thu 04 Sep 2014 13:15:30
Changed By: rnk
Comments: MS inline asm: Allow __asm blocks to set a return value

If control falls off the end of a function after an __asm block, MSVC
assumes that the inline assembly filled the EAX and possibly EDX
registers with an appropriate return value. This functionality is used
in inline functions returning 64-bit integers in system headers, so we
need some amount of compatibility.

This is implemented in Clang by adding extra output constraints to every
inline asm block, and storing the resulting output registers into the
return value slot. If we see an asm block somewhere in the function
body, we emit a normal epilogue instead of marking the end of the
function with a return type unreachable.

Normal returns in functions not using this functionality will overwrite
the return value slot, and in most cases LLVM should be able to
eliminate the dead stores.

Fixes PR17201.

Reviewed By: majnemer

Differential Revision: http://reviews.llvm.org/D5177Properties: 




LOGS:






More information about the llvm-testresults mailing list