Changeset 176088 in webkit
- Timestamp:
- Nov 13, 2014 1:55:28 PM (9 years ago)
- Location:
- trunk/Tools
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Tools/ChangeLog
r176078 r176088 1 2014-11-13 Juergen Ributzka <juergen@apple.com> 2 3 Update the "combineModules" script to handel more LLVM metadata. 4 https://bugs.webkit.org/show_bug.cgi?id=138514 5 6 Reviewed by Filip Pizlo. 7 8 * ReducedFTL/combineModules.rb: 9 1 10 2014-11-13 Myles C. Maxfield <mmaxfield@apple.com> 2 11 -
trunk/Tools/ReducedFTL/combineModules.rb
r153289 r176088 61 61 62 62 class MetaData 63 attr_reader :index, :name, :parent 64 65 def initialize(index, name, parent )63 attr_reader :index, :name, :parent, :val 64 65 def initialize(index, name, parent, val) 66 66 @index = index 67 67 @name = name 68 68 @parent = parent 69 @val = val 69 70 end 70 71 end … … 121 122 name = $2 122 123 unless $metaData[name] 123 $metaData[name] = MetaData.new($metaData.size, name, nil )124 $metaData[name] = MetaData.new($metaData.size, name, nil, nil) 124 125 end 125 126 metaDataMap[index] = $metaData[$2].index 126 127 elsif line =~ /!([0-9]+) = metadata !{metadata !\"([a-zA-Z0-9_]+)\", metadata !([0-9]+)/ 127 metaData = MetaData.new($1.to_i, $2, $3.to_i )128 metaData = MetaData.new($1.to_i, $2, $3.to_i, nil) 128 129 unresolvedMetaData << metaData 130 elsif line =~ /!([0-9]+) = metadata !{metadata !\"branch_weights\"/ 131 index = $1.to_i 132 arr1 = line.split(','); 133 arr1.shift 134 arr2 = Array.new 135 name = "branch_weights" 136 arr1.each { |a| 137 a =~ /i32 ([0-9]+)/ 138 name.concat($1) 139 arr2.push($1) 140 } 141 unless $metaData[name] 142 $metaData[name] = MetaData.new($metaData.size, "branch_weights", nil, arr2) 143 end 144 metaDataMap[index] = $metaData[name].index 145 elsif line =~ /!([0-9]+) = metadata !{i32 ([-+0-9]+), i32 ([-+0-9]+)}/ 146 index = $1.to_i 147 name = "#$2#$3" 148 unless $metaData[name] 149 $metaData[name] = MetaData.new($metaData.size, nil, nil, [$2, $3]) 150 end 151 metaDataMap[index] = $metaData[name].index 129 152 elsif line =~ /attributes #([0-9]+) = / 130 153 attributeNumber = $1.to_i … … 151 174 elsif metaDataMap[metaData.parent] 152 175 metaDataMap[metaData.index] = $metaData.size 153 $metaData[metaData.name] = MetaData.new($metaData.size, metaData.name, metaDataMap[metaData.parent] )176 $metaData[metaData.name] = MetaData.new($metaData.size, metaData.name, metaDataMap[metaData.parent], nil) 154 177 unresolvedMetaData[index] = unresolvedMetaData[-1] 155 178 unresolvedMetaData.pop … … 161 184 162 185 # Output the body with all of the things remapped. 163 puts "define i64 @jsBody_#{$count += 1}( i64) {"186 puts "define i64 @jsBody_#{$count += 1}() {" 164 187 body.each { 165 188 | thing | … … 203 226 $metaData.each_value { 204 227 | metaData | 205 print "!#{metaData.index} = metadata !{metadata !\"#{metaData.name}\"" 228 print "!#{metaData.index} = metadata !{" 229 if metaData.name 230 print "metadata !\"#{metaData.name}\"" 231 end 206 232 if metaData.parent 207 233 print ", metadata !#{metaData.parent}" 208 234 end 235 if (metaData.val) 236 index = 0 237 if metaData.name 238 index = 1 239 end 240 metaData.val.each { |a| 241 if (index == 0) 242 print "i32 #{a}" 243 else 244 print ", i32 #{a}" 245 end 246 index += 1 247 } 248 end 209 249 puts "}" 210 250 }
Note: See TracChangeset
for help on using the changeset viewer.