mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-22 13:05:52 -04:00

This is the conclusion of an effort to get LLDB's Python code structured into a bona-fide Python package. This has a number of benefits, but most notably the ability to more easily share Python code between different but related pieces of LLDB's Python infrastructure (for example, `scripts` can now share code with `test`). llvm-svn: 251532
46 lines
1.0 KiB
C++
46 lines
1.0 KiB
C++
//===-- main.cpp ------------------------------------------------*- C++ -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// This test is intended to verify that thread states are properly maintained
|
|
// when transitional actions are performed in the debugger. Most of the logic
|
|
// is in the test script. This program merely provides places where the test
|
|
// can create the intended states.
|
|
|
|
#include <chrono>
|
|
#include <thread>
|
|
|
|
volatile int g_test = 0;
|
|
|
|
int addSomething(int a)
|
|
{
|
|
return a + g_test;
|
|
}
|
|
|
|
int doNothing()
|
|
{
|
|
int temp = 0; // Set first breakpoint here
|
|
|
|
while (!g_test && temp < 5)
|
|
{
|
|
++temp;
|
|
std::this_thread::sleep_for(std::chrono::seconds(2));
|
|
}
|
|
|
|
return temp; // Set second breakpoint here
|
|
}
|
|
|
|
int main ()
|
|
{
|
|
int result = doNothing();
|
|
|
|
int i = addSomething(result);
|
|
|
|
return 0;
|
|
}
|