< prev index next >

src/hotspot/share/opto/library_call.hpp

Print this page

341   bool inline_vector_nary_operation(int n);
342   bool inline_vector_frombits_coerced();
343   bool inline_vector_shuffle_to_vector();
344   bool inline_vector_shuffle_iota();
345   bool inline_vector_mask_operation();
346   bool inline_vector_mem_operation(bool is_store);
347   bool inline_vector_mem_masked_operation(bool is_store);
348   bool inline_vector_gather_scatter(bool is_scatter);
349   bool inline_vector_reduction();
350   bool inline_vector_test();
351   bool inline_vector_blend();
352   bool inline_vector_rearrange();
353   bool inline_vector_compare();
354   bool inline_vector_broadcast_int();
355   bool inline_vector_convert();
356   bool inline_vector_extract();
357   bool inline_vector_insert();
358   bool inline_vector_compress_expand();
359   bool inline_index_vector();
360 


361   Node* gen_call_to_svml(int vector_api_op_id, BasicType bt, int num_elem, Node* opd1, Node* opd2);
362 
363   enum VectorMaskUseType {
364     VecMaskUseLoad  = 1 << 0,
365     VecMaskUseStore = 1 << 1,
366     VecMaskUseAll   = VecMaskUseLoad | VecMaskUseStore,
367     VecMaskUsePred  = 1 << 2,
368     VecMaskNotUsed  = 1 << 3
369   };
370 
371   bool arch_supports_vector(int op, int num_elem, BasicType type, VectorMaskUseType mask_use_type, bool has_scalar_args = false);
372   bool arch_supports_vector_rotate(int opc, int num_elem, BasicType elem_bt, VectorMaskUseType mask_use_type, bool has_scalar_args = false);
373 
374   void clear_upper_avx() {
375 #ifdef X86
376     if (UseAVX >= 2) {
377       C->set_clear_upper_avx(true);
378     }
379 #endif
380   }
381 
382   bool inline_getObjectSize();
383 
384   bool inline_blackhole();






385 };
386 

341   bool inline_vector_nary_operation(int n);
342   bool inline_vector_frombits_coerced();
343   bool inline_vector_shuffle_to_vector();
344   bool inline_vector_shuffle_iota();
345   bool inline_vector_mask_operation();
346   bool inline_vector_mem_operation(bool is_store);
347   bool inline_vector_mem_masked_operation(bool is_store);
348   bool inline_vector_gather_scatter(bool is_scatter);
349   bool inline_vector_reduction();
350   bool inline_vector_test();
351   bool inline_vector_blend();
352   bool inline_vector_rearrange();
353   bool inline_vector_compare();
354   bool inline_vector_broadcast_int();
355   bool inline_vector_convert();
356   bool inline_vector_extract();
357   bool inline_vector_insert();
358   bool inline_vector_compress_expand();
359   bool inline_index_vector();
360 
361   bool inline_timestamp(bool serial);
362 
363   Node* gen_call_to_svml(int vector_api_op_id, BasicType bt, int num_elem, Node* opd1, Node* opd2);
364 
365   enum VectorMaskUseType {
366     VecMaskUseLoad  = 1 << 0,
367     VecMaskUseStore = 1 << 1,
368     VecMaskUseAll   = VecMaskUseLoad | VecMaskUseStore,
369     VecMaskUsePred  = 1 << 2,
370     VecMaskNotUsed  = 1 << 3
371   };
372 
373   bool arch_supports_vector(int op, int num_elem, BasicType type, VectorMaskUseType mask_use_type, bool has_scalar_args = false);
374   bool arch_supports_vector_rotate(int opc, int num_elem, BasicType elem_bt, VectorMaskUseType mask_use_type, bool has_scalar_args = false);
375 
376   void clear_upper_avx() {
377 #ifdef X86
378     if (UseAVX >= 2) {
379       C->set_clear_upper_avx(true);
380     }
381 #endif
382   }
383 
384   bool inline_getObjectSize();
385 
386   bool inline_blackhole();
387 
388   bool inline_sizeOf();
389   bool inline_sizeOf_impl(Node* obj);
390 
391   bool inline_addressOf();
392 
393 };
394 
< prev index next >