[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-31 Thread Kendal Harland via lldb-commits


@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

I was able to figure this out. My CMakeCache had `-D LLVM_ENABLE_DIA_SDK="OFF"` 
which I must have set in a previous build. I don't recall why I set this, must 
have been trying to repro someone else's build and forgot. This indeed passes 
for me now. Thanks so much for your patience and helping me debug!

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-31 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-31 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-31 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-31 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-31 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-31 Thread Kendal Harland via lldb-commits


@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

My output for `image dump symtab a.out` is empty. However, if I edit 
https://github.com/llvm/llvm-project/blob/b66aa3bfff442a5eb67f1bfcfaa148e42e49b787/lldb/test/API/functionalities/multiple-slides/Makefile#L11
 to use CFLAGS instead of CFLAGS_NO_DEBUG lldb I can see symtab output similar 
to yours above. Do you have happen to be working with a patched or older 
version of that file, or have settings in your environment that force `-gdwarf` 
to be passed to clang? I ask because although I am now able to see debug info, 
I still am wondering if there's something in my local environment that is 
causing different behavior. Additionally, LLDB produces no output `image lookup 
-s first`, which still breaks the test locally but it can resolve "first" if I 
instead run `ta v first`. Something is preventing it from looking up the 
symbols for `first` and `second` even though they are clearly present as globals

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-30 Thread Kendal Harland via lldb-commits


@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

For comparison, my objdump output shows no symbol table:

```
PS C:\workspace\llvm-project> C:\workspace\llvm-project\build\bin\llvm-objdump 
-t 
C:\workspace\llvm-project\build\lldb-test-build.noindex\functionalities\multiple-slides\TestMultipleSlides.test_mulitple_slides\a.out

C:\workspace\llvm-project\build\lldb-test-build.noindex\functionalities\multiple-slides\TestMultipleSlides.test_mulitple_slides\a.out:
  file format coff-x86-64

SYMBOL TABLE:
```

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-30 Thread Kendal Harland via lldb-commits


@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

I see. Our command lines look identical. Can you also please share the linker 
command that your clang invocation is generating? I am also curious to know how 
you built lld. Perhaps I'm missing an earlier step.

My clang output with `-v` specified is:

```
"C:\workspace\llvm-project\build\bin\clang.exe" -O0 -m64-c 
C:\workspace\llvm-project\lldb\test\API\functionalities\multiple-slides/main.c 
-o main.o
"C:\workspace\llvm-project\build\bin\clang.exe" main.o -gdwarf -O0 -m64 
-IC:\workspace\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../../include
 -IC:/workspace/llvm-project/build/tools/lldb/include 
-IC:\workspace\llvm-project\lldb\test\API\functionalities\multiple-slides 
-IC:\workspace\llvm-project\lldb\packages\Python\lldbsuite\test\make -include 
C:\workspace\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h
 -fno-limit-debug-info   -v  -fuse-ld=lld --driver-mode=g++ -o "a.out"
clang version 20.0.0git (https://github.com/kendalharland/llvm-project 
bf6f1f2f5f23857eb18e08fbef29c5ca2e553bea)
Target: x86_64-unknown-windows-msvc
Thread model: posix
InstalledDir: C:\workspace\llvm-project\build\bin
 "C:\\workspace\\llvm-project\\build\\bin\\lld-link" -out:a.out 
-defaultlib:libcmt -defaultlib:oldnames -nologo -debug main.o
```

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-29 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-29 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-29 Thread Kendal Harland via lldb-commits


@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

Ah, sorry I spoke too soon. On windows I am seeing this fail. The test is built 
without debug information because this is in it's makefile:

```
C_SOURCES := main.c
MAKE_DSYM := NO

include Makefile.rules

main.o: main.c
$(CC) $(CFLAGS_NO_DEBUG) -c $< -o $@
```

I am curious to know how this is passing for you? Without specifying `-g` or 
`-gdwarf` to Clang, lldb cannot resolve the name `first` and fails for me 
locally. But adding either of those flags fixes the problem.

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-29 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-29 Thread Kendal Harland via lldb-commits


@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

Looks like after my CMake chages,this one is passing now.  I'll remove it from 
the PR

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -52,6 +52,7 @@ def test_negative_indexing(self):
 self.build()
 self.validate_negative_indexing()
  
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

Seems like my Clang invocation is generating different debug information than 
expected:

```
PS C:\workspace\llvm-project> llvm-pdbutil.exe pretty -all 
C:\workspace\llvm-project\build\lldb-test-build.noindex\python_api\thread\TestThreadAPI.test_StepInstruction_dwarf\a.pdb
 | Select-String -Pattern call_me

  func [0x1000+ 0 - 0x1025-37 | sizeof= 37] (FPO) void __cdecl 
call_me(bool should_spin)
  func [0x1000+ 0 - 0x1025-37 | sizeof= 37] (FPO) void __cdecl 
call_me(bool should_spin)
  public [0x1000] ?call_me@@YAX_N@Z
```

Is the issue here that debug symbols have the additional `should_spin` 
parameter name, thus LLDB is not able to look them up since it is search for 
`void call_me(bool)`?

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -52,6 +52,7 @@ def test_negative_indexing(self):
 self.build()
 self.validate_negative_indexing()
  
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

If I change this line:

```
self.runCmd("expr -i 0 -- call_me(true)", check=False)
```
to this:

```
self.runCmd("expr -i 0 -- call_me(true)", check=True)
```

I see this error:

```
==
FAIL: test_StepInstruction_dwarf 
(TestThreadAPI.ThreadAPITestCase.test_StepInstruction_dwarf)
   Test that StepInstruction preserves the plan stack.
--
Traceback (most recent call last):
  File 
"C:\workspace\llvm-project\lldb\packages\Python\lldbsuite\test\lldbtest.py", 
line 1761, in test_method
return attrvalue(self)
   ^^^
  File 
"C:\workspace\llvm-project\lldb\test\API\python_api\thread\TestThreadAPI.py", 
line 16, in test_StepInstruction
self.step_instruction_in_called_function()
  File 
"C:\workspace\llvm-project\lldb\test\API\python_api\thread\TestThreadAPI.py", 
line 291, in step_instruction_in_called_function
self.runCmd("expr -i 0 -- call_me(true)", check=True)
  File 
"C:\workspace\llvm-project\lldb\packages\Python\lldbsuite\test\lldbtest.py", 
line 1006, in runCmd
self.assertTrue(self.res.Succeeded(), msg if (msg) else CMD_MSG(cmd))
AssertionError: False is not true : Command 'expr -i 0 -- call_me(true)
Error output:
error: Couldn't look up symbols:
  void call_me(bool)
Hint: The expression tried to call a function that is not present in the 
target, perhaps because it was optimized out by the compiler.
' did not return successfully
Config=x86_64-C:\workspace\llvm-project\build\bin\clang.exe
--

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -52,6 +52,7 @@ def test_negative_indexing(self):
 self.build()
 self.validate_negative_indexing()
  
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

Here's the full output with 3e06392 cherry-picked. https://pastebin.com/LQ9QReBr

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}

kendalharland wrote:

I've removed CMAKE_CXX_STANDARD=14 above as it is leftover from debugging and 
not correct or necessary.

https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell/Driver tests (PR #100473)

2024-07-26 Thread Kendal Harland via lldb-commits

kendalharland wrote:

> > ```
> > S:\SourceCache\llvm-project\lldb\test\Shell\Driver\TestConvenienceVariables.test:6:8:
> >  error: CHECK: expected string not found in input
> > CHECK: stop reason = breakpoint 1.1
> >^
> > :1:1: note: scanning from here
> > (lldb) command source -s 0 
> > 'S:/b/1/tools/lldb\test\Shell\lit-lldb-init-quiet'
> > ^
> > :13:14: note: possible intended match here
> > * thread #1, stop reason = breakpoint 1.2
> >  ^
> > ```
> > 
> > 
> > 
> >   
> > 
> > 
> >   
> > 
> > 
> > 
> >   
> > I think it's just that it expected 1.1 and got 1.2. I don't know what the 
> > bit after the point means, is it the location? So this did `breakpoint set 
> > -f hello.cpp -p Hello` and somehow `1 location added to breakpoint 1` but 
> > yet it hit a second location?
> > Which doesn't make sense so maybe the `.2` means something else.
> 
> That's exactly what it means. The breakpoint gets one location when its set 
> (the process is not running yet):
> 
> > ```
> >   9: Breakpoint 1: where = target.out`main + 21 at hello.cpp:4, address 
> > = 0x000140001015
> > ```
> 
> and then another when when it runs:
> 
> > ```
> >   11: 1 location added to breakpoint 1
> > ```
> 
> Although this test doesn't really care about the number of breakpoint 
> locations (so we could just delete the `.1` part), I am wondering if this 
> isn't a symptom of a larger problem. Can you try running these commands 
> manually and print more information about the state of the process (for 
> starters, the output of `image list` and `breakpoint list -v` both before and 
> after `run` command).
> 
> Also, the duplicate location reminds me of some similar situations where we 
> (used to?) fail to correctly unique modules in presence of symlinks and 
> stuff. What can you tell us about the path 
> (`S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp\target.out`)
>  where this binary is running from? Does it contain any symlinks (junctions), 
> funky drive mappins or anything else that would make the file appear to have 
> multiple paths?

After https://github.com/llvm/llvm-project/pull/100477 I learned that my CMake 
configuration is largely to blame for most of the failures I was observing. 
TestConvenienceVariables.test is now passing for me and I am investigating why 
TestSingleQuote.test is still failing.  I will fold this change into 
https://github.com/llvm/llvm-project/pull/100476 and work with @dzhidzhoev to 
figure out why my build results do match those in his Windows Native CI and 
those in lldb-aarch-windows first.

https://github.com/llvm/llvm-project/pull/100473
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell/Driver tests (PR #100473)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland closed 
https://github.com/llvm/llvm-project/pull/100473
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}

kendalharland wrote:

For reference, my current setup steps are the following commands run in a 
non-admin cmd.exe

```
C:\Program Files\Microsoft Visual 
Studio\2022\Community\Common7\Tools\VsDevCmd.bat -host_arch=amd64 -arch=amd64
C:\Program Files\Microsoft Visual 
Studio\2022\Community\Common7\Tools\VsDevCmd.bat -test

set LLDB_USE_LLDB_SERVER=1
set MSVC_INSTALL_DIR=C:\Program Files\Microsoft Visual Studio\2022\Community
set "PATH=%MSVC_INSTALL_DIR%\DIA SDK\bin\amd64;%PATH%"
set "PATH=%MSVC_INSTALL_DIR%\VC\Tools\Llvm\x64\bin;%PATH%"

cmake -G Ninja ^
  -S llvm ^
  -B build ^
  -D Python3_EXECUTABLE="C:\Program Files\Python312\python.exe" ^
  -D CMAKE_C_COMPILER="C:\Program Files\Microsoft Visual 
Studio\2022\Community\VC\Tools\Llvm\x64\bin\clang-cl.exe" ^
  -D CMAKE_CXX_COMPILER="C:\Program Files\Microsoft Visual 
Studio\2022\Community\VC\Tools\Llvm\x64\bin\clang-cl.exe" ^
  -D CMAKE_C_COMPILER_LAUNCHER=ccache ^
  -D CMAKE_CXX_COMPILER_LAUNCHER=ccache ^
  -D CMAKE_BUILD_TYPE="Release" ^
  -D CMAKE_LINKER="C:\Program Files\Microsoft Visual 
Studio\2022\Community\VC\Tools\Llvm\x64\bin\lld-link.exe" ^
  -D LLVM_ENABLE_PROJECTS="clang;lldb;lld" ^
  -D LLVM_HOST_TRIPLE="x86_64-unknown-windows-msvc" ^
  -D LLVM_ENABLE_LLD="YES" ^
  -D LLVM_ENABLE_LIBEDIT="NO" ^
  -D LLVM_ENABLE_DIA_SDK="OFF" ^
  -D LLDB_ENABLE_PYTHON=1 ^
  -D LLDB_PYTHON_EXE_RELATIVE_PATH="python.exe" ^
  -D LLDB_TEST_USER_ARGS=--skip-category=watchpoint ^
  -D LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS=1 ^
  -D CMAKE_CXX_STANDARD=14

ninja -C build check-lldb
```

https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}

kendalharland wrote:

@DavidSpickett would you be able to share the CMake configuration your native 
Windows native CI is using? I'm having trouble spotting what's wrong with my 
local build. 

https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

Ty! I'll try that out.

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-26 Thread Kendal Harland via lldb-commits


@@ -52,6 +52,7 @@ def test_negative_indexing(self):
 self.build()
 self.validate_negative_indexing()
  
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

