[Lldb-commits] [lldb] 90c1af1 - [lldb][NFC] Add more test for builtin formats

Eric Christopher via lldb-commits lldb-commits at lists.llvm.org
Sun Jun 21 00:59:09 PDT 2020


No problem at all, happens to all of us :)

-eric

On Sun, Jun 21, 2020 at 12:56 AM Raphael “Teemperor” Isemann <
teemperor at gmail.com> wrote:

> Sorry for that, it seems I overlooked those failure mails. Thanks!
>
> On 20 Jun 2020, at 23:22, Eric Christopher <echristo at gmail.com> wrote:
>
> This is failing on some of the debian buildbots so I've temporarily
> reverted it here:
>
> commit 10b43541360efb35a1d33e9cf1e93023ebd69b15 (HEAD -> master,
> origin/master, origin/HEAD)
> Author: Eric Christopher <echristo at gmail.com>
> Date:   Sat Jun 20 14:21:42 2020
>
>     Temporarily Revert "[lldb][NFC] Add more test for builtin formats"
>     as it's failing on the debian buildbots:
>
>     http://lab.llvm.org:8011/builders/lldb-x86_64-debian/builds/12531
>
>     This reverts commit 90c1af106a20785ffd01c0d6a41db8bc0160fd11.
>
> buildbot link:
>
> http://lab.llvm.org:8011/builders/lldb-x86_64-debian/builds/12531
>
> Sorry for any inconvenience.
>
> -eric
>
> On Sat, Jun 20, 2020 at 12:35 PM Raphael Isemann via lldb-commits <
> lldb-commits at lists.llvm.org> wrote:
>
>>
>> Author: Raphael Isemann
>> Date: 2020-06-20T19:31:40+02:00
>> New Revision: 90c1af106a20785ffd01c0d6a41db8bc0160fd11
>>
>> URL:
>> https://github.com/llvm/llvm-project/commit/90c1af106a20785ffd01c0d6a41db8bc0160fd11
>> DIFF:
>> https://github.com/llvm/llvm-project/commit/90c1af106a20785ffd01c0d6a41db8bc0160fd11.diff
>>
>> LOG: [lldb][NFC] Add more test for builtin formats
>>
>> The previous tests apparently missed a few code branches in
>> DumpDataExtractor
>> code. Also renames the 'test_instruction' which had the same name as
>> another
>> test (and Python therefore ignored the test entirely).
>>
>> Added:
>>
>>
>> Modified:
>>
>> lldb/test/API/functionalities/data-formatter/builtin-formats/TestBuiltinFormats.py
>>
>> Removed:
>>
>>
>>
>>
>> ################################################################################
>> diff  --git
>> a/lldb/test/API/functionalities/data-formatter/builtin-formats/TestBuiltinFormats.py
>> b/lldb/test/API/functionalities/data-formatter/builtin-formats/TestBuiltinFormats.py
>> index 9fefae6bbf5c..1a413a13986a 100644
>> ---
>> a/lldb/test/API/functionalities/data-formatter/builtin-formats/TestBuiltinFormats.py
>> +++
>> b/lldb/test/API/functionalities/data-formatter/builtin-formats/TestBuiltinFormats.py
>> @@ -42,6 +42,9 @@ def test(self):
>>          self.assertIn("= 0\n", self.getFormatted("float", "0"))
>>          self.assertIn("= 2\n", self.getFormatted("float", "0x40000000"))
>>          self.assertIn("= NaN\n", self.getFormatted("float", "-1"))
>> +        # Checks the float16 code.
>> +        self.assertIn("= 2\n", self.getFormatted("float",
>> "(__UINT16_TYPE__)0x4000"))
>> +        self.assertIn("= error: unsupported byte size (1) for float
>> format\n", self.getFormatted("float", "'a'"))
>>
>>          # enumeration
>>          self.assertIn("= 0\n", self.getFormatted("enumeration", "0"))
>> @@ -59,6 +62,13 @@ def test(self):
>>
>>          # octal
>>          self.assertIn("= 04553207\n", self.getFormatted("octal",
>> "1234567"))
>> +        self.assertIn("= 0221505317046536757\n",
>> self.getFormatted("octal", "(__uint128_t)0x123456789ABDEFull"))
>> +
>> +        # complex float
>> +        self.assertIn("= error: unsupported byte size (1) for complex
>> float format\n", self.getFormatted("complex float", "'a'"))
>> +
>> +        # complex integer
>> +        self.assertIn("= error: unsupported byte size (1) for complex
>> integer format\n", self.getFormatted("complex integer", "'a'"))
>>
>>          # hex
>>          self.assertIn("= 0x00abc123\n", self.getFormatted("hex",
>> "0xABC123"))
>> @@ -86,6 +96,17 @@ def test(self):
>>          self.assertIn('= " \\U0000001b\\a\\b\\f\\n\\r\\t\\vaA09"\n',
>> self.getFormatted("OSType", "cstring"))
>>          self.assertIn('= " \\U0000001b\\a\\b\\f\\n\\r\\t\\vaA09"\n',
>> self.getFormatted("unicode8", "cstring"))
>>
>> +        # FIXME: Passing a 'const char *' will ignore any given format,
>> +        # so we have to repeat the tests with a void* casts to actually
>> test our formats.
>> +        self.assertIn('= \\x9a\\x0f\\0\\0\\x01\\0\\0\\0\n',
>> self.getFormatted("character array", "(void *)cstring"))
>> +        self.assertIn('= \\x9a\\x0f\\0\\0\\x01\\0\\0\\0\n',
>> self.getFormatted("character", "(void *)cstring"))
>> +        self.assertIn('= " \\e\\a\\b\\f\\n\\r\\t\\vaA09"\n',
>> self.getFormatted("c-string", "(void *)cstring"))
>> +        # FIXME: Ignores the printables characters at the end.
>> +        self.assertIn('= ........\n', self.getFormatted("printable
>> character", "(void *)cstring"))
>> +        self.assertIn('= \'\\0\\0\\0\\x01\\0\\0\\x0f\\x9a\'\n',
>> self.getFormatted("OSType", "(void *)cstring"))
>> +        # FIXME: This should print a string.
>> +        self.assertIn('= 0x0000000100000f9a\n',
>> self.getFormatted("unicode8", "(void *)cstring"))
>> +
>>          self.assertIn('= \\0\\0\\0\\0\\0\\0\\0\\0\n',
>> self.getFormatted("character array", "(__UINT64_TYPE__)0"))
>>          self.assertIn('= \\0\\0\\0\\0\\0\\0\\0\\0\n',
>> self.getFormatted("character", "(__UINT64_TYPE__)0"))
>>          self.assertIn('=\n', self.getFormatted("c-string",
>> "(__UINT64_TYPE__)0"))
>> @@ -137,6 +158,11 @@ def test(self):
>>          # There is not int128_t[] style, so this only tests uint128_t[].
>>          self.assertIn("= {0x00000000000000000123456789abcdef}\n",
>> self.getFormatted("uint128_t[]", "__uint128_t i = 0x123456789ABCDEF; i"))
>>
>> +        # Different fixed-width float type arrays.
>> +        self.assertIn("{2 2}\n", self.getFormatted("float16[]",
>> "0x40004000"))
>> +        self.assertIn("{2 2}\n", self.getFormatted("float32[]",
>> "0x4000000040000000ll"))
>> +        self.assertIn("{2 0}\n", self.getFormatted("float64[]",
>> "__uint128_t i = 0x4000000000000000ll; i"))
>> +
>>          # Invalid format string
>>          self.expect("expr --format invalid_format_string -- 1",
>> error=True,
>>                      substrs=["error: Invalid format character or name
>> 'invalid_format_string'. Valid values are:"])
>> @@ -144,10 +170,12 @@ def test(self):
>>      # Extends to host target pointer width.
>>      @skipIf(archs=no_match(['x86_64']))
>>      @no_debug_info_test
>> -    def test_instruction(self):
>> +    def test_pointer(self):
>>          # pointer
>>          self.assertIn("= 0x000000000012d687\n",
>> self.getFormatted("pointer", "1234567"))
>>          self.assertIn("= 0x0000000000000000\n",
>> self.getFormatted("pointer", "0"))
>> +        # FIXME: Just ignores the input value as it's not pointer sized.
>> +        self.assertIn("= 0x0000000000000000\n",
>> self.getFormatted("pointer", "'a'"))
>>
>>      # Depends on the host target for decoding.
>>      @skipIf(archs=no_match(['x86_64']))
>>
>>
>>
>> _______________________________________________
>> lldb-commits mailing list
>> lldb-commits at lists.llvm.org
>> https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20200621/ecb6908f/attachment-0001.html>


More information about the lldb-commits mailing list