|  | // The following ops are sampled from mobile_bert | 
|  | // https://github.com/iree-org/iree/blob/main/integrations/tensorflow/e2e/mobile_bert_squad_test.py | 
|  |  | 
|  | func.func @dot_general_4x384x32x384() -> tensor<4x384x384xf32> { | 
|  | %lhs = util.unfoldable_constant dense<1.0> : tensor<4x384x32xf32> | 
|  | %rhs = util.unfoldable_constant dense<1.0> : tensor<4x32x384xf32> | 
|  | %0 = "mhlo.dot_general"(%lhs, %rhs) { | 
|  | dot_dimension_numbers = #mhlo.dot< | 
|  | lhs_batching_dimensions = [0], | 
|  | lhs_contracting_dimensions = [2], | 
|  | rhs_batching_dimensions = [0], | 
|  | rhs_contracting_dimensions = [1], | 
|  | >, | 
|  | precision_config = [#mhlo<precision DEFAULT>, #mhlo<precision DEFAULT>] | 
|  | } : (tensor<4x384x32xf32>, tensor<4x32x384xf32>) -> tensor<4x384x384xf32> | 
|  | return %0 : tensor<4x384x384xf32> | 
|  | } | 
|  |  | 
|  | func.func @dot_general_4x384x384x32() -> tensor<4x384x32xf32> { | 
|  | %lhs = util.unfoldable_constant dense<1.0> : tensor<4x384x384xf32> | 
|  | %rhs = util.unfoldable_constant dense<1.0> : tensor<4x384x32xf32> | 
|  | %0 = "mhlo.dot_general"(%lhs, %rhs) { | 
|  | dot_dimension_numbers = #mhlo.dot< | 
|  | lhs_batching_dimensions = [0], | 
|  | lhs_contracting_dimensions = [2], | 
|  | rhs_batching_dimensions = [0], | 
|  | rhs_contracting_dimensions = [1], | 
|  | >, | 
|  | precision_config = [#mhlo<precision DEFAULT>, #mhlo<precision DEFAULT>] | 
|  | } : (tensor<4x384x384xf32>, tensor<4x384x32xf32>) -> tensor<4x384x32xf32> | 
|  | return %0 : tensor<4x384x32xf32> | 
|  | } |