Comments (4)
note: this is very similar to hoistEntryPointParameterFromStruct
from slang.
Is this duplicate to #4375 ?
from slang.
Is this duplicate to #4375 ?
Looks like it is a partial duplicate.
[[color(n)]]
is fragment shader, not vertex shader. I noticed the issue does discuss fragment shader inputs though.
from slang.
Plan to fix the following issues (all steps are independent and should compile/work, may split into multiple PR's):
[PR to fix this code-gen problem]
- Allow n number "allowed types" instead of only two "allowed types" for when legalizing
System Semantics
for Metal - done - Add logic to legalize Structs for attributes. We do not need to flatten the struct, but we do need to annotate each member appropriately (and account for attributes of nested structs shared across entry points) - done
- Use [2] to add logic to legalize output attributes - done
- Use [2] to add logic to legalize input attributes - done
- Make more explicit tests for this section of code to make problem diagnosis easier in the future - done
note: moved someEntryPointVaryingParamLegalizeContext
logic tolegalizeEntryPointForMetal
since some effort was already done for this and cleanup can be done later-on
Reasons for clean up PR to be seperate
6. Move parts of legalizeEntryPointForMetal
into EntryPointVaryingParamLegalizeContext
so code compiles
7. Restructure so User Input Semantics legalization works
8. Restructure so User Output Semantics legalization works.
9. Restructure so System Semantic legalization works
from slang.
Related Issues (20)
- Resource variables used in a global initializer function do not hoist correctly
- Error not propagated from failed DXC compile
- `tests\autodiff\reverse-while-loop-3.slang` has incorrect results
- `kIROp_MakeStruct` differentiates when it should not be differentiating
- Uninitialized variable check will infinitely loop if pointer to a specialized IR object is used
- `DifferentialType` `ownedScope` does not track an associated `ContainerDecl`
- Problem with exported matrices in DxcLinker HOT 1
- Support generic type constraints that are dependent on another generic type parameter.
- Initial precompiled SPIR-V support (-embed-spirv)
- Autodiff Usability: CLI and API methods to extract per-instruction context overhead information HOT 1
- Reflection API: Add features needed for slangpy
- Auto documentation code does not correctly exclude synthesized decl's from documentation
- Support `where` clause for defining generic constraints.
- Implement autodiff support for Tuple types.
- Implement `IFunc` proposal.
- Emit valid WGSL for all compute tests
- `tests\autodiff\generic-jvp.slang` test is incorrect
- Document rules for initializer lists
- Capabilities and warning HOT 1
- Reuse graphics device in slang-test over multiple tests
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from slang.