169ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes/*
269ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * Copyright (C) 2011 The Android Open Source Project
369ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes *
469ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * Licensed under the Apache License, Version 2.0 (the "License");
569ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * you may not use this file except in compliance with the License.
669ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * You may obtain a copy of the License at
769ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes *
869ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes *      http://www.apache.org/licenses/LICENSE-2.0
969ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes *
1069ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * Unless required by applicable law or agreed to in writing, software
1169ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS,
1269ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1369ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * See the License for the specific language governing permissions and
1469ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes * limitations under the License.
1569ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes */
1669ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes
1769ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes#include "Dalvik.h"
1869ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes#include "native/InternalNativePriv.h"
1969ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes
2069ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughesstatic void Float_floatToIntBits(const u4* args, JValue* pResult)
2169ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes{
2269ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes    MAKE_INTRINSIC_TRAMPOLINE(javaLangFloat_floatToIntBits);
2369ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes}
2469ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes
2569ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughesstatic void Float_floatToRawIntBits(const u4* args, JValue* pResult)
2669ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes{
2769ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes    MAKE_INTRINSIC_TRAMPOLINE(javaLangFloat_floatToRawIntBits);
2869ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes}
2969ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes
3069ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughesstatic void Float_intBitsToFloat(const u4* args, JValue* pResult)
3169ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes{
3269ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes    MAKE_INTRINSIC_TRAMPOLINE(javaLangFloat_intBitsToFloat);
3369ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes}
3469ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes
3569ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughesconst DalvikNativeMethod dvm_java_lang_Float[] = {
3669ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes    { "floatToIntBits",    "(F)I", Float_floatToIntBits },
3769ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes    { "floatToRawIntBits", "(F)I", Float_floatToRawIntBits },
3869ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes    { "intBitsToFloat",    "(I)F", Float_intBitsToFloat },
3969ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes    { NULL, NULL, NULL },
4069ee8f605ad4139c8b9a39821fd7a4cadb9d9337Elliott Hughes};
41