# Large Integer Functions

The following functions are used with large integers.

## In this section

Function | Description |
---|---|

Multiplies two signed 32-bit integers, returning a signed 64-bit integer result. | |

Performs a left logical shift operation on an unsigned 64-bit integer value. The function provides improved shifting code for left logical shifts where the shift count is in the range 0-31. | |

Performs a right arithmetic shift operation on a signed 64-bit integer value. The function provides improved shifting code for right arithmetic shifts where the shift count is in the range 0-31. | |

Performs a right logical shift operation on an unsigned 64-bit integer value. The function provides improved shifting code for right logical shifts where the shift count is in the range 0-31. | |

Multiplies two 32-bit values and then divides the 64-bit result by a third 32-bit value. | |

Multiplies two 64-bit integers to produce a 128-bit integer. | |

Multiplies two 64-bit integers to produce a 128-bit integer, shifts the product to the right by the specified number of bits, and returns the low 64 bits of the result. | |

Multiplies two 64-bit integers to produce a 128-bit integer and gets the high 64 bits. | |

Counts the number of one bits (population count) in a 64-bit unsigned integer. | |

Shifts 128-bit left. | |

Shifts 128-bit right. | |

Multiplies two unsigned 32-bit integers, returning an unsigned 64-bit integer result. | |

Multiplies two unsigned 64-bit integers to produce an unsigned 128-bit integer. | |

Multiplies two unsigned 64-bit integers to produce an unsigned 128-bit integer, shifts the product to the right by the specified number of bits, and returns the low 64 bits of the result. | |

Multiplies two 64-bit integers to produce a 128-bit integer and gets the high unsigned 64 bits. |