|  | ; RUN: llc -mtriple=i686-- < %s | FileCheck %s | 
|  |  | 
|  | ; No attributes, should not use idiv | 
|  | define i32 @test1(i32 inreg %x) { | 
|  | entry: | 
|  | %div = sdiv i32 %x, 16 | 
|  | ret i32 %div | 
|  | ; CHECK-LABEL: test1: | 
|  | ; CHECK-NOT: idivl | 
|  | ; CHECK: ret | 
|  | } | 
|  |  | 
|  | ; Has minsize (-Oz) attribute, should generate idiv | 
|  | define i32 @test2(i32 inreg %x) minsize { | 
|  | entry: | 
|  | %div = sdiv i32 %x, 16 | 
|  | ret i32 %div | 
|  | ; CHECK-LABEL: test2: | 
|  | ; CHECK: idivl | 
|  | ; CHECK: ret | 
|  | } | 
|  |  | 
|  | ; Has optsize (-Os) attribute, should not generate idiv | 
|  | define i32 @test3(i32 inreg %x) optsize { | 
|  | entry: | 
|  | %div = sdiv i32 %x, 16 | 
|  | ret i32 %div | 
|  | ; CHECK-LABEL: test3: | 
|  | ; CHECK-NOT: idivl | 
|  | ; CHECK: ret | 
|  | } | 
|  |  | 
|  |  |