[Lldb-commits] [lldb] r262156 - Revert "Fix bug with register values byte order in expression evaluation."
Author: tfiala Date: Sat Feb 27 16:48:50 2016 New Revision: 262156 URL: http://llvm.org/viewvc/llvm-project?rev=262156&view=rev Log: Revert "Fix bug with register values byte order in expression evaluation." This reverts commit r262041, which caused asserts starting yesterday on the OS X testbot. See details in: https://llvm.org/bugs/show_bug.cgi?id=26758 Modified: lldb/trunk/source/Expression/Materializer.cpp Modified: lldb/trunk/source/Expression/Materializer.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/Materializer.cpp?rev=262156&r1=262155&r2=262156&view=diff == --- lldb/trunk/source/Expression/Materializer.cpp (original) +++ lldb/trunk/source/Expression/Materializer.cpp Sat Feb 27 16:48:50 2016 @@ -26,7 +26,6 @@ #include "lldb/Target/StackFrame.h" #include "lldb/Target/Target.h" #include "lldb/Target/Thread.h" -#include "lldb/Utility/LLDBAssert.h" using namespace lldb_private; @@ -1276,15 +1275,9 @@ public: m_register_contents.reset(new DataBufferHeap(register_data.GetDataStart(), register_data.GetByteSize())); Error write_error; - -Scalar scalar; -if (reg_value.GetScalarValue(scalar)) { -lldbassert(scalar.GetByteSize() == register_data.GetByteSize()); -map.WriteScalarToMemory(load_addr, scalar, scalar.GetByteSize(), write_error); -} else { -map.WriteMemory(load_addr, register_data.GetDataStart(), register_data.GetByteSize(), write_error); -} - + +map.WriteMemory(load_addr, register_data.GetDataStart(), register_data.GetByteSize(), write_error); + if (!write_error.Success()) { err.SetErrorStringWithFormat("couldn't write the contents of register %s: %s", m_register_info.name, write_error.AsCString()); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r262041 - Fix bug with register values byte order in expression evaluation.
Hi all, The new assert was failing on the OS X testbot here: http://lab.llvm.org:8080/green/job/lldb_build_test/ The nag mail didn't make it to you since we have it only fire on the transition from good build to bad build, and Tamas had the privilege of earning that with a minor Xcode breakage just shortly before this issue showed up. However, that bot as been broken since this change went in. I reverted it in r262156. Feel free to reapply if you have a suggested fix for the test failure introduced. Thanks! -Todd On Fri, Feb 26, 2016 at 12:08 PM, Chaoren Lin via lldb-commits < lldb-commits@lists.llvm.org> wrote: > Hmm. Weird. That assert is failing on Linux: > http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/11833 > > On Fri, Feb 26, 2016 at 9:40 AM, Aidan Dodds via lldb-commits < > lldb-commits@lists.llvm.org> wrote: > >> Author: aidandodds >> Date: Fri Feb 26 11:40:50 2016 >> New Revision: 262041 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=262041&view=rev >> Log: >> Fix bug with register values byte order in expression evaluation. >> >> The evaluation of expressions containing register values was broken for >> targets for which endianness differs from host. >> >> Committed on behalf of: mamai >> >> Differential revision: http://reviews.llvm.org/D17167 >> >> Modified: >> lldb/trunk/source/Expression/Materializer.cpp >> >> Modified: lldb/trunk/source/Expression/Materializer.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/Materializer.cpp?rev=262041&r1=262040&r2=262041&view=diff >> >> == >> --- lldb/trunk/source/Expression/Materializer.cpp (original) >> +++ lldb/trunk/source/Expression/Materializer.cpp Fri Feb 26 11:40:50 2016 >> @@ -26,6 +26,7 @@ >> #include "lldb/Target/StackFrame.h" >> #include "lldb/Target/Target.h" >> #include "lldb/Target/Thread.h" >> +#include "lldb/Utility/LLDBAssert.h" >> >> using namespace lldb_private; >> >> @@ -1275,9 +1276,14 @@ public: >> m_register_contents.reset(new >> DataBufferHeap(register_data.GetDataStart(), register_data.GetByteSize())); >> >> Error write_error; >> - >> -map.WriteMemory(load_addr, register_data.GetDataStart(), >> register_data.GetByteSize(), write_error); >> - >> + >> +Scalar scalar; >> +reg_value.GetScalarValue(scalar); >> + >> +lldbassert(scalar.GetByteSize() == register_data.GetByteSize()); >> + >> +map.WriteScalarToMemory(load_addr, scalar, scalar.GetByteSize(), >> write_error); >> + >> if (!write_error.Success()) >> { >> err.SetErrorStringWithFormat("couldn't write the contents of >> register %s: %s", m_register_info.name, write_error.AsCString()); >> >> >> ___ >> lldb-commits mailing list >> lldb-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >> > > > ___ > lldb-commits mailing list > lldb-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits > > -- -Todd ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D17425: Use shallow clones in build-llvm.py.
Nah - please go ahead and submit it. I'll just make sure I add the ability to specify arbitrary git flags for the git part so you can have this when I put the new change in. On Mon, Feb 22, 2016 at 7:23 PM, Stephane Sezer via lldb-commits < lldb-commits@lists.llvm.org> wrote: > sas added a subscriber: sas. > sas added a comment. > > Ah, sounds like a cool change. Should we wait until your stuff goes in or > are you still ok with submitting my patch in the meantime? > > > http://reviews.llvm.org/D17425 > > > > ___ > lldb-commits mailing list > lldb-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits > -- -Todd ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D17425: Use shallow clones in build-llvm.py.
tfiala accepted this revision. tfiala added a comment. This revision is now accepted and ready to land. In http://reviews.llvm.org/D17425#363665, @tfiala wrote: > Nah - please go ahead and submit it. I'll just make sure I add the ability > to specify arbitrary git flags for the git part so you can have this when I > put the new change in. Haha sorry poor English after I reread the question. More appropriate answer: "Yes - please feel free to submit your addition." http://reviews.llvm.org/D17425 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r262041 - Fix bug with register values byte order in expression evaluation.
I thought I fixed it with http://reviews.llvm.org/D17658. Did you revert that as well? On Sat, Feb 27, 2016 at 3:14 PM, Todd Fiala wrote: > Hi all, > > The new assert was failing on the OS X testbot here: > http://lab.llvm.org:8080/green/job/lldb_build_test/ > > The nag mail didn't make it to you since we have it only fire on the > transition from good build to bad build, and Tamas had the privilege of > earning that with a minor Xcode breakage just shortly before this issue > showed up. However, that bot as been broken since this change went in. > > I reverted it in r262156. > > Feel free to reapply if you have a suggested fix for the test failure > introduced. > > Thanks! > > -Todd > > On Fri, Feb 26, 2016 at 12:08 PM, Chaoren Lin via lldb-commits < > lldb-commits@lists.llvm.org> wrote: > >> Hmm. Weird. That assert is failing on Linux: >> http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/11833 >> >> On Fri, Feb 26, 2016 at 9:40 AM, Aidan Dodds via lldb-commits < >> lldb-commits@lists.llvm.org> wrote: >> >>> Author: aidandodds >>> Date: Fri Feb 26 11:40:50 2016 >>> New Revision: 262041 >>> >>> URL: http://llvm.org/viewvc/llvm-project?rev=262041&view=rev >>> Log: >>> Fix bug with register values byte order in expression evaluation. >>> >>> The evaluation of expressions containing register values was broken for >>> targets for which endianness differs from host. >>> >>> Committed on behalf of: mamai >>> >>> Differential revision: http://reviews.llvm.org/D17167 >>> >>> Modified: >>> lldb/trunk/source/Expression/Materializer.cpp >>> >>> Modified: lldb/trunk/source/Expression/Materializer.cpp >>> URL: >>> http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/Materializer.cpp?rev=262041&r1=262040&r2=262041&view=diff >>> >>> == >>> --- lldb/trunk/source/Expression/Materializer.cpp (original) >>> +++ lldb/trunk/source/Expression/Materializer.cpp Fri Feb 26 11:40:50 >>> 2016 >>> @@ -26,6 +26,7 @@ >>> #include "lldb/Target/StackFrame.h" >>> #include "lldb/Target/Target.h" >>> #include "lldb/Target/Thread.h" >>> +#include "lldb/Utility/LLDBAssert.h" >>> >>> using namespace lldb_private; >>> >>> @@ -1275,9 +1276,14 @@ public: >>> m_register_contents.reset(new >>> DataBufferHeap(register_data.GetDataStart(), register_data.GetByteSize())); >>> >>> Error write_error; >>> - >>> -map.WriteMemory(load_addr, register_data.GetDataStart(), >>> register_data.GetByteSize(), write_error); >>> - >>> + >>> +Scalar scalar; >>> +reg_value.GetScalarValue(scalar); >>> + >>> +lldbassert(scalar.GetByteSize() == register_data.GetByteSize()); >>> + >>> +map.WriteScalarToMemory(load_addr, scalar, >>> scalar.GetByteSize(), write_error); >>> + >>> if (!write_error.Success()) >>> { >>> err.SetErrorStringWithFormat("couldn't write the contents >>> of register %s: %s", m_register_info.name, write_error.AsCString()); >>> >>> >>> ___ >>> lldb-commits mailing list >>> lldb-commits@lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >>> >> >> >> ___ >> lldb-commits mailing list >> lldb-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >> >> > > > -- > -Todd > ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r262041 - Fix bug with register values byte order in expression evaluation.
I brought the state of the lines changed there to what they were prior to the change. If you adjusted those same lines, then yes that got undone. We were failing different tests in those files. Your change may have fixed the new issues on Linux, but did not address the new failures on OS X. The OS X bot went green after the revert. -Todd > On Feb 27, 2016, at 4:01 PM, Chaoren Lin wrote: > > I thought I fixed it with http://reviews.llvm.org/D17658. Did you revert that > as well? > >> On Sat, Feb 27, 2016 at 3:14 PM, Todd Fiala wrote: >> Hi all, >> >> The new assert was failing on the OS X testbot here: >> http://lab.llvm.org:8080/green/job/lldb_build_test/ >> >> The nag mail didn't make it to you since we have it only fire on the >> transition from good build to bad build, and Tamas had the privilege of >> earning that with a minor Xcode breakage just shortly before this issue >> showed up. However, that bot as been broken since this change went in. >> >> I reverted it in r262156. >> >> Feel free to reapply if you have a suggested fix for the test failure >> introduced. >> >> Thanks! >> >> -Todd >> >>> On Fri, Feb 26, 2016 at 12:08 PM, Chaoren Lin via lldb-commits >>> wrote: >>> Hmm. Weird. That assert is failing on Linux: >>> http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/11833 >>> On Fri, Feb 26, 2016 at 9:40 AM, Aidan Dodds via lldb-commits wrote: Author: aidandodds Date: Fri Feb 26 11:40:50 2016 New Revision: 262041 URL: http://llvm.org/viewvc/llvm-project?rev=262041&view=rev Log: Fix bug with register values byte order in expression evaluation. The evaluation of expressions containing register values was broken for targets for which endianness differs from host. Committed on behalf of: mamai Differential revision: http://reviews.llvm.org/D17167 Modified: lldb/trunk/source/Expression/Materializer.cpp Modified: lldb/trunk/source/Expression/Materializer.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/Materializer.cpp?rev=262041&r1=262040&r2=262041&view=diff == --- lldb/trunk/source/Expression/Materializer.cpp (original) +++ lldb/trunk/source/Expression/Materializer.cpp Fri Feb 26 11:40:50 2016 @@ -26,6 +26,7 @@ #include "lldb/Target/StackFrame.h" #include "lldb/Target/Target.h" #include "lldb/Target/Thread.h" +#include "lldb/Utility/LLDBAssert.h" using namespace lldb_private; @@ -1275,9 +1276,14 @@ public: m_register_contents.reset(new DataBufferHeap(register_data.GetDataStart(), register_data.GetByteSize())); Error write_error; - -map.WriteMemory(load_addr, register_data.GetDataStart(), register_data.GetByteSize(), write_error); - + +Scalar scalar; +reg_value.GetScalarValue(scalar); + +lldbassert(scalar.GetByteSize() == register_data.GetByteSize()); + +map.WriteScalarToMemory(load_addr, scalar, scalar.GetByteSize(), write_error); + if (!write_error.Success()) { err.SetErrorStringWithFormat("couldn't write the contents of register %s: %s", m_register_info.name, write_error.AsCString()); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >>> >>> >>> ___ >>> lldb-commits mailing list >>> lldb-commits@lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >>> >> >> >> >> -- >> -Todd > ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits