Displaying 4 results from an estimated 4 matches for "field2trunc".
Did you mean:
field2trunced
2013 Aug 09
2
[LLVMdev] [RFC] Poor code generation for paired load
...1. %chunk64 = load i64
2. %field1trunced = trunc i64 %chunk64 to i32 // <— build field1 from chunk
3. %field1float = bitcast i32 field1trunced to float // <— build field1 from chunk
4. %field2shifted = lshr i64 %chunk64, 32 // <— build field2 from chunk
5. %field2trunced = trunc i64 %field2shifter to i32 // <— build field2 from chunk
6. %field2 = bitcast i32 %field2trunced to float // <— build field2 from chunk
Scenario #1:
Floating point registers are on another register bank and register bank moves are almost as expensive as loads (instruct...
2013 Aug 12
2
[LLVMdev] [RFC] Poor code generation for paired load
...%chunk64 to i32 // <— build field1
>> from chunk
>> 3. %field1float = bitcast i32 field1trunced to float // <— build
>> field1 from chunk
>> 4. %field2shifted = lshr i64 %chunk64, 32 // <— build field2
>> from chunk
>> 5. %field2trunced = trunc i64 %field2shifter to i32 // <— build field2
>> from chunk
>> 6. %field2 = bitcast i32 %field2trunced to float // <— build
>> field2 from chunk
>>
>> Scenario #1:
>> Floating point registers are on another register bank and register...
2013 Aug 10
0
[LLVMdev] [RFC] Poor code generation for paired load
...ield1trunced = trunc i64 %chunk64 to i32 // <— build field1
> from chunk
> 3. %field1float = bitcast i32 field1trunced to float // <— build
> field1 from chunk
> 4. %field2shifted = lshr i64 %chunk64, 32 // <— build field2
> from chunk
> 5. %field2trunced = trunc i64 %field2shifter to i32 // <— build field2
> from chunk
> 6. %field2 = bitcast i32 %field2trunced to float // <— build
> field2 from chunk
>
> Scenario #1:
> Floating point registers are on another register bank and register bank
> moves are almo...
2013 Aug 12
0
[LLVMdev] [RFC] Poor code generation for paired load
...ield1trunced = trunc i64 %chunk64 to i32 // <— build field1
> from chunk
> 3. %field1float = bitcast i32 field1trunced to float // <— build
> field1 from chunk
> 4. %field2shifted = lshr i64 %chunk64, 32 // <— build field2
> from chunk
> 5. %field2trunced = trunc i64 %field2shifter to i32 // <— build field2
> from chunk
> 6. %field2 = bitcast i32 %field2trunced to float // <— build
> field2 from chunk
>
> Scenario #1:
> Floating point registers are on another register bank and register bank
> moves are almo...