Actions

icon Post
text/html Subscribe
text/html Unsubscribe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

IPP and split complex block layout


  • To: VSIPL++ Developers List <vsipl++@xxxxxxxxxxxxxxxx>
  • Subject: IPP and split complex block layout
  • From: Stefan Seefeld <stefan@xxxxxxxxxxxxxxxx>
  • Date: Fri, 14 Oct 2005 10:52:16 -0400

Trying out Don's elementwise.cpp tests I now get (expected) errors with
IPP, since its elementwise functions assume interleaved format, i.e.
complex<T> *, instead of std::pair<T*,T*>.

The attached patch adds a ct-check to make the evaluator fail on complex
split blocks.


Regards,
		Stefan
Index: src/vsip/impl/ipp.hpp
===================================================================
RCS file: /home/cvs/Repository/vpp/src/vsip/impl/ipp.hpp,v
retrieving revision 1.4
diff -u -r1.4 ipp.hpp
--- src/vsip/impl/ipp.hpp	21 Sep 2005 09:38:59 -0000	1.4
+++ src/vsip/impl/ipp.hpp	14 Oct 2005 14:50:44 -0000
@@ -123,7 +123,14 @@
      // check that direct access is supported
      Ext_data_cost<DstBlock>::value == 0 &&
      Ext_data_cost<LBlock>::value == 0 &&
-     Ext_data_cost<RBlock>::value == 0;
+     Ext_data_cost<RBlock>::value == 0 &&
+     // Complex split format is not (yet) supported.
+     Type_equal<typename Block_layout<DstBlock>::complex_type,
+		Cmplx_inter_fmt>::value &&
+     Type_equal<typename Block_layout<LBlock>::complex_type,
+		Cmplx_inter_fmt>::value &&
+     Type_equal<typename Block_layout<RBlock>::complex_type,
+		Cmplx_inter_fmt>::value;
 
   
   static bool rt_valid(DstBlock& dst, SrcBlock const& src)