1*99451b44SJordan Rupprecht //===-- main.c --------------------------------------------------*- C++ -*-===//
2*99451b44SJordan Rupprecht //
3*99451b44SJordan Rupprecht // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*99451b44SJordan Rupprecht // See https://llvm.org/LICENSE.txt for license information.
5*99451b44SJordan Rupprecht // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*99451b44SJordan Rupprecht //
7*99451b44SJordan Rupprecht //===----------------------------------------------------------------------===//
8*99451b44SJordan Rupprecht #include <stdio.h>
9*99451b44SJordan Rupprecht #include <stdint.h>
10*99451b44SJordan Rupprecht 
11*99451b44SJordan Rupprecht int32_t global = 0; // Watchpoint variable declaration.
12*99451b44SJordan Rupprecht 
13*99451b44SJordan Rupprecht static void modify(int32_t &var) {
14*99451b44SJordan Rupprecht     ++var;
15*99451b44SJordan Rupprecht }
16*99451b44SJordan Rupprecht 
17*99451b44SJordan Rupprecht int main(int argc, char** argv) {
18*99451b44SJordan Rupprecht     int local = 0;
19*99451b44SJordan Rupprecht     printf("&global=%p\n", &global);
20*99451b44SJordan Rupprecht     printf("about to write to 'global'...\n"); // Set break point at this line.
21*99451b44SJordan Rupprecht                                                // When stopped, watch 'global',
22*99451b44SJordan Rupprecht                                                // for the condition "global == 5".
23*99451b44SJordan Rupprecht     for (int i = 0; i < 10; ++i)
24*99451b44SJordan Rupprecht         modify(global);
25*99451b44SJordan Rupprecht 
26*99451b44SJordan Rupprecht     printf("global=%d\n", global);
27*99451b44SJordan Rupprecht }
28