Thanks! I'll try that and update here.

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Split assertion in TestBreakpointConditions (PR #100487)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100487
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Split assertion TestBreakpointConditions (PR #100487)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100487
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-26 Thread Kendal Harland via lldb-commits

kendalharland wrote:

> The only way that this could succeed on the breakpoint but fail on the 
> location is that there is more than one location and the one the test is 
> setting it on (the zeroth) is not the one that's hit. Since this test is 
> "does a breakpoint condition on a location work" not "does this breakpoint 
> always only produce one location" it might be better to just put the 
> breakpoint on all the locations, and see if the one that is hit does work.

Thanks for the context! In this PR I learned that the set of compilers I was 
using to build LLVM are different from the existing lldb-aarch64-windows 
builder. After fixing that, I am no longer seeing this test fail. I've removed 
the top commit and left only the one that splits the test assertion to produce 
a more clear failure message.

https://github.com/llvm/llvm-project/pull/100487
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100487
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100487

>From 29d5a57eb8cc344e1a93787fe9cb333761923927 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:24:24 -0700
Subject: [PATCH] [lldb][test][x86_64][win] Split TestBreakpointConditions
 assertion to clarify failure message

When this test fails we see an assertion error `False != True`
This clarifies the error by showing, for example, if `1 != 3` when
comparing `var` to the string "3".
---
 .../breakpoint_conditions/TestBreakpointConditions.py | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 50ba0317fd094..4e7a8ccb9fbeb 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -176,11 +176,15 @@ def breakpoint_conditions_python(self):
 thread.IsValid(),
 "There should be a thread stopped due to breakpoint condition",
 )
+
 frame0 = thread.GetFrameAtIndex(0)
 var = frame0.FindValue("val", lldb.eValueTypeVariableArgument)
-self.assertTrue(
-frame0.GetLineEntry().GetLine() == self.line1 and var.GetValue() 
== "3"
+self.assertEqual(
+frame0.GetLineEntry().GetLine(),
+self.line1,
+"The debugger stopped on the correct line",
 )
+self.assertEqual(var.GetValue(), "3")
 
 # The hit count for the breakpoint should be 1.
 self.assertEqual(breakpoint.GetHitCount(), 1)

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Remove python helper getCompilerBinary() (PR #100660)

2024-07-26 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Thanks for the reviews! I'll need help merging from someone with write access

https://github.com/llvm/llvm-project/pull/100660
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Remove python helper getCompilerBinary() (PR #100660)

2024-07-26 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100660

>From 6769752234f67ac693ea7345393fd9d72fa4a567 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Thu, 25 Jul 2024 14:59:25 -0700
Subject: [PATCH] [lldb][test] Remove getCompilerBinary() helper

---
 .../packages/Python/lldbsuite/test/lldbplatformutil.py | 10 +++---
 lldb/packages/Python/lldbsuite/test/lldbtest.py|  4 
 2 files changed, 3 insertions(+), 11 deletions(-)

diff --git a/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py 
b/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
index e3c6fd1a99568..602e15d207e94 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
@@ -266,17 +266,13 @@ def getCompiler():
 return module.getCompiler()
 
 
-def getCompilerBinary():
-"""Returns the compiler binary the test suite is running with."""
-return getCompiler().split()[0]
-
-
 def getCompilerVersion():
 """Returns a string that represents the compiler version.
 Supports: llvm, clang.
 """
-compiler = getCompilerBinary()
-version_output = subprocess.check_output([compiler, "--version"], 
errors="replace")
+version_output = subprocess.check_output(
+[getCompiler(), "--version"], errors="replace"
+)
 m = re.search("version ([0-9.]+)", version_output)
 if m:
 return m.group(1)
diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py 
b/lldb/packages/Python/lldbsuite/test/lldbtest.py
index 5e50b0c145885..f97c41d867e78 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -1379,10 +1379,6 @@ def getCompiler(self):
 """Returns the compiler in effect the test suite is running with."""
 return lldbplatformutil.getCompiler()
 
-def getCompilerBinary(self):
-"""Returns the compiler binary the test suite is running with."""
-return lldbplatformutil.getCompilerBinary()
-
 def getCompilerVersion(self):
 """Returns a string that represents the compiler version.
 Supports: llvm, clang.

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Remove python helper getCompilerBinary() (PR #100660)

2024-07-26 Thread Kendal Harland via lldb-commits

kendalharland wrote:

> Seems fine to me, but there is a use of it in 
> `lldb/packages/Python/lldbsuite/test/lldbtest.py` that should also be removed.

Not sure how I missed that one. Ty!

https://github.com/llvm/llvm-project/pull/100660
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Fix XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] FIx XFAIL and XPASS on LLDB API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Remove XFAIL from XPASS'ing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Remove XFAIL from XPASS'ing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits


@@ -52,6 +52,7 @@ def test_negative_indexing(self):
 self.build()
 self.validate_negative_indexing()
  
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])

kendalharland wrote:

I am still seeing this test fail with:
```
==
FAIL: test_StepInstruction_dwarf 
(TestThreadAPI.ThreadAPITestCase.test_StepInstruction_dwarf)
Test that StepInstruction preserves the plan stack.
--
Traceback (most recent call last):
  File 
"C:\workspace\llvm-project\lldb\packages\Python\lldbsuite\test\lldbtest.py", 
line 1756, in test_method
return attrvalue(self)
   ^^^
  File 
"C:\workspace\llvm-project\lldb\test\API\python_api\thread\TestThreadAPI.py", 
line 58, in test_StepInstruction
self.step_instruction_in_called_function()
  File 
"C:\workspace\llvm-project\lldb\test\API\python_api\thread\TestThreadAPI.py", 
line 334, in step_instruction_in_called_function
self.assertRegex(
AssertionError: Regex didn't match: '.*call_me\\(bool\\)$' not found in 'main' 
: Stopped in call_me(bool)
Config=x86_64-C:\workspace\llvm-project\build\bin\clang.exe
--

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] Remove XFAIL from XPASS'ing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Thanks for the assistance @labath and @DavidSpickett. After fixing my cmake 
configuration I'm actually seeing a few tests unexpectedly pass with different 
options:

CMAKE_C_COMPILER clang-cl.exe
CMAKE_CXX_COMPILER   clang-cl.exe
CMAKE_BUILD_TYPE Release
CMAKE_LINKER lld-link.exe
LLVM_HOST_TRIPLE x86_64-unknown-windows-msvc
LLDB_TEST_USER_ARGS  --skip-category=watchpoint
LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS 1

Updated in the latest commit

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100477

>From ac737efe9cb7d9fa690a6dfaa8ba7c6e006913c1 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Thu, 25 Jul 2024 15:52:47 -0700
Subject: [PATCH] [lldb][test][win][x86_64] XFAIL already failing API tests

These test are passing locally on win x86_64 using the following
configuration (some options ellided for brevity)

CMAKE_C_COMPILER clang-cl.exe
CMAKE_CXX_COMPILER   clang-cl.exe
CMAKE_BUILD_TYPE Release
CMAKE_LINKER lld-link.exe
LLVM_HOST_TRIPLE="x86_64-unknown-windows-msvc"
LLDB_TEST_USER_ARGS=--skip-category=watchpoint
LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS=1
---
 .../API/functionalities/multiple-slides/TestMultipleSlides.py   | 1 +
 .../TestClassTemplateNonTypeParameterPack.py| 2 +-
 .../TestClassTemplateTypeParameterPack.py   | 2 +-
 lldb/test/API/python_api/thread/TestThreadAPI.py| 1 +
 4 files changed, 4 insertions(+), 2 deletions(-)

diff --git 
a/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py 
b/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py
index 3d6b27fe68a1b..85fc4493d588b 100644
--- a/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py
+++ b/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py
@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])
 def test_mulitple_slides(self):
 """Test that a binary can be slid multiple times correctly."""
 self.build()
diff --git 
a/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
 
b/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
index 9e484e0132c83..1155f7ea44e7a 100644
--- 
a/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
+++ 
b/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
@@ -6,7 +6,7 @@
 
 class TestCaseClassTemplateNonTypeParameterPack(TestBase):
 @expectedFailureAll(
-oslist=["windows"], archs=["i[3-6]86", "x86_64"]
+oslist=["windows"], archs=["i[3-6]86"]
 )  # Fails to read memory from target.
 @no_debug_info_test
 def test(self):
diff --git 
a/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
 
b/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
index 102c00dc603df..efc609e843802 100644
--- 
a/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
+++ 
b/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
@@ -6,7 +6,7 @@
 
 class TestCaseClassTemplateTypeParameterPack(TestBase):
 @expectedFailureAll(
-oslist=["windows"], archs=["i[3-6]86", "x86_64"]
+oslist=["windows"], archs=["i[3-6]86"]
 )  # Fails to read memory from target.
 @no_debug_info_test
 def test(self):
diff --git a/lldb/test/API/python_api/thread/TestThreadAPI.py 
b/lldb/test/API/python_api/thread/TestThreadAPI.py
index 1898c6a2a9792..eeac804e921f4 100644
--- a/lldb/test/API/python_api/thread/TestThreadAPI.py
+++ b/lldb/test/API/python_api/thread/TestThreadAPI.py
@@ -52,6 +52,7 @@ def test_negative_indexing(self):
 self.build()
 self.validate_negative_indexing()
  
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])
 def test_StepInstruction(self):
 """Test that StepInstruction preserves the plan stack."""
 self.build()

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100477

>From 5a32aac6f71c24bc111a1139b69a7568203dae69 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Thu, 25 Jul 2024 15:26:38 -0700
Subject: [PATCH] [lldb][test][win][x86_64] Remove XFAIL from passing API tests

---
 .../API/functionalities/multiple-slides/TestMultipleSlides.py   | 1 +
 .../API/functionalities/step-avoids-no-debug/TestStepNoDebug.py | 1 -
 .../TestClassTemplateNonTypeParameterPack.py| 2 +-
 .../TestClassTemplateTypeParameterPack.py   | 2 +-
 lldb/test/API/python_api/thread/TestThreadAPI.py| 1 +
 5 files changed, 4 insertions(+), 3 deletions(-)

diff --git 
a/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py 
b/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py
index 3d6b27fe68a1b..85fc4493d588b 100644
--- a/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py
+++ b/lldb/test/API/functionalities/multiple-slides/TestMultipleSlides.py
@@ -12,6 +12,7 @@
 class MultipleSlidesTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])
 def test_mulitple_slides(self):
 """Test that a binary can be slid multiple times correctly."""
 self.build()
diff --git 
a/lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py 
b/lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
index a5ec87274a5ba..e80318b45dea4 100644
--- a/lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
+++ b/lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
@@ -2,7 +2,6 @@
 Test thread step-in, step-over and step-out work with the "Avoid no debug" 
option.
 """
 
-
 import lldb
 from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
diff --git 
a/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
 
b/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
index 9e484e0132c83..1155f7ea44e7a 100644
--- 
a/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
+++ 
b/lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
@@ -6,7 +6,7 @@
 
 class TestCaseClassTemplateNonTypeParameterPack(TestBase):
 @expectedFailureAll(
-oslist=["windows"], archs=["i[3-6]86", "x86_64"]
+oslist=["windows"], archs=["i[3-6]86"]
 )  # Fails to read memory from target.
 @no_debug_info_test
 def test(self):
diff --git 
a/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
 
b/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
index 102c00dc603df..efc609e843802 100644
--- 
a/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
+++ 
b/lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py
@@ -6,7 +6,7 @@
 
 class TestCaseClassTemplateTypeParameterPack(TestBase):
 @expectedFailureAll(
-oslist=["windows"], archs=["i[3-6]86", "x86_64"]
+oslist=["windows"], archs=["i[3-6]86"]
 )  # Fails to read memory from target.
 @no_debug_info_test
 def test(self):
diff --git a/lldb/test/API/python_api/thread/TestThreadAPI.py 
b/lldb/test/API/python_api/thread/TestThreadAPI.py
index 1898c6a2a9792..eeac804e921f4 100644
--- a/lldb/test/API/python_api/thread/TestThreadAPI.py
+++ b/lldb/test/API/python_api/thread/TestThreadAPI.py
@@ -52,6 +52,7 @@ def test_negative_indexing(self):
 self.build()
 self.validate_negative_indexing()
  
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])
 def test_StepInstruction(self):
 """Test that StepInstruction preserves the plan stack."""
 self.build()

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Remove python helper getCompilerBinary() (PR #100660)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100660
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits


@@ -18,7 +18,7 @@ def test_set_use_source_cache_false(self):
 self.set_use_source_cache_and_test(False)
 
 @skipIf(hostoslist=no_match(["windows"]))
-@skipIf(oslist=["windows"])  # Fails on windows 11
+@expectedFailureAll(oslist=["windows"])

kendalharland wrote:

I made the following changes and I'm seeing far fewer failing tests now:
- `LLDB_TEST_COMPILER` - leave this unset
- `CMAKE_C_COMPILER="C:\Program Files\Microsoft Visual 
Studio\2022\Community\VC\Tools\Llvm\x64\bin\clang-cl.exe"`
- `CMAKE_CXX_COMPILER="C:\Program Files\Microsoft Visual 
Studio\2022\Community\VC\Tools\Llvm\x64\bin\clang-cl.exe"`

In short the compilers I was using caused many of the tests to fail.  I am only 
seeing around 17 failures now in a clean checkout and will fix this one up. 
Thanks for the course correction!

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Remove python helper getCompilerBinary() (PR #100660)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland created 
https://github.com/llvm/llvm-project/pull/100660

This causes a number of tests be `UNRESOLVED` on Windows if `getCompiler()` has 
a space in the name, because `getCompilerBinary()` unconditionally splits on 
whitespace and returns the first result, which might just be`"C:\Program"` if 
using a compiler such as `clang-cl` `cl` from Visual studio's installation 
directory.

>From c779fac5e7f5fbabaa79c98b31e20e7d567d1cd7 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Thu, 25 Jul 2024 14:59:25 -0700
Subject: [PATCH] [lldb][test] Remove getCompilerBinary() helper

---
 lldb/packages/Python/lldbsuite/test/lldbplatformutil.py | 7 +--
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py 
b/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
index e3c6fd1a99568..0bbe1db424630 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
@@ -266,16 +266,11 @@ def getCompiler():
 return module.getCompiler()
 
 
-def getCompilerBinary():
-"""Returns the compiler binary the test suite is running with."""
-return getCompiler().split()[0]
-
-
 def getCompilerVersion():
 """Returns a string that represents the compiler version.
 Supports: llvm, clang.
 """
-compiler = getCompilerBinary()
+compiler = getCompiler()
 version_output = subprocess.check_output([compiler, "--version"], 
errors="replace")
 m = re.search("version ([0-9.]+)", version_output)
 if m:

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits


@@ -18,7 +18,7 @@ def test_set_use_source_cache_false(self):
 self.set_use_source_cache_and_test(False)
 
 @skipIf(hostoslist=no_match(["windows"]))
-@skipIf(oslist=["windows"])  # Fails on windows 11
+@expectedFailureAll(oslist=["windows"])

kendalharland wrote:

To reproduce my local build if you have access to a machine and a clean 
checkout llvm/llvm-project: Run this in a developer command prompt in the root 
of the checkout:

```
set MSVC_INSTALL_DIR=C:\Program Files\Microsoft Visual Studio\2022\Community
set "PATH=%MSVC_INSTALL_DIR%\DIA SDK\bin\amd64;%PATH%"

cmake -G Ninja ^
  -S llvm ^
  -B build ^
  -D Python3_EXECUTABLE="C:\Program Files\Python312\python.exe" ^
  -D CMAKE_C_COMPILER="cl" ^
  -D CMAKE_CXX_COMPILER="cl" ^
  -D CMAKE_C_COMPILER_LAUNCHER=ccache ^
  -D CMAKE_CXX_COMPILER_LAUNCHER=ccache ^
  -D CMAKE_BUILD_TYPE="Release" ^
  -D CMAKE_LINKER="C:\Program Files\Microsoft Visual 
Studio\2022\Community\VC\Tools\Llvm\x64\bin\lld-link.exe" ^
  -D LLVM_ENABLE_PROJECTS="clang;lldb;lld" ^
  -D LLVM_HOST_TRIPLE="x86_64-unknown-windows-msvc" ^
  -D LLVM_ENABLE_LLD="YES" ^
  -D LLVM_ENABLE_LIBEDIT="NO" ^
  -D LLVM_ENABLE_DIA_SDK="OFF" ^
  -D LLDB_ENABLE_PYTHON=1 ^
  -D LLDB_PYTHON_EXE_RELATIVE_PATH="python.exe" ^
  -D LLDB_TEST_USER_ARGS=--skip-category=watchpoint ^
  -D LLDB_TEST_COMPILER="clang-cl" ^
  -D LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS=1 ^
  -D LLDB_USE_LLDB_SERVER=1 ^
  -D CMAKE_CXX_STANDARD=14
```

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-25 Thread Kendal Harland via lldb-commits


@@ -18,7 +18,7 @@ def test_set_use_source_cache_false(self):
 self.set_use_source_cache_and_test(False)
 
 @skipIf(hostoslist=no_match(["windows"]))
-@skipIf(oslist=["windows"])  # Fails on windows 11
+@expectedFailureAll(oslist=["windows"])

kendalharland wrote:

Re: @DavidSpickett comment below. I am using the lldb-aarch64-windows builder 
as an example:

- Run in cmd.exe
- LLDB_TEST_COMPILER is the newly built clang-cl (top-level build uses host's 
MSVC)
- `--skip-test-category=watchpoint`
- LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS=ON
- Python 3.9

My host system:
- Win 11 Home Version 10.0.22631 Build 22631
- Dell XPS 8960

I haven't explicitly disabled hardware code breakpoints. What is the default 
and how do I do that?

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100487

>From 29d5a57eb8cc344e1a93787fe9cb333761923927 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:24:24 -0700
Subject: [PATCH 1/2] [lldb][test][x86_64][win] Split TestBreakpointConditions
 assertion to clarify failure message

When this test fails we see an assertion error `False != True`
This clarifies the error by showing, for example, if `1 != 3` when
comparing `var` to the string "3".
---
 .../breakpoint_conditions/TestBreakpointConditions.py | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 50ba0317fd094..4e7a8ccb9fbeb 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -176,11 +176,15 @@ def breakpoint_conditions_python(self):
 thread.IsValid(),
 "There should be a thread stopped due to breakpoint condition",
 )
+
 frame0 = thread.GetFrameAtIndex(0)
 var = frame0.FindValue("val", lldb.eValueTypeVariableArgument)
-self.assertTrue(
-frame0.GetLineEntry().GetLine() == self.line1 and var.GetValue() 
== "3"
+self.assertEqual(
+frame0.GetLineEntry().GetLine(),
+self.line1,
+"The debugger stopped on the correct line",
 )
+self.assertEqual(var.GetValue(), "3")
 
 # The hit count for the breakpoint should be 1.
 self.assertEqual(breakpoint.GetHitCount(), 1)

>From beef815e7d6a09c358b1a9cbed6242ddf160a599 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:47:26 -0700
Subject: [PATCH 2/2] [lldb][test][x86_64][win] TestBreakpointConditions set
 condition on breakpoint instead of location

On windows x86_64 this test stops on the set breakpoint
when val == 1 when the breakpoint condition is set on the
SBBreakpointLocation rather than the SBBreakpoint directly.
Setting the condition on the breakpoint itself, seems to fix the issue.

This PR also splits the test assertion that verifies we're
on the correct line and have the correct value of val to make the
error message more clear. At present it just shows Assertion error: True != 
False
---
 .../TestBreakpointConditions.py   | 22 ---
 1 file changed, 19 insertions(+), 3 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 4e7a8ccb9fbeb..96d546c01236d 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -21,6 +21,17 @@ def test_breakpoint_condition_inline_and_run_command(self):
 
 @add_test_categories(["pyapi"])
 def test_breakpoint_condition_and_python_api(self):
+"""Use Python APIs to set breakpoint conditions."""
+self.build()
+self.breakpoint_conditions_python(set_breakpoint_on_location=False)
+
+@add_test_categories(["pyapi"])
+@expectedFailureAll(
+oslist=["windows"],
+archs=["x86_64"],
+bugnumber="https://github.com/llvm/llvm-project/issues/100486;,
+)
+def test_breakpoint_condition_on_location_and_python_api(self):
 """Use Python APIs to set breakpoint conditions."""
 self.build()
 self.breakpoint_conditions_python()
@@ -124,7 +135,7 @@ def breakpoint_conditions(self, inline=False):
 
 self.runCmd("process kill")
 
-def breakpoint_conditions_python(self):
+def breakpoint_conditions_python(self, set_breakpoint_on_location=True):
 """Use Python APIs to set breakpoint conditions."""
 target = self.createTestTarget()
 
@@ -160,8 +171,13 @@ def breakpoint_conditions_python(self):
 location = breakpoint.GetLocationAtIndex(0)
 self.assertTrue(location and location.IsEnabled(), 
VALID_BREAKPOINT_LOCATION)
 
-# Set the condition on the breakpoint location.
-location.SetCondition("val == 3")
+# Set the condition.
+if set_breakpoint_on_location:
+location.SetCondition("val == 3")
+else:
+breakpoint.SetCondition("val == 3")
+
+self.assertTrue(location and location.IsEnabled(), 
VALID_BREAKPOINT_LOCATION)
 self.expect(location.GetCondition(), exe=False, startstr="val == 3")
 
 # Now launch the process, and do not stop at entry point.

___
lldb-commits mailing list
lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100487

>From 29d5a57eb8cc344e1a93787fe9cb333761923927 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:24:24 -0700
Subject: [PATCH 1/2] [lldb][test][x86_64][win] Split TestBreakpointConditions
 assertion to clarify failure message

When this test fails we see an assertion error `False != True`
This clarifies the error by showing, for example, if `1 != 3` when
comparing `var` to the string "3".
---
 .../breakpoint_conditions/TestBreakpointConditions.py | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 50ba0317fd094..4e7a8ccb9fbeb 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -176,11 +176,15 @@ def breakpoint_conditions_python(self):
 thread.IsValid(),
 "There should be a thread stopped due to breakpoint condition",
 )
+
 frame0 = thread.GetFrameAtIndex(0)
 var = frame0.FindValue("val", lldb.eValueTypeVariableArgument)
-self.assertTrue(
-frame0.GetLineEntry().GetLine() == self.line1 and var.GetValue() 
== "3"
+self.assertEqual(
+frame0.GetLineEntry().GetLine(),
+self.line1,
+"The debugger stopped on the correct line",
 )
+self.assertEqual(var.GetValue(), "3")
 
 # The hit count for the breakpoint should be 1.
 self.assertEqual(breakpoint.GetHitCount(), 1)

>From 25240b86822a3582d843a482fef16322f2fd7528 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:47:26 -0700
Subject: [PATCH 2/2] [lldb][test][x86_64][win] TestBreakpointConditions set
 condition on breakpoint instead of location

On windows x86_64 this test stops on the set breakpoint
when val == 1 when the breakpoint condition is set on the
SBBreakpointLocation rather than the SBBreakpoint directly.
Setting the condition on the breakpoint itself, seems to fix the issue.

This PR also splits the test assertion that verifies we're
on the correct line and have the correct value of val to make the
error message more clear. At present it just shows Assertion error: True != 
False
---
 .../TestBreakpointConditions.py   | 23 +++
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 4e7a8ccb9fbeb..d202c82ea12a1 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -21,6 +21,17 @@ def test_breakpoint_condition_inline_and_run_command(self):
 
 @add_test_categories(["pyapi"])
 def test_breakpoint_condition_and_python_api(self):
+"""Use Python APIs to set breakpoint conditions."""
+self.build()
+self.breakpoint_conditions_python(set_breakpoint_on_location=False)
+
+@add_test_categories(["pyapi"])
+@expectedFailureAll(
+oslist=["windows"],
+archs=["x86_64"],
+bugnumber="https://github.com/llvm/llvm-project/issues/100486;,
+)
+def test_breakpoint_condition_on_location_and_python_api(self):
 """Use Python APIs to set breakpoint conditions."""
 self.build()
 self.breakpoint_conditions_python()
@@ -124,7 +135,7 @@ def breakpoint_conditions(self, inline=False):
 
 self.runCmd("process kill")
 
-def breakpoint_conditions_python(self):
+def breakpoint_conditions_python(self, set_breakpoint_on_location=True):
 """Use Python APIs to set breakpoint conditions."""
 target = self.createTestTarget()
 
@@ -158,10 +169,14 @@ def breakpoint_conditions_python(self):
 # Get the breakpoint location from breakpoint after we verified that,
 # indeed, it has one location.
 location = breakpoint.GetLocationAtIndex(0)
-self.assertTrue(location and location.IsEnabled(), 
VALID_BREAKPOINT_LOCATION)
 
-# Set the condition on the breakpoint location.
-location.SetCondition("val == 3")
+# Set the condition.
+if set_breakpoint_on_location:
+location.SetCondition("val == 3")
+else:
+breakpoint.SetCondition("val == 3")
+
+self.assertTrue(location and location.IsEnabled(), 
VALID_BREAKPOINT_LOCATION)
 self.expect(location.GetCondition(), exe=False, startstr="val == 3")
 
 # Now launch the process, and do not stop at entry point.


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-24 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Uploaded a new patch set after realizing my original commit removed tests for 
the codepath where `SBBReakpointLocation.SetCondition` is used, which still 
needs to be tested on aarch64. The latest commit tests both 
`SBBreakpointLocation.SetCondition` and `SBBreakpoint.SetCondition`

https://github.com/llvm/llvm-project/pull/100487
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100487

>From 29d5a57eb8cc344e1a93787fe9cb333761923927 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:24:24 -0700
Subject: [PATCH 1/2] [lldb][test][x86_64][win] Split TestBreakpointConditions
 assertion to clarify failure message

When this test fails we see an assertion error `False != True`
This clarifies the error by showing, for example, if `1 != 3` when
comparing `var` to the string "3".
---
 .../breakpoint_conditions/TestBreakpointConditions.py | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 50ba0317fd094..4e7a8ccb9fbeb 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -176,11 +176,15 @@ def breakpoint_conditions_python(self):
 thread.IsValid(),
 "There should be a thread stopped due to breakpoint condition",
 )
+
 frame0 = thread.GetFrameAtIndex(0)
 var = frame0.FindValue("val", lldb.eValueTypeVariableArgument)
-self.assertTrue(
-frame0.GetLineEntry().GetLine() == self.line1 and var.GetValue() 
== "3"
+self.assertEqual(
+frame0.GetLineEntry().GetLine(),
+self.line1,
+"The debugger stopped on the correct line",
 )
+self.assertEqual(var.GetValue(), "3")
 
 # The hit count for the breakpoint should be 1.
 self.assertEqual(breakpoint.GetHitCount(), 1)

>From 4285ea5e40b92d11748272b763a91b2de180bd24 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:47:26 -0700
Subject: [PATCH 2/2] [lldb][test][x86_64][win] TestBreakpointConditions set
 condition on breakpoint instead of location

On windows x86_64 this test stops on the set breakpoint
when val == 1 when the breakpoint condition is set on the
SBBreakpointLocation rather than the SBBreakpoint directly.
Setting the condition on the breakpoint itself, seems to fix the issue.

This PR also splits the test assertion that verifies we're
on the correct line and have the correct value of val to make the
error message more clear. At present it just shows Assertion error: True != 
False
---
 .../TestBreakpointConditions.py   | 23 +++
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 4e7a8ccb9fbeb..d202c82ea12a1 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -21,6 +21,17 @@ def test_breakpoint_condition_inline_and_run_command(self):
 
 @add_test_categories(["pyapi"])
 def test_breakpoint_condition_and_python_api(self):
+"""Use Python APIs to set breakpoint conditions."""
+self.build()
+self.breakpoint_conditions_python(set_breakpoint_on_location=False)
+
+@add_test_categories(["pyapi"])
+@expectedFailureAll(
+oslist=["windows"],
+archs=["x86_64"],
+bugnumber="https://github.com/llvm/llvm-project/issues/100486;,
+)
+def test_breakpoint_condition_on_location_and_python_api(self):
 """Use Python APIs to set breakpoint conditions."""
 self.build()
 self.breakpoint_conditions_python()
@@ -124,7 +135,7 @@ def breakpoint_conditions(self, inline=False):
 
 self.runCmd("process kill")
 
-def breakpoint_conditions_python(self):
+def breakpoint_conditions_python(self, set_breakpoint_on_location=True):
 """Use Python APIs to set breakpoint conditions."""
 target = self.createTestTarget()
 
@@ -158,10 +169,14 @@ def breakpoint_conditions_python(self):
 # Get the breakpoint location from breakpoint after we verified that,
 # indeed, it has one location.
 location = breakpoint.GetLocationAtIndex(0)
-self.assertTrue(location and location.IsEnabled(), 
VALID_BREAKPOINT_LOCATION)
 
-# Set the condition on the breakpoint location.
-location.SetCondition("val == 3")
+# Set the condition.
+if set_breakpoint_on_location:
+location.SetCondition("val == 3")
+else:
+breakpoint.SetCondition("val == 3")
+
+self.assertTrue(location and location.IsEnabled(), 
VALID_BREAKPOINT_LOCATION)
 self.expect(location.GetCondition(), exe=False, startstr="val == 3")
 
 # Now launch the process, and do not stop at entry point.


[Lldb-commits] [lldb] [lldb][test][x86_64][win] Set breakpoint condition on breakpoint instead of location in TestBreakpointConditions (PR #100487)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland created 
https://github.com/llvm/llvm-project/pull/100487

On windows x86_64 this test stops on the set breakpoint when `val == 1` when 
the breakpoint condition is set on the SBBreakpointLocation rather than the 
SBBreakpoint directly.  Setting the condition on the breakpoint itself, seems 
to fix the issue.

This PR also splits the test assertion that verifies we're on the correct line 
and have the correct value of `val` to make the error message more clear. At 
present it just shows `Assertion error: True != False`

https://github.com/llvm/llvm-project/issues/100486

>From 29d5a57eb8cc344e1a93787fe9cb333761923927 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:24:24 -0700
Subject: [PATCH 1/2] [lldb][test][x86_64][win] Split TestBreakpointConditions
 assertion to clarify failure message

When this test fails we see an assertion error `False != True`
This clarifies the error by showing, for example, if `1 != 3` when
comparing `var` to the string "3".
---
 .../breakpoint_conditions/TestBreakpointConditions.py | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 50ba0317fd094..4e7a8ccb9fbeb 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -176,11 +176,15 @@ def breakpoint_conditions_python(self):
 thread.IsValid(),
 "There should be a thread stopped due to breakpoint condition",
 )
+
 frame0 = thread.GetFrameAtIndex(0)
 var = frame0.FindValue("val", lldb.eValueTypeVariableArgument)
-self.assertTrue(
-frame0.GetLineEntry().GetLine() == self.line1 and var.GetValue() 
== "3"
+self.assertEqual(
+frame0.GetLineEntry().GetLine(),
+self.line1,
+"The debugger stopped on the correct line",
 )
+self.assertEqual(var.GetValue(), "3")
 
 # The hit count for the breakpoint should be 1.
 self.assertEqual(breakpoint.GetHitCount(), 1)

>From 11ee9346ee8ef928e5f31982747557604ba8f91b Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 10:47:26 -0700
Subject: [PATCH 2/2] [lldb][test][x86_64][win] TestBreakpointConditions set
 condition on breakpoint instead of location

On windows x86_64 this test seems to stop on the breakpoint when val ==
3 iff the condition is set on the breakpoint rather than the location.
Setting the condition on the breakpoint should work for all platforms,
but the fact that setting the condition on the location doens't work on
Windows x86_64 is considered a bug.
---
 .../breakpoint_conditions/TestBreakpointConditions.py   | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
index 4e7a8ccb9fbeb..625ca916d20f1 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
@@ -155,13 +155,13 @@ def breakpoint_conditions_python(self):
 breakpoint.GetThreadIndex(), 1, "The thread index has been set 
correctly"
 )
 
+# Set the condition on the breakpoint.
+breakpoint.SetCondition("val == 3")
+
 # Get the breakpoint location from breakpoint after we verified that,
 # indeed, it has one location.
 location = breakpoint.GetLocationAtIndex(0)
 self.assertTrue(location and location.IsEnabled(), 
VALID_BREAKPOINT_LOCATION)
-
-# Set the condition on the breakpoint location.
-location.SetCondition("val == 3")
 self.expect(location.GetCondition(), exe=False, startstr="val == 3")
 
 # Now launch the process, and do not stop at entry point.

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell/Driver tests (PR #100473)

2024-07-24 Thread Kendal Harland via lldb-commits

kendalharland wrote:

> How are these tests failing? Neither of them seem to be testing something 
> specific to x86_64 and presumably the test are passing on [the aarch64 
> windows buildbot](https://lab.llvm.org/buildbot/#/builders/141)?

I am currently seeing this output:

```
Testing:  0.. 10
FAIL: lldb-shell :: Driver/TestConvenienceVariables.test (48 of 2873)
 TEST 'lldb-shell :: Driver/TestConvenienceVariables.test' 
FAILED 
Script:
--
: 'RUN: at line 2';   mkdir -p 
S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp
: 'RUN: at line 3';   'C:\Program Files (x86)\Microsoft Visual 
Studio\Shared\Python39_64\python.exe' 
S:\SourceCache\llvm-project\lldb\test\Shell\helper\build.py --compiler=any 
--arch=64 --tools-dir=S:/b/1/./bin --libs-dir=S:/b/1/./lib 
S:\SourceCache\llvm-project\lldb\test\Shell\Driver/Inputs/hello.cpp -o 
S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp/target.out
: 'RUN: at line 4';   s:\b\1\bin\lldb.exe --no-lldbinit -S 
S:/b/1/tools/lldb\test\Shell\lit-lldb-init-quiet 
S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp/target.out
 -s S:\SourceCache\llvm-project\lldb\test\Shell\Driver/Inputs/convenience.in -o 
quit | s:\b\1\bin\filecheck.exe 
S:\SourceCache\llvm-project\lldb\test\Shell\Driver\TestConvenienceVariables.test
--
Exit Code: 1

Command Output (stdout):
--
$ ":" "RUN: at line 2"
note: command had no output on stdout or stderr
$ "mkdir" "-p" 
"S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp"
note: command had no output on stdout or stderr
$ ":" "RUN: at line 3"
note: command had no output on stdout or stderr
$ "C:\Program Files (x86)\Microsoft Visual 
Studio\Shared\Python39_64\python.exe" 
"S:\SourceCache\llvm-project\lldb\test\Shell\helper\build.py" "--compiler=any" 
"--arch=64" "--tools-dir=S:/b/1/./bin" "--libs-dir=S:/b/1/./lib" 
"S:\SourceCache\llvm-project\lldb\test\Shell\Driver/Inputs/hello.cpp" "-o" 
"S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp/target.out"
# command output:
Cleaning hello.ilk
Cleaning target.out-hello.obj
Cleaning target.pdb
Cleaning target.out



compiling hello.cpp -> target.out-hello.obj
  STDOUT:




linking target.out-hello.obj -> target.out
  STDOUT:


$ ":" "RUN: at line 4"
note: command had no output on stdout or stderr
$ "s:\b\1\bin\lldb.exe" "--no-lldbinit" "-S" 
"S:/b/1/tools/lldb\test\Shell\lit-lldb-init-quiet" 
"S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp/target.out"
 "-s" 
"S:\SourceCache\llvm-project\lldb\test\Shell\Driver/Inputs/convenience.in" "-o" 
"quit"
note: command had no output on stdout or stderr
$ "s:\b\1\bin\filecheck.exe" 
"S:\SourceCache\llvm-project\lldb\test\Shell\Driver\TestConvenienceVariables.test"
# command stderr:
S:\SourceCache\llvm-project\lldb\test\Shell\Driver\TestConvenienceVariables.test:6:8:
 error: CHECK: expected string not found in input
CHECK: stop reason = breakpoint 1.1
   ^
:1:1: note: scanning from here
(lldb) command source -s 0 'S:/b/1/tools/lldb\test\Shell\lit-lldb-init-quiet'
^
:13:14: note: possible intended match here
* thread #1, stop reason = breakpoint 1.2
 ^

Input file: 
Check file: 
S:\SourceCache\llvm-project\lldb\test\Shell\Driver\TestConvenienceVariables.test

-dump-input=help explains the following input dump.

Input was:
<<
   1: (lldb) command source -s 0 
'S:/b/1/tools/lldb\test\Shell\lit-lldb-init-quiet'
check:6'0 
X~ 
error: no match found
   2: Executing commands in 
'S:\b\1\tools\lldb\test\Shell\lit-lldb-init-quiet'.
check:6'0 
~~
   3: (lldb) command source -C --silent-run true lit-lldb-init
check:6'0 ~
   4: (lldb) target create 
"S:\\b\\1\\tools\\lldb\\test\\Shell\\Driver\\Output\\TestConvenienceVariables.test.tmp/target.out"
check:6'0 

   5: Current executable set to 
'S:\b\1\tools\lldb\test\Shell\Driver\Output\TestConvenienceVariables.test.tmp\target.out'
 (x86_64).
check:6'0 
~~
   6: (lldb) command source -s 0 
'S:\SourceCache\llvm-project\lldb\test\Shell\Driver/Inputs/convenience.in'
check:6'0 
~~
   7: Executing commands in 
'S:\SourceCache\llvm-project\lldb\test\Shell\Driver\Inputs\convenience.in'.
check:6'0 
~~

[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-24 Thread Kendal Harland via lldb-commits


@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}

kendalharland wrote:

@JDevlieghere please LMK if the target triple can be expressed more clearly as 
a combination of other filters in `.test` files, here and throughout.

https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-24 Thread Kendal Harland via lldb-commits


@@ -12,6 +13,9 @@
 # RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out 
-DVERBOSE_TRAP_TEST_CATEGORY=\"\" -DVERBOSE_TRAP_TEST_MESSAGE=\"\"
 # RUN: %lldb -b -s %s %t.out | FileCheck %s --check-prefixes=CHECK,CHECK-NONE
 
+# RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out

kendalharland wrote:

Removed

https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100476

>From fc88c4ac46e0e9266bf24467b6ad6c5e55d8216c Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 15:47:48 -0700
Subject: [PATCH] [lldb][test][win][x86_64] XFAIL already failing Shell tests

---
 lldb/test/Shell/Driver/TestConvenienceVariables.test  | 1 +
 lldb/test/Shell/Driver/TestSingleQuote.test   | 1 +
 lldb/test/Shell/Recognizer/verbose_trap.test  | 1 +
 lldb/test/Shell/Settings/TestEchoCommands.test| 1 +
 lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml | 2 ++
 lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp  | 2 ++
 lldb/test/Shell/SymbolFile/NativePDB/stack_unwinding01.cpp| 2 ++
 lldb/test/Shell/SymbolFile/PDB/ast-restore.test   | 1 +
 lldb/test/Shell/SymbolFile/PDB/calling-conventions-x86.test   | 1 +
 lldb/test/Shell/SymbolFile/PDB/class-layout.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/enums-layout.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/expressions.test   | 1 +
 lldb/test/Shell/SymbolFile/PDB/func-symbols.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/pointers.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/type-quals.test| 1 +
 lldb/test/Shell/SymbolFile/PDB/typedefs.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/udt-layout.test| 1 +
 lldb/test/Shell/SymbolFile/PDB/variables.test | 1 +
 18 files changed, 21 insertions(+)

diff --git a/lldb/test/Shell/Driver/TestConvenienceVariables.test 
b/lldb/test/Shell/Driver/TestConvenienceVariables.test
index 45dc7673bfc51..32c3d160153fb 100644
--- a/lldb/test/Shell/Driver/TestConvenienceVariables.test
+++ b/lldb/test/Shell/Driver/TestConvenienceVariables.test
@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 REQUIRES: python
 RUN: mkdir -p %t
 RUN: %build %p/Inputs/hello.cpp -o %t/target.out
diff --git a/lldb/test/Shell/Driver/TestSingleQuote.test 
b/lldb/test/Shell/Driver/TestSingleQuote.test
index af321ba04db39..49f6548e0c5b1 100644
--- a/lldb/test/Shell/Driver/TestSingleQuote.test
+++ b/lldb/test/Shell/Driver/TestSingleQuote.test
@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 # Make sure lldb can handle filenames with single quotes in them.
 # RUN: %clang_host %p/Inputs/hello.c -g -o "%t-'pat"
 # RUN: %lldb -s %s "%t-'pat" | FileCheck %s
diff --git a/lldb/test/Shell/Recognizer/verbose_trap.test 
b/lldb/test/Shell/Recognizer/verbose_trap.test
index dafab7bdea688..e8950ad7ad23a 100644
--- a/lldb/test/Shell/Recognizer/verbose_trap.test
+++ b/lldb/test/Shell/Recognizer/verbose_trap.test
@@ -1,4 +1,5 @@
 # UNSUPPORTED: system-windows
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 #
 # RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out 
-DVERBOSE_TRAP_TEST_CATEGORY=\"Foo\" -DVERBOSE_TRAP_TEST_MESSAGE=\"Bar\"
 # RUN: %lldb -b -s %s %t.out | FileCheck %s --check-prefixes=CHECK,CHECK-BOTH
diff --git a/lldb/test/Shell/Settings/TestEchoCommands.test 
b/lldb/test/Shell/Settings/TestEchoCommands.test
index 234b9742bfa2a..02f50d7b21ba5 100644
--- a/lldb/test/Shell/Settings/TestEchoCommands.test
+++ b/lldb/test/Shell/Settings/TestEchoCommands.test
@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 # RUN: %lldb -x -b -o 'settings set interpreter.echo-comment-commands true'  
-s %S/Inputs/EchoCommandsTest.in | FileCheck %S/Inputs/EchoCommandsAll.out
 # RUN: %lldb -x -b -o 'settings set interpreter.echo-comment-commands false' 
-s %S/Inputs/EchoCommandsTest.in | FileCheck 
%S/Inputs/EchoCommandsNoComments.out
 # RUN: %lldb -x -b -o 'settings set interpreter.echo-commands false' 
-s %S/Inputs/EchoCommandsTest.in | FileCheck %S/Inputs/EchoCommandsNone.out
diff --git a/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml 
b/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml
index 9ac922ef3159c..84175041ea1da 100644
--- a/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml
+++ b/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml
@@ -1,3 +1,5 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
+
 # RUN: yaml2obj %s > %t
 # RUN: lldb-test symbols %t | FileCheck %s --check-prefix=TEST
 # RUN: %lldb %t -o "image dump line-table a.c" -o "image lookup -n _start" -o 
"image lookup -n f" -o exit | FileCheck %s
diff --git a/lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp 
b/lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
index 9aa25adf6bcc7..3e767230e04db 100644
--- a/lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
+++ b/lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
@@ -1,5 +1,7 @@
 // clang-format off
 
+// XFAIL: target=x86_64-{{.*}}-windows{{.*}}
+
 // REQUIRES: system-windows
 // RUN: %build -o %t.exe -- %s
 // RUN: env LLDB_USE_NATIVE_PDB_READER=1 %lldb -f %t.exe -s \
diff --git 

[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-24 Thread Kendal Harland via lldb-commits

kendalharland wrote:

> > Rather than a regex for the triple, can you use a combination of `oslist` 
> > and `archs`? `expectedFailureAll` is supposed to combine the conditions, so 
> > the regex should be equivalent to:
> > ```
> > @expectedFailureAll(oslist=["windows"], archs=["x86_64"])
> > ```
> 
> Yes. I will fix this in each of the PRs I recently mailed you.
> 
> Will fix the dark formatter issue above too.

Done

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/100477

>From 3a7e97987140c2d62259a54cb17c00996c0ed6db Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 16:50:34 -0700
Subject: [PATCH] [lldb][test][win][x86_64] XFAIL already failing API tests

---
 .../apropos/with-process/TestAproposWithProcess.py |  3 ++-
 .../command/nested_alias/TestNestedAlias.py|  3 ++-
 .../expression/entry-bp/TestExprEntryBP.py |  2 ++
 .../API/commands/memory/write/TestMemoryWrite.py   |  1 +
 .../use_source_cache/TestUseSourceCache.py |  2 +-
 .../address_breakpoints/TestAddressBreakpoints.py  |  3 ++-
 .../auto_continue/TestBreakpointAutoContinue.py|  3 ++-
 .../TestBreakpointCommandsFromPython.py|  1 +
 .../breakpoint_options/TestBreakpointOptions.py|  3 ++-
 .../step_over_breakpoint/TestStepOverBreakpoint.py |  2 +-
 .../conditional_break/TestConditionalBreak.py  |  1 +
 .../functionalities/memory/find/TestMemoryFind.py  |  2 +-
 .../multiple-slides/TestMultipleSlides.py  |  2 +-
 .../API/functionalities/var_path/TestVarPath.py|  2 --
 lldb/test/API/lang/c/anonymous/TestAnonymous.py|  7 ++-
 lldb/test/API/lang/c/array_types/TestArrayTypes.py |  3 ++-
 lldb/test/API/lang/c/enum_types/TestEnumTypes.py   |  2 +-
 .../API/lang/c/forward/TestForwardDeclaration.py   |  2 +-
 .../API/lang/c/function_types/TestFunctionTypes.py |  2 +-
 .../test/API/lang/c/non-mangled/TestCNonMangled.py |  2 ++
 .../c/register_variables/TestRegisterVariables.py  |  1 +
 lldb/test/API/lang/c/set_values/TestSetValues.py   |  2 +-
 lldb/test/API/lang/c/shared_lib/TestSharedLib.py   |  5 +++--
 .../API/lang/cpp/bitfields/TestCppBitfields.py |  1 +
 .../API/lang/cpp/class_types/TestClassTypes.py |  3 ++-
 lldb/test/API/lang/cpp/inlines/TestInlines.py  |  2 +-
 .../API/lang/cpp/unique-types4/TestUniqueTypes4.py | 14 --
 .../python_api/compile_unit/TestCompileUnitAPI.py  |  1 +
 lldb/test/API/python_api/thread/TestThreadAPI.py   |  3 ++-
 lldb/test/API/source-manager/TestSourceManager.py  |  2 ++
 30 files changed, 58 insertions(+), 24 deletions(-)

diff --git 
a/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py 
b/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py
index 268317a4bf212..6a802d544fe9e 100644
--- a/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py
+++ b/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py
@@ -2,8 +2,8 @@
 Test that apropos env doesn't crash trying to touch the process plugin command
 """
 
-
 import lldb
+from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 import lldbsuite.test.lldbutil as lldbutil
 
@@ -17,6 +17,7 @@ def setUp(self):
 # Find the line number to break inside main().
 self.line = line_number("main.cpp", "// break here")
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])
 def test_apropos_with_process(self):
 """Test that apropos env doesn't crash trying to touch the process 
plugin command."""
 self.build()
diff --git a/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py 
b/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py
index 0919caa7d0056..954578f777c66 100644
--- a/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py
+++ b/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py
@@ -2,8 +2,8 @@
 Test that an alias can reference other aliases without crashing.
 """
 
-
 import lldb
+from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 import lldbsuite.test.lldbutil as lldbutil
 
@@ -17,6 +17,7 @@ def setUp(self):
 # Find the line number to break inside main().
 self.line = line_number("main.cpp", "// break here")
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])
 def test_nested_alias(self):
 """Test that an alias can reference other aliases without crashing."""
 self.build()
diff --git a/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py 
b/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py
index 1e7882b4d0236..2b1f83e288fff 100644
--- a/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py
+++ b/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py
@@ -4,12 +4,14 @@
 
 import lldb
 import lldbsuite.test.lldbutil as lldbutil
+from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 
 
 class ExprEntryBPTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(oslist=["windows"], archs=["x86_64"])
 def test_expr_entry_bp(self):
 """Tests expressions evaluation when the breakpoint on module's entry 
is set."""
 self.build()
diff --git a/lldb/test/API/commands/memory/write/TestMemoryWrite.py 
b/lldb/test/API/commands/memory/write/TestMemoryWrite.py
index 45787243a614d..cb74c77c3c16f 100644
--- 

[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-24 Thread Kendal Harland via lldb-commits


@@ -12,6 +13,9 @@
 # RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out 
-DVERBOSE_TRAP_TEST_CATEGORY=\"\" -DVERBOSE_TRAP_TEST_MESSAGE=\"\"
 # RUN: %lldb -b -s %s %t.out | FileCheck %s --check-prefixes=CHECK,CHECK-NONE
 
+# RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out

kendalharland wrote:

I am not sure where these two lines came from. Might be a bad rebase. I'll 
recheck locally then update.

https://github.com/llvm/llvm-project/pull/100476
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-24 Thread Kendal Harland via lldb-commits

kendalharland wrote:

> Rather than a regex for the triple, can you use a combination of `oslist` and 
> `archs`? `expectedFailureAll` is supposed to combine the conditions, so the 
> regex should be equivalent to:
> 
> ```
> @expectedFailureAll(oslist=["windows"], archs=["x86_64"])
> ```

Yes. I will fix this in each of the PRs I recently mailed you.

https://github.com/llvm/llvm-project/pull/100477
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing API tests (PR #100477)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland created 
https://github.com/llvm/llvm-project/pull/100477

I'm currently working on getting the LLDB test suites to pass on Windows x86_64 
which is not currently included in LLVM CI. These tests are currently failing 
in this configuration.

See https://github.com/llvm/llvm-project/issues/100474

See also https://github.com/llvm/llvm-project/issues/75936

>From f8e40b90d65434838d2baa79795a1b160ab4614c Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 16:50:34 -0700
Subject: [PATCH] [lldb][test][win][x86_64] XFAIL already failing API tests

---
 .../apropos/with-process/TestAproposWithProcess.py |  3 ++-
 .../command/nested_alias/TestNestedAlias.py|  3 ++-
 .../expression/entry-bp/TestExprEntryBP.py |  2 ++
 .../API/commands/memory/write/TestMemoryWrite.py   |  1 +
 .../use_source_cache/TestUseSourceCache.py |  2 +-
 .../address_breakpoints/TestAddressBreakpoints.py  |  3 ++-
 .../auto_continue/TestBreakpointAutoContinue.py|  3 ++-
 .../TestBreakpointCommandsFromPython.py|  1 +
 .../breakpoint_options/TestBreakpointOptions.py|  3 ++-
 .../step_over_breakpoint/TestStepOverBreakpoint.py |  2 +-
 .../conditional_break/TestConditionalBreak.py  |  1 +
 .../functionalities/memory/find/TestMemoryFind.py  |  2 +-
 .../multiple-slides/TestMultipleSlides.py  |  2 +-
 .../API/functionalities/var_path/TestVarPath.py|  2 --
 lldb/test/API/lang/c/anonymous/TestAnonymous.py|  7 ++-
 lldb/test/API/lang/c/array_types/TestArrayTypes.py |  3 ++-
 lldb/test/API/lang/c/enum_types/TestEnumTypes.py   |  2 +-
 .../API/lang/c/forward/TestForwardDeclaration.py   |  2 +-
 .../API/lang/c/function_types/TestFunctionTypes.py |  2 +-
 .../test/API/lang/c/non-mangled/TestCNonMangled.py |  2 ++
 .../c/register_variables/TestRegisterVariables.py  |  1 +
 lldb/test/API/lang/c/set_values/TestSetValues.py   |  2 +-
 lldb/test/API/lang/c/shared_lib/TestSharedLib.py   |  5 +++--
 .../API/lang/cpp/bitfields/TestCppBitfields.py |  1 +
 .../API/lang/cpp/class_types/TestClassTypes.py |  3 ++-
 lldb/test/API/lang/cpp/inlines/TestInlines.py  |  2 +-
 .../API/lang/cpp/unique-types4/TestUniqueTypes4.py | 14 --
 .../python_api/compile_unit/TestCompileUnitAPI.py  |  1 +
 lldb/test/API/python_api/thread/TestThreadAPI.py   |  1 +
 lldb/test/API/source-manager/TestSourceManager.py  |  2 ++
 30 files changed, 57 insertions(+), 23 deletions(-)

diff --git 
a/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py 
b/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py
index 268317a4bf212..adeb7b4f906c5 100644
--- a/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py
+++ b/lldb/test/API/commands/apropos/with-process/TestAproposWithProcess.py
@@ -2,8 +2,8 @@
 Test that apropos env doesn't crash trying to touch the process plugin command
 """
 
-
 import lldb
+from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 import lldbsuite.test.lldbutil as lldbutil
 
@@ -17,6 +17,7 @@ def setUp(self):
 # Find the line number to break inside main().
 self.line = line_number("main.cpp", "// break here")
 
+@expectedFailureAll(triple="x86_64-.*-windows.*")
 def test_apropos_with_process(self):
 """Test that apropos env doesn't crash trying to touch the process 
plugin command."""
 self.build()
diff --git a/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py 
b/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py
index 0919caa7d0056..315576afde703 100644
--- a/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py
+++ b/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py
@@ -2,8 +2,8 @@
 Test that an alias can reference other aliases without crashing.
 """
 
-
 import lldb
+from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 import lldbsuite.test.lldbutil as lldbutil
 
@@ -17,6 +17,7 @@ def setUp(self):
 # Find the line number to break inside main().
 self.line = line_number("main.cpp", "// break here")
 
+@expectedFailureAll(triple="x86_64-.*-windows.*")
 def test_nested_alias(self):
 """Test that an alias can reference other aliases without crashing."""
 self.build()
diff --git a/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py 
b/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py
index 1e7882b4d0236..0ee7e46d73cd1 100644
--- a/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py
+++ b/lldb/test/API/commands/expression/entry-bp/TestExprEntryBP.py
@@ -4,12 +4,14 @@
 
 import lldb
 import lldbsuite.test.lldbutil as lldbutil
+from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 
 
 class ExprEntryBPTestCase(TestBase):
 NO_DEBUG_INFO_TESTCASE = True
 
+@expectedFailureAll(triple="x86_64-.*-windows.*")
 def test_expr_entry_bp(self):
 """Tests 

[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell tests (PR #100476)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland created 
https://github.com/llvm/llvm-project/pull/100476

I'm currently working on getting the LLDB test suites to pass on Windows x86_64 
which is not currently included in LLVM CI. These tests are currently failing 
in this configuration.

See https://github.com/llvm/llvm-project/issues/100474

>From f293beaaa7d5d0a4c07c5f7e8dd43be4d69984ef Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 15:47:48 -0700
Subject: [PATCH] [lldb][test][win][x86_64] XFAIL already failing Shell tests

---
 lldb/test/Shell/Driver/TestConvenienceVariables.test  | 1 +
 lldb/test/Shell/Driver/TestSingleQuote.test   | 1 +
 lldb/test/Shell/Recognizer/verbose_trap.test  | 4 
 lldb/test/Shell/Settings/TestEchoCommands.test| 1 +
 lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml | 2 ++
 lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp  | 2 ++
 lldb/test/Shell/SymbolFile/NativePDB/stack_unwinding01.cpp| 2 ++
 lldb/test/Shell/SymbolFile/PDB/ast-restore.test   | 1 +
 lldb/test/Shell/SymbolFile/PDB/calling-conventions-x86.test   | 1 +
 lldb/test/Shell/SymbolFile/PDB/class-layout.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/enums-layout.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/expressions.test   | 1 +
 lldb/test/Shell/SymbolFile/PDB/func-symbols.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/pointers.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/type-quals.test| 1 +
 lldb/test/Shell/SymbolFile/PDB/typedefs.test  | 1 +
 lldb/test/Shell/SymbolFile/PDB/udt-layout.test| 1 +
 lldb/test/Shell/SymbolFile/PDB/variables.test | 1 +
 18 files changed, 24 insertions(+)

diff --git a/lldb/test/Shell/Driver/TestConvenienceVariables.test 
b/lldb/test/Shell/Driver/TestConvenienceVariables.test
index 45dc7673bfc51..32c3d160153fb 100644
--- a/lldb/test/Shell/Driver/TestConvenienceVariables.test
+++ b/lldb/test/Shell/Driver/TestConvenienceVariables.test
@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 REQUIRES: python
 RUN: mkdir -p %t
 RUN: %build %p/Inputs/hello.cpp -o %t/target.out
diff --git a/lldb/test/Shell/Driver/TestSingleQuote.test 
b/lldb/test/Shell/Driver/TestSingleQuote.test
index af321ba04db39..49f6548e0c5b1 100644
--- a/lldb/test/Shell/Driver/TestSingleQuote.test
+++ b/lldb/test/Shell/Driver/TestSingleQuote.test
@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 # Make sure lldb can handle filenames with single quotes in them.
 # RUN: %clang_host %p/Inputs/hello.c -g -o "%t-'pat"
 # RUN: %lldb -s %s "%t-'pat" | FileCheck %s
diff --git a/lldb/test/Shell/Recognizer/verbose_trap.test 
b/lldb/test/Shell/Recognizer/verbose_trap.test
index dafab7bdea688..76ba87f0f115a 100644
--- a/lldb/test/Shell/Recognizer/verbose_trap.test
+++ b/lldb/test/Shell/Recognizer/verbose_trap.test
@@ -1,4 +1,5 @@
 # UNSUPPORTED: system-windows
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 #
 # RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out 
-DVERBOSE_TRAP_TEST_CATEGORY=\"Foo\" -DVERBOSE_TRAP_TEST_MESSAGE=\"Bar\"
 # RUN: %lldb -b -s %s %t.out | FileCheck %s --check-prefixes=CHECK,CHECK-BOTH
@@ -12,6 +13,9 @@
 # RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out 
-DVERBOSE_TRAP_TEST_CATEGORY=\"\" -DVERBOSE_TRAP_TEST_MESSAGE=\"\"
 # RUN: %lldb -b -s %s %t.out | FileCheck %s --check-prefixes=CHECK,CHECK-NONE
 
+# RUN: %clang_host -g -O0 %S/Inputs/verbose_trap.cpp -o %t.out
+# RUN: %lldb -b -s %s %t.out | FileCheck %s
+
 run
 # CHECK-BOTH:  thread #{{.*}}stop reason = Foo: Bar
 # CHECK-MESSAGE_ONLY:  thread #{{.*}}stop reason = : Bar
diff --git a/lldb/test/Shell/Settings/TestEchoCommands.test 
b/lldb/test/Shell/Settings/TestEchoCommands.test
index 234b9742bfa2a..02f50d7b21ba5 100644
--- a/lldb/test/Shell/Settings/TestEchoCommands.test
+++ b/lldb/test/Shell/Settings/TestEchoCommands.test
@@ -1,3 +1,4 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 # RUN: %lldb -x -b -o 'settings set interpreter.echo-comment-commands true'  
-s %S/Inputs/EchoCommandsTest.in | FileCheck %S/Inputs/EchoCommandsAll.out
 # RUN: %lldb -x -b -o 'settings set interpreter.echo-comment-commands false' 
-s %S/Inputs/EchoCommandsTest.in | FileCheck 
%S/Inputs/EchoCommandsNoComments.out
 # RUN: %lldb -x -b -o 'settings set interpreter.echo-commands false' 
-s %S/Inputs/EchoCommandsTest.in | FileCheck %S/Inputs/EchoCommandsNone.out
diff --git a/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml 
b/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml
index 9ac922ef3159c..84175041ea1da 100644
--- a/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml
+++ b/lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml
@@ -1,3 +1,5 @@
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
+
 # RUN: yaml2obj %s > %t
 # RUN: lldb-test symbols %t | FileCheck %s 

[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell/Driver tests (PR #100473)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100473
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell/Driver tests (PR #100473)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100473
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing Shell/Driver tests (PR #100473)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/100473
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test][win][x86_64] XFAIL already failing lldb/test/Shell/Drive… (PR #100473)

2024-07-24 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland created 
https://github.com/llvm/llvm-project/pull/100473

I'm currently working on getting the LLDB test suites to pass on Windows x86_64 
which is not currently included in LLVM CI. These tests are currently failing 
on this configuration.

>From 7c63b093423fd30e64cb08e770105eb9ed475005 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Tue, 23 Jul 2024 15:18:13 -0700
Subject: [PATCH] [lldb][test][win][x86_64] XFAIL already failing
 lldb/test/Shell/Driver tests

---
 lldb/test/Shell/Driver/TestConvenienceVariables.test | 1 +
 lldb/test/Shell/Driver/TestSingleQuote.test  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/lldb/test/Shell/Driver/TestConvenienceVariables.test 
b/lldb/test/Shell/Driver/TestConvenienceVariables.test
index 45dc7673bfc51..36ec0748a5a02 100644
--- a/lldb/test/Shell/Driver/TestConvenienceVariables.test
+++ b/lldb/test/Shell/Driver/TestConvenienceVariables.test
@@ -3,6 +3,7 @@ RUN: mkdir -p %t
 RUN: %build %p/Inputs/hello.cpp -o %t/target.out
 RUN: %lldb %t/target.out -s %p/Inputs/convenience.in -o quit | FileCheck %s
 
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 CHECK: stop reason = breakpoint 1.1
 CHECK: script print(lldb.debugger)
 CHECK-NEXT: Debugger (instance: {{.*}}, id: {{[0-9]+}})
diff --git a/lldb/test/Shell/Driver/TestSingleQuote.test 
b/lldb/test/Shell/Driver/TestSingleQuote.test
index af321ba04db39..5d721b5a3345c 100644
--- a/lldb/test/Shell/Driver/TestSingleQuote.test
+++ b/lldb/test/Shell/Driver/TestSingleQuote.test
@@ -2,5 +2,6 @@
 # RUN: %clang_host %p/Inputs/hello.c -g -o "%t-'pat"
 # RUN: %lldb -s %s "%t-'pat" | FileCheck %s
 
+# XFAIL: target=x86_64-{{.*}}-windows{{.*}}
 br set -p return
 # CHECK: Breakpoint 1: where = TestSingleQuote.test.tmp-'pat`main

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-15 Thread Kendal Harland via lldb-commits


@@ -10,9 +10,10 @@
 
 
 class TestDAP_stepInTargets(lldbdap_testcase.DAPTestCaseBase):
-@skipIf(
-archs=no_match(["x86_64"])
-)  # InstructionControlFlowKind for ARM is not supported yet.
+@skipIf
+# InstructionControlFlowKind for ARM is not supported yet.
+# On x86_64 lldb-dap seems to ignore targetId when stepping into functions.

kendalharland wrote:

Ah thanks for catching that. I added back the original `@skipIf` since the 
comment indicates that running the test on ARM is a waste, given that 
InstructionControlFlowKind is unsupported, and combined that with the 
`@expectedFailureAll` you gave above to expect failure on Windows 
configurations.

https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-15 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96687

>From 02f06f90a40cc7ed18a9744918acf4daf6212486 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 14:01:31 -0700
Subject: [PATCH 1/2] Fix test assertions in TestDAP_stepInTargets.py

---
 .../stepInTargets/TestDAP_stepInTargets.py| 24 +--
 .../API/tools/lldb-dap/stepInTargets/main.cpp |  6 ++---
 2 files changed, 20 insertions(+), 10 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6296f6554d07e..6670989a58fe8 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -55,14 +55,24 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
+# Choose to step into second target and verify that we are in the 
second target,
+# be it funcA or funcB.
 self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
 leaf_frame = self.dap_server.get_stackFrame()
 self.assertIsNotNone(leaf_frame, "expect a leaf frame")
-self.assertEqual(leaf_frame["name"], "bar2()")
+self.assertEqual(step_in_targets[1]["label"], leaf_frame["name"])
diff --git a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp 
b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
index d3c3dbcc139ef..a48b79af0c760 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
@@ -1,11 +1,11 @@
 
 int foo(int val, int extra) { return val + extra; }
 
-int bar() { return 22; }
+int funcA() { return 22; }
 
-int bar2() { return 54; }
+int funcB() { return 54; }
 
 int main(int argc, char const *argv[]) {
-  foo(bar(), bar2()); // set breakpoint here
+  foo(funcA(), funcB()); // set breakpoint here
   return 0;
 }

>From 8735430b3f99ba78791fca6c44891cb51cdb90f9 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Thu, 11 Jul 2024 11:52:03 -0700
Subject: [PATCH 2/2] Disable this test on all platforms with issue ID

---
 .../tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6670989a58fe8..07acfe07c9ffc 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -10,9 +10,11 @@
 
 
 class TestDAP_stepInTargets(lldbdap_testcase.DAPTestCaseBase):
-@skipIf(
-archs=no_match(["x86_64"])
-)  # InstructionControlFlowKind for ARM is not supported yet.
+@expectedFailureAll(oslist=["windows"])
+@skipIf(archs=no_match(["x86_64"]))
+# InstructionControlFlowKind for ARM is not supported yet.
+# On Windows, lldb-dap seems to ignore targetId when stepping into 
functions.
+# For more context, see https://github.com/llvm/llvm-project/issues/98509.
 def test_basic(self):
 """
 Tests the basic stepping in targets with directly calls.

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-12 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-12 Thread Kendal Harland via lldb-commits


@@ -55,14 +55,23 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
-self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
+# Choose to step into second target and verify that we are in funcB()

kendalharland wrote:

I used @expectFailureAll rather than @skipIf, not realizing that the test 
_must_ fail if the latter is used. Updated in the latest commit. I'll need help 
landing as I don't have write access. Thank you all for the reviews!

https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-12 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96687

>From 02f06f90a40cc7ed18a9744918acf4daf6212486 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 14:01:31 -0700
Subject: [PATCH 1/2] Fix test assertions in TestDAP_stepInTargets.py

---
 .../stepInTargets/TestDAP_stepInTargets.py| 24 +--
 .../API/tools/lldb-dap/stepInTargets/main.cpp |  6 ++---
 2 files changed, 20 insertions(+), 10 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6296f6554d07e..6670989a58fe8 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -55,14 +55,24 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
+# Choose to step into second target and verify that we are in the 
second target,
+# be it funcA or funcB.
 self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
 leaf_frame = self.dap_server.get_stackFrame()
 self.assertIsNotNone(leaf_frame, "expect a leaf frame")
-self.assertEqual(leaf_frame["name"], "bar2()")
+self.assertEqual(step_in_targets[1]["label"], leaf_frame["name"])
diff --git a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp 
b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
index d3c3dbcc139ef..a48b79af0c760 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
@@ -1,11 +1,11 @@
 
 int foo(int val, int extra) { return val + extra; }
 
-int bar() { return 22; }
+int funcA() { return 22; }
 
-int bar2() { return 54; }
+int funcB() { return 54; }
 
 int main(int argc, char const *argv[]) {
-  foo(bar(), bar2()); // set breakpoint here
+  foo(funcA(), funcB()); // set breakpoint here
   return 0;
 }

>From 4934a0c86272d19202821b126cd7fa99f9b3307d Mon Sep 17 00:00:00 2001
From: kendal 
Date: Thu, 11 Jul 2024 11:52:03 -0700
Subject: [PATCH 2/2] Disable this test on all platforms with issue ID

---
 .../tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py  | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6670989a58fe8..29bcf81dbb306 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -10,9 +10,10 @@
 
 
 class TestDAP_stepInTargets(lldbdap_testcase.DAPTestCaseBase):
-@skipIf(
-archs=no_match(["x86_64"])
-)  # InstructionControlFlowKind for ARM is not supported yet.
+@skipIf
+# InstructionControlFlowKind for ARM is not supported yet.
+# On x86_64 lldb-dap seems to ignore targetId when stepping into functions.
+# For more context, see https://github.com/llvm/llvm-project/issues/98509.
 def test_basic(self):
 """
 Tests the basic stepping in targets with directly calls.

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-11 Thread Kendal Harland via lldb-commits


@@ -55,14 +55,23 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
-self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
+# Choose to step into second target and verify that we are in funcB()

kendalharland wrote:

Updated in the latest commit.

https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-11 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96687

>From 02f06f90a40cc7ed18a9744918acf4daf6212486 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 14:01:31 -0700
Subject: [PATCH 1/2] Fix test assertions in TestDAP_stepInTargets.py

---
 .../stepInTargets/TestDAP_stepInTargets.py| 24 +--
 .../API/tools/lldb-dap/stepInTargets/main.cpp |  6 ++---
 2 files changed, 20 insertions(+), 10 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6296f6554d07e..6670989a58fe8 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -55,14 +55,24 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
+# Choose to step into second target and verify that we are in the 
second target,
+# be it funcA or funcB.
 self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
 leaf_frame = self.dap_server.get_stackFrame()
 self.assertIsNotNone(leaf_frame, "expect a leaf frame")
-self.assertEqual(leaf_frame["name"], "bar2()")
+self.assertEqual(step_in_targets[1]["label"], leaf_frame["name"])
diff --git a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp 
b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
index d3c3dbcc139ef..a48b79af0c760 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
@@ -1,11 +1,11 @@
 
 int foo(int val, int extra) { return val + extra; }
 
-int bar() { return 22; }
+int funcA() { return 22; }
 
-int bar2() { return 54; }
+int funcB() { return 54; }
 
 int main(int argc, char const *argv[]) {
-  foo(bar(), bar2()); // set breakpoint here
+  foo(funcA(), funcB()); // set breakpoint here
   return 0;
 }

>From f993be5d9e1b883aba7c9e998195958039e6ab27 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Thu, 11 Jul 2024 11:52:03 -0700
Subject: [PATCH 2/2] Disable this test on all platforms with issue ID

---
 .../tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py  | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6670989a58fe8..0dfc19055b2eb 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -10,9 +10,10 @@
 
 
 class TestDAP_stepInTargets(lldbdap_testcase.DAPTestCaseBase):
-@skipIf(
-archs=no_match(["x86_64"])
-)  # InstructionControlFlowKind for ARM is not supported yet.
+@expectedFailureAll
+# InstructionControlFlowKind for ARM is not supported yet.
+# On x86_64 lldb-dap seems to ignore targetId when stepping into functions.
+# For more context, see https://github.com/llvm/llvm-project/issues/98509.
 def test_basic(self):
 """
 Tests the basic stepping in targets with directly calls.

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-11 Thread Kendal Harland via lldb-commits


@@ -55,14 +55,23 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
-self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
+# Choose to step into second target and verify that we are in funcB()

kendalharland wrote:

That's reasonable. I'll mark as disabled for now and file a bug to investigate. 
I can look into it once I get the time.

https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-09 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96687

>From 02f06f90a40cc7ed18a9744918acf4daf6212486 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 14:01:31 -0700
Subject: [PATCH] Fix test assertions in TestDAP_stepInTargets.py

---
 .../stepInTargets/TestDAP_stepInTargets.py| 24 +--
 .../API/tools/lldb-dap/stepInTargets/main.cpp |  6 ++---
 2 files changed, 20 insertions(+), 10 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6296f6554d07e..6670989a58fe8 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -55,14 +55,24 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
+# Choose to step into second target and verify that we are in the 
second target,
+# be it funcA or funcB.
 self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
 leaf_frame = self.dap_server.get_stackFrame()
 self.assertIsNotNone(leaf_frame, "expect a leaf frame")
-self.assertEqual(leaf_frame["name"], "bar2()")
+self.assertEqual(step_in_targets[1]["label"], leaf_frame["name"])
diff --git a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp 
b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
index d3c3dbcc139ef..a48b79af0c760 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
@@ -1,11 +1,11 @@
 
 int foo(int val, int extra) { return val + extra; }
 
-int bar() { return 22; }
+int funcA() { return 22; }
 
-int bar2() { return 54; }
+int funcB() { return 54; }
 
 int main(int argc, char const *argv[]) {
-  foo(bar(), bar2()); // set breakpoint here
+  foo(funcA(), funcB()); // set breakpoint here
   return 0;
 }

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-09 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland edited 
https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-09 Thread Kendal Harland via lldb-commits


@@ -55,14 +55,23 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
-self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
+# Choose to step into second target and verify that we are in funcB()

kendalharland wrote:

Thanks for the explanation! This sounds like the right thing to do, however I 
believe I'm hitting a bug: the test's DAP always steps into funcB regardless of 
the option passed to `targetId`.  Would you be able to reproduce this? If it 
reproduces for you, I wonder if this has always been broken, given that IIRC 
there's no Windows x64 CI and this test only runs when the architecture is 
x86_64.

https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test] Fix type error when calling random.randrange with 'float' arg (PR #97328)

2024-07-05 Thread Kendal Harland via lldb-commits

kendalharland wrote:

I'll also need help merging this since I don't have write access to the repo.

https://github.com/llvm/llvm-project/pull/97328
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-05 Thread Kendal Harland via lldb-commits

kendalharland wrote:

I'll need help merging this since I don't have write access to the repo.

https://github.com/llvm/llvm-project/pull/96685
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-03 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Nice find! I didn't now about godbolt.org.  Updated the test to be 
order-independent w.r.t. funcA and funcB. 

https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96687

>From 2584ce932af07fdac1450e47f74fbd17c8428bb5 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 14:01:31 -0700
Subject: [PATCH] Fix test assertions in TestDAP_stepInTargets.py

---
 .../stepInTargets/TestDAP_stepInTargets.py| 25 +--
 .../API/tools/lldb-dap/stepInTargets/main.cpp |  6 ++---
 2 files changed, 20 insertions(+), 11 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6296f6554d07e..4b7caf99e95cc 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -55,14 +55,23 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify that we are in bar2()
-self.stepIn(threadId=tid, targetId=step_in_targets[1]["id"], 
waitForStop=True)
+# Choose to step into second target and verify that we are in funcB()
+self.stepIn(threadId=tid, targetId=funcB_target["id"], 
waitForStop=True)
 leaf_frame = self.dap_server.get_stackFrame()
 self.assertIsNotNone(leaf_frame, "expect a leaf frame")
-self.assertEqual(leaf_frame["name"], "bar2()")
+self.assertIn("funcB", leaf_frame["name"], "expect funcB")
diff --git a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp 
b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
index d3c3dbcc139ef..a48b79af0c760 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/main.cpp
@@ -1,11 +1,11 @@
 
 int foo(int val, int extra) { return val + extra; }
 
-int bar() { return 22; }
+int funcA() { return 22; }
 
-int bar2() { return 54; }
+int funcB() { return 54; }
 
 int main(int argc, char const *argv[]) {
-  foo(bar(), bar2()); // set breakpoint here
+  foo(funcA(), funcB()); // set breakpoint here
   return 0;
 }

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Apologies, I push the wrong commits to this PR and just had the fix them up. 
Should be good to go.

https://github.com/llvm/llvm-project/pull/96685
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96685

>From e3715f9928c6cd96a6cc96ea3cea8a8a735a7556 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 13:42:20 -0700
Subject: [PATCH] Fix flake in TestZerothFrame.py

This test is relying on the order of `process.threads` which is
nondeterministic. By selecting the thread based on whether it is
stopped at our breakpoint we can reliably select the correct one.
---
 .../unwind/zeroth_frame/TestZerothFrame.py| 23 +--
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git 
a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py 
b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
index f4e883d314644..d660844405e13 100644
--- a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
+++ b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
@@ -40,28 +40,28 @@ def test(self):
 target = self.dbg.CreateTarget(exe)
 self.assertTrue(target, VALID_TARGET)
 
-bp1_line = line_number("main.c", "// Set breakpoint 1 here")
-bp2_line = line_number("main.c", "// Set breakpoint 2 here")
-
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp1_line, num_expected_locations=1
+main_dot_c = lldb.SBFileSpec("main.c")
+bp1 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 1 here", main_dot_c
 )
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp2_line, num_expected_locations=1
+bp2 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 2 here", main_dot_c
 )
 
 process = target.LaunchSimple(None, None, 
self.get_process_working_directory())
 self.assertTrue(process, VALID_PROCESS)
 
-thread = process.GetThreadAtIndex(0)
+thread = self.thread()
+
 if self.TraceOn():
 print("Backtrace at the first breakpoint:")
 for f in thread.frames:
 print(f)
+
 # Check that we have stopped at correct breakpoint.
 self.assertEqual(
-process.GetThreadAtIndex(0).frame[0].GetLineEntry().GetLine(),
-bp1_line,
+thread.frame[0].GetLineEntry().GetLine(),
+bp1.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 
@@ -70,7 +70,6 @@ def test(self):
 # 'continue' command.
 process.Continue()
 
-thread = process.GetThreadAtIndex(0)
 if self.TraceOn():
 print("Backtrace at the second breakpoint:")
 for f in thread.frames:
@@ -78,7 +77,7 @@ def test(self):
 # Check that we have stopped at the breakpoint
 self.assertEqual(
 thread.frame[0].GetLineEntry().GetLine(),
-bp2_line,
+bp2.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 # Double-check with GetPCAddress()

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96685

>From 0ec149a364061432a9b7bd8d79ddbb5706b182dc Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 13:42:20 -0700
Subject: [PATCH] Fix flake in TestZerothFrame.py

This test is relying on the order of `process.threads` which is
nondeterministic. By selecting the thread based on whether it is
stopped at our breakpoint we can reliably select the correct one.
---
 .../unwind/zeroth_frame/TestZerothFrame.py| 23 ---
 1 file changed, 9 insertions(+), 14 deletions(-)

diff --git 
a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py 
b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
index f4e883d314644..deb30669cc40e 100644
--- a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
+++ b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
@@ -40,28 +40,24 @@ def test(self):
 target = self.dbg.CreateTarget(exe)
 self.assertTrue(target, VALID_TARGET)
 
-bp1_line = line_number("main.c", "// Set breakpoint 1 here")
-bp2_line = line_number("main.c", "// Set breakpoint 2 here")
-
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp1_line, num_expected_locations=1
-)
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp2_line, num_expected_locations=1
-)
+main_dot_c = lldb.SBFileSpec("main.c")
+bp1 = target.BreakpointCreateBySourceRegex("// Set breakpoint 1 here", 
main_dot_c)
+bp2 = target.BreakpointCreateBySourceRegex("// Set breakpoint 2 here", 
main_dot_c)
 
 process = target.LaunchSimple(None, None, 
self.get_process_working_directory())
 self.assertTrue(process, VALID_PROCESS)
 
-thread = process.GetThreadAtIndex(0)
+thread = self.thread()
+
 if self.TraceOn():
 print("Backtrace at the first breakpoint:")
 for f in thread.frames:
 print(f)
+
 # Check that we have stopped at correct breakpoint.
 self.assertEqual(
-process.GetThreadAtIndex(0).frame[0].GetLineEntry().GetLine(),
-bp1_line,
+thread.frame[0].GetLineEntry().GetLine(),
+bp1.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 
@@ -70,7 +66,6 @@ def test(self):
 # 'continue' command.
 process.Continue()
 
-thread = process.GetThreadAtIndex(0)
 if self.TraceOn():
 print("Backtrace at the second breakpoint:")
 for f in thread.frames:
@@ -78,7 +73,7 @@ def test(self):
 # Check that we have stopped at the breakpoint
 self.assertEqual(
 thread.frame[0].GetLineEntry().GetLine(),
-bp2_line,
+bp2.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 # Double-check with GetPCAddress()

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96685

>From 108865deb28016f6ebe7c507e082e0998a4d4839 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 1 Jul 2024 10:33:51 -0700
Subject: [PATCH 1/3] Fix type error when calling random.randrange with 'float'
 arg

---
 .../tools/lldb-server/commandline/TestGdbRemoteConnection.py| 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py 
b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
index 853b7ad5ef290..f31a57b767c72 100644
--- a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
+++ b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
@@ -75,7 +75,7 @@ def __init__(self):
 class Pipe(object):
 def __init__(self, prefix):
 while True:
-self.name = "lldb-" + str(random.randrange(1e10))
+self.name = "lldb-" + str(random.randrange(int(1e10)))
 full_name = ".\\pipe\\" + self.name
 self._handle = CreateNamedPipe(
 full_name,

>From 0897e9ad65ca1ecb5ffa00afefaed3674a2bd140 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 1 Jul 2024 10:20:08 -0700
Subject: [PATCH 2/3] Disable TestUseSourceCache on Windows amd64

This test also fails on Windows amd64, although it is only
disabled for aarch64.
---
 .../commands/settings/use_source_cache/TestUseSourceCache.py| 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py 
b/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py
index c54345af4994c..421599080a9e5 100644
--- a/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py
+++ b/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py
@@ -18,7 +18,7 @@ def test_set_use_source_cache_false(self):
 self.set_use_source_cache_and_test(False)
 
 @skipIf(hostoslist=no_match(["windows"]))
-@skipIf(oslist=["windows"], archs=["aarch64"])  # Fails on windows 11
+@skipIf(oslist=["windows"])  # Fails on windows 11
 def test_set_use_source_cache_true(self):
 """Test that after 'set use-source-cache false', files are locked."""
 self.set_use_source_cache_and_test(True)

>From 401e4a823037d8b7fece752f5a2c9fcabfe25bd5 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 13:42:20 -0700
Subject: [PATCH 3/3] Fix flake in TestZerothFrame.py

This test is relying on the order of `process.threads` which is
nondeterministic. By selecting the thread based on whether it is
stopped at our breakpoint we can reliably select the correct one.
---
 .../unwind/zeroth_frame/TestZerothFrame.py| 23 ---
 1 file changed, 9 insertions(+), 14 deletions(-)

diff --git 
a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py 
b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
index f4e883d314644..deb30669cc40e 100644
--- a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
+++ b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
@@ -40,28 +40,24 @@ def test(self):
 target = self.dbg.CreateTarget(exe)
 self.assertTrue(target, VALID_TARGET)
 
-bp1_line = line_number("main.c", "// Set breakpoint 1 here")
-bp2_line = line_number("main.c", "// Set breakpoint 2 here")
-
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp1_line, num_expected_locations=1
-)
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp2_line, num_expected_locations=1
-)
+main_dot_c = lldb.SBFileSpec("main.c")
+bp1 = target.BreakpointCreateBySourceRegex("// Set breakpoint 1 here", 
main_dot_c)
+bp2 = target.BreakpointCreateBySourceRegex("// Set breakpoint 2 here", 
main_dot_c)
 
 process = target.LaunchSimple(None, None, 
self.get_process_working_directory())
 self.assertTrue(process, VALID_PROCESS)
 
-thread = process.GetThreadAtIndex(0)
+thread = self.thread()
+
 if self.TraceOn():
 print("Backtrace at the first breakpoint:")
 for f in thread.frames:
 print(f)
+
 # Check that we have stopped at correct breakpoint.
 self.assertEqual(
-process.GetThreadAtIndex(0).frame[0].GetLineEntry().GetLine(),
-bp1_line,
+thread.frame[0].GetLineEntry().GetLine(),
+bp1.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 
@@ -70,7 +66,6 @@ def test(self):
 # 'continue' command.
 process.Continue()
 
-thread = process.GetThreadAtIndex(0)
 if self.TraceOn():
 print("Backtrace at the second breakpoint:")
  

[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96685

>From b880f6d7951534fd90c3728fb9cabbe515295557 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 13:42:20 -0700
Subject: [PATCH 1/2] Fix flake in TestZerothFrame.py

This test is relying on the order of `process.threads` which is
nondeterministic. By selecting the thread based on whether it is
stopped at our breakpoint we can reliably select the correct one.
---
 .../unwind/zeroth_frame/TestZerothFrame.py| 23 +--
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git 
a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py 
b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
index f4e883d314644..d660844405e13 100644
--- a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
+++ b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
@@ -40,28 +40,28 @@ def test(self):
 target = self.dbg.CreateTarget(exe)
 self.assertTrue(target, VALID_TARGET)
 
-bp1_line = line_number("main.c", "// Set breakpoint 1 here")
-bp2_line = line_number("main.c", "// Set breakpoint 2 here")
-
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp1_line, num_expected_locations=1
+main_dot_c = lldb.SBFileSpec("main.c")
+bp1 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 1 here", main_dot_c
 )
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp2_line, num_expected_locations=1
+bp2 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 2 here", main_dot_c
 )
 
 process = target.LaunchSimple(None, None, 
self.get_process_working_directory())
 self.assertTrue(process, VALID_PROCESS)
 
-thread = process.GetThreadAtIndex(0)
+thread = self.thread()
+
 if self.TraceOn():
 print("Backtrace at the first breakpoint:")
 for f in thread.frames:
 print(f)
+
 # Check that we have stopped at correct breakpoint.
 self.assertEqual(
-process.GetThreadAtIndex(0).frame[0].GetLineEntry().GetLine(),
-bp1_line,
+thread.frame[0].GetLineEntry().GetLine(),
+bp1.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 
@@ -70,7 +70,6 @@ def test(self):
 # 'continue' command.
 process.Continue()
 
-thread = process.GetThreadAtIndex(0)
 if self.TraceOn():
 print("Backtrace at the second breakpoint:")
 for f in thread.frames:
@@ -78,7 +77,7 @@ def test(self):
 # Check that we have stopped at the breakpoint
 self.assertEqual(
 thread.frame[0].GetLineEntry().GetLine(),
-bp2_line,
+bp2.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 # Double-check with GetPCAddress()

>From b579f4cf8a234331f0a8b2f276d438c22980a322 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 14:01:31 -0700
Subject: [PATCH 2/2] Fix test assertions in TestDAP_stepInTargets.py

---
 .../stepInTargets/TestDAP_stepInTargets.py| 25 +--
 .../API/tools/lldb-dap/stepInTargets/main.cpp |  6 ++---
 2 files changed, 20 insertions(+), 11 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6296f6554d07e..4b7caf99e95cc 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -55,14 +55,23 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify 

[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96687

>From b880f6d7951534fd90c3728fb9cabbe515295557 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 13:42:20 -0700
Subject: [PATCH 1/2] Fix flake in TestZerothFrame.py

This test is relying on the order of `process.threads` which is
nondeterministic. By selecting the thread based on whether it is
stopped at our breakpoint we can reliably select the correct one.
---
 .../unwind/zeroth_frame/TestZerothFrame.py| 23 +--
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git 
a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py 
b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
index f4e883d314644..d660844405e13 100644
--- a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
+++ b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
@@ -40,28 +40,28 @@ def test(self):
 target = self.dbg.CreateTarget(exe)
 self.assertTrue(target, VALID_TARGET)
 
-bp1_line = line_number("main.c", "// Set breakpoint 1 here")
-bp2_line = line_number("main.c", "// Set breakpoint 2 here")
-
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp1_line, num_expected_locations=1
+main_dot_c = lldb.SBFileSpec("main.c")
+bp1 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 1 here", main_dot_c
 )
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp2_line, num_expected_locations=1
+bp2 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 2 here", main_dot_c
 )
 
 process = target.LaunchSimple(None, None, 
self.get_process_working_directory())
 self.assertTrue(process, VALID_PROCESS)
 
-thread = process.GetThreadAtIndex(0)
+thread = self.thread()
+
 if self.TraceOn():
 print("Backtrace at the first breakpoint:")
 for f in thread.frames:
 print(f)
+
 # Check that we have stopped at correct breakpoint.
 self.assertEqual(
-process.GetThreadAtIndex(0).frame[0].GetLineEntry().GetLine(),
-bp1_line,
+thread.frame[0].GetLineEntry().GetLine(),
+bp1.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 
@@ -70,7 +70,6 @@ def test(self):
 # 'continue' command.
 process.Continue()
 
-thread = process.GetThreadAtIndex(0)
 if self.TraceOn():
 print("Backtrace at the second breakpoint:")
 for f in thread.frames:
@@ -78,7 +77,7 @@ def test(self):
 # Check that we have stopped at the breakpoint
 self.assertEqual(
 thread.frame[0].GetLineEntry().GetLine(),
-bp2_line,
+bp2.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 # Double-check with GetPCAddress()

>From b579f4cf8a234331f0a8b2f276d438c22980a322 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 14:01:31 -0700
Subject: [PATCH 2/2] Fix test assertions in TestDAP_stepInTargets.py

---
 .../stepInTargets/TestDAP_stepInTargets.py| 25 +--
 .../API/tools/lldb-dap/stepInTargets/main.cpp |  6 ++---
 2 files changed, 20 insertions(+), 11 deletions(-)

diff --git 
a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py 
b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
index 6296f6554d07e..4b7caf99e95cc 100644
--- a/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
+++ b/lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
@@ -55,14 +55,23 @@ def test_basic(self):
 self.assertEqual(len(step_in_targets), 3, "expect 3 step in targets")
 
 # Verify the target names are correct.
-self.assertEqual(step_in_targets[0]["label"], "bar()", "expect bar()")
-self.assertEqual(step_in_targets[1]["label"], "bar2()", "expect 
bar2()")
-self.assertEqual(
-step_in_targets[2]["label"], "foo(int, int)", "expect foo(int, 
int)"
-)
+# The order of funcA and funcB may change depending on the compiler 
ABI.
+funcA_target = None
+funcB_target = None
+for target in step_in_targets[0:2]:
+if "funcB" in target["label"]:
+funcB_target = target
+elif "funcA" in target["label"]:
+funcA_target = target
+else:
+self.fail(f"Unexpected step in target: {target}")
+
+self.assertIsNotNone(funcA_target, "expect funcA")
+self.assertIsNotNone(funcB_target, "expect funcB")
+self.assertIn("foo", step_in_targets[2]["label"], "expect foo")
 
-# Choose to step into second target and verify 

[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Applied formatter patch and rebased onto main 

https://github.com/llvm/llvm-project/pull/96685
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96685

>From b880f6d7951534fd90c3728fb9cabbe515295557 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 13:42:20 -0700
Subject: [PATCH] Fix flake in TestZerothFrame.py

This test is relying on the order of `process.threads` which is
nondeterministic. By selecting the thread based on whether it is
stopped at our breakpoint we can reliably select the correct one.
---
 .../unwind/zeroth_frame/TestZerothFrame.py| 23 +--
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git 
a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py 
b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
index f4e883d314644..d660844405e13 100644
--- a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
+++ b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
@@ -40,28 +40,28 @@ def test(self):
 target = self.dbg.CreateTarget(exe)
 self.assertTrue(target, VALID_TARGET)
 
-bp1_line = line_number("main.c", "// Set breakpoint 1 here")
-bp2_line = line_number("main.c", "// Set breakpoint 2 here")
-
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp1_line, num_expected_locations=1
+main_dot_c = lldb.SBFileSpec("main.c")
+bp1 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 1 here", main_dot_c
 )
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp2_line, num_expected_locations=1
+bp2 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 2 here", main_dot_c
 )
 
 process = target.LaunchSimple(None, None, 
self.get_process_working_directory())
 self.assertTrue(process, VALID_PROCESS)
 
-thread = process.GetThreadAtIndex(0)
+thread = self.thread()
+
 if self.TraceOn():
 print("Backtrace at the first breakpoint:")
 for f in thread.frames:
 print(f)
+
 # Check that we have stopped at correct breakpoint.
 self.assertEqual(
-process.GetThreadAtIndex(0).frame[0].GetLineEntry().GetLine(),
-bp1_line,
+thread.frame[0].GetLineEntry().GetLine(),
+bp1.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 
@@ -70,7 +70,6 @@ def test(self):
 # 'continue' command.
 process.Continue()
 
-thread = process.GetThreadAtIndex(0)
 if self.TraceOn():
 print("Backtrace at the second breakpoint:")
 for f in thread.frames:
@@ -78,7 +77,7 @@ def test(self):
 # Check that we have stopped at the breakpoint
 self.assertEqual(
 thread.frame[0].GetLineEntry().GetLine(),
-bp2_line,
+bp2.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 # Double-check with GetPCAddress()

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/96685

>From a3c524bebfc976f3dfee5b67dac490ed44705d6a Mon Sep 17 00:00:00 2001
From: kendal 
Date: Wed, 3 Jul 2024 11:18:43 -0700
Subject: [PATCH 1/2] Fix type error when calling random.randrange with 'float'
 arg

---
 .../lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py 
b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
index 5bd352d3ac549..94376a16d39f6 100644
--- 
a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
+++ 
b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
@@ -1042,7 +1042,7 @@ def __init__(self):
 class Pipe(object):
 def __init__(self, prefix):
 while True:
-self.name = "lldb-" + str(random.randrange(1e10))
+self.name = "lldb-" + str(random.randrange(10**10))
 full_name = ".\\pipe\\" + self.name
 self._handle = CreateNamedPipe(
 full_name,

>From e5f11c6c57980b75fd68451971db75f6ef0a777a Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 24 Jun 2024 13:42:20 -0700
Subject: [PATCH 2/2] Fix flake in TestZerothFrame.py

This test is relying on the order of `process.threads` which is
nondeterministic. By selecting the thread based on whether it is
stopped at our breakpoint we can reliably select the correct one.
---
 .../unwind/zeroth_frame/TestZerothFrame.py| 23 +--
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git 
a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py 
b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
index f4e883d314644..d660844405e13 100644
--- a/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
+++ b/lldb/test/API/functionalities/unwind/zeroth_frame/TestZerothFrame.py
@@ -40,28 +40,28 @@ def test(self):
 target = self.dbg.CreateTarget(exe)
 self.assertTrue(target, VALID_TARGET)
 
-bp1_line = line_number("main.c", "// Set breakpoint 1 here")
-bp2_line = line_number("main.c", "// Set breakpoint 2 here")
-
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp1_line, num_expected_locations=1
+main_dot_c = lldb.SBFileSpec("main.c")
+bp1 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 1 here", main_dot_c
 )
-lldbutil.run_break_set_by_file_and_line(
-self, "main.c", bp2_line, num_expected_locations=1
+bp2 = target.BreakpointCreateBySourceRegex(
+"// Set breakpoint 2 here", main_dot_c
 )
 
 process = target.LaunchSimple(None, None, 
self.get_process_working_directory())
 self.assertTrue(process, VALID_PROCESS)
 
-thread = process.GetThreadAtIndex(0)
+thread = self.thread()
+
 if self.TraceOn():
 print("Backtrace at the first breakpoint:")
 for f in thread.frames:
 print(f)
+
 # Check that we have stopped at correct breakpoint.
 self.assertEqual(
-process.GetThreadAtIndex(0).frame[0].GetLineEntry().GetLine(),
-bp1_line,
+thread.frame[0].GetLineEntry().GetLine(),
+bp1.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 
@@ -70,7 +70,6 @@ def test(self):
 # 'continue' command.
 process.Continue()
 
-thread = process.GetThreadAtIndex(0)
 if self.TraceOn():
 print("Backtrace at the second breakpoint:")
 for f in thread.frames:
@@ -78,7 +77,7 @@ def test(self):
 # Check that we have stopped at the breakpoint
 self.assertEqual(
 thread.frame[0].GetLineEntry().GetLine(),
-bp2_line,
+bp2.GetLocationAtIndex(0).GetAddress().GetLineEntry().GetLine(),
 "LLDB reported incorrect line number.",
 )
 # Double-check with GetPCAddress()

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test] Fix type error when calling random.randrange with 'float' arg (PR #97328)

2024-07-03 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Using `10**10`. Works for me. Updated and rebased on top of `main`.

https://github.com/llvm/llvm-project/pull/97328
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test] Fix type error when calling random.randrange with 'float' arg (PR #97328)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/97328

>From a3c524bebfc976f3dfee5b67dac490ed44705d6a Mon Sep 17 00:00:00 2001
From: kendal 
Date: Wed, 3 Jul 2024 11:18:43 -0700
Subject: [PATCH] Fix type error when calling random.randrange with 'float' arg

---
 .../lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py 
b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
index 5bd352d3ac549..94376a16d39f6 100644
--- 
a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
+++ 
b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
@@ -1042,7 +1042,7 @@ def __init__(self):
 class Pipe(object):
 def __init__(self, prefix):
 while True:
-self.name = "lldb-" + str(random.randrange(1e10))
+self.name = "lldb-" + str(random.randrange(10**10))
 full_name = ".\\pipe\\" + self.name
 self._handle = CreateNamedPipe(
 full_name,

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][test] Fix type error when calling random.randrange with 'float' arg (PR #97328)

2024-07-03 Thread Kendal Harland via lldb-commits

https://github.com/kendalharland updated 
https://github.com/llvm/llvm-project/pull/97328

>From 9bb6749f1dfa57343f4e546406576fec2c7afcc5 Mon Sep 17 00:00:00 2001
From: kendal 
Date: Mon, 1 Jul 2024 10:33:51 -0700
Subject: [PATCH] Fix type error when calling random.randrange with 'float' arg

---
 .../tools/lldb-server/commandline/TestGdbRemoteConnection.py| 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py 
b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
index 853b7ad5ef290..6f10aee3d48b5 100644
--- a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
+++ b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
@@ -75,7 +75,7 @@ def __init__(self):
 class Pipe(object):
 def __init__(self, prefix):
 while True:
-self.name = "lldb-" + str(random.randrange(1e10))
+self.name = "lldb-" + str(random.randrange(10**10))
 full_name = ".\\pipe\\" + self.name
 self._handle = CreateNamedPipe(
 full_name,

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-02 Thread Kendal Harland via lldb-commits

kendalharland wrote:

Sure thing, I hadn't hooked up the formatter yet so I'll run it and reupload. 
Thanks for the reviews! 

https://github.com/llvm/llvm-project/pull/96685
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-02 Thread Kendal Harland via lldb-commits

kendalharland wrote:

> Sorry, was in the middle of review then got interrupted/distracted by other 
> stuff yesterday.
> 
> Looks good.

No problem at all. Thanks for the reviews! I'll look into the build failures.

https://github.com/llvm/llvm-project/pull/96687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


  1   2   >