llvm-6502/lib/Target/WebAssembly/WebAssemblyInstrFloat.td
JF Bastien 7bfd515593 WebAssembly: basic instructions todo, and basic register info.
Summary:
This code is based on AArch64 for modern backend good practice, and NVPTX for
virtual ISA concerns.

Reviewers: sunfish

Subscribers: aemerson, llvm-commits, jfb

Differential Revision: http://reviews.llvm.org/D11070

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241923 91177308-0d34-0410-b5e6-96231b3b80d8
2015-07-10 18:23:10 +00:00

38 lines
1.3 KiB
TableGen

// WebAssemblyInstrFloat.td-WebAssembly Float codegen support ---*- tablegen -*-
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
///
/// \file
/// \brief WebAssembly Floating-point operand code-gen constructs.
///
//===----------------------------------------------------------------------===//
/*
* TODO(jfb): Add the following for 32-bit and 64-bit.
*
* float32.add: addition
* float32.sub: subtraction
* float32.mul: multiplication
* float32.div: division
* float32.abs: absolute value
* float32.neg: negation
* float32.copysign: copysign
* float32.ceil: ceiling operation
* float32.floor: floor operation
* float32.trunc: round to nearest integer towards zero
* float32.nearestint: round to nearest integer, ties to even
* float32.eq: compare equal
* float32.lt: less than
* float32.le: less than or equal
* float32.gt: greater than
* float32.ge: greater than or equal
* float32.sqrt: square root
* float32.min: minimum (binary operator); if either operand is NaN, returns NaN
* float32.max: maximum (binary operator); if either operand is NaN, returns NaN
*/