blob: 088f644c78e7ada80a3c65c4f818aa5505d77bb5 [file]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
#include "Backend.h"
#include "ARMEncode.h"
bool
EncoderMD::EncodeImmediate16(int32 constant, DWORD * result)
{
if (constant > 0xFFFF)
{
return FALSE;
}
DWORD encode = (constant & 0xFFFF) << 5;
*result |= encode;
return TRUE;
}
ENCODE_32
EncoderMD::BranchOffset_26(int64 x)
{
Assert(IS_CONST_INT26(x >> 1));
Assert((x & 0x3) == 0);
x = x >> 2;
return (ENCODE_32) x;
}