File tree Expand file tree Collapse file tree 5 files changed +14
-2
lines changed Expand file tree Collapse file tree 5 files changed +14
-2
lines changed Original file line number Diff line number Diff line change 2
2
members = [" fuzz" ]
3
3
4
4
[workspace .package ]
5
- version = " 0.2.1+llvm-687bd77e2c26 "
5
+ version = " 0.2.1+llvm-55c2211a233e "
6
6
edition = " 2021"
7
7
license = " Apache-2.0 WITH LLVM-exception"
8
8
Original file line number Diff line number Diff line change @@ -331,6 +331,7 @@ struct FuzzOp {
331
331
( 8 , "Float8E4M3FNUZ" ) ,
332
332
( 8 , "Float8E4M3B11FNUZ" ) ,
333
333
( 16 , "BFloat" ) ,
334
+ ( 19 , "FloatTF32" ) ,
334
335
( 80 , "x87DoubleExtended" ) ,
335
336
]
336
337
. into_iter ( )
@@ -339,6 +340,7 @@ struct FuzzOp {
339
340
let name = match ( w, cxx_apf_semantics) {
340
341
( 8 , s) if s. starts_with ( "Float8" ) => s. replace ( "Float8" , "F8" ) ,
341
342
( 16 , "BFloat" ) => "BrainF16" . into ( ) ,
343
+ ( 19 , "FloatTF32" ) => "NV_TensorF32" . into ( ) ,
342
344
( 80 , "x87DoubleExtended" ) => "X87_F80" . into ( ) ,
343
345
_ => {
344
346
assert ! ( cxx_apf_semantics. starts_with( "IEEE" ) ) ;
Original file line number Diff line number Diff line change @@ -263,6 +263,11 @@ float_reprs! {
263
263
const REPR_TAG = 16 + 1 ;
264
264
extern fn = cxx_apf_fuzz_eval_op_brainf16;
265
265
}
266
+ NV_TensorF32 ( u32 ) {
267
+ type RustcApFloat = rustc_apfloat:: ieee:: FloatTF32 ;
268
+ const REPR_TAG = 32 + 1 ;
269
+ extern fn = cxx_apf_fuzz_eval_op_nv_tensorf32;
270
+ }
266
271
X87_F80 ( u128 ) {
267
272
type RustcApFloat = rustc_apfloat:: ieee:: X87DoubleExtended ;
268
273
extern fn = cxx_apf_fuzz_eval_op_x87_f80;
Original file line number Diff line number Diff line change @@ -416,6 +416,11 @@ ieee_semantics! {
416
416
const NAN_ENCODING : NanEncoding = NanEncoding :: NegativeZero ;
417
417
const MIN_EXP : ExpInt = Self :: IEEE_MIN_EXP - 4 ;
418
418
} ,
419
+
420
+ // Floating point number that occupies 32 bits or less of storage, providing
421
+ // improved range compared to half (16-bit) formats, at (potentially)
422
+ // greater throughput than single precision (32-bit) formats.
423
+ FloatTF32 = FloatTF32S ( 19 : 8 ) ,
419
424
}
420
425
421
426
// FIXME(eddyb) consider moving X87-specific logic to a "has explicit integer bit"
Original file line number Diff line number Diff line change 1
1
//! Port of LLVM's APFloat software floating-point implementation from the
2
2
//! following C++ sources (please update commit hash when backporting):
3
- //! <https://github.com/llvm/llvm-project/commit/687bd77e2c26487cba727aacfa7067dd01286be0 >
3
+ //! <https://github.com/llvm/llvm-project/commit/55c2211a233e11179048cf58778f40e5a62f444a >
4
4
//! * `llvm/include/llvm/ADT/APFloat.h` -> `Float` and `FloatConvert` traits
5
5
//! * `llvm/lib/Support/APFloat.cpp` -> `ieee` and `ppc` modules
6
6
//! * `llvm/unittests/ADT/APFloatTest.cpp` -> `tests` directory
You can’t perform that action at this time.
0 commit comments