| 551 | } |
| 552 | |
| 553 | static BX_NO_INLINE bool getIntelExtensions(ID3D11Device* _device) |
| 554 | { |
| 555 | if (windowsVersionIs(Condition::GreaterEqual, 0x0604) ) |
| 556 | { |
| 557 | uint8_t temp[28]; |
| 558 | |
| 559 | bx::ErrorAssert err; |
| 560 | |
| 561 | bx::StaticMemoryBlockWriter writer(&temp, sizeof(temp) ); |
| 562 | bx::write(&writer, "INTCEXTNCAPSFUNC", 16, &err); |
| 563 | bx::write(&writer, kIntelExtensionInterfaceVersion, &err); |
| 564 | bx::write(&writer, uint32_t(0), &err); |
| 565 | bx::write(&writer, uint32_t(0), &err); |
| 566 | |
| 567 | if (SUCCEEDED(setIntelExtension(_device, temp, sizeof(temp) ) ) ) |
| 568 | { |
| 569 | bx::MemoryReader reader(&temp, sizeof(temp) ); |
| 570 | bx::skip(&reader, 16); |
| 571 | |
| 572 | uint32_t version; |
| 573 | bx::read(&reader, version, &err); |
| 574 | |
| 575 | uint32_t driverVersion; |
| 576 | bx::read(&reader, driverVersion, &err); |
| 577 | |
| 578 | return version <= driverVersion; |
| 579 | } |
| 580 | } |
| 581 | |
| 582 | return false; |
| 583 | } |
| 584 | |
| 585 | void resume(ID3D11Device* _device) |
| 586 | { |
no test coverage detected