IP Library › Granted Patent US 10,324,715
Granted Patent B2
US 10,324,715 · App. 15/812,515 · Granted Jun 18, 2019

Compiler controls for program regions

Inventors: Michael K. Gschwind (Chappaqua, NY); Valentina Salapura (Chappaqua, NY)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F9/30014G06F9/30185G06F9/30189
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,324,715
App. No.
15/812,515
Granted
Jun 18, 2019
Kind
B2
Abstract

Setting or updating of floating point controls is managed. Floating point controls include controls used for floating point operations, such as rounding mode and/or other controls. Further, floating point controls include status associated with floating point operations, such as floating point exceptions and/or others. The management of the floating point controls includes efficiently updating the controls, while reducing costs associated therewith.

Claims (18)

1. A computer-implemented method of facilitating processing within a computing environment, the computer-implemented method of comprising:

determining that a program region has a floating point control associated therewith, the floating point control indicated by at least one delimiter associated with the program region;

using the floating point control indicated by the at least one delimiter to update an active floating point mode, wherein the using the floating point control to update the active floating point mode comprises:

determining whether the at least one delimiter comprises a begin floating point control delimiter;

saving, based on determining the at least one delimiter comprises the begin floating point control delimiter, a current value of the floating point control;

setting the active floating point mode to a value of the floating point control indicated by the at least one delimiter;

determining whether the at least one delimiter comprises an end floating point control delimiter; and

restoring the active floating mode to the current value of the floating point control that was saved, based on determining the at least one delimiter comprises the end floating point control delimiter; and

generating code for at least one instruction in the program region based on the active floating point mode.

2. The computer-implemented method of claim 1 , wherein the at least one delimiter comprises a starting delimiter.

3. The computer-implemented method of claim 2 , wherein the at least one delimiter further comprises an ending delimiter.

4. The computer-implemented method of claim 1 , wherein the at least one delimiter comprises a set delimiter.

5. The computer-implemented method of claim 1 , wherein the program region comprises a set of instructions.

6. The computer-implemented method of claim 1 , wherein the program region comprises a region selected from a group consisting of: a function, a method, a loop, an instruction, and a block of instructions.

7. The computer-implemented method of claim 1 , wherein the determining that the program region has a floating point control associated therewith comprises detecting the at least one delimiter in the program region.

8. The computer-implemented method of claim 1 , wherein the using the floating point control to update the active floating point mode comprises:

determining whether the at least one delimiter comprises a set delimiter; and

setting the active floating point mode to a value of the floating point control indicated by the at least one delimiter, based on determining the at least one delimiter comprises the set delimiter.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2017
From: GSCHWIND, MICHAEL K.; SALAPURA, VALENTINA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044134/0979 →
Continuity (2)
Continuation 15631080 · Jun 23, 2017
Related Publication 20180373537A1 · Dec 27, 2018