1f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen//===-- main.c --------------------------------------------------*- C++ -*-===//
2f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen//
3f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen//                     The LLVM Compiler Infrastructure
4f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen//
5f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen// This file is distributed under the University of Illinois Open Source
6f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen// License. See LICENSE.TXT for details.
7f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen//
8f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen//===----------------------------------------------------------------------===//
9f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen#include <stdio.h>
10f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen#include <stdint.h>
11f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen
12f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chenint32_t global = 0; // Watchpoint variable declaration.
139e98559420d8c7c248b0c75b48db65ffd878402bJohnny Chenint32_t cookie = 0;
14f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen
15f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chenstatic void modify(int32_t &var) {
16f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen    ++var;
17f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen}
18f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen
19f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chenint main(int argc, char** argv) {
20f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen    int local = 0;
21f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen    printf("&global=%p\n", &global);
22f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen    printf("about to write to 'global'...\n"); // Set break point at this line.
23f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen    for (int i = 0; i < 10; ++i)
24f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen        modify(global);
25f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen
26f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen    printf("global=%d\n", global);
279e98559420d8c7c248b0c75b48db65ffd878402bJohnny Chen    printf("cookie=%d\n", cookie);
28f3ec4617297810223deb545cb68214ca4dd8009cJohnny Chen}
29