Hm, I hadn't seen read_register and write_register, it almost looks like what I 
want, however it seems that it's used specifically for named registers that map 
to a backend register (and uses CopyFromReg on them). The issue with this is 
that none of these special registers are real registers in the backend, they 
just get encoded to immediate field(s).

I however hadn't considered that use of metadata to pass strings through the IR 
(like read/write_register do) was an acceptable way of doing things. So I might 
be able to create my own similar intrinsics that use this method of passing the 
special register string straight through.

Tim, I avoided doing more analysis than I did in the frontend simply because 
you'd need to get the the point of using the backend SysRegMappers in the 
frontend, which seemed like the wrong thing to do. That said, if I take the 
above approach I could easily do this analysis at the lowering stage, which 
would allow for proper diagnostics. (Assuming emitting these diagnostics in the 
backend rather than frontend is acceptable?)

http://reviews.llvm.org/D6247



_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to