[llvm] r209998 - Support: add Windows ARM EH data structures

Renato Golin renato.golin at linaro.org
Mon Jun 2 05:41:21 PDT 2014


On 2 June 2014 02:17, Saleem Abdulrasool <compnerd at compnerd.org> wrote:
> +  bool H() const {
> +    assert((Flag() == RuntimeFunctionFlag::RFF_Packed ||
> +            Flag() == RuntimeFunctionFlag::RFF_PackedFragment) &&
> +           "packed form required for this operation");
> +    return ((UnwindData & 0x00008000) >> 15);
> +  }
> +  uint8_t Reg() const {
> +    assert((Flag() == RuntimeFunctionFlag::RFF_Packed ||
> +            Flag() == RuntimeFunctionFlag::RFF_PackedFragment) &&
> +           "packed form required for this operation");
> +    return ((UnwindData & 0x00070000) >> 16);
> +  }
> +  bool R() const {
> +    assert((Flag() == RuntimeFunctionFlag::RFF_Packed ||
> +            Flag() == RuntimeFunctionFlag::RFF_PackedFragment) &&
> +           "packed form required for this operation");
> +    return ((UnwindData & 0x00080000) >> 19);
> +  }

Hi Saleem,

These (and the ones below), look like they could be a single function
with a bit of magic...

cheers,
--renato



More information about the llvm-commits mailing list