summaryrefslogtreecommitdiff
path: root/valid/code-0003.smali
blob: 19b8c43578ab11a66780fb8df4c1010e3653f7a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60

.class public LBytecodeDemo;
.super Ljava/lang/Object;

.method public constructor <init>()V
    .locals 0

    # Constructor
    return-void
.end method

# Data handling
.method public static handleData(I[I)I
    .locals 4

    iget-object v0, p0, LBytecodeDemo;->data:I
    iput-object v1, p0, LBytecodeDemo;->data:I

    return-void
.end method

# Arithmetic and logic operations
.method public static arithLogic(I)V
    .locals 4

    const/4 v0, 0x5
    add-int/lit8 v1, v0, 0x3
    sub-int v2, v1, p1
    mul-int v3, v2, p1
    div-int v0, v3, p1

    return-void
.end method

# Control flow operations
.method public static controlFlow(I)V
    .locals 3

    if-eqz p1, :cond_true

    const/4 v0, 0x1
    goto :end_if

:cond_true
    const/4 v0, 0x0

:end_if
    return-void
.end method

# Specific instructions for highest Dex files versions (038 or 039)
.method public static specificInstructions(I)V
    .locals 5

    sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
    const-string v1, "Hello, World!"
    invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V

    return-void
.end method