G06F11/3644

TAGGED TRACING, LOGGING AND PERFORMANCE MEASUREMENTS
20170286262 · 2017-10-05 ·

Instrumenting code. One embodiment includes identifying a line of source code having an incomplete instrumentation. A unique identifier tag is obtained from an identifier source. The unique identifier tag is inserted into the instrumentation.

PROGRAM TESTING METHOD AND APPARATUS, COMPUTER DEVICE, AND STORAGE MEDIUM

A program testing method is provided. The method includes receiving a test account adding instruction the test account adding instruction identifying a second test account, acquiring a first target code corresponding to a target program in response to the test account adding instruction, the first target code corresponding to a first page, a first test account being logged in on the first page, and the first page being generated according to the first target code, generating a second page corresponding to the second test account according to the first target code, and interacting through the first page and the second page to test the target program. Apparatus and computer-readable medium counterpart embodiments are also provided.

Registration-based remote debug watch and modify

A remote debugging technique provides anonymity of program variables and selective debugging capability by providing a registration facility by which program variables are registered locally with a debugging module. An external program then communicates with the debugging modules and observes and/or modifies the program variables by specifying either an index or a variable name. The need to publish symbols is thereby averted and only the variables that a developer is interested in observing need be registered.

Systems, methods, and devices for vertically integrated instrumentation and trace reconstruction

In an embodiment, a system is configured to replay and/or reconstruct execution events and system states in real time or substantially in real time starting from the point when execution of a target program has stopped to the point when the user desires to step through the target program's execution in order to debug the software. In an embodiment, a system is configured to efficiently collect trace data that is sufficient to reconstruct the state of a computer system at any point of time from the start of execution to the time execution was stopped. Efficient and effective debugging of the software can be performed using embodiments of the disclosed methods, systems, and devices.

Concurrency testing
11243873 · 2022-02-08 · ·

Techniques are disclosed relating to testing application code. A computer system, in various embodiments, receives application code to be tested by the computer system and separate information defining actions to be performed at specified locations within the application code. In various embodiments, the computer system executes the application code in a test environment in which the actions defined by the separate information are retrieved and performed by a plurality of threads of the application code at the specified locations to control flow of the plurality of threads through the application code. In some embodiments, a first one of the plurality of threads is operable to perform at least one of the actions to control the flow of a second one of the plurality of threads.

METHOD AND TOOL FOR GENERATING A PROGRAM CODE CONFIGURED TO PERFORM CONTROL FLOW CHECKING ON ANOTHER PROGRAM CODE CONTAINING INSTRUCTIONS FOR INDIRECT BRANCHING
20170242778 · 2017-08-24 ·

Synchronization points are inserted into a program code to be monitored, and are associated with different branches resulting from execution of an indirect branch instruction. The synchronization points can be accessed by the monitored program code for the purpose of identifying which branch to use during execution of the indirect branch instruction of the monitored program code.

METHOD OF REORDERING CONDITION CHECKS
20170242776 · 2017-08-24 ·

Described is a computer-implemented method of reordering condition checks. Two or more condition checks in computer code that may be reordered within the code are identified. It is determined that the execution frequency of a later one of the condition checks is satisfied at a greater frequency than a preceding one of the condition checks. It is determined that there is an absence of side effects in the two or more condition checks. The values of the condition checks are propagated and abstract interpretation is performed on the values that are propagated. It is determined that the condition checks are exclusive of each other, and the condition checks are reordered within the computer code.

Device and method for reinforcing control flow integrity of software application
11429511 · 2022-08-30 · ·

This document describes a device and method for a device to reinforce the control flow integrity of a software application as the application is being executed on the device.

Stack overflow protection device, method, and related compiler and computing device

The present disclosure relates to a stack overflow protection device and a stack protection method. According to the present disclosure, a stack overflow protection device is provided, which includes a dividing unit configured to divide at least one function in the input codes into a code region with a string operation and a code region without a string operation. The device also includes a stack protection unit configured to set up stack protection in the code region with a string operation. The present disclosure further provides a stack protection method.

Post-silicon configurable instruction behavior based on input operands

A system and method for controlling post-silicon configurable instruction behavior are provided. For example, the method includes receiving data related to a compute circuit. The method also includes detecting a data pattern in the data. The method further includes determining that the data pattern is a special case that the compute circuit may handle improperly. The method also includes selecting a value from a post-silicon configurable data set based on the detected data. Further, the method includes changing a behavior of the compute circuit to produce a different output result based on the value selected from the post-silicon configurable data set